Cordova错误" WebView:未知的帧路由ID:1"

时间:2015-11-27 15:46:38

标签: android cordova cordova-plugins chromium

所以我有一个插件,通过我的插件中的Intent启动本机应用程序。但是,当本机应用程序启动时,我收到一条相当简短的错误消息,而且我不确定如何调试它或去哪里。

错误消息显示为"com.xxx.mine.IMAGE_CAPTURE has stopped working"

并且logcat显示E/chromium: [ERROR:gin_java_bridge_message_filter.cc(106)] WebView: Unknown frame routing id: 1

以下是一些供参考的代码

JAVA CODE

public class MyPlugin extends CordovaPlugin {

    public static final String TAG = "MyPlugin";
    public CordovaInterface mCordova;    

    public MyPlugin() {}    

    public void initialize(CordovaInterface cordova, CordovaWebView webView) {
        super.initialize(cordova, webView);
        mCordova = cordova;         
    }       

    public boolean execute(final String action, JSONArray args, CallbackContext callbackContext) throws JSONException {
        startCameraActivity();

        return true;
    }

    private void startCameraActivity() {
        Intent i = new Intent("com.xxx.mine.IMAGE_CAPTURE");

        i.putExtra("USER_EXTRA", "test_user");
        ....            

        mCordova.startActivityForResult(this, i, 567);
    }

    @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (data != null && requestCode == 567) {
            Log.e("RESULT", "SUCCESSFUL");
        } else {
            Log.e("RESULT", "ERROR");
        }

        super.onActivityResult(requestCode, resultCode, data);
    }
}

如果您想查看任何HTML或JavaScript代码,请告诉我,但我不认为问题出在哪里。老实说虽然我不知道问题是什么,因为当我谷歌的错误消息我得到0有用的结果。我的直觉告诉我,webview很难充实应用程序的观点,但这就是我得到的全部内容。我将接受任何帮助,无论是调试此错误消息的方法,还是您之前已经看过此错误消息以及如何解决它。谢谢!

2 个答案:

答案 0 :(得分:0)

我能够通过在Android工作室中创建本机Android应用程序并集成插件代码来调试它。原来我发送的一些JSON作为一个Intent Extra期待一个JSONObject但是得到了一个JSONArray。如果其他人遇到这个问题,也许这将是你的解决方案。如果没有尝试做我做的事情。在Android Studio中创建应用程序并从那里进行调试。

答案 1 :(得分:0)

请检查模块中的targetSdkVersion值是否小于16,如下所示:

minSdkVersion 16
targetSdkVersion 16

它会正确显示您的HTML。