Как установить Debug и Release apk на одном устройстве? - PullRequest
23 голосов
/ 07 сентября 2011

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

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

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

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

Знаете ли вы какой-нибудь способ обойти это?

Креативные решения и идеи приветствуются.

Ответы [ 5 ]

8 голосов
/ 27 февраля 2015

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

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

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

2 голосов
/ 07 сентября 2011

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

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

2 голосов
/ 07 сентября 2011

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

0 голосов
/ 14 августа 2015

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

0 голосов
/ 27 января 2012

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

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

Другая интересная такая попытка может быть найдена в этой теме .Хотя я не уверен, работает ли он на Android.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...