Aplikasi iOS 'Aplikasi tidak dapat diverifikasi' hanya di satu perangkat

235

Saya memiliki dua perangkat iphone (4s dan 5) yang terhubung ke komputer saya dan saya mencoba untuk menginstal aplikasi di kedua perangkat. Ini menginstal cukup baik di iphone 5 tetapi memberikan kesalahan ' The application could not be verified.' ketika mencoba menginstal di perangkat iphone 4s.

UDID dari kedua perangkat telah ditambahkan dalam profil penyediaan yang dihasilkan untuk aplikasi.

Juga, untuk menambahkan catatan, saya baru saja memperbarui versi iphone saya ke 8.1.3 di perangkat 4s saya. Namun saya tidak yakin apakah kesalahan itu ada hubungannya dengan itu.

Bantuan apa pun akan sangat dihargai. Saya telah terjebak pada ini selama beberapa waktu sekarang.

EDIT:

Saya baru saja menghubungkan ini ke perangkat iPhone lain dan masalahnya sepertinya ada di sana lagi. Pada dasarnya ini berarti aplikasi, untuk beberapa alasan, hanya menginstal di telepon yang telah saya gunakan untuk beberapa waktu sekarang dan tidak di telepon lain. Sekali lagi, saya cukup yakin bahwa profil penyediaan berisi UDID dari ketiga perangkat ini.

Sunil
sumber

Jawaban:

479

Saya memiliki sesuatu yang serupa terjadi pada saya baru-baru ini. Saya memperbarui iPhone saya ke 8.1.3, dan mulai mendapatkan pesan kesalahan 'aplikasi tidak dapat diverifikasi' dari Xcode pada aplikasi yang diinstal dengan baik pada perangkat iOS yang sama dari Mac yang sama hanya beberapa hari yang lalu.

Saya menghapus aplikasi dari perangkat, memulai ulang Xcode, dan aplikasi kemudian diinstal pada perangkat dengan baik tanpa pesan kesalahan. Tidak yakin apakah menghapus aplikasi adalah perbaikannya, atau masalahnya adalah karena "fase bulan".

hotpaw2
sumber
Saya tidak punya aplikasi saya di telepon untuk menghapus dan mencoba :) Ini adalah upaya instalasi pertama saya di perangkat ini.
Sunil
Terima kasih! Saya telah membungkukkan kepala saya mencoba mencari tahu mengapa ini tidak berhasil pada simulator. Saya berharap Apple akan mengizinkan pengembangan penuh menggunakan simulator untuk semua operasi.
Christopher Wade Cantley
Ada juga laporan yang menghapus dan menginstal ulang satu aplikasi uji pengembang diizinkan aplikasi uji pengembang lain (tidak dihapus) untuk menginstal ulang dari Xcode tanpa pesan kesalahan.
hotpaw2
Satu tebakan acak adalah bahwa setiap pemasangan aplikasi yang lama meninggalkan sesuatu (tidak didokumentasikan oleh Apple) di belakang yang tidak disukai oleh metode checksum atau penandatanganan kode 8.1+ yang lebih baru, sehingga mengira pemasangan baru itu rusak. Menghapus aplikasi lama menghilangkan apa pun yang tertinggal.
hotpaw2
2
Aplikasi tidak menginstal. Bagaimana Anda bisa menghapusnya? Bagaimana ini dapat dianggap sebagai jawaban yang valid?
BTRUE
116

Seperti yang saya perhatikan Aplikasi tidak dapat diverifikasi. angkat karena di perangkat Anda sudah ada aplikasi yang diinstal dengan pengenal bundel yang sama.

Saya mendapat masalah ini karena di perangkat saya ada aplikasi saya yang mengunduh dari App store. dan saya menguji Versi pembaruan dari Xcode. Dan saya menggunakan pengidentifikasi yang sama yaitu aplikasi langsung dan aplikasi pengujian pengembangan saya. Jadi saya hanya menghapus aplikasi Live app-store dari perangkat saya dan kesalahan ini akan diperbaiki.

Nitin Gohel
sumber
2
Terima kasih! Dalam kasus saya, saya mengunduh aplikasi dari toko apel tetapi kemudian ingin membuatnya dari sumber dan profil di perangkat.
Valentin Simonov
1
Ini bekerja untuk saya .. harus menghapus aplikasi yang sudah diinstal.
sach
9
Yup, ini juga bekerja untuk saya. Serius, ini mengganggu saya. Setiap tahun Apple dengan bangga mengumumkan betapa indahnya Xcode terbaru, tetapi masih menghasilkan pesan yang paling tidak berguna dari lingkungan pengembangan mana pun. "Aplikasi tidak dapat diverifikasi." Bagaimana sih kalimat itu ditautkan ke "Anda sudah memiliki versi App Store dari aplikasi ini yang diinstal pada perangkat Anda." Putus asa. Grrrr ...
Mike Gledhill
ya milikku sudah diperbaiki dengan menghapus build sebelumnya dari ponsel. pesan xcode adalah omong kosong.
Randy L
2
Menghapusnya tidak membantu untuk menguji jalur aplikasi 'peningkatan'
bandejapaisa
55

hapus saja aplikasi dan coba lagi, itu terjadi pada saya ketika saya mencoba meluncurkan perangkat yang memiliki aplikasi yang sama tetapi dihasilkan oleh file ipa.

Jorge Balleza
sumber
ya, saya baru saja menghapus aplikasi dan berfungsi dengan baik untuk saya juga, terima kasih.
raduken
3
Tetapi bagaimana jika pengguna ingin meningkatkan aplikasi?
Ahmed
25

Anda mungkin menggunakan opsi "Perbaiki Masalah" di Xcode saat menghubungkan perangkat baru. Pertanyaan lama tapi saya percaya ini adalah jawaban sebenarnya untuk MENGAPA ini terjadi. Ketika Anda menginstal aplikasi pada perangkat, itu ditandatangani dengan profil penyediaan pengembangan tertentu. Jika, misalnya, Anda mencolokkan perangkat lain yang tidak terdaftar di akun pengembang Anda Xcode akan meminta Anda untuk "memperbaiki masalah". Ketika Anda menekan bahwa perangkat ditambahkan dan profil penyediaan lain dibuat / dimodifikasi. Jika Anda mencoba menimpa aplikasi yang ada, Anda akan menerima kesalahan itu. Menghapus aplikasi dan menginstalnya kembali berfungsi sejak profil telah diubah. Saya menemukan ini sering terjadi ketika Tim diatur dan anggota memasang perangkat baru kemudian Xcode "Memperbaiki" masalah.

Mark McCorkle
sumber
1
itu tidak selalu terkait dengan perangkat baru, itu juga dapat terjadi jika Anda mengganti "Tim" di bagian Umum> Identitas Xcode. Meskipun prompt "Perbaiki Masalah" muncul untuk saya, saya menggunakan ponsel ini sebelumnya dengan akun dev saya, jadi itu pasti dari mengubah akun dev dalam kasus saya.
whyoz
Ini dapat terjadi jika hak "Berbagi gantungan kunci" diaktifkan.
Kof
Saya senang setelah mengaktifkan iCloud di Capabilities. "Masalah perbaikan" terkait membuat hak baru, yang bisa menjadi penyebab sebenarnya. Menghapus dan menginstal ulang aplikasi membantu.
Greg
9

Mungkin sudah mengetahuinya ... Menghapus aplikasi dari perangkat bekerja untuk saya, seperti yang disebutkan sebelumnya (terima kasih!).

Saya pikir alasannya adalah bahwa aplikasi pada perangkat itu sebenarnya ditandatangani dengan profil penyediaan yang terpisah, khususnya profil distribusi dalam kasus saya.

Morieris
sumber
7

Bagi orang lain yang tidak menggunakan RubyMotion dan tidak berpikir bahwa menghapus aplikasi dapat diterima (seperti, Anda ingin melakukan pengujian peningkatan). Lihat bagian bawah dokumen ini dari Apple:

https://developer.apple.com/library/ios/technotes/tn2319/_index.html

Sepertinya mereka mengubah sesuatu di 8.1.3 untuk memeriksa aturan baru ini.

Cara Mengatasinya

"[Tambahkan] nilai pengenal aplikasi aplikasi yang diinstal, seperti yang dicatat dalam tanda kurung kedua, ke nilai array kepemilikan aplikasi pengidentifikasi sebelumnya untuk aplikasi yang diinstal (dengan mengundurkan diri atau membangun kembali) dan meminta profil penyediaan khusus baru seperti yang ditunjukkan di bawah ini. "

<key>previous-application-identifiers</key>
<array>
    <string>{Your Old App ID Prefix}.YourApp.Bundle.ID</string>
</array>

EDIT:

Untuk melakukan ini, Anda memerlukan profil penyediaan khusus. Anda dapat meminta ini dari Apple: "Untuk mengaktifkan penandatanganan dengan pengidentifikasi aplikasi-hak sebelumnya, diperlukan profil penyediaan khusus baru yang dapat diperoleh dengan membuka halaman Kontak AS dan memintanya." (dari dokumen yang ditautkan di atas).

banyak sekali
sumber
Ini harus diterima sebagai jawaban, karena menghapus aplikasi bukanlah solusi, tetapi menyelesaikan masalah.
Lukasz
dapatkah Anda menjelaskan secara singkat di mana kami perlu berubah? Saya mengalami masalah yang sama.
Maulik
Saya bukan ahli dalam hal ini, tapi saya pikir itu hanya fitur keamanan baru yang ditambahkan apple ke os. Agak masuk akal bahwa Anda seharusnya tidak dapat mengesampingkan aplikasi dengan bundle-id yang berbeda, tetapi mereka menyadari bahwa itu akan diperlukan untuk pengujian sehingga menyertakan solusi ini. Sayangnya, karena itu melibatkan menghubungi apel, saya tidak berpikir solusinya cukup baik dari apel ...
plivesey
Dari sudut pandang kami, ini pada dasarnya hanyalah persyaratan lain untuk pengujian peningkatan.
Plivesey
@plivesey Juga penting bagi saya untuk dapat melakukan ini tanpa menghapus aplikasi (banyak data pengujian yang berharga, dll ...) dan menemukan solusi yang lebih sederhana: stackoverflow.com/a/30617406/229229
Lukasz
6

Saya sering menghadapi masalah ini. Saya tidak yakin apakah ini masalahnya, tetapi saya pikir, ketika xCode melihat bahwa ada aplikasi dengan pengenal bundel yang sama pada aplikasi, saya mencoba untuk menginstal, itu tidak memungkinkan saya. Jadi, saya harus menghapus yang lebih lama dan berusaha menginstal dan itu berhasil. Namun terkadang untuk tujuan pengujian, saya memerlukan beberapa versi aplikasi yang sama dan dalam hal ini, saya akan mengubah pengidentifikasi bundel dan mencoba menginstalnya. Ini hanya berfungsi jika, saya menggunakan profil penyediaan wildcard.

Natasha
sumber
Ya, biasanya terjadi setelah menambahkan hak
brainray
4

Memiliki masalah yang sama di iPad saya yang menjalankan 8.1.3 Menghapus aplikasi dan menginstal lagi memperbaiki masalah. Saya menggunakan dua profil penyediaan berbeda pada dua mesin yang berbeda dan itu bisa menyebabkan masalah ini.

Krishnaprasad Jagadish
sumber
3

Solusi yang berfungsi & teruji, yang tidak perlu menghapus aplikasi:

Sepertinya Profil Penyediaan AppStore Distribusi atau hanya sertifikat Distribusi iOS memiliki izin khusus dan masalah "Tidak dapat diverifikasi ..." tidak berlaku untuk mereka. Mereka akan selalu mengesampingkan sertifikat sebelumnya .

Dengan kata lain: rilis AppStore akan berhasil diinstal, meskipun aplikasi yang sudah diinstal (pengujian, adhoc atau perusahaan) telah ditandatangani oleh sertifikat dari tim yang berbeda.

Jika Anda beruntung dan sebelumnya telah mengunggah aplikasi ke akun AppStore yang dimiliki oleh tim yang sama dengan sertifikat, Anda memiliki masalah dengan - maka semuanya sangat sederhana: cukup unduh & instal aplikasi dari AppStore.

Saat dipasang - sertifikat aplikasi akan sama dengan yang ingin Anda uji dan masalahnya hilang.

Jika aplikasi Anda belum di AppStore - iTunesConnect beta datang untuk menyelamatkan :

Penafian : Saya tidak menguji ini tetapi karena cert a prev sama dengan rilis AppStore, saya yakin itu berfungsi:

  1. Arsipkan aplikasi Anda dengan profil penyediaan AppStore (sertifikat Distribusi iOS) dan unggah ke iTunesConnect (ke akun yang dimiliki oleh tim pengembang yang sama dengan yang termasuk dalam profil penyediaan yang tidak ingin Anda jalankan).
  2. Undang orang dengan perangkat yang ingin Anda jalankan (sendiri?) Ke pengujian beta.
  3. Unduh & instal aplikasi dari iTunes connect beta.
  4. Sekarang Anda dapat menginstal versi pengujian Anda.
Lukasz
sumber
3

Aplikasi tidak dapat diverifikasi ", di perangkat Anda mungkin sudah ada aplikasi yang diinstal dengan pengenal bundel yang sama.

Solusi Jadi Sederhana Cukup hapus Aplikasi & coba lagi .. ....

Aks
sumber
2

TL; DR answer - Tidak ada solusi nyata selain "hapus aplikasi dan instal ulang".

Jawaban ini tidak memuaskan untuk banyak situasi, ketika Anda memiliki database yang sudah ada yang tidak perlu dihapus dalam aplikasi.

Lukasz dan plivesey adalah satu-satunya yang memiliki solusi yang tidak memerlukan penghapusan, tetapi tidak ada yang berhasil untuk saya.

pengguna1021430
sumber
1

Saya menyelesaikan masalah ini dengan mengubah Build System menjadi legacy dalam xcode.

Saya memiliki masalah yang sama tetapi solusi yang disebutkan di atas tidak bekerja untuk saya. Bahkan saya tidak punya aplikasi sebelumnya di perangkat, saya mendapatkan kesalahan ini ketika menggunakan perangkat saya.

Bagaimana melakukan:

Cukup, buka menu File> Project Setting, di dalam Share Project Settings, ubah Build System dari "New Build System (default)" menjadi "Lagacy Build System".

mehdi
sumber
0

Saya juga mengalami masalah yang sama. Menghapus aplikasi tidak berfungsi, tetapi ketika saya mencoba menghapus aplikasi lain yang merupakan 'orang tua' saat ini (saya menyalin seluruh proyek dari aplikasi sebelumnya, memodifikasi beberapa url dan gambar, kemudian saya mengklik 'Jalankan' dan melihat yang tidak bahagia dialog 'tidak dapat diverifikasi'). Tampaknya masalah ini terkait dengan penyediaan dan penandatanganan kode dan / atau beberapa konfigurasi proyek. Sangat rumit.

busur besar
sumber
0

Saya telah mengubah tim tetapi saya lupa untuk mengubahnya dalam target Tes saya sehingga menyebabkan hal itu. Mungkin ini membantu seseorang.

akcoban
sumber