Install parse failed no certificates android studio

Что такое ошибка INSTALL_PARSE_FAILED_NO_CERTIFICATES?

Я пытался изменить свою деятельность по умолчанию / main / startup (независимо от того, что вы называете это), отредактировав файл androidmanifest.xml . Все, что я сделал, это изменить свойство android:name . Однако это полностью сломало все приложение. Когда я пытаюсь установить его сбой и читает

Ошибка установки: INSTALL_PARSE_FAILED_NO_CERTIFICATES

Когда я попытался изменить его на прежнее состояние, он все равно дал мне ту же ошибку … что я сделал.

Вы отредактировали файл AndroidManifest.xml непосредственно в файле .apk ? Если это так, это не сработает.

Каждый Android- .apk должен быть подписан, если он будет установлен на телефоне , даже если вы не устанавливаете его через Market. Инструменты разработки работают вокруг этого, подписываясь с сертификатом разработки, но .apk все еще подписан.

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

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

Я обнаружил, что это было вызвано моей версией JDK.

У меня была эта проблема с «муравей», и это было связано с этим ПРЕДУПРЕЖДЕНИЕМ, упомянутым в документации:

Внимание: с JDK 7 алгоритм подписывания по умолчанию изменился, и вам нужно указать алгоритмы подписи и дайджеста (-sigalg и -digestalg), когда вы подписываете APK.

У меня JDK 7. В моем журнале Ant я использовал -v для подробностей, и он показал

Я подписал JAR вручную и сделал zipaligned, но он дал немного другую ошибку:

Я нашел, что ответил здесь.

Как работать с INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES без удаления

Мне нужно было удалить его, а потом сработало!

Теперь мне нужно изменить файл build.xml, чтобы использовать эти параметры при подписании!

Итак, вот: C: \ Program Files \ Java \ android-sdk \ tools \ ant \ build.xml

Я обнаружил, что эта ошибка также может возникать при использовании неправильной конфигурации подписания. Как описано здесь , Android 7.0 представляет новую сигнатурную схему V2 . Схема V2 подписывает весь APK, а не только JAR, как это делается в схеме V1. Если вы подписываете только V2 и пытаетесь установить его на пре-7.0, вы получите эту ошибку, так как сами JAR не подписаны, а pre-7.0 PackageManager не может обнаружить наличие подписи V2 APK.

Чтобы быть совместимым со всеми целевыми системами, убедитесь, что APK подписан обеими схемами, проверив оба окна версии подписи в диалоговом окне « Генерировать подписанный APK» в Android Studio, как показано здесь:

Если ожидаются только 7.0 целей, то нет необходимости включать подпись V1.

(Для меня), используя в keytool аргументы

И использование в jarsigner

Решение найдено в

Какие существуют подписи для подписания Android APK?

Это уродливое, но быстрое решение: используйте JDK 6 вместо 7.

После того, как вы прочитали ответ Chloe, я удалил свой JDK 7 (в любом случае не нужен он в настоящее время) и установил JDK 6. Это исправило его. Лучшее решение позволит использовать ant JDK 6 (без удаления 7). Возможно, возможно изменение / установка этого свойства:

В файле local.properties. Он находится в каталоге проекта (root).

Android не работает с JDK 7 в любом случае (только 6 или 5), поэтому сделайте так, что скрипт ant также использует JDK 6 или 5, вероятно, является хорошим решением.

В большинстве случаев решение этой ошибки очень просто:

  1. Удалите apk.
  2. Очистите проект Android.
  3. Создайте свой проект Android.
  4. Установить / запустить apk

В моем случае я мог создавать и запускать сборки релизов, но при попытке выполнить отладочную сборку получил ошибку INSTALL_PARSE_FAILED_NO_CERTIFICATES .

Решение заключалось в том, чтобы удалить файл debug.keystore и позволить ADT воссоздать его. Похоже, что он истек.

Лучшим долгосрочным решением является создание debug.keystore , который не истекает через год, а не позволяет ADT создавать его. Вот команда для этого:

При появлении запроса введите следующие значения:

  • Имя и фамилия: Android Debug
  • Организационная единица: Android
  • Название организации: Неизвестно
  • Город или местность: Неизвестно
  • Штат или провинция: Неизвестно
  • Код страны: США

Исправлена ​​ошибка установки переменной среды JAVA_HOME в JDK 5 или 6 (вместо JDK 7).

Это может произойти, если вы попытаетесь включить библиотеку .jar , содержащую файл AndroidManifest.xml .

  • Если это чистая Java, убедитесь, что вы не включили ее в экспорт .jar
  • Если это не чистая Java (то есть это проект Android), тогда вы должны включить его в качестве проекта библиотеки
Читайте также:  Get the device id in android

Через некоторое время и несколько онлайн-потоков по этому вопросу мне удалось исправить мой проект.

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

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

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

Я получил эту ошибку, когда попытался установить проект Xamarin, созданный против предварительного просмотра Android N на телефоне под управлением api v23. Решение состоит в том, чтобы не делать этого.

Другой способ получить эту ошибку – построить с помощью ant на macOS и иметь файл значка Finder ( Icon\r ) в исходном дереве приложения. Похоже, что jarsigner не может справиться с возвратом каретки в имени файла и, хотя он будет требовать, чтобы подписание было действительным, если вы -verify APK, это всегда приводит к APK, который не устанавливается на устройстве. Как ни странно, плагин Google Drive Finder является отличным источником файлов значков Finder.

Решение состоит в том, чтобы исключить файлы-нарушители (которые в любом случае бесполезны в APK) с таким спецификатором в fileset :

Это связано с тем, что ранее созданная сборка и ток имеют конфликт в версии подписи между v1 (подпись jar) и v2 (полная подпись APK),

Исправить отметку правильной версии подписи в диалоговом окне «Создать подпись APK»

Источник

Что такое INSTALL PARSE FAILED NO CERTIFICATES error?

Я пытался изменить свою активность по умолчанию/main/startup (как бы Вы ее ни называли), отредактировав . Все, что я сделал, это изменил android:name собственность. однако это полностью сломало все приложение. когда я пытаюсь установить его, он терпит неудачу и читает.

ошибка установки: INSTALL_PARSE_FAILED_NO_CERTIFICATES

когда я попытался вернуть его в прежнее состояние, он все еще давал мне ту же ошибку. Что я наделал?

15 ответов

вы отредактировали AndroidManifest.xml непосредственно в ? Если так, то это не сработает.

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

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

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

Я обнаружил, что эта ошибка также может возникнуть при использовании неправильной конфигурации подписи. Как описано здесь, Android 7.0 представляет новую схему подписи,V2. Схема V2 подписывает весь APK, а не только банку, как это делается в схеме V1. Если вы подписываете только V2 и пытаетесь установить на целевой объект pre-7.0, вы получите эту ошибку, так как сами банки не подписаны и pre-7.0 PackageManager не удается обнаружить присутствие V2 apk подпись.

чтобы быть совместимым со всеми целевыми системами, убедитесь, что APK подписан с обеими схемами, проверив оба поля версии подписи в Android Studio создать подписанный APK диалоговое окно как показано ниже:

Если ожидаются только цели 7.0, то нет необходимости включать подпись V1.

я обнаружил, что это было вызвано моей версией JDK.

у меня была эта проблема с «ant» , и это было связано с этой осторожностью, упомянутой в документации:

внимание: начиная с JDK 7, алгоритм подписи по умолчанию изменился, требуя, чтобы вы указывали подписи и дайджест алгоритмов (- sigalg и-digestalg) при подписании АПК.

у меня есть JDK 7. В моем журнале муравьев я использовал -v для многословия, и он показал

Я подписал банку вручную и выровнял ее, но она дала немного другую ошибку:

Я нашел, что ответил Здесь.

мне нужно было только удалить его, а затем он работал!

теперь мне нужно только изменения.xml для использования этих параметров при подписании!

Ok вот он: C:\Program файлы\Java\android-sdk\tools\ant\build.в XML

Источник

How To Fix – “INSTALL_PARSE_FAILED_NO_CERTIFICATES” Error in Android Studio ?

How To Fix – “INSTALL_PARSE_FAILED_NO_CERTIFICATES” Error in Android Studio ?

In this post , we will see How To Fix – “INSTALL_PARSE_FAILED_NO_CERTIFICATES” Error in Android Studio. You see the below error in your Android Studio

Читайте также:  Навител для андроид уже взломанный

After developing an Android App , the obvious next step is to publish it for public use.

However to publish the App on Playstore , you do need to sign the app in Android Studio. Hence it is a mandatory step.

Option 1 – First Time User:

If you are using installing and setting up your Android Studio for the “First time”, you might have created a demo app in the process flow. Sometimes initially when you are setting up the Android Studio environment for the first time, things get a bit messed up while running the demo app in emulator . This leads to logging the error – “INSTALL_PARSE_FAILED_NO_CERTIFICATES”.

So try the below steps to fix –

  • Click File –> Open –> Note the Folder Location. This folder holds the project files of the demo app that you have created.
  • Close the Android Studio
  • Go to the Folder Location and delete the project folder and all the files therein (Here I am assuming it is just a first initial demo app project – not something immensely IMPORTANT or crucial)
  • Open the Android Studio now —> Start New Project —-> Create demo app again
  • Run the app through the android emulator again. Hopefully this time the error should vanish by now.

Option 2 – Build using “Make Project”:

Build —-> Make Project

The “Make Project” option is one of the build-variant . It Makes all the modules as part of the Build option to compile.

Option 3 – Signature Configuration:

The Signature configuration can also cause this issue especially if you are still using an older version of Android.

The older signature scheme V1 signs just the JAR.

The later signature scheme V2 signs the entire APK.

For Older version of Android Studio , to solve this issue , get the APK signed with both of these schemes by checking both signature version boxes in Android Studio’s Generate Signed APK dialog .

For Latest Versions of Android Studio , to Solve this issue , use the below steps –

I am assuming that you don’t already have an upload key. So Let’s generate one key using Android Studio as follows:

  • Go Menu —> Build —-> Generate Signed Bundle/APK.
  • A Dialog will popup. Select Android App Bundle or APK —-> click Next.
  • In the new popup, below the field for Key store path , click Create new.
  • A new window will popup. In this New Key Store window, provide the information for keystore and key
    • Key store path: Location where keystore should be created.
    • Password: Password for keystore.
    • Alias: Use some name for your key.
    • Password: Use some secure password for your key – Different from the keystore password.
    • Validity (years): key validity in years. Key should be valid for at least 25 years . This would help you to sign app updates with the same key for many years.
    • Certificate: Use info about yourself . This information will not be displayed in the app, but will be included in the certificate as part of the APK.
  • All done – click OK.

If you already have the key , export an existing app signing key, follow these steps:

  • Go to Build > Generate Signed Bundle/APK.
  • Select either Android App Bundle or APK and click Next.
  • Select Module from the drop down.
  • Use the path to your keystore, the alias for your key and passwords.
  • Click Next.
  • Next window , Give Destination folder name for signed app.
  • Choose build type.
  • Click Finish.

Источник

Что такое ошибка INSTALL_PARSE_FAILED_NO_CERTIFICATES?

Я пытался изменить активность по умолчанию / main / startup (как бы вы это ни называли), отредактировав androidmanifest.xml файл. Все, что я сделал, это сменил android:name собственность. однако, это полностью сломало все приложение. когда я пытаюсь установить это не удается и читает.

Ошибка установки: INSTALL_PARSE_FAILED_NO_CERTIFICATES

Когда я пытался вернуть его в прежнее состояние, он все еще давал мне ту же ошибку . Что я сделал?

Вы редактировали AndroidManifest.xml прямо в .apk файле? Если так, это не сработает.

Каждый Android .apk должен быть подписан, если он будет установлен на телефоне , даже если вы не устанавливаете через Маркет. Инструменты разработки работают вокруг этого путем подписания с сертификатом разработки, но .apk он все еще подписан.

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

Читайте также:  Уаз патриот мультимедийная система андроид

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

Я обнаружил, что эта ошибка теперь также может возникать при использовании неправильной конфигурации подписи. Как описано здесь , Android 7.0 представляет новую схему подписи, V2 . Схема V2 подписывает весь APK, а не только JAR, как это делается в схеме V1. Если вы подписываетесь только с V2 и пытаетесь установить на цели до 7.0, вы получите эту ошибку, так как сами JAR-файлы не подписаны, а PackageManager до 7.0 не может обнаружить присутствие подписи APK V2.

Чтобы быть совместимым со всеми целевыми системами, убедитесь, что APK подписан обеими схемами, отметив оба поля версии подписи в диалоговом окне « Создать подписанный APK» в Android Studio, как показано здесь:

Если ожидается только 7.0 целей, нет необходимости включать подпись V1.

Я обнаружил, что это было вызвано моей версией JDK.

У меня была эта проблема с ‘муравьем’, и это было из-за этого ВНИМАНИЯ, упомянутого в документации:

Предостережение: Начиная с JDK 7, алгоритм подписи по умолчанию изменился, и вам потребуется указывать алгоритмы подписи и дайджеста (-sigalg и -digestalg) при подписании APK.

У меня есть JDK 7. В моем журнале Ant я использовал -v для многословия, и он показал

Я подписал JAR вручную и zipaligned его, но это дало немного другую ошибку:

Я нашел, что ответил здесь.

Мне нужно было только удалить его, и тогда это сработало!

Теперь мне нужно только изменить build.xml, чтобы использовать эти параметры при подписании!

Хорошо, вот оно: C: \ Program Files \ Java \ android-sdk \ tools \ ant \ build.xml

В большинстве случаев решение этой ошибки действительно простое:

  1. Удалите ваш apk
  2. Очистите свой проект Android
  3. Создайте свой проект Android
  4. Установите / запустите ваш apk

решил (для меня) использование в keytool аргументов

и использовать в jarsigner

решение найдено в

Я также столкнулся с той же проблемой. Сначала я сгенерировал сборку с использованием V2 и установил ее на мобильных устройствах под управлением ОС 5.1, и у меня возникла та же проблема. Но сборка работала нормально на планшете под управлением ОС 7.0. Поэтому я сгенерировал сборку с подписью V1 Jar, и она отлично работала на обоих устройствах.

Вывод: если вы поддерживаете устройство ниже Android OS 7.0. Используйте V1 JAR подпись для генерации сборки.

В моем случае я мог собирать и запускать релизные сборки, но получил INSTALL_PARSE_FAILED_NO_CERTIFICATES ошибку при попытке сделать отладочную сборку.

Решением было удалить мой debug.keystore файл и позволить ADT восстановить его. Это очевидно истекло.

Лучшим долгосрочным решением является явное создание debug.keystore объекта, срок действия которого не истекает через год, вместо того, чтобы позволить ADT его создавать. Вот команда, чтобы сделать это:

При появлении запроса введите следующие значения:

  • Имя и фамилия: Android Debug
  • Организационное подразделение: Android
  • Наименование организации: Неизвестно
  • Город или местность: неизвестно
  • Штат или провинция: неизвестно
  • Код страны: США

Это уродливое, но быстрое решение: используйте JDK 6 вместо 7.

Прочитав ответ Хлои, я удалил свой JDK 7 (он сейчас не нужен) и установил JDK 6. Это исправило его. Лучшим решением было бы использование ant JDK 6 (без удаления 7). Возможно возможное изменение / настройка этого свойства:

в файле local.properties. Он находится в каталоге проекта (root).

Android в любом случае не работает с JDK 7 (только 6 или 5), поэтому хорошее решение — это то, что сценарий ant также использует JDK 6 или 5.

Это потому, что ранее сгенерированная сборка и текущая имеют конфликт в версии подписи между v1 (подпись jar) и v2 (полная подпись APK),

Чтобы установить правильную версию подписи в диалоге Generate Signed APK

Недавно у меня была эта ошибка при обновлении до Android Studio 4.0. Причиной было то, что в проекте была отключена подпись V2 в конфигурации подписи build.gradle .

Решением было удалить v2SigningEnabled false или явно установить его true , что является значением по умолчанию.

В более поздних версиях Android Studio 3.2+, если вы пытаетесь запустить release установку, и вы не определили какие-либо конфигурации подписи, будет отображаться сообщение об ошибке, и при установке произойдет сбой. Вам нужно либо запустить debug сборку, либо правильно настроить конфигурацию подписи (V1 или V2).

большинство ответов верны. и некоторые другие причины, которые происходят, являются

► ваш мин SDK меньше, чем устройство SDK.
► на вашем устройстве установлено старое приложение с тем же именем пакета

Источник

Оцените статью