Tidak dapat menghasilkan arsip Aplikasi iOS dalam xcode

175

Saya memiliki masalah dalam menghasilkan arsip Aplikasi iOS dari suatu aplikasi. Aplikasi mengkompilasi dengan baik dan bahkan berfungsi di simulator. Sekarang saya ingin membuat beberapa pengujian ad hoc dan tidak dapat menghasilkan Arsip Aplikasi iOS. Ketika saya mengklik Produk -> Arsipkan itu menghasilkan arsip xcode generik. Ada yang bisa bantu saya. Saya harus menyebutkan, bahwa saya telah membuat Arsip Aplikasi iOS untuk aplikasi ini. Itu baru saja berhenti untuk menghasilkan Arsip iOS karena beberapa alasan. Terima kasih banyak.

Filip Majernik
sumber
7
Meskipun pertanyaannya adalah tentang menghasilkan arsip dari xcode, saya menghadapi masalah ini menggunakan xcodebuild. Solusinya adalah dengan menentukan tujuan:xcodebuild -destination generic/platform=iOS
db42
Terima kasih @ db42, itu berhasil!
Fabb
1
dapatkah Anda menguraikan resolusi-di mana Anda membuat perubahan?
jlo-gmail
Jika Anda memiliki file .xcodeproj di Project> Target> Build Phases> dependensi target hapus dari sana dan kemudian buat ipa Anda. Ini bekerja untuk saya. Cheers
Kalpesh Panchasara

Jawaban:

316

Periksa Pengaturan Bangun:

  1. Lewati instalasi TIDAK untuk target proyek utama
  2. Lewati instal adalah YA untuk target kerangka kerja (sub proyek)
  3. Dalam Build Phases untuk sub-proyek, Copy Header harus dalam Project, bukan Public (tidak berlaku jika membangun perpustakaan statis)
  4. Direktori Instalasi di bawah Penerapan valid (/ Aplikasi misalnya)
Alex L
sumber
2
Ini adalah jawaban paling lengkap yang menggabungkan jawaban parsial di atas. Terima kasih Alex L! Saya pikir ini harus menjadi jawaban yang dipilih untuk pertanyaan ini.
Brandon
3
Sebagai pertanyaan meta, bagaimana Anda mengetahui hal ini? Sepertinya saya mengandalkan Stackoverflow untuk semua pertanyaan terkait pembangunan saya.
philipkd
4
Cantik! Saya pikir ini adalah masalah dengan penyediaan profil, tetapi ini bekerja dengan baik. Sub proyek adalah cabang mapbox dari route-me / MapView. Copy Header adalah kunci karena pos di bawah ini menyatakan, dapat ditemukan di Build Phases dari sub proyek.
rcarver
7
# 3 memperbaiki masalah saya tetapi saya juga perlu memindahkan file dari Privat ke Proyek sebelum arsip saya dibuat sebagai Arsip Aplikasi iOS.
Thomas Hajcak
4
Secara teknis, masalahnya bukan bahwa header adalah Publik di bawah Copy Header, itu adalah Build Settings> Public Headers Folder Path diatur ke default /usr/local/include. Jika Anda sedang membangun perpustakaan statis, header haruslah Publik, jadi lebih tepat jika # 3 adalah mengubah Path Folder Header Publik menjadi sesuatu yang lebih masuk akal seperti include/$(TARGET_NAME). @CopperCash mencatat ini dalam jawaban di bawah.
bcattle
75

Ini dapat terjadi jika Anda telah menambahkan kerangka / pustaka ... Anda perlu mengedit Target-> Bangun Pengaturan perpustakaan itu dan mengatur pengaturan 'Lewati Instal' ke 'Ya'. Saat Anda mengarsip ulang, XCode harus mulai memproduksi 'Arsip Aplikasi iOS' lagi daripada 'arsip xcode generik'.

delany
sumber
tetapi "Lewati Instal" tidak tersedia di xcode 4.4.1, setidaknya saya tidak dapat menemukan lewati intall di xcode saya
Mashhadi
2
Hal yang sama berlaku untuk bundel yang ditambahkan.
Mark Horgan
62

Selain Lewati Instal ke Ya dan jika Anda membuka proyek lib / kerangka lain dalam proyek aplikasi Anda, Anda harus memindahkan tajuk (jika ada) dari publik ke proyek dalam Bangun Tahap / Salin Header .

membangun fase target lib / frame Anda

ebtokyo
sumber
3
Saya baru saja kehilangan harapan, karena Lewati Instal ke Ya tidak bekerja untuk saya. Menyalin header ke Project telah membantu saya. Terima kasih!
ksm
10
Untuk membantu Anda melokalisasi sub proyek Xcode yang rusak, Anda dapat memperlihatkan Arsip Generik Xcode dalam Finder dan menjelajahi paket. Di dalam .xcarchive, Anda akan melihat header yang salah di Produk / usr / local / include.
MonsieurDart
1
Mengapa menempatkan beberapa file untuk menyalin header ke publik mengacaukan ini?
mskw
mskw, saya kira jika artefak yang dibangun berisi satu atau lebih header publik itu tidak bisa menjadi arsip "dapat digunakan perangkat" (Arsip Aplikasi iOS dari tempat Anda menghasilkan IPA). Itu tetap menjadi arsip proyek Xcode. Terima kasih
ebtokyo
1
sial, terima kasih, ini bekerja untuk saya .. Saya ingin tahu bagaimana Anda bisa menemukan solusi semacam ini :)
Fabio Napodano
45

Saya melakukan yang berikut untuk membuatnya bekerja untuk saya:

  1. Saya memiliki pustaka statis three20, saya menggunakan cocoapod untuk memasukkan file dalam proyek utama
  2. mengikuti lompatan instal untuk semua sub proyek lainnya / perpustakaan statis dan mengalihkan copy header dari publik ke proyek sebagaimana dinyatakan di atas
  3. yang paling penting: di setiap pustaka proyek Anda menggunakan pergi untuk membangun fase -> Salin File dan memastikan bahwa tujuan diubah dari Absolute pathmenjadi products directory. Catatan: lihat petunjuk di bawah ini untuk mempersempit pencarian Anda untuk menemukan perpustakaan yang menyebabkan kesalahan ini.

dan itu dia!

petunjuk: untuk mendapatkan gambaran tentang file-file yang menyinggung yang menyebabkan arsip Anda membuat file arsip daripada sebuah ipa lakukan ini:

  1. Pilih arsip dan klik tombol Bagikan.
  2. Pilih opsi 'Simpan Produk Buatan'.
  3. Tekan Selanjutnya dan Simpan.
  4. Jelajahi direktori yang dibuat di Finder.
  5. Subdirektori 'libraries' akan mengidentifikasi perpustakaan yang Anda perlukan untuk mengatur Skip Install ke Yes.
  6. dalam beberapa kasus usr/local/includeakan mengidentifikasi file header pelakunya yang perlu Anda pindahkan dari Publik ke Project atau file yang harus Anda ubah dari jalur absolut ke direktori produk (atau bahkan file yang Anda lupa atur lewati install ke flag ya). tetapi direktori itu (mis. usr / local / include) bervariasi tergantung pada struktur direktori sublibrary Anda. Dalam banyak kasus .. Anda akan melihat semua file yang tercantum di bawah Salin File di langkah 3 di atas yang tercantum di sini. Jika Anda menemukannya di sini, maka Anda memiliki jawaban yang pasti untuk penyebab masalah Anda.

perbarui ke petunjuk: untuk membuat hidup lebih sederhana .. file apa pun yang muncul di langkah 4 dalam petunjuk di atas .. cukup cari di pencarian global xcode .. dan Anda akan mendapatkan hasil langsung untuk apa yang Anda inginkan .. misalnya, ini adalah isi folder saya (mengikuti langkah-langkah dalam petunjuk di atas):

masukkan deskripsi gambar di sini

Jadi saya bisa tahu itu ada hubungannya dengan perpustakaan crypto dan ssl .. mencari mereka:

masukkan deskripsi gambar di sini

membuat saya sadar bahwa saya lupa mengatur lewati install ke yes.

abbood
sumber
Petunjuk bagus! Saya telah mengubah beberapa header kerangka kerja menjadi 'Pribadi'; untuk beberapa alasan, ini menyebabkan mereka disalin ./usr/local/include.
Ben Mosher
1
selalu menyenangkan bisa membantu @BenMosher :)
abbood
1
Jawaban terbaik yang saya dapatkan. Terima kasih atas tipnya, menyelamatkan hari saya. !
neywen
Jelas jawaban yang saya cari - produk build yang hemat menunjukkan kepada saya penyebab sebenarnya dari masalah tersebut.
Dennis L
Jawaban luas ini dengan "Simpan Produk Buatan " sangat membantu - @abbood, terima kasih banyak untuk Anda. Semoga aku bisa membalas budi suatu hari nanti.
Scott Corscadden
21

Jika Anda mengekspor arsip, buka dan lihat /urs/local/includedi Produk coba saran ini :

Di setiap pod, di bawah Packaging, Private Headers Folder Pathdan Public Headers Folder Pathdiatur ke /usr/local/include. Jika saya menghapusnya maka saya mendapatkan arsip yang valid.

masukkan deskripsi gambar di sini

Bekerja untuk saya setelah memutakhirkan aplikasi React Native saya menjadi 0.11.0, Xcode 7dan CocoaPods 0.39.0.beta.4.

Josh Habdas
sumber
1
Saya dapat mengkonfirmasi bahwa ini berhasil! Selama Anda ingat untuk menghapus jalur header pribadi dan publik. Ini juga cukup mudah, jika Anda hanya memilih semua pod, cari path header, lalu bersihkan semuanya sekaligus.
Dids
1
Saya juga dapat mengonfirmasi bahwa ini berfungsi, menyelamatkan saya banyak waktu, ini terjadi ketika saya memutakhirkan pod saya ke versi 0.39.0.beta
Bryan P
Luar biasa. Bekerja untuk saya :) Saya berjuang dari 1 setengah hari. Terima kasih, Terima kasih, Terima kasih :) :) :)
Srikanth
Saya pikir ini adalah yang bekerja untuk saya Xcode 7.0 iOS9. Saya tidak punya cocoapod, tapi ini memperbaiki masalahnya. Terima kasih
kawan
Selain itu, saya harus menetapkan SKIP_INSTALL ke Ya pada ekstensi dan aplikasi WatchKit saya agar ini berfungsi.
Snowman
12

Jika Anda menggunakan CocoaPods serta WatchKit atau Extension Hari Ini, ada masalah terbuka pada repo CocoaPods yang menjelaskan masalah apa yang mungkin Anda hadapi.

The solusi bagi saya adalah untuk menghapus Copy Pod Resourcesfase dari WatchKit Penyuluhan dan Hari Ekstensi menargetkan bawah Build Phases. Proyek dikompilasi dan diarsipkan seperti yang diharapkan setelah saya melakukan ini.

Semoga ini bisa membantu seseorang, ini membuat saya bingung sepanjang hari!

rebello95
sumber
1
@ Lewis42 selalu bisa menambahkan hadiah;)
rebello95
Jangan melihat opsi untuk, harus memilih suara atas komentar Anda;)
lewis
@ Lewis42 Anda harus menambahkan hadiah untuk pertanyaan dan memberikannya pada jawaban lol
rebello95
@ rebello95, kau kawan!
Matt
10

Jika salah satu dari jawaban di atas tidak berfungsi, masalah Anda mungkin ada pada cocoaPods. Pembaruan terbaru 0.38.1mengacaukan segalanya bagi saya, tetapi kemudian saya menurunkannya 0.37.1dan hal-hal kembali normal. MenggunakanXcode 6.3.1

Sunting nanti: memperbarui ke 0.38.2juga akan memperbaikinya. Info lebih lanjut tentang apa yang menyebabkan masalah ini di sini: Cocoapods 0.38.1 gagal membuat Arsip yang valid

Ehmad Zubair
sumber
3
Saya memperbarui 0.38.2dan masih memiliki masalah. Apakah Anda menggunakan Xcode 7?
Porter Hoskins
@ PorterHoskins Saya baru saja menulis masalah ini karena Xcode 7 TIDAK akan membangun Arsip yang valid dari proyek yang sama yang membangun arsip yang valid di Xcode 6 . Saya menggunakan Cocoa Pods 0.38.2, ketika menggunakan Xcode 6 semuanya baik-baik saja, tetapi dengan Xcode 7 arsip tidak dibuat dengan benar. Sudahkah Anda memeriksa struktur folder untuk melihat apakah Anda memiliki file .appex di luar .app dalam paket?
Beruang Kutub
Saya punya kerangka kerja di /Library/Frameworks. Saya pikir itu mungkin ada hubungannya dengan pod kakao Google tidak dibangun sebagai kerangka kerja yang dinamis. Kedengarannya mirip dengan github.com/CocoaPods/CocoaPods/issues/3889
Porter Hoskins
3
Saya pindah untuk setiap header pod di Build Phases / Header ke bagian proyek dari publik dan berhasil. Jadi memang masalahnya mungkin di CocoaPods.
Denis Kutlubaev
7

Meskipun saya menggunakan Xcode5 dan apa yang disortir untuk saya adalah mengedit Skema Build - mencoba semua saran di atas yang berlaku tidak membantu dalam kasus saya.

Saya punya dua target, katakan, "App" dan "App FREE". Masalah saya dengan arsip umum terjadi ketika saya mencoba untuk Mengarsipkan versi GRATIS, yang saya tambahkan setelah versi aplikasi 'normal'. Dalam kasus saya, ketika saya memilih Skema di bilah alat dan memilih Edit Skema ... Saya melihat bahwa bagian Build memiliki dua target, yaitu Aplikasi dan Aplikasi GRATIS.

Saya menghapus centang pada semua kolom untuk Aplikasi, hanya menyisakan kolom Aplikasi GRATIS, dan mengklik OK. Lain kali saya memilih Produk> Arsip saya mendapat Aplikasi saya GRATIS daripada Arsip Generik. :)

Stephen Watson
sumber
7

Jika Anda hanya memiliki satu proyek, mungkin solusi ini akan bermanfaat. Masalah ini terjadi, ketika saya menggandakan target. Alhasil saya punya dua target paralel yang dibangun. Ini yang menyebabkan masalah. Arsip IOS generik dibangun.

Untuk menghidupkan paralel, buka

  • Kelola skema,
  • Edit skema,
  • Membangun,
  • Hapus target lainnya.
roman777
sumber
5

Saya mengalami masalah ini setelah memperbarui ke iOS 9 dan Xcode 7. Solusi Josh H bekerja untuk saya:

Di setiap pod, di bawah Pengemasan, Jalur Folder Tajuk Pribadi dan Jalur Folder Tajuk Publik diatur ke / usr / lokal / termasuk. Jika saya menghapusnya maka saya mendapatkan arsip yang valid.

Saya juga membuat skrip pemasangan pos untuk Podfile saya untuk melakukan ini secara otomatis!

    post_install do |installer_representation|
        installer_representation.pods_project.targets.each do |target|
            target.build_configurations.each do |config|
                config.build_settings['PUBLIC_HEADERS_FOLDER_PATH'] = [""];
                config.build_settings['PRIVATE_HEADERS_FOLDER_PATH'] = [""];
            end
        end
    end

Cukup tambahkan ke bagian bawah Podfile Anda dan jalankan pod install

julianwyz
sumber
5

Saya memiliki beberapa proyek di ruang kerja saya, (GTL, Pods dan proyek utama saya) dan inilah yang bekerja untuk saya:

Pilih Proyek, akan ada 2 jenis di sana, ada Proyek dan ada Target .

Untuk proyek yang bukan seperti utama Anda GTLatau PODS:

Proyek:

Skip Install = NO
Installation Directory = /Applications
// For pods
Private Headers Folder Path = ""
Public Headers Folder Path = ""

Target:

Skip Install = YES
Installation Directory = /Applications
// For pods
Private Headers Folder Path = ""
Public Headers Folder Path = ""

Untuk proyek utama (yang biasanya dinamai sama dengan nama produk Anda):

Proyek:

Skip Install = NO
Installation Directory = /Applications

Target:

Skip Install = NO
Installation Directory = /Applications

Periksa target penyebaran ios pada setiap proyek dan target untuk memastikan semuanya sama.

Bryan P
sumber
Terima kasih untuk menjelaskannya langkah demi langkah. itu benar-benar membantu saya menyelesaikan masalah saya.
Arslan
4

Saya punya masalah ini. Dalam kasus saya, itu disebabkan oleh menjaga target aplikasi Mac sebagai ketergantungan dari aplikasi iOS.

Alasan pengaturan seperti ini adalah bahwa aplikasi Mac adalah alat yang digunakan untuk menghasilkan beberapa data untuk aplikasi iOS, yang kemudian dimasukkan dalam bundel.

Saya harus menghapus ketergantungan itu dan membuat alat secara terpisah sebelum membuat aplikasi iOS itu sendiri.

Tomas Andrle
sumber
Perpustakaan seperti lippd datang dengan target ios dan osx, saya lupa menghapus target osx ... doh
james_alvarez
4

Dalam skenario saya, saya mendapatkan "Generic Archive" yang keliru hanya setelah saya mulai memasukkan kode Swift dalam proyek Objective-C saya yang dominan. Setelah banyak pemecahan masalah dan pemeriksaan file arsip yang Xcode keluarkan, saya perhatikan bahwaSwiftSupport folder (dengan dylibs yang diperlukan untuk Swift runtime) berada di tempat yang berbeda di arsip saya daripada di arsip aplikasi proyek Swift vanilla yang baru .

Saya menemukan Installation Directorypengaturan build dan memperhatikan bahwa itu diatur ke jalur khusus di proyek saya. Saya hanya menghapusnya (mengaturnya ke nilai generiknya yaitu/Applications ) dan Build -> Archive berikutnya saya bekerja sesuai yang diharapkan dan memberi saya Arsip Aplikasi iOS yang tepat.

TL; DR: Pastikan Installation Directorypengaturan build Anda diatur ke nilai default /Applicationsketika menyertakan kode Swift di aplikasi Anda, terutama jika Anda memulai dengan file proyek yang lebih lama yang mungkin memiliki beberapa pengaturan build legacy yang tidak terduga.

Ryan Dorshorst
sumber
3

Meninggalkan ini di sini untuk menyelamatkan orang lain dari perjalanan yang sama.

Saya menemukan saya perlu menghapus fase membangun Sumber Salin Pod yang sama dari target pustaka statis di ruang kerja saya juga.

Michael
sumber
setelah mencoba banyak hal di atas, ini berhasil untuk saya (Xcode 7)
humphriesj
2

Tambahan untuk jawaban Alex L.

Poin 3. Ubah 'Bangun Pengaturan' -> 'Jalur Folder Header Publik' ke 'include / xxx' juga berfungsi.

CopperCash
sumber
Ini lebih benar daripada # 3 di atas. Header Anda harus publik jika Anda sedang membangun perpustakaan statis
bcattle
2

Jika tidak ada yang di atas membantu Anda ... setelah banyak waktu .......

Saya menghapus nilai di Info.plist untuk Bundle Version karena saya cukup senang hanya dengan Bundle Version Short 1.0.Buruk. Jangan lakukan ini.

* Catatan Saya benar-benar melakukan ini dengan mengeditnya di UI di sebelah kanan tidak menyadarinya akan meletakkan kunci kosong di file Info.plist. Saya pikir itu membuatnya tidak valid. Bundel saya muncul sebagai barang lain saat diarsipkan dan tidak memiliki ikon, dan saya tidak dapat mengunggah ke mana pun.

Ini bermuara pada nilai yang tidak valid di Info.plist. Jika itu bukan arsip yang valid, coba unzip arsip yang lama dan masukkan / timpa arsip Anda saat ini dan lihat apakah arsip itu memperbaikinya saat membangun kembali arsip.

ohc192
sumber
1
  1. Pergi ke Bangun Pengaturan dan tambahkan

    yourAppName / Resources / dist.plist pada Hak Penandatanganan Kode

  2. Tekan cmd + B dengan Perangkat iOS atau Perangkat Nyata yang dipilih sebagai Build Target

  3. Setelah selesai -> gulir ke folder "Produk" dan klik kanan pada yourAppName.app

  4. Pilih "Show in Finder"

  5. Buat folder dengan Nama Payload ( huruf besar "P" )

  6. Salin Nama Aplikasi Anda ke dalam Folder Payload Anda

  7. Buat zip dari Folder Payload Anda

  8. Ganti nama zip menjadi YourAppName.ipa

DIBUAT

LoVo
sumber
1

Setelah mencoba hampir segalanya:

  • Bersih, Arsipkan
  • hapus DerivedData, Archive
  • restart Xcode (saya menggunakan XCode7), Archive
  • kombinasi di atas ...

Saya kemudian melihat partisi boot saya 'rendah pada ruang disk kosong' ... sekitar 1GB atau lebih. Saya reboot, lalu mendapat sekitar 18GB gratis.

Kemudian membuka Xcode dan memproyeksikan, melakukan Archive ... dan secara mengejutkan (setelah satu jam mencoba membangun Archive) akhirnya saya mendapatkan Non Generic Archive.

Tidak tahu apakah ini masalah disk bebas yang memperbaikinya atau reboot macOS yang memperbaikinya, tapi itu berhasil untuk saya.

Peter Li
sumber
0

Dalam kasus saya, saya harus memindahkan FMDB dan BlocksKit ke perpustakaan statis. Sebelumnya mereka dibangun sebagai sub-proyek. Ingat Anda dapat menggunakan lipo untuk membuat perpustakaan universal. Saat membuat produk akhir, kode simulator akan dilucuti secara otomatis.

Maciej Swic
sumber
0

Alasan lain yang mungkin untuk ini adalah untuk memiliki referensi dalam "Ketergantungan Target" untuk proyek-proyek untuk platform yang berbeda. Dalam kasus khusus saya, saya sedang mengerjakan proyek yang membagikan kode untuk OSX dan iOS. Di salah satu target iOS, saya tidak sengaja menambahkan target OSX sebagai ketergantungan.

miguelSantirso
sumber
0

Agar teliti, saya memposting solusi saya.

Saya mengalami masalah yang sama persis mencoba membangun Arsip proyek iOS di Xcode 5.1.1 (5B1008). Tidak satu pun dari saran di atas memperbaiki masalah, dan kebanyakan dari mereka tidak relevan (saya belum menambahkan Kerangka, dan tidak memiliki entri Publik di bagian Copy Header dari Build Phases saya).

Dalam kasus saya, memperbaiki masalah terdiri dari hanya menutup proyek saya, menghapus semua arsip yang sebelumnya saya buat, pergi ke Preferensi> Akun, menghapus akun pengembang saya, berhenti Xcode, meluncurkan kembali, menambahkan kembali akun pengembang saya, memulai proses Arsipkan, memulai proses Arsip lagi. Ini segera memperbaiki masalah saya.

Ade Ward
sumber
0

Satu lagi solusi, karena semua hal di atas tidak berhasil untuk saya ...

Mengubah User Header Search Paths(saya kira Header Search Pathsakan bekerja dengan elegan) untuk "$(BUILT_PRODUCTS_DIR)/BlocksKit".

Latar belakang :

Di BlockKit, para pengembang telah menyusun struktur header dalam proyek utama secara berbeda dari struktur pada penerapan. Jadi, Anda tidak dapat merujuk header di proyek, dan harus referensi header yang disalin ke direktori build.

Mazyod
sumber
0

Cara ini bekerja untuk saya di (Xcode 5) saya memiliki 2 target dan ketika saya mengedit skema, di panel kiri editor skema, Anda akan melihat [BUILD, RUN, TEST, PROFIL XXX.APP, ANALYZE, ARCHIVE ] dari panel BUILD, Anda akan melihat target proyek Anda tercantum dalam daftar. Di ujung paling kanan Anda akan melihat pilihan ARCHIVE, pastikan hanya satu target yang dipilih untuk pengarsipan.

Saya memiliki 2 target yang dipilih dalam proyek saya, saya hanya memeriksa target yang saya inginkan dalam produk, dan itu berhasil!

dexyjones
sumber
0

Saya memecahkan kesalahan ini dengan hanya membuka proyek aplikasi di XCode, yaitu. tidak membuka ruang kerja terdiri dari aplikasi dan proyek / perpustakaan / kerangka kerja lainnya.

Memiliki 2 proyek terpisah, kerangka atau perpustakaan bersama dan aplikasi iOS, aku harus membuka 2 jendela Xcode yang berbeda, masing-masing dengan langsung membuka .xcodeproj file bukan umum .xcworkspace , untuk preperly membangun masing-masing.

Sebagai efek samping yang bagus, XCode tidak lagi membangun kembali setiap target dari setiap proyek setelah saya melakukan Clean , menghasilkan waktu pengembangan yang lebih singkat.

Latar Belakang: Saya membuat SDK sumber terbuka, dan aplikasi demo iOS. Saya sama-sama membuka di satu ruang kerja. Pengaturan Lewati instal ke YES pada target SDK akan mencegah siapa pun membuat arsip, karena itu akan kosong, jadi ini bukan pilihan. Menggunakan Project daripada Header publik akan menyebabkan arsip kehilangan file header yang harus didistribusikan, jadi ini juga bukan pilihan.

ofavre
sumber
0

Untuk itu karena saya bekerja di ruang kerja. Proyek memang diarsipkan tetapi tidak akan ditampilkan di jendela penyelenggara. Saya menutup ruang kerja dan membuka proyek sendiri. Diarsipkan telah dibuka di penyelenggara ... semoga membantu.

Pierre-Yves Guillemet
sumber
0

Dalam kasus saya, saya memiliki skrip khusus yang menyalin beberapa file sementara ke:

${TARGET_BUILD_DIR}/myTempDir

Itu berarti bahwa, setelah menyelidiki arsip untuk memeriksa isinya, saya menemukan tepat di sebelah file .app folder myTempDir. Setelah saya memodifikasi skrip untuk menyimpan di tempat lain hal-hal diurutkan.

Eli
sumber
0

Coba atur Header $ (PROJECT_NAME) dalam Kerangka Folder Public Header Folder projet. Anda harus pergi untuk membangun pengaturan Target Perpustakaan kemudian mengedit jalur Folder Header Publik sebagai Header $ (PROJECT_NAME).

Inco Mob
sumber
0

Jika menggunakan Xcode 7 dengan cocoapods v.0.38.2 . Coba hapus copy pod resourcesdari target ekstensi hari ini.

masukkan deskripsi gambar di sini

CoderPug
sumber
0

Saya mengalami masalah ini setelah menambahkan alat baris perintah OS X ke proyek aplikasi iOS saya, dan Skip Install diatur ke NO secara default untuk target alat baris perintah. Karena Anda jelas tidak dapat menginstal biner OS X ke perangkat iOS, pengarsipan default ke arsip Xcode generik. Pengaturan Lewati Instal ke YES untuk target ini memperbaiki masalah.

Brian Stewart
sumber