gpt4 book ai didi

android - Android 上嵌入式 Crosswalk 运行时的权限

转载 作者:行者123 更新时间:2023-11-29 00:13:27 24 4
gpt4 key购买 nike

我正在尝试 embed the Crosswalk runtime作为应用中其他 Java 代码的 WebView 替换(即不是作为网络应用的简单包装器)。

现在他们的 official documentation说您无论如何都需要以下权限:

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

很多!

所以我尝试使用较少的权限。我发现以下权限确实是必需的在任何情况下:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.INTERNET" />

没关系。因此,如果这足够了,那将是对文档中给出的列表的重大改进。

但在某些情况下可能还需要其他的。有人可以澄清吗?在什么情况下需要其他权限?仅当通过 JavaScript 触发某些操作时?那么一个人可以在没有这些的情况下使用人行横道,可能吧?

最佳答案

虽然您对官方文档的描述是正确的,但人行横道网站上确实存在一些相互矛盾的信息。

具体来说,这个链接埋在 Cordova 迁移部分:

Migrate using command line tools

建议:

Crosswalk requires a couple of extra permissions which are not inserted by the Cordova application generator.

并特别引用:

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

重点是,cordova 只添加

<uses-permission android:name="android.permission.INTERNET" />

因此必须推导出唯一真正需要的权限是:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.INTERNET" />

正如您正确地得出的结论。

我的猜测是,Crosswalk 团队在列表中添加了 webview 支持的所有功能/扩展(包括访问 WebRTC session 的摄像头)共同需要的所有权限的联合。

在这方面,该列表是合适的(与其他独立浏览器所支持的列表非常相似)并且可能是为了缩短解释而提供的。

顺便说一句,我已经进行了测试并从 list 中删除了“CAMERA”权限,并且 webview 优雅地处理了缺席(它没有使应用程序崩溃,相机只是停止工作并给出了一张黑色图片),这似乎指出,即使权限集有限,您也可以处理用户的 webview 以进行一般浏览(但不要相信我的话:我刚试过相机!)

希望对你有帮助

关于android - Android 上嵌入式 Crosswalk 运行时的权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28456668/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com