更改libGDX游戏的包标识符

时间:2015-05-25 11:05:07

标签: android libgdx package android-manifest

我在Google Play商店中有一款游戏。现有版本是使用Android Studio使用本机代码完全开发的。现在我即将在Play商店中发布同一游戏的高度增强版本,但这一次,应用程序是使用libGDX开发的。问题是我的应用程序的原始包名是com.myname.mygame(在揭示真实姓名时存在一些保密问题)。我为libGDX基础项目提供了相同的包名称。但是当它在android中进行编译时,它会在包名称中添加.android扩展名。因此,软件包名称现在变为com.myname.mygame.android,因此我无法将该应用程序作为更新发布。我该怎么做才能更改包名?

修改

根据此处发布的其中一个答案,我尝试将核心模块fromcom.myname.mygame的程序包名称更改为com.myname.mygame.core,然后将清单中的程序包更改为package="com.myname.mygame",并将AndroidLauncher从{{{}移除1}}到com.myname.mygame.android。但是,当我尝试运行应用程序时,我收到以下错误:

com.myname.mygame

我注意到它仍然写有Installing com.myname.mygame.android DEVICE SHELL COMMAND: pm install -r "/data/local/tmp/com.myname.mygame.android" pkg: /data/local/tmp/com.myname.mygame.android Success Launching application: com.myname.mygame.android/com.myname.mygame.AndroidLauncher. DEVICE SHELL COMMAND: am start -n "com.myname.mygame.android/com.myname.mygame.AndroidLauncher" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.myname.mygame.android/com.myname.mygame.AndroidLauncher } Error type 3 Error: Activity class {com.myname.mygame.android/com.myname.mygame.AndroidLauncher} does not exist. 并且应用程序无法启动。

2 个答案:

答案 0 :(得分:10)

非常感谢Saeed的回答,我能够做到这一点,但是在更改包名后我需要做的另一件事是让应用程序正常工作。我在解释这里的步骤:

  1. 将核心模块的包名称从z-index更改为position
  2. 将清单中的包更改为com.myname.mygame
  3. 将AndroidLauncher从com.myname.mygame.core移至package="com.myname.mygame"
  4. 以上步骤解决了更改包名的问题,非常感谢Saeed。现在应用程序无法启动。然后我看到安装命令错了。要更改此设置,只需转到Android应用程序的com.myname.mygame.android并更改以下行:

    com.myname.mygame

    为:

    build.gradle

    你准备好了!!!

答案 1 :(得分:6)

Libgdx有这样的架构:

com.myname.mygame作为核心模块

com.myname.mygame.android作为android模块

com.myname.mygame.desktop作为桌面模块等

因此,您需要重构它们,例如将核心模块的包名称从com.myname.mygame更改为com.myname.mygame.core,然后将清单中的包更改为package="com.myname.mygame",并从{{移动AndroidLauncher 1}}到com.myname.mygame.android