Cetak: Entri, ": CFBundleIdentifier", Tidak Ada

117

Ketika saya menjalankan react-native run-iosbuild berhasil tetapi saya mendapatkan kesalahan di bawah ini. Saya sudah memeriksa semua tempat tetapi sepertinya tidak ada yang berfungsi. Menggunakan sudodi depan perintah juga tidak membantu. Saya menggunakan Xcode 7.3, react-native-cli: 0.2.0, react-native: 0.24.1, node v5.11.0.

=== BUILD TARGET mobileTests OF PROJECT mobile WITH CONFIGURATION Release ===

Check dependencies

** BUILD SUCCEEDED **

Installing build/Build/Products/Debug-iphonesimulator/mobile.app
An error was encountered processing the command (domain=NSPOSIXErrorDomain, code=2):
Failed to install the requested application
An application bundle was not found at the provided path.
Provide a valid path to the desired application bundle.
Print: Entry, ":CFBundleIdentifier", Does Not Exist
/Users/astiefel/workspace/bosspayments/mobile/node_modules/promise/lib/done.js:10
      throw err;
      ^

Error: Command failed: /usr/libexec/PlistBuddy -c Print:CFBundleIdentifier build/Build/Products/Debug-iphonesimulator/mobile.app/Info.plist
Print: Entry, ":CFBundleIdentifier", Does Not Exist

    at checkExecSyncError (child_process.js:470:13)
    at Object.execFileSync (child_process.js:490:13)
    at _runIOS (runIOS.js:91:34)
    at runIOS.js:24:5
    at tryCallTwo (/Users/astiefel/workspace/bosspayments/mobile/node_modules/promise/lib/core.js:45:5)
    at doResolve (/Users/astiefel/workspace/bosspayments/mobile/node_modules/promise/lib/core.js:200:13)
    at new Promise (/Users/astiefel/workspace/bosspayments/mobile/node_modules/promise/lib/core.js:66:3)
    at Array.runIOS (runIOS.js:23:10)
    at Object.run (/Users/astiefel/workspace/bosspayments/mobile/node_modules/react-native/local-cli/cli.js:86:13)
    at Object.<anonymous> (/usr/local/lib/node_modules/react-native-cli/index.js:88:7)
astiefel
sumber
Dan apakah pengenal bundel ada di file? Saya berasumsi tidak, jadi pertanyaannya adalah "mengapa tidak ditulis ke file".
trojanfoe
Itu tidak terlalu membantu. Bisakah Anda menjelaskannya?
astiefel
Bagi saya itu karena masalah kompatibilitas react-native dengan Xcode9.4. Saya menyelesaikannya menggunakan langkah-langkah berikut. "rm -rf node_modules" lalu "react-native upgrade" lalu "npm install" lalu "react-native run-ios"
raja
Raja..Apakah Anda yakin menjalankan upgrade react-native mungkin saja setelah Anda menghapus folder node_modules? Saya mencoba dan dikatakan bahwa peningkatan tidak dikenali
VK1
Tutup saja terminal Anda, buka lagi dan jalankan aplikasi yang berfungsi untuk saya.
Chandni

Jawaban:

110

Buka Proyek di Xcode

Jika Xcode> 9 jalankan perintah react-native upgrade(ini menimpa semua konfigurasi iOS Anda, gunakan dengan hati-hati !)

kemudian

1. Buka File -> Pengaturan proyek

2. Klik tombol Advanced

3. Pilih "Kustom" dan pilih "Relatif dengan Ruang Kerja" di menu pull down

4. Ubah "Build / Products" menjadi "build / Build / Products" dan "Build / Intermediates" menjadi "build / Build / Intermediates"

Tambahkan paket

5. klik selesai, selesai

Katta Nagarjuna
sumber
1
Ini berfungsi untuk saya di xcode 8.2, memperbaiki masalah saya terima kasih!
KrakenDev
@SurajShingade Saya memiliki Xcode 9.4 di mesin saya dan tidak dapat menemukan opsi "Pengaturan Proyek" di dalam "File". Saya hanya melihat "Pengaturan Ruang Kerja ...". Apakah Anda tahu di mana mengakses Pengaturan Proyek? - imgur.com/a/SqAemnL - menahan tombol opsi dengan menu File terbuka juga tidak menampilkannya
Pat Needham
1
@PatNeedham "Project Settings" diubah namanya menjadi "Workspace Settings"
Toby Caulk
3
Bisakah Anda menjelaskan sedikit mengapa solusi ini berhasil?
Victor
3
Ini masih merupakan cara untuk memperbaikinya pada xCode 10
jacurtis
70

Ini mungkin terjadi jika Anda kehilangan file config.h ,

Untuk memperbarui file config.h ,

1) Tutup Xcode Anda.

2) Buka Terminal, buka folder root proyek Anda dan lakukan:

cd node_modules/react-native/third-party/glog-{X}.{X}.{X}/

3) Jalankan skrip konfigurasi:

./configure

4) Buka Xcode dan coba jalankan aplikasi Anda.

{X}: nomor versi glog

Lijith Vipin
sumber
Terima kasih!! ini menghemat waktu saya.
Gurjinder Singh
6
Saya menginstal react-native dari awal, membuat proyek pertama saya, tetapi tidak bisa membuatnya berfungsi. Jawaban ini memperbaiki masalah saya. Saya bertanya-tanya mengapa ini terjadi, karena ini adalah instalasi yang baru dan segar
Antonio
Pikiran untuk menjelaskan mengapa ini terjadi?
Patrick Bassut
Ini berhasil untuk saya. Pemasangan baru react-native 0.55, Xcode versi 10
mat
1
... bagaimana jika tidak ada configurescript, seperti 0,58?
Scott Skiles
29

Perbarui React menggunakan react-native upgrademelakukannya untuk saya.

Penafian : ini menimpa semua konfigurasi iOS Anda, gunakan dengan hati-hati !

sbastidasr
sumber
30
menimpa semua file iOS akan menimpa semua konfigurasi yang Anda buat untuk proyek Anda. lol. gunakan di penafian risiko Anda sendiri adalah yang paling dapat Anda lakukan.
AlxVallejo
1
Akan sangat membantu jika seseorang dapat menjelaskan apa arti "semua konfigurasi iOS Anda".
Andrew Koster
25

Jika Anda menggunakan Xcode 10, itu mungkin karena ketidakcocokan dengan sistem build Xcode terbaru. Coba beralih ke sistem build lama.

Buka Xcode 10, File> Project Settings> Build System> alihkan dropdown ke Legacy Build System.

Screenshot

ChrisBorg
sumber
tikus! Saya kehilangan dua hari kerja karena masalah ini. Yang gila adalah CLI build saya berfungsi dengan baik sampai 3 hari yang lalu. Tidak tahu apa yang terjadi. Ini juga tidak memperbaiki masalah. Ingin melihat tangisan saya tumbuh? TT
Mike S.
10

Masalah saya sebenarnya adalah bahwa build saya dalam mode Rilis, bukan mode Debug. Akibatnya, pengenal tersebut menunjuk ke sesuatu yang tidak ada. Saya mengubah jenis build dan akhirnya berhasil.

astiefel
sumber
3
Tetapi bagaimana jika Anda ingin menjalankan proyek Anda dalam mode Rilis?
Tieme
@astiefel Saya pikir inilah yang terjadi pada saya juga. Bagaimana cara Anda mengubah jenis build?
JohnnyQ
@JohnnyQ Pergi ke Product-> Scheme-> Edit Schemedan kemudian pilih Debug di bawah Build Configuration
astiefel
10

Saya juga menemukan masalah ini dan saya menemukan cara untuk memperbaikinya

Inilah yang saya lakukan:

1) Pastikan tidak ada spasi di direktori file.

2) direktori proyek cd

3) jalankan perintah react-native upgrade

4) Buka folder ios asli dan buka proyek xcode.

5) Buka File> Pengaturan Proyek> Lanjutan ...

6) pilih kustom> Relatif dengan ruang kerja

7) jalur produk harus 'build / Build / Products'

8) jalur perantara harus 'build / Build / Intermediates'

9) sekarang coba jalankan perintah di terminal react-native run-ios Anda

Saya berharap solusi ini akan membantu sebagian dari kita menghadapi masalah ini.

Usman Awan
sumber
21
tidak berfungsi untuk saya masih saya memiliki kesalahan ini: Entri, ": CFBundleIdentifier", Tidak Ada
Mehrnoosh
9

Untuk [email protected]berikut ini lakukan triknya untuk saya:

1) Periksa jalur Anda, buka file .xcodeproj (bukan .xcworkspace) Anda dan:

  • buka File> Pengaturan Proyek> Lanjutan

  • kustom> Relatif dengan ruang kerja

  • setel jalur produk ke 'build/Build/Products'
  • setel jalur perantara ke 'build/Build/Intermediates'
  • tekan selesai dan simpan perubahan Anda

2) Jalankan rm -rf ios/builddi direktori root proyek Anda

3) Tutup pengemas reaksi Anda

4) Jalankan react-native run-ioslagi

Tim
sumber
Juga berfungsi pada: "react": "16.2.0", "react-native": "0.52.0",
Raju yourPepe
Ini menyelesaikan masalah bagi saya setelah menambahkan dependensi melalui Pod ke bagian iOS dari proyek RN kami. Kecuali: Saya melakukan perubahan ini pada .xcworkspacekonfigurasi.
cayleyh
@cayleyh, ini bukan untuk saya persis tetapi menghapus Splashscreenkesalahan, jadi apakah Anda mengatakan Anda mengikuti langkah Tim kecuali Anda melakukannya di dalam xcworkspace?
Daniel
8

Saya mengalami ini pada saya ketika folder node_modules saya menjadi kacau setelah menginstal paket baru. Saya mematikan folder rm -rf node_modulesdan kemudian npm installmenginstal ulang paket saya dan memperbaikinya.

Giok
sumber
Ini adalah satu-satunya hal yang memperbaikinya untuk saya.
223seneca
7

The Print: Entry, ":CFBundleIdentifier", Does Not Existpesan hanya menunjukkan proyek Anda gagal kompilasi atau link. Anda harus melihat kembali keluaran Anda untuk menemukan petunjuk tentang akar masalah yang sebenarnya.

Jika Anda mengalami masalah, lihat output build lengkapnya, bukan hanya beberapa baris terakhir. Anda mungkin ingin membuka proyek di Xcode dan menekan ⌘B untuk membuatnya. Kesalahan build di Xcode akan membantu Anda menemukan akar penyebab kegagalan.

Héctor Ramos
sumber
Penyelamat hidup. Itu memang masalah lain. Apakah Skema saya diganti namanya dan masalah telah diselesaikan.
Mohammad Abbas
Dalam comiling Xcode saya dan saya bisa membangun. Saat menjalankan perintah react-native run-ios itu gagal
sejn
6

Jika Anda menerima kesalahan ini, maka Anda mungkin tidak memiliki jalur yang benar untuk aplikasi Anda.

Terjadi kesalahan saat memproses perintah (domain = NSPOSIXErrorDomain, code = 2): Gagal menginstal aplikasi yang diminta Bundel aplikasi tidak ditemukan di jalur yang disediakan. Berikan jalur yang valid ke bundel aplikasi yang diinginkan. Cetak: Entri, ": CFBundleIdentifier", Tidak Ada

React Native telah melakukan hardcode sebagai bagian dari perintah run-ios mereka di runIOS.js

build/Build/Products/${configuration}-${isDevice ? 'iphoneos' : 'iphonesimulator'}/${appName}.app

Sayangnya, Xcode memiliki jalur build yang berbeda tergantung pada konfigurasi Anda dan apakah Anda menggunakan Xcode Project atau Workspace. Saya percaya jalur default untuk Proyek Xcode adalah build/Products.
Saya mengirimkan permintaan tarik ini 11899 untuk memberi programmer lebih banyak fleksibilitas dari CLI.

Charlle
sumber
3

Bagi saya itu adalah masalah dengan tidak sengaja mengatur modul menggunakan Cocoapods & react-native linkpada saat yang sama.

Jangan gabungkan keduanya untuk modul yang sama!

Oleg Dater
sumber
Jadi bagaimana cara menyiasatinya?
Isaac
@Isaac nuke cache dan instal dengan tautan cocoapods / react-native, tergantung pada bagaimana proyek Anda diatur
Buruiană Cătălin
3

Saya memperbaikinya dengan menghapus /build/dan menjalankan react-native run-ioskembali


sumber
@EranOr apakah Anda melihat Provide a valid path to the desired application bundle.di konsol Anda? Coba pengaturan xcode berikutfile => project settings, build system: legacy, derived data: project-relative, DerivedData in the input => advanced, custom, relative to workspace, build/Build/ in the first 2 inputs
2

Sudahkah Anda memeriksa bahwa Anda menyatakan pengenal bundel? Anda dapat melakukan ini dengan mengklik file proyek Anda di xcode dan kemudian memilih tab umum dan itu terdaftar di bawah kotak teks pertama di bawah "Identity". Cara lain untuk memeriksanya adalah dengan memeriksa file info.plist Anda di folder ios proyek Anda. Beginilah yang ditampilkan di info.plist saya. Pengenal bundel saya yang sebenarnya untuk proyek saya ada di xcode.

<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
Ben Dellarocco
sumber
1
Ya, aku sudah memeriksanya. Kesalahan sebenarnya adalah kode saya dalam mode rilis, bukan mode debug.
astiefel
2

Dalam kasus saya, saya menarik proyek dari git dan itu juga termasuk folder ios.

Pertama saya menghapus folder ios rm -rf ios lalu,react-native upgrade

Ahmet Oğuz Koruyucu
sumber
2

Anda dapat mengikuti langkah-langkah di bawah ini untuk mengatasi kesalahan ini:

Langkah 1

Open terminal

Langkah 2

cd node_modules/react-native/third-party

LANGKAH 3

ls

Copy or identify glog-{version}

LANGKAH 4

cd ../../../

LANGKAH 5

cd node_modules/react-native/third-party/glog-{version}

LANGKAH 6

./configure

Saya harap ini akan berhasil !!!

Dheeraj D
sumber
2

Saya telah mencoba semua solusi ini tetapi yang berhasil untuk saya adalah:

  1. Lari react-native upgrade
  2. buka xcode
  3. jalankan aplikasi di xCode
  4. bekerja dengan baik!
Eli
sumber
terima kasih Eli, saya telah memecahkan masalah ini hanya dengan menjalankan "react-native upgrade"
javeedishaq
Bagi mereka yang bekerja di lingkungan perusahaan, saya akan mengimbau agar berhati-hati menggunakan solusi ini. Meningkatkan inti react-native perlu direncanakan karena dapat berdampak negatif pada pekerjaan orang lain. Bertanya dahulu.
Mike S.
1

Saya memperbarui Xcode ke v8 dan kesalahan telah teratasi.

Mech Minds
sumber
1

0,44 baik untuk dijalankan, tetapi 0,45 tidak bisa, mungkin adalah masalah versi yang saya selesaikan dengan perintah berikut: rninit init TaxiApp --source [email protected];

Joshua
sumber
1

Terminal saya memunculkan pesan yang sama karena menghapus beberapa simulator yang tidak saya gunakan di Xcode.

Jika Anda menjalankan react-native run-iostanpa parameter tertentu, react-native akan menjalankan simulator default yaitu iPhone 6 dengan iOS 10.3.1 dalam kasus saya dan saya menghapus simulator ini secara kebetulan.

Inilah pesan kesalahan saya:

xcodebuild: error: Unable to find a destination matching the provided destination specifier:
        { id:F3A7BF54-B827-4517-A30D-8B3241C8EBF8 }

Available destinations for the "albums" scheme:
    { platform:iOS Simulator, id:CD64F26B-045A-4E27-B05A-5255924095FB, OS:10.3.1, name:iPad Pro (9.7 inch) }
    { platform:iOS Simulator, id:8FC41950-9E60-4264-B8B6-20E62FAB3BD0, OS:10.3.1, name:iPad Pro (10.5-inch) }
    { platform:iOS Simulator, id:991C8B5F-49E2-4BB7-BBB6-2F5D1776F8D2, OS:10.3.1, name:iPad Pro (12.9 inch) }
    { platform:iOS Simulator, id:B9A80D04-E43F-43E3-9CA5-21137F7C673D, OS:10.3.1, name:iPhone 7 }
    { platform:iOS Simulator, id:58F6514E-185B-4B12-9336-B8A1D4E901F8, OS:10.3.1, name:iPhone 7 Plus }

. . .

Installing build/Build/Products/Debug-iphonesimulator/myapp.app
An error was encountered processing the command (domain=NSPOSIXErrorDomain, code=2):
Failed to install the requested application
An application bundle was not found at the provided path.
Provide a valid path to the desired application bundle.
Print: Entry, ":CFBundleIdentifier", Does Not Exist

Command failed: /usr/libexec/PlistBuddy -c Print:CFBundleIdentifier build/Build/Products/Debug-iphonesimulator/myapp.app/Info.plist
Print: Entry, ":CFBundleIdentifier", Does Not Exist

Untuk menghilangkan ini, buka Xcode Anda dan periksa simulator yang tersedia (sama seperti terminal yang terdaftar) dan jalankan react-native run-ios --simulator="your device name"

Untuk kasus saya, saya menjalankan react-native run-ios --simulator="iPhone 7", masalah terpecahkan.

Frank Wang
sumber
Sempurna! Terima kasih!
Asinox
1

Setelah beberapa bulan mencoba semua jawaban, saya akhirnya memperbarui OS saya ke Sierra, Perbarui XCode ke versi terbaru dan dengan itu semua kesalahan hilang. Semoga ini bisa membantu beberapa orang di luar sana!

damianfabian
sumber
1

Menambahkan, itu berhasil untuk saya, ketika tidak ada perbaikan di atas:

  1. Instal react-native-git-upgrade dan perbarui proyek Anda. npm i -g react-native-git-upgrade && react-native-git-upgrade
  2. Buka Xcode -> File -> Pengaturan proyek -> Lanjutan.
  3. Pilih " Kustom ", lalu pilih " Relatif dengan Ruang Kerja ", lalu klik selesai, selesai.
  4. Perbarui CLI Anda. npm i -g react-native-cli
  5. Perbarui Nodejs 8 dan NPM Anda. nvm install --ltsdannvm install-latest-npm
  6. Hapus ios / build dan node_modules (di jalur root proyek Anda)
  7. Lanjutkan lagi dengan npm installdan react-native run-ios, dan peluk aku :-)

Ini akhirnya berhasil di sini.

  • Mac OS High Sierra 10.13.4
  • Xcode 9.3
  • NPM 5.8.0
  • Node 8.11.1
  • RN 0,55,2
Lindoélio Lázaro
sumber
1

Menggunakan versi ini berfungsi untuk saya dengan xcode 10.1

"react": "16.6.0-alpha.8af6728",
"react-native": "0.57.4"
Ananda Bayu Putra Yudhistira
sumber
Sejujurnya saya mengira hal di atas akan menjadi penyelamat saya dan bahkan itu tidak berhasil. Jadi upgrade, nah saya tidak yakin.
Daniel
1

Semua solusi ini menunjukkan tidak berhasil untuk saya. Saya baru saja membuat proyek rn 0.58.5. Dan dibandingkan dengan proyek saya. Saya melihat tidak ada di JavaScriptCore.frameworkbawah Build Phasess> Link Binary With Libraries. Setelah drag and drop JavaScriptCore react-native run-ios build berhasil.

JavaScriptCore.framework lokasi: ‎⁨Macintosh HD⁩ ▸ ⁨Applications⁩ ▸ ⁨Xcode⁩ ▸ ⁨Contents⁩ ▸ ⁨Developer⁩ ▸ ⁨Platforms⁩ ▸ ⁨iPhoneOS.platform⁩ ▸ ⁨Developer⁩ ▸ ⁨SDKs⁩ ▸ ⁨iPhoneOS.sdk⁩ ▸ ⁨System⁩ ▸ ⁨Library⁩ ▸ ⁨Frameworks⁩

JavaScriptCore.framework

agenc
sumber
Memberikan +1 Saya juga menjalankan 0,58,5 dan kerangka kerja juga hilang dari lingkungan saya.
Brian P
1

Bagi saya Itu adalah dependensi ios yang dikelola oleh cocoapods.

Harus melakukan ini:

$ cd ToProject/ios

$ pod install

$ react-native run-ios

Ini berhasil untuk saya

https://shift.infinite.red/beginner-s-guide-to-using-cocoapods-with-react-native-46cb4d372995

PS: Mencoba mencari pekerjaan yang dilakukan oleh orang lain

pengguna710907
sumber
menjalankan pod install berkata: [!] Tidak ada `Podfile 'yang ditemukan di direktori proyek.
Mohammad Mirzaeyan
Asumsi @MohammadMirzaeyan adalah Anda telah melakukannya pod initdan Anda memiliki Podfile yang valid. Tolong jangan downvote Jika Anda tidak memiliki cukup pengetahuan untuk melawan klaim Anda. Karena Ini adalah proyek orang lain seperti yang saya sebutkan, saya sudah memiliki PodFile. Saya telah menghapus pengaturan pod sepenuhnya untuk orang-orang seperti Anda.
pengguna710907
1

Pesan kesalahannya mirip dengan The domain/default pair of (../ios/Runner/Info, CFBundleIdentifier) does not exist

Berarti Xcode pikir Anda plistpunya invalid format content.

Anda perlu menyisipkan konten Info.plistfile untuk mencari tahu apa yang salah dengan file itu.

Satu masalah yang mungkin adalah bahwa ini <key>dan <values>s ( <array>s, <string>s, atau <bool>s) tidak dipasangkan dengan benar. Sebagai contoh:

<key>UISupportedInterfaceOrientations</key>         //<------ here is the key
<key>NSPhotoLibraryUsageDescription</key>
<key>NSCameraUsageDescription</key>
<string>Tagueo necesita usar la camara</string>
<key>NSMicrophoneUsageDescription</key>
<string>Tagueo necesita usar el microfono</string>
<array>                                            //<------ here is the value
    <string>UIInterfaceOrientationPortrait</string>
    <string>UIInterfaceOrientationLandscapeLeft</string>
    <string>UIInterfaceOrientationLandscapeRight</string>
</array>
<key>UISupportedInterfaceOrientations~ipad</key>   //<------ please compare this key
<array>                                            //<------ please compare this value
    <string>UIInterfaceOrientationPortrait</string>
    <string>UIInterfaceOrientationPortraitUpsideDown</string>
    <string>UIInterfaceOrientationLandscapeLeft</string>
    <string>UIInterfaceOrientationLandscapeRight</string>
</array>

Anda hanya perlu pindah keydan valueberkumpul

<key>UISupportedInterfaceOrientations</key>        //<------ here is the key
<array>                                            //<------ follow with the value
   <string>UIInterfaceOrientationPortrait</string>
   <string>UIInterfaceOrientationLandscapeLeft</string>
   <string>UIInterfaceOrientationLandscapeRight</string>
</array>
JerryZhou
sumber
Ini seharusnya memiliki lebih banyak suara positif! Info.plist saya memiliki tag salah yang tidak tertutup dan jelas '<string />' di antah berantah. Periksa dengan cermat file plist Anda dari ujung ke ujung.
Douglas Schmidt
0

Ini berfungsi untuk saya Klik pada proyek RCTWebSocket di navigator Anda dan hilangkan bendera di bawah pengaturan build> bendera compiler kustom masukkan deskripsi gambar di sini

Jackson Harry
sumber
0

Saya menemukan cara mengatasi masalah ini: JANGAN menggunakan ruang di jalur proyek Anda! 🎉 😄

Floris M
sumber
0

Ketika Anda menjalankan npm installperintah beberapa kali masalah masalah internet, File di node_modules\react-native\third-partytidak diunduh dengan benar jadi silakan periksa apakah ini diunduh dengan benar atau tidak jika tidak, hapus node_modules dan instal lagi

lalu jalankan react-native run-ios perintah

Nisarg Thakkar
sumber
0

Alasan dasarnya adalah menerapkan port tidak gratis. Baik Anda me-restart perangkat dan mendapatkan semua port gratis yang lain jalankan $ lsof -i :8081dan temukan proses yang menempati port 8081. Hentikan proses yang menggunakan port 8081 dengan menjalankan$ kill -9 {process_which_is_running_under_8081}

Gururaj Jeerge
sumber