Phonegap的WebIntent插件:找不到导入org.apache.cordova.api.Plugin

NcA*_*ams 2 plugins android android-intent cordova

我刚下载了phonegap的WebIntent插件,但在设置时立即遇到错误.WebIntent.java的前几行是

import java.util.HashMap;
import java.util.Map;

import org.apache.cordova.DroidGap;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import android.content.Intent;
import android.net.Uri;
import android.util.Log;
import android.text.Html;

import org.apache.cordova.api.Plugin;
import org.apache.cordova.api.PluginResult;

...

public class WebIntent extends Plugin {
Run Code Online (Sandbox Code Playgroud)

Eclipse识别所有这些导入,除了

org.apache.cordova.api.Plugin

经过一番研究,我发现Phonegap 2.0希望插件能够扩展插件类.Phonegap 2.7希望插件能够扩展"CordovaPlugin".

快速浏览一下Phonegap github就会发现,该套件中甚至不再存在名为"插件"的类.这让我很困惑,因为几个月前WebIntent github已经更新了,它仍然使用插件.

我尝试将插件更改为CordovaPlugin,无论我在文件中找到它.令人惊讶的是,大多数错误都是贬低的.但是,onNewIntent方法仍然有错误:

    @Override
    public void onNewIntent(Intent intent) {
        if (this.onNewIntentCallback != null) {
            PluginResult result = new PluginResult(PluginResult.Status.OK, intent.getDataString());
            result.setKeepCallback(true);
            this.success(result, this.onNewIntentCallback);
        }
    }
Run Code Online (Sandbox Code Playgroud)

"success(...)"不是CordovaPlugin中的函数,并且没有类似的功能.

谁能想到解决这个问题的方法?或者是否有我遗失的信息?(一个更新的WebIntent版本会很棒,但我似乎找不到一个)

Eri*_*ell 9

有同样的问题升级到Phonegap 3.0并找到解决方案不仅是将插件更改为CordovaPlugin而且还需要从import语句中删除"api".

更改

import org.apache.cordova.api.Plugin;
import org.apache.cordova.api.PluginResult;
Run Code Online (Sandbox Code Playgroud)

对此:

import org.apache.cordova.CordovaPlugin;
import org.apache.cordova.PluginResult;
Run Code Online (Sandbox Code Playgroud)

答案参考:http://devgirl.org/2013/09/05/phonegap-3-0-stuff-you-should-know/