Почему не существует такой вещи, как InstantAppVariants?Как мне циклварианты в мгновенном приложении Gradle файл? - PullRequest
0 голосов
/ 02 января 2019
  • В модуле приложения мы можем использовать applicationVariants.
  • В функциональном модуле мы можем использовать featureVariants.
  • В библиотечном модуле мы можем использовать libraryVariatns.

Где instantAppVariants ???

ОБНОВЛЕНИЕ: предыстория: я хочу по-разному генерировать BuildConfig и versionCode / String для приложения и мгновенного приложения, но это не сработало, поэтому я попытался использовать варианты, чтобы увидеть, помогает ли это, но потом выясняю, что нет InstantAppVariant для меня, чтобы зациклить. варианты и обновить данные.

Ответы [ 2 ]

0 голосов
/ 04 января 2019

Я хочу сгенерировать BuildConfig и versionCode / String по-разному для приложения и мгновенного приложения

Использование productFlavors, пример:

application модуль:

productFlavors {
    instant {
        dimension rootProject.flavorDim
        minSdkVersion rootProject.minSdkInstant
        versionCode rootProject.versionCodeInstant
        versionName rootProject.versionNameInstant
    }
    installed {
        dimension rootProject.flavorDim
        minSdkVersion rootProject.minSdk
        versionCode rootProject.versionCode
        versionName rootProject.versionName
    }
}

feature модуль (и):

productFlavors {
    instant {
        dimension rootProject.flavorDim
        minSdkVersion rootProject.minSdkInstant
    }
    installed {
        dimension rootProject.flavorDim
        minSdkVersion rootProject.minSdk
    }
}

Теперь ваше:

  • установленное приложение имеет minSdk / versionCode/Name
  • и мгновенное приложение имеет minSdkInstant / versionCodeInstant/NameInstant

Вы можете поиграть с этим для других атрибутов, но вот несколько связанных сообщений:

Также документ на Настройка вариантов сборки

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

0 голосов
/ 02 января 2019

Основано на этом сайте ,

Когда приложение использует Instant Apps, это приложение делится на одно или больше функциональных модулей , каждый из которых содержится в отдельном Файл APK Каждая функция состоит из определенной области функциональность в приложении, обычно включающая одно или несколько действий экземпляров. Индивидуальные функции APK затем объединяются в мгновенное приложение APK, которое затем загружается в Google Play Developer Консоль.

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

Файл build.gradle для модуля мгновенного приложения, с другой стороны, будет использовать плагин com.android.instantapp для создания отдельных файлов APK для функций, на которые ссылаются в разделе зависимостей. Обратите внимание, что на зависимости функций ссылаются с помощью объявлений реализации проекта ():

apply plugin: 'com.android.instantapp'

dependencies {
    implementation project(':myappbase')
    implementation project(':myappfeature')
}
...