Приложение Android Studio Signed APK не устанавливается

Я знаю, что есть и другие подобные вопросы, но я не нашел решения своей проблемы. Я убедился, что на моем телефоне еще не было предыдущей установки приложения (тестирование на Galaxy S6), в Android Studio на вкладке «Варианты сборки» я переключил модуль на выпуск (у меня также есть модуль Firebase и MainlibProj, должен Я тоже переключаю их на релиз?) и когда я пытаюсь установить его, я получаю это в logcat:

07-07 17:25:40.807 3506-3553/? W/PackageManager: Не удалось собрать во время installPackageLI android.content.pm.PackageParser$PackageParserException: Пакет /data/app/vmdl13968685.tmp/base.apk не имеет сертификатов на входе AndroidManifest.xml в android.content.pm.PackageParser.collectCertificates( PackageParser.java:1127) по адресу android.content.pm.PackageParser.collectCertificates(PackageParser.java:1077) по адресу com.android.server.pm.PackageManagerService.installPackageLI(PackageManagerService.java:14349) по адресу com.android.server.pm .PackageManagerService.access$2600(PackageManagerService.java:333) на com.android.server.pm.PackageManagerService$8.run(PackageManagerService.java:11894) на android.os.Handler.handleCallback(Handler.java:739) на android. os.Handler.dispatchMessage(Handler.java:95) в android.os.Looper.loop(Looper.java:145) в android.os.HandlerThread.run(HandlerThread.java:61) в com.android.server.ServiceThread .run(ServiceThread.java:46)

Я также получаю: InstallAppProgress: Код ошибки установки: -103

Это не полная трассировка стека, а только то, что выводится, когда я получаю уведомление: приложение не установлено.

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


person fourthking    schedule 07.07.2017    source источник
comment
Вы используете подпись v2?   -  person ATEF    schedule 08.07.2017
comment
да, когда я нажимаю «Создать подписанный apk», у меня v2 проверяется на полную подпись apk.   -  person fourthking    schedule 10.07.2017
comment
к вашему сведению, public static final int INSTALL_PARSE_FAILED_NO_CERTIFICATES = -103; так что вы могли бы также проверить этот вопрос   -  person    schedule 21.07.2019


Ответы (1)


Хорошо, кажется, я решил проблему.

Когда я создаю подписанный APK, мне нужно отметить как V1, так и V2. Раньше я проверял только V2, но не совсем уверен, почему я также проверял V1, исправил это.

person fourthking    schedule 10.07.2017
comment
Использование V1 и V2, вероятно, сработало, потому что целевая ОС была до версии 7.0. См. source.android.com/security/apksigning. - person J Smith; 22.04.2020