Phonegap
config.xml
...
<preference name="android-build-tool" value="gradle" />
...
<preference name="phonegap-version" value="cli-7.0.1" />
...
<preference name="cordova.plugins.diagnostic.modules" value="CAMERA" />
....
<plugin name="cordova.plugins.diagnostic"/>
我的应用程序无法使用蓝牙,但安装时需要获得与蓝牙设备链接的权限
phonegap log
...
...
Fetching plugin "cordova.plugins.diagnostic" via npm
Installing "cordova.plugins.diagnostic" at "4.0.8" for android
...
...
如果我擦除<preference name =“cordova.plugins.diagnostic.modules”value =“CAMERA”/>一切都保持不变
3 回答
cordova.plugins.diagnostic 插件 does 使用蓝牙功能,您可以从自述文件中看到 .
如果您要包含带有说明的插件
它肯定会要求所有可能的权限 . 无论如何,你为什么需要这样的插件?
Diagnostic插件使用npm postinstall hook运行hook script,它在
config.xml
中应用首选项以注释掉不需要的模块 .因此as documented:
所以你应该尝试:
注意:如果对项目或
node_modules
使用符号链接,则可能导致脚本失败,因为它无法解析正确的相对路径 .免责声明:我是Cordova Diagnostic插件的作者 .
我发现了一种通过从 android.json 删除几行代码来禁用AndroidManifest.xml中添加权限的方法
去掉:
如果它仍然添加BLUETOOTH Permission删除其中包含“bluetooth”的所有行 .