2016-05-03 14 views
2

Я разрабатываю приложение для Android, и пришло время, когда новые функции должны быть протестированы в той же среде, которая обслуживает производственное приложение.Как разработать производственные и бета-версии одного и того же приложения для установки в одном устройстве

Я попытался создать новую ветку и переименовав его .testing в манифесте и Gradle файлов, но я Хавин проблемы с провайдером, в частности, заявил:

I/dalvikvm: Could not find method android.app.Fragment.setSharedElementEnterTransition, referenced from method com.corp.app.AccountFrag.access$super 

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

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

Заранее благодарим за понимание.

+1

Используйте собственный тип 'beta', с другим' applicationIdSuffix'. – CommonsWare

ответ

3

Для использования бета-версии следует использовать другой тип сборки.

В build.gradle вашего модуля приложения,

android { 

buildTypes { 
     beta { 
      applicationIdSuffix ".beta" 
      versionNameSuffix "-beta" 
      resValue "string", "app_name", "Beta App" 
     } 
     debug { 

     } 
     release { 

     } 
    } 
} 

Здесь мы добавляем суффикс «бета» в ApplicationID вашего приложения. Таким образом, у вас может быть 2 варианта вашего приложения. Если вы хотите более двух вариантов в одном мобильном устройстве, просто добавьте еще один вариант с другим суффиксом.

Чтобы использовать имя пакета в AndroidManifest, используйте ${applicationId} вместо com.example.dinesh. Если вы хотите использовать имя пакета в java-классах, используйте BuildConfig.APPLICATION_ID.

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

+0

Спасибо за ответ, но я не понимаю. Я добавил этот код в свой файл build.gradle, но не знаю, как скомпилировать и сгенерировать разные версии. – Graph

+0

см. Здесь: https://medium.com/yplan-eng/how-to-have-debug-beta-and-prod-builds-installed-at-the-same-time-696ec4c76211#.prq9repcw – Bob

+1

донизу в левом углу Android Studio вы можете увидеть опцию «Build Variants». Нажмите на него и выберите вариант сборки, который вы хотите запустить сейчас. см. изображение здесь: https://cms-assets.tutsplus.com/uploads/users/798/posts/25005/image/buildvariants.png – Bob

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