android - Cordova:android.json 中的 PACKAGE_NAME 是什么意思?

标签 android json cordova cordova-plugins

我们正在 Cordova 中开发一个带有少量插件的应用程序。最近我们的构建停止工作,当我寻找解决方案时,我在插件目录中找到了 android.json 文件。我安装的所有插件都有一个“installed_plugins”键,每个插件都带有 PACKAGE_NAME 键。让我烦恼的是它的值对于某些插件来说是不同的:

"installed_plugins": {
    "com.tsukurusha.cordova.screenorientation": {
        "PACKAGE_NAME": "sk.company.app"
    },
    "org.apache.cordova.file": {
        "PACKAGE_NAME": "namespace.umk"
    },
    "com.plugin.datepicker": {
        "PACKAGE_NAME": "sk.app.module"
    },
    "org.apache.cordova.inappbrowser": {
        "PACKAGE_NAME": "sk.app.module"
    },
...

*注意,我更改了真实的 PACKAGE_NAME 键,用于随机单词,但通常它看起来像这样。

我无法找到此 PACKAGE_NAME 的含义,也无法找到它的来源。您知道他们的目的是什么,或者向我指出一些可以找到相关内容的资源(我查看了 Cordova 文档,但没有运气)?

最佳答案

该文件指示在给定平台(android、ios 等)的 cordova 项目的当前版本中安装了哪些插件。每个插件内的值是插件将使用的变量。在您的情况下,您可能只看到 PACKAGE_NAME,因为这是 cordova 在安装插件时创建的唯一默认变量,但可能还有其他变量,具体取决于插件。例如,我正在使用名为 cordova-plugin-facebook4 的 facebook 插件。该插件在 android.json 中的条目如下所示:

"cordova-plugin-facebook4": {
    "APP_ID": "123456789",
    "APP_NAME": "Facebook App Name",
    "PACKAGE_NAME": "com.example"
}

它是使用以下命令安装的:

cordova plugin add cordova-plugin-facebook4 --variable APP_ID="123456789" --variable APP_NAME="Facebook App Name"

解释这一点的文档可以在以下链接(变量部分)中找到:https://cordova.apache.org/docs/en/4.0.0/plugin_ref/spec.html

在大多数情况下,PACKAGE_NAME 的值可能无关紧要。该变量默认由 cordova 声明,但大多数插件不会将其用于任何用途。每个插件的值不同的原因是,每当您创建新版本时,插件都不会更新,一旦您安装它们,它们就不会改变。因此,每个插件的 PACKAGE_NAME 是您首次添加该插件时在 config.xml 中拥有的 id。为了解决这个问题(如果插件确实使用 PACKAGE_NAME),您需要删除该插件并再次添加它。或者,如果您将所有这些都保留在 config.xml 中,则可以删除并添加平台。

关于android - Cordova:android.json 中的 PACKAGE_NAME 是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33020161/

相关文章:

javascript - 动态引导轮播项目

android - 解析数据时出错 org.json.JSONException : Value <br of type java. lang.String 无法转换为 JSONObject

cordova - phonegap 构建不会更进一步

javascript - 如何在 Phonegap/Cordova(iOS 和 Android)的谷歌地图中获得后退按钮

android - 旧的推送通知未出现在android设备上

android - Firebase 数据库不提交在线数据阻塞监听器

java - Android Activity 堆栈控件。无法弄清楚如何删除历史记录

jquery - 如何设置BlockUI的最小延迟?

android - 当我尝试一起使用grpc和cordova时,程序类型已经存在com.squareup.okhttp.address

安卓。 ActionBarSherlock。