Saya mencoba menginstal ulang apk
$adb install -r new.apk
Dan itu menunjukkan kesalahan:
Failure [INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES]
Salah satu solusinya adalah menghapus dan menginstal new.apk, yang berfungsi dengan baik.
Tetapi saya bertanya-tanya apakah saya dapat membangun kembali apk dan menginstal ulang tanpa menghapus instalasi. Misalnya. ubah beberapa konfigurasi di AndroidManifest.xml, atau tidak masuk APK, dll.
Akan sangat dihargai jika Anda dapat memberi tahu saya seluruh arti dari "INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES".
Jawaban:
Ini berarti salinan baru aplikasi Anda (pada mesin pengembangan Anda) ditandatangani dengan kunci penandatanganan yang berbeda dari salinan lama aplikasi Anda (diinstal pada perangkat / emulator). Misalnya, jika ini adalah perangkat, Anda mungkin telah meletakkan salinan lama dari mesin pengembangan yang berbeda (misalnya, beberapa mesin pengembang lain). Atau, yang lama ditandatangani dengan kunci produksi Anda dan yang baru ditandatangani dengan kunci debug Anda.
sumber
debug.keystore
) ke mesin baru Anda.debug.keystore
tidak ada dalam direktori proyek Anda. Biasanya di~/.android/
direktori Anda . (lihat developer.android.com/guide/publishing/… )debug.keystore
). Pilih satu untuk menjadi master keystore Anda, salin ke semua mesin pengembang lainnya, ganti keystore yang ada.debug.keystore
). Setelah saya membangun kembali proyek (menggunakan Build-> Rebuild di Android Studio) kunci-kunci itu kemudian disinkronkan.Saya mengalami ini saat menguji pada Xoom baru. Saya sebelumnya telah menginstal aplikasi saya dari Marketplace. Kemudian ketika mencoba menguji versi baru dari aplikasi saya mengalami kesalahan ini.
Saya memperbaikinya dengan menghapus aplikasi yang diinstal melalui Marketplace (cukup tahan dan seret ke tempat sampah). Setelah itu saya dapat menggunakan versi pengembangan saya tanpa masalah.
sumber
Ini terjadi pada saya ketika pengembang lain di tim membangun aplikasi kami pada perangkat perangkat keras yang saya coba gunakan. Menghapus instalan aplikasi dari perangkat keras memperbaiki masalah saya.
sumber
adb uninstall <package name>
. Terima kasih.Ini adalah perintah untuk menghapus aplikasi dari perangkat menggunakan adb:
sumber
Saya mendapatkan kesalahan ini bahkan setelah menghapus APK yang asli, yang membingungkan. Akhirnya saya menyadari bahwa saya telah mengatur beberapa pengguna pada Nexus 7 saya untuk pengujian dan bahwa aplikasi tersebut masih diinstal untuk salah satu pengguna lain. Setelah saya uninstall untuk semua pengguna kesalahan hilang.
sumber
Saya mengubah nama paket saat mengode pembaruan sehingga saya bisa men-debugnya di perangkat saya melalui Eclipse, tanpa menghapus versi lama yang diinstal. Tanpa mengembalikan nama paket yang saya gunakan ketika mencoba menginstal ulang, saya mendapatkan kesalahan yang sama. Menggunakan nama paket yang sama instal ulang berhasil.
sumber
Hapus saja bangunan lama dari perangkat dan instal ulang yang sama. Karena device.keystore sudah ada di perangkat, jadi cukup hapus instalan dan instal ulang APK itu saja ..
Terima kasih
sumber
Saya menghadapi kasus penggunaan lain di mana saya mendapatkan kesalahan serupa. Ketika pada awalnya saya mendapatkan kesalahan, saya panik, dan dihapus
/data/data/{package.name}
setelah itu saya mencoba, dan masalah saya masih ada. Lalu saya coba uninstall, ternyata gagal.Saya kemudian menghapus file apk yang ada di
/system/app
(akses root yang diperlukan), dan mencoba uninstall dan berhasil.Setelah itu saya mencoba menginstal ulang apk, itu berhasil.
sumber
Untuk apa nilainya, saya mengalami masalah ini setelah menambahkan plugin baru ke proyek Cordova saya. Saya telah memiliki cordova do build dan instal langsung pada perangkat melalui USB.
Saya memperbaikinya dengan mencopot aplikasi dari perangkat dan pada penyebaran berikutnya tidak ada masalah.
sumber
Jika Anda mengalami kegagalan penyebaran ke perangkat Andorid atau emulator dengan kesalahan "Gagal [INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES]" di Window Output, cukup hapus aplikasi yang ada pada perangkat atau emulator dan penempatan ulang. Debug build akan menggunakan sertifikat debug sedangkan Release build akan menggunakan sertifikat yang Anda konfigurasikan. Kesalahan ini hanya memberi tahu Anda bahwa sertifikat aplikasi yang diinstal pada perangkat berbeda dari yang Anda coba instal. Dalam skenario non-pengembangan (app store), ini bisa menjadi indikator aplikasi yang rusak atau dimodifikasi tidak aman untuk dipasang pada perangkat.
sumber
Tidak ada yang dari atas yang bekerja untuk saya. Masalahnya bagi saya adalah bahwa saya memiliki sumber yang salah di Java Build Path untuk android-support-v7-appcompat. Ketika Anda pergi ke Project> Build Path> Configure Build Path>. Di bawah tab Source pastikan Anda memiliki android-support-v7-appcompat / gen, android-support-v7-appcompat / libs dan android-support-v7-appcompat / src dan tidak ada yang lain. Klik OK dan itu akan berfungsi.
sumber
Saya memiliki kesalahan yang sama hari ini, tetapi masalahnya tidak persis sama. Saya menggunakan ADB dengan Android yang diinstal di VirtualBox . Saya mencoba menginstal berbagai versi aplikasi saya (masuk / tidak masuk, mode debug / rilis) dan mendapat dua kesalahan sebagai alternatif:
INSTALL_FAILED_UID_CHANGED
danINSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES
.Sekarang, ketika melihat
/data/data/{package.name}
, saya menemukan banyak file yang masih ada setelah menghapus aplikasi. Saya mencobarm -rf
mereka tanpa hasil: Saya mendapat kesalahan I / O.Solusi untuk ini adalah:
vdfuse
(baca / tulis)Partition1
file gambar dengane2fsck
sumber
Saya memiliki masalah yang sama sampai saya menyadari bahwa saya menjalankan simulator dan adb sedang mencoba untuk menginstalnya
sumber
Karena verifikasi didasarkan pada nama paket, Anda dapat mengubah nama paket di dalam config.xml Anda atau file manifes untuk nama lain yang Anda inginkan.
Saat menerbitkan aplikasi Anda jangan lupa untuk mengubah kembali nama!
sumber
Saya punya masalah ini mencoba menjalankan tugas gradle
connectedDebugAndoidTest
(atauconnectedAndroidTest
) pada Genymotion . Menjalankannya pada emulator normal memecahkan masalah.sumber
Saya pikir, aplikasi Anda diinstal oleh akun lain. (Beberapa fitur mode akun) Anda dapat menghapus aplikasi dalam Pengaturan> Aplikasi> "nama aplikasi"> Copot pemasangan
sumber