Android 更改libGDX游戏的包标识符
我有一个现有的游戏在谷歌游戏商店。现有版本完全使用Android Studio开发,使用本机代码。现在,我将在play store中发布同一游戏的高度增强版,但这次,该应用程序是使用Android 更改libGDX游戏的包标识符,android,libgdx,package,android-manifest,Android,Libgdx,Package,Android Manifest,我有一个现有的游戏在谷歌游戏商店。现有版本完全使用Android Studio开发,使用本机代码。现在,我将在play store中发布同一游戏的高度增强版,但这次,该应用程序是使用libGDX开发的。问题是我的应用程序的原始包名是com.myname.mygame(透露真实名称时存在一些保密问题)。我为libGDXbase项目提供了相同的包名。但是当它在android中编译时,它会在包名中添加一个.android扩展名。因此,包名现在变成了com.myname.mygame.android,因
libGDX
开发的。问题是我的应用程序的原始包名是com.myname.mygame
(透露真实名称时存在一些保密问题)。我为libGDX
base项目提供了相同的包名。但是当它在android中编译时,它会在包名中添加一个.android
扩展名。因此,包名现在变成了com.myname.mygame.android
,因此我无法将应用程序作为更新发布。如何更改包名
编辑
根据这里发布的一个答案,我尝试将核心模块的包名从com.myname.mygame
更改为com.myname.mygame.core
,然后将清单中的包更改为package=“com.myname.mygame”
,并将AndroidLauncher从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.
我注意到,它仍然是写在有
com.myname.mygame.android
的地方,并且应用程序无法启动。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
从com.myname.mygame.android
移动到com.myname.mygame
非常感谢Saeed的回答,我能够做到这一点,但在更改软件包名称后,我还需要做一件事才能让应用程序正常工作。我在这里解释这些步骤:
将核心模块的包名从com.myname.mygame
更改为com.myname.mygame.core
将清单中的包更改为package=“com.myname.mygame”
将AndroidLauncher从com.myname.mygame.android
移动到com.myname.mygame
上述步骤解决了更改包名的问题,这要感谢Saeed。现在应用程序无法启动。然后我发现安装命令是错误的。要更改此设置,只需转到android应用程序的build.gradle
并更改以下行:
commandLine "$adb", 'shell', 'am', 'start', '-n', 'com.myname.mygame.android/com.myname.mygame.android.AndroidLauncher'
致:
你准备好出发了 好的,我会试试这个您能告诉我如何在android studio中重构核心模块和更改包名吗?右键单击核心文件夹->重构->重命名
commandLine "$adb", 'shell', 'am', 'start', '-n', 'com.myname.mygame/com.myname.mygame.AndroidLauncher'