我在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.
并且应用程序无法启动。
答案 0 :(得分:10)
非常感谢Saeed的回答,我能够做到这一点,但是在更改包名后我需要做的另一件事是让应用程序正常工作。我在解释这里的步骤:
z-index
更改为position
com.myname.mygame
com.myname.mygame.core
移至package="com.myname.mygame"
以上步骤解决了更改包名的问题,非常感谢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