5

我正在创建一个 Phonegap Android 应用程序,但在向其添加插件时遇到了问题。Cordova 版本是 2.2.0。我没有使用 jQM 或 Sencha Touch。我在 Android 4.0 上测试该应用程序。

我指的插件是Android Phonegap 插件。这是我的index.html文件:

<!DOCTYPE html>
<html>
  <head>
    ...
  </head>
  <body>
    <div class="wrapper">
      ...
    </div>

    <script type="text/javascript" src="vendor/cordova-2.2.0.js"></script>
    <script type="text/javascript" src="assets/application.js"></script>
    <script type="text/javascript" src="js/index.js"></script>
    <script type="text/javascript" src="js/datePickerPlugin.js"></script>
  </body>
</html>

这是我的主要 Java 文件:

import android.app.Activity;
import android.os.Bundle;
import org.apache.cordova.*;

public class looker extends DroidGap
    {
        @Override
        public void onCreate(Bundle savedInstanceState)
            {
                super.onCreate(savedInstanceState);
                super.setIntegerProperty("splashscreen", R.drawable.splash);
                super.loadUrl("file:///android_asset/www/index.html", 7000);
            }
    }

因此,为了了解问题是否出在插件中,我将这个文件最小 化到我使用的所有最小化脚本所在的位置。我从中删除了插件的脚本标签,插件工作得很好!所以它可能与URL有关?assets/application.jsindex.html

到目前为止我尝试了什么?

我进行了很多研究,并尝试了其他类似问题的几种解决方案。

  1. 确保我的loadUrl主要课程中有 3 个 / :

    public void onCreate(Bundle savedInstanceState)
        {
          super.onCreate(savedInstanceState);
          super.setIntegerProperty("splashscreen", R.drawable.splash);
          super.loadUrl("file:///android_asset/www/index.html", 7000);
        }
    

    从一开始就这样,没有任何区别

  2. 尝试在 super.loadUrl() 之前调用 super.init()。也没有用

  3. 试过这个:

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        super.init();
        super.setIntegerProperty("loadUrlTimeoutValue", 6000);
        super.loadUrl("file:///android_asset/www/index.html");
    }
    

    仍然没有解决问题。

  4. 通过添加 . 检查文件是否已加载到应用程序中alert();它加载

大体上是这样。如果需要,我们很乐意为您提供更多信息以解决此问题。提前致谢!

4

2 回答 2

2

我按照指南进行操作,并且能够让插件正常工作。

但是,当我在 config.xml 中有这个时,我能够复制“未知的铬错误:-6”:

<plugin name="DatePickerPlugin1" value="com.phonegap.plugin.DatePickerPlugin"/>

确保 XML 中的“名称”属性是 DatePickerPlugin,因为这是 JavaScript 代码用于插件的名称:https ://github.com/phonegap/phonegap-plugins/blob/master/Android/DatePicker/ datePickerPlugin.js#L33

不过,可能还有其他方法可以产生相同的错误。如果这没有帮助,您可以发布或链接到实际调用此插件的 HTML 文件以及 config.xml 吗?(确保您使用的是 res/xml/config.xml 而不是 res/xml/plugins.xml,此处已弃用:http: //cordova.apache.org/docs/en/2.0.0/guide_upgrading_android_index.md .html#Upgrading%20Cordova%20Android

于 2013-04-15T14:14:03.890 回答
1

我得到同样的错误:Unknown Chromium error -6"
我的错误是错误的部分路径。

我必须为部分指定相对路径

当您使用 ng-include 或模块ngRoute时,
而不是这样:

ng-include="'/partials/file.html'"

把这个:

ng-include="'partials/file.html'"

如果你看我删除了路径中的第一个斜杠。

这种方法解决了我的铬错误。

于 2015-01-09T07:35:04.717 回答