在Appcelerator Titanium中,我构建了一个简单的单页应用程序,它添加了罗马数字。尽我所知,它没有必要要求任何权限。
然而,我测试应用程序的朋友告诉我它要求访问网络,而在build / android /目录中,AndroidManifest.xml文件包含以下行:
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
tiapp.xml文件中没有任何内容请求这些权限,我开始使用库存,空白项目并且不导入任何模块或小部件。
这些许可请求来自哪里?我如何摆脱它们?
我可以找到的所有信息都讨论了如何添加或请求权限,但没有解释如何确保不会在生成的AndroidManifest.xml中显示不必要的权限。
答案 0 :(得分:2)
很可能这些权限是在您的应用使用的某个Android库中定义的。 Android构建系统提供了控制清单合并完成方式的工具。尝试为应用清单的<uses-permission/>
元素禁用清单合并。请参阅Merge Multiple Manifest Files文档。
答案 1 :(得分:1)
在第982行附近查看builder.py(.titanium / mobilesdk / linux / 5.3.0.GA / android / builder.py)。在那里,您将找到Android的默认权限。您可以尝试删除它们,看看是否有任何错误。确保首先禁用分析!