Подтвердить что ты не робот

Как иметь и Debug и Release apk на одном устройстве?

Продолжая разрабатывать мое приложение и тестировать на реальном телефоне, мне нужно иметь версию релиза на том же телефоне для демонстрационных целей (версия выпуска гораздо более отзывчива, благодаря отсутствию журналов).

Проблема заключается в том, что единственный способ сделать два приложения сосуществующими на одном устройстве в Android - это разные имена пакетов.

Но имена пакетов требуют повторного факторинга и много распространенных исправлений вручную... не говоря уже о том, что это путает контроль версий...

В идеале Eclipse + ADT позволяет добавлять переменную-модификатор, которая автоматически генерирует другое имя пакета для debug/release и позволит такое совместное существование, но я не смог найти какой-либо механизм, который бы это сделал.

Знаете ли вы, как это можно обойти?

Приветствуем творческие решения и идеи.

4b9b3361

Ответ 1

Вы можете попробовать эту технику, используя ant, Jenkins и, возможно, другие инструменты для автоматизации переименования пакетов, предложенные @LAS_VEGAS.

Хотя это не то, что вы просили, этот классный фрагмент кода может помочь вам узнать во время выполнения, отлаживается ли ваш код или отлаживается его.

Еще одна интересная такая попытка может быть найдена в этой теме. Я не уверен, хотя, если он работает на Android.

Ответ 2

Использовать Android Studio как gradle сделать вашу жизнь намного проще, просто используйте applicationIdSuffix

android {  
   ...  
   buildTypes {  
     release {...}  
     debug {  
       applicationIdSuffix '.debug' 
     }  
   }  
}

Подробнее... здесь.

Ответ 3

Единственное, что я знаю, это изменить имя пакета в файле манифеста приложений. Eclipse должен обрабатывать все переименование кода для вас.

Ответ 4

Не могли бы вы поместить весь свой код в Проект библиотеки, а затем просто иметь два обычных проекта, которые имеют разные имена пакетов и просто включают проект библиотеки в обоих?

Это должно содержать весь ваш код в одном месте. Обычным проектам, скорее всего, нужен только действительный файл манифеста, который указывает на деятельности в проекте библиотеки.

Ответ 5

В Android Studio добавьте варианты сборки, используя Product Flavors, которые можно легко настроить для различных сред и протестировать бок о бок несколько вариантов приложения того же приложения. Проверьте эту ссылку для получения дополнительной информации - Конфигурирование Gradle