【问题标题】:Android Internet permission in UnityUnity 中的 Android 上网权限
【发布时间】:2016-05-28 00:10:27
【问题描述】:

Unity 好像默认不放

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

生成 AndroidManifest.xml。我的项目需要这些权限。谷歌没有给我直接的答案。有可能吗?

【问题讨论】:

    标签: android unity3d permissions android-manifest


    【解决方案1】:

    转到编辑->项目设置 -> 播放器。选择 Android,Build Settings,将 Internet AccessAuto 更改为 Require。您不必这样做,因为 Unity 会在您使用任何网络 API 时自动执行。

    如果这对您来说还不够,那么您可以手动修改 Android AndroidManifest。

    1。打开统一。 构建您的Android项目只需一次。不要关闭它。

    2。转到您的项目目录。在步骤 1 之后,Unity 将创建一个名为 Temp 的新文件夹。在该 Temp 内还有另一个名为 StagingArea 的文件夹。进入 StagingArea 文件夹并将名为 AndroidManifest.xml 的文件复制到您计算机中的另一个文件夹中。修改/添加您自己的自定义权限,就像您问题中的权限一样。

    3。现在将修改后的 AndroidManifest.xml 文件移动到 Your Project Directory->Assets->Plugins->安卓。如果 PluginsAndroid 文件夹没有退出,请创建它们。

    享受吧!

    【讨论】:

    • 太棒了!感谢第一种方法,我不知道为什么谷歌没有引导我找到一些官方文档。第二个解决方案有点复杂,实际上直到现在我都在使用它,除了一件事:我从另一个地方选择 AndroidManifest - 从 /Applications/Unity/PlaybackEngines/AndroidPlayer/Apk/AndroidManifest.xml (这是在操作系统上X环境)
    • @DeepThought Unity 不记录一些东西。建议你掌握第二种方案。在制作自己的插件时,如果存在 Manifest 冲突,或者如果您想要 Unity 中不可用的权限,您将需要它。如果你这样做 3 或 5 次,你应该习惯它。它只是复制文件,修改它并放入另一个目录。
    • AndroidManifest.xml 不再存在于 StagingArea 文件夹中。关于清单文件的 Unity 文档,截至 2020 年 11 月,docs.unity3d.com/Manual/android-manifest.html
    【解决方案2】:

    使用 Unity 2019.3 或更新版本的人... (docs.unity3d.com/Manual/android-manifest.html)

    不知道我所做的是否正确,但确实有效。

    我在 AndroidManifest 中添加了权限:

    按照@Programmer 的步骤,但在第 2 步中,我没有转到 StagingArea 文件夹,而是转到了 YourUnityProject\Temp\gradleOut\unityLibrary\src\main - > AndroidManifest.xml

    我还在 " 之前删除了一个额外的 "-" 不知道你会不会也出现这个错误。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-26
      • 2016-03-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-28
      • 2012-12-07
      • 1970-01-01
      相关资源
      最近更新 更多