【问题标题】:PhoneGap Build Application PermissionsPhoneGap 构建应用程序权限
【发布时间】:2018-06-08 21:11:03
【问题描述】:

我正在使用 PhoneGap (Cordova),但我一生都无法弄清楚如何指定应用程序在使用 PhoneGap Build 服务时需要哪些权限。

根据我的阅读,PhoneGap Build 仅从位于项目根目录中的 config.xml 中提取信息,并且不需要任何特定于平台的文件(我已将我的平台文件夹从源代码管理中完全排除)。我设法在 PhoneGap 示例应用程序中找到了以下行,以将应用程序限制为 PhoneGap 应用程序的最基本权限,但我不知道使用什么格式来指定其他权限。

<preference name="permissions" value="none"/>

PhoneGap 是否有一个通用的权限列表来抽象供应商特定权限,或者我是否需要将我的供应商目录保存在源代码控制中(我已经阅读过这违反了最佳实践)。

【问题讨论】:

  • 只有在使用插件时才需要额外的权限,并且插件在需要特定权限时会自动更新平台的首选项文件(通过 plugin.xml)。

标签: cordova phonegap-build android-permissions


【解决方案1】:

对于权限,将“功能”添加到您的 config.xml,例如:

<feature name="http://api.phonegap.com/1.0/geolocation" />

PG Build doc

【讨论】:

    【解决方案2】:

    处理它的最佳方法是从空白模板开始。这样就没有权限,您可以在 phonegap CLI 或 phonegap build 中编译应用程序之前添加您需要的权限。

    这里有几个标准插件,大部分是不言自明的 (links for more plugins)

    <plugin name="cordova-plugin-battery-status" source="npm" spec="~1.1.1" />
    <plugin name="cordova-plugin-camera" source="npm" spec="~2.1.1" />
    <plugin name="cordova-plugin-media-capture" source="npm" spec="~1.2.0" />
    <plugin name="cordova-plugin-console" source="npm" spec="~1.0.2" />
    <plugin name="cordova-plugin-contacts" source="npm" spec="~2.0.1" />
    <plugin name="cordova-plugin-device" source="npm" spec="~1.1.1" />
    <plugin name="cordova-plugin-device-motion" source="npm" spec="~1.2.0" />
    <plugin name="cordova-plugin-device-orientation" source="npm" spec="~1.0.2" />
    <plugin name="cordova-plugin-dialogs" source="npm" spec="~1.2.0" />
    <plugin name="cordova-plugin-file" source="npm" spec="~4.1.1" />
    <plugin name="cordova-plugin-file-transfer" source="npm" spec="~1.5.0" />
    <plugin name="cordova-plugin-geolocation" source="npm" spec="~2.1.0" />
    <plugin name="cordova-plugin-globalization" source="npm" spec="~1.0.3" />
    <plugin name="cordova-plugin-inappbrowser" source="npm" spec="~1.3.0" />
    <plugin name="cordova-plugin-media" source="npm" spec="~2.2.0" />
    <plugin name="cordova-plugin-network-information" source="npm" spec="~1.2.0" />
    <plugin name="cordova-plugin-splashscreen" source="npm" spec="~3.2.1" />
    <plugin name="cordova-plugin-statusbar" source="npm" spec="~2.1.2" />
    <plugin name="cordova-plugin-vibration" source="npm" spec="~2.1.0" />
    <plugin name="cordova-plugin-whitelist" source="npm" spec="~1.2.1" />
    <plugin name="cordova-plugin-x-socialsharing" source="npm" />    
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-16
      • 2016-06-23
      • 1970-01-01
      • 1970-01-01
      • 2011-11-09
      相关资源
      最近更新 更多