Создать режим выпуска приложения для Android - PullRequest
18 голосов
/ 28 октября 2011

Я хочу создать свое Android-приложение в режиме релиза. Я сделал предложенный экспорт из Eclipse. Инструменты Android -> Экспортировать неназначенные (затем подписали, выровняли и т. Д.) Я думал, что экспорт даст мне приложение режима выпуска. Я проверил на диске, и размер .apk точно такой же, как и тот, который я получаю при обычной компиляции в Eclipse.
Далее я установил его в эмуляторе с помощью> adb install myapp.apk, затем попытался подключиться к приложению в отладчике Eclipse и убедился, что он достиг моей точки останова. Так что я убежден, что у меня действительно есть отладочная версия. Вопрос в том, как я могу создать версию приложения в режиме выпуска из Eclipse до подписания и отправки на рынок?

Редактировать

Если я регистрирую его, флаг отладки отключается при экспорте, а также при запуске из Eclipse. Если я явно не установил его в значение true в разделе приложения Manifest. Кажется, режим отладки / выпуска - это просто флаг вкл / выкл. Больше ничего не делает, я могу установить точки останова и отладить обе версии. В результате .apk имеет тот же размер.

cxLog.e( "TOKEN", " Debuggable=" + (( context.getPackageManager().getApplicationInfo( comp.getPackageName(), 0 ).flags &= ApplicationInfo.FLAG_DEBUGGABLE ) != 0 ) ); 

10-28 14: 46: 12.479: ОШИБКА / ТОКЕН (1856): отладка = ложь

Ответы [ 3 ]

16 голосов
/ 28 октября 2011

Вопрос в том, как мне создать версию релиза моего приложения из Eclipse

Проверьте это: Скомпилируйте приложение в режиме релиза

Инструменты Android> Экспорт пакета неподписанного приложения


Поддержка истинной отладочной сборки .Разработчикам больше не нужно добавлять атрибут android: debuggable к тегу в манифесте - инструменты сборки добавляют атрибут автоматически.В Eclipse / ADT предполагается, что все инкрементные сборки являются отладочными, поэтому инструменты вставляют android: debuggable = "true".При экспорте подписанной сборки выпуска инструменты не добавляют атрибут.В Ant команда ant debug автоматически вставляет атрибут android: debuggable = "true", а команда ant release - нет.Если android: debuggable = "true" установлено вручную, тогда ant release фактически будет выполнять отладочную сборку, а не сборку выпуска.

4 голосов
/ 14 мая 2014

Если вы хотите, чтобы SIGNED IN и ZIP ALIGNED ваше приложение в режиме выпуска, чтобы оно могло распространяться и могло быть обновлено в магазине Google Play, просто выполните следующие шаги.

 --> Right click on project
 --> Android Tools
 --> Export Unassigned app and save in directory like D:\Sdcard.apk

         //Now open your windows terminal, CMD
 --> change directory to the bin of the jave like
 --> cd c:\ProgramFiles\JAVA\JDK\bin

Теперь этопора создать выпущенный файл хранилища ключей ... теперь запишите эти команды в ТЕРМИНАЛ,

keytool -genkey -v -keystore my-release-key.keystore-keyalg RSA -keysize 2048 -validity 14600

Это будет действовать для Keystore"пароль" и для Ключ"пароль", поэтому введитедругой пароль и ответ на вопрос, который он задаст позже.Теперь файл my-release-key.keystore будет сгенерирован в каталоге, где находится ваша папка "bin" из java, как в моем sytstem это будет похоже на

     c:\ProgramFiles\JAVA\JDK\bin\ my-release-key.keystore

написать эту командув терминале для подписанных в приложении

jarsigner -verbose -keystore my-release-key.keystore D: \ Sdcard.apk mykey

Теперь перенаправьте свой терминал в файл Zipalign.exe, который находится в Android SDK 21 \ Tool \, как в моей системе я сделал это

CD F: \ Softwares \ LANGUAGES SOFTEARE \ Android Setup \ android-sdk-21 version \ tools

После этого поместите указанную ниже строку в терминал

zipalign -v 4 D: \ Sdcard.apk newSdcard.apk

Поздравляем!- Теперь вы найдете файл newSdcard.apk внутри инструмента Android SDK \, теперь загрузите его в магазин игр и вспомните меня с любовью.?

1 голос
/ 17 апреля 2013

В текущих версиях Android SDK просто щелкните проект правой кнопкой мыши, выберите «Инструменты Android»> «Экспорт пакета подписанных приложений» и выберите хранилище ключей

...