2015-05-25 5 views
6

У меня есть существующая игра в игровом магазине google. Существующая версия была полностью разработана с использованием Android Studio с использованием собственных кодов. Теперь я собираюсь выпустить расширенную версию той же игры в игровом магазине, но на этот раз приложение разработано с использованием libGDX. Проблема заключается в том, что исходное имя моего приложения было com.myname.mygame (некоторые проблемы с конфиденциальностью при раскрытии реального имени). Я дал то же имя пакета для базового проекта libGDX. Но когда он компилируется в android, он добавляет расширение .android к имени пакета. Таким образом, имя пакета теперь становится com.myname.mygame.android, из-за которого я не могу освободить приложение в качестве обновления. Что я могу сделать, чтобы изменить имя пакета?Изменить идентификатор пакета игры libGDX

EDIT

Согласно одному из ответов, размещенных здесь, я попытался изменить имя пакета основного модуля fromcom.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 и приложение не запускается.

ответ

10

большого спасибо ответа Саида, я был в состоянии для этого, но было еще одно, что мне нужно было сделать, чтобы приложение работало после изменения имени пакета. Я объясняю шаги здесь:

  1. Изменить имя пакета основного модуля от com.myname.mygame до com.myname.mygame.core
  2. Изменения пакета в манифесте package="com.myname.mygame"
  3. Move AndroidLauncher от com.myname.mygame.android до com.myname.mygame

Вышеперечисленных шагов решила проблему смены названия пакета, большое спасибо Саиду. Теперь приложение не запускалось. Затем я увидел, что команда установки была неправильной. Чтобы изменить это, просто перейдите на андроид приложения build.gradle и измените следующую строку:

commandLine "$adb", 'shell', 'am', 'start', '-n', 'com.myname.mygame.android/com.myname.mygame.android.AndroidLauncher' 

к:

commandLine "$adb", 'shell', 'am', 'start', '-n', 'com.myname.mygame/com.myname.mygame.AndroidLauncher' 

И вы готовы пойти !!!

6

Libgdx имеет эту архитектуру:

com.myname.mygame в качестве основного модуля

com.myname.mygame.android как андроид модуль

com.myname.mygame.desktop как модуль рабочего стола, и т.д..

Так что вам нужно реорганизовать их, например, изменение названия пакета основного модуля от com.myname.mygame до com.myname.mygame.core затем изменить пакет в манифесте package="com.myname.mygame" и двигаться AndroidLauncher от com.myname.mygame.android к com.myname.mygame

+0

Хорошо, я попробую это. :) –

+0

Можете ли вы рассказать мне, как реорганизовать основной модуль и изменить имя пакета в андроид-студии? –

+0

Щелкните правой кнопкой мыши по основной папке -> refactor -> rename –

Смежные вопросы