Unity 无法在 Android 上构建:java.lang.IllegalArgumentException:already added: Manifest$permission(意外的顶级异常)

3
  1. 当我有

    ----Plugins/Android/{res, jar….}

    ----Plugins/Android/AndroidManifest.xml

    就可以了。

  2. 当我有Facebook和Google+

    ----Plugins/Android/{res, jar….}

    ----Plugins/Android/facebookSDK文件夹

    ----Plugins/Android/google-play-services_lib (google+)

    ----Plugins/Android/BaseGameUtils (google+)

    ----Plugins/Android/MainLibProj (google+)

    ----Plugins/Android/AndroidManifest.xml

    无法在Android上构建,出现错误:

UNEXPECTED TOP-LEVEL EXCEPTION: java.lang.IllegalArgumentException: already added: L …. /Manifest$permission;

这是因为AndroidManifest.xml上的这一行引起的。

     <permission android:name="{my package}.permission.C2D_MESSAGE"
     android:protectionLevel="signature" />

当我移除这个权限时,我可以构建和运行,但无法收到推送通知(权限不足)。

问题:如何在Unity中保留这个权限?


我遇到了同样的问题。你能解决这个问题吗?非常感谢! - Goat
是的,我解决了这个问题。当你构建你的----Plugins/Android/{ jar….}时,不要在AndroidManifest上添加任何权限。然后将该权限添加到----Plugins/Android/AndroidManifest.xml中。祝好运! - Frank Nguyen
1个回答

4

最终,我解决了这个问题。

当您构建您自己的项目时,不要在AndroidManifest中添加任何权限,例如Plugins/Android/{ jar….}。

然后,在Plugins/Android/AndroidManifest.xml中添加该权限。祝好运!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接