我刚刚下载了 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 {
Eclipse 可以识别所有这些导入,除了
org.apache.cordova.api.Plugin
经过一番研究,我发现Phonegap 2.0需要插件来扩展 Plugin 类。Phonegap 2.7希望插件扩展“CordovaPlugin”。
快速浏览一下Phonegap github会发现,该包中甚至不再存在名为“Plugin”的类。这让我很困惑,因为WebIntent github几个月前才更新,它仍然使用插件。
我尝试将 Plugin 更改为 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);
}
}
"success(...)" 不是 CordovaPlugin 中的函数,也没有类似的函数。
谁能想到解决这个问题的方法?还是有我遗漏的信息?(更新版本的 WebIntent 会很棒,但我似乎找不到)