Подписание базового модуля приложения и модуля динамических функций
В официальном руководстве Google для App Bundle: https://developer.android.com/guide/app-bundle/configure говорится, что информацию о подписи нужно указывать только в файле build.config базового модуля. Информация о подписи динамического модуля идет вместе с базовым модулем.
Я использую свой собственный файл хранилища ключей, поэтому в базовый модуль я включаю только signatureConfig. Однако, когда я собираю и запускаю приложение на устройстве, оно всегда выдает ошибку:
Установка не удалась с сообщением Не удалось завершить сеанс: INSTALL_FAILED_INVALID_APK: /data/app/vmdl538875391.tmp/1_feature_-debug подписи не согласованы. Вполне возможно, что эта проблема решена путем удаления существующей версии apk, если она присутствует, а затем повторной установки.
Когда я включаю подписывающую информацию в динамический модуль, ошибка исчезает. Так что это противоречит официальному руководству? Или я здесь что-то сделал неправильно?
2 ответа
Проблема вызвана настройкой в Edit Configuration. Чтобы включить только подписывающую информацию в базовый модуль пакета, мне нужно выбрать "APK из комплекта приложения", а не "APK по умолчанию". В противном случае Android Studio будет использовать информацию о подписи для подписания APK вместо пакета.
Сделай это так
меню "Построить"
запустить "Перестроить проект".
Затем запустите приложение на устройстве или эмуляторе
или если вышеуказанное решение не работает.
Тогда попробуй это
Отключите Мгновенный запуск в Android Studio и затем Очистите, Перестройте и Запустите, Это должно решить эту проблему.