Menandatangani kerangka kerja tertanam tidak berfungsi di Xcode 11.2.1

18

Saya memiliki aplikasi proof-of-concept kecil, di mana saya mencoba untuk menanamkan (dan menandatangani) kerangka kerja (Alamofire) di dalam kerangka kerja saya (AequumPOCFramework.framework), namun, ketika saya mencoba untuk menggunakan perangkat saya, ia terus memberikan saya kesalahan

.... tidak valid untuk digunakan dalam proses menggunakan Library Validation: file yang dipetakan tidak memiliki cdhash, sama sekali tidak ditandatangani? Kode setidaknya harus ditandatangani ad-hoc.

Jika saya hanya mencoba untuk menyebarkan kerangka kerja saya sendiri, tanpa menyertakan Alamofire di dalamnya, semuanya bekerja dengan baik.

Kesalahan lengkap saat menyebarkan ke iphone saya adalah:

dyld: Perpustakaan tidak dimuat: @ rpath / Alamofire.framework / Alamofire Dirujuk dari: /private/var/containers/Bundle/Application/EDB697EB-EA15-4301-B4B6-A8FE1F0212BE/PocIOS.app/Frameworks/Accum : tidak ada gambar yang cocok ditemukan. Apakah menemukan: /private/var/containers/Bundle/Application/EDB697EB-EA15-4301-B4B6-A8FE1F0212BE/PocIOS.app/Frameworks/AequumPOCFramework.framework/Frameworks/Aramofire.framework: file / pekerjaan pribadi /containers/Bundle/Application/EDB697EB-EA15-4301-B4B6-A8FE1F0212BE/PocIOS.app/Frameworks/AequumPOCFramework.framework/Frameworks/Alamofire.framework/Alamofire) tidak valid untuk menggunakan file di perpustakaan , sama sekali tidak ditandatangani? Kode setidaknya harus ditandatangani ad-hoc.

Apa yang saya lakukan salah?

masukkan deskripsi gambar di sini

masukkan deskripsi gambar di sini

masukkan deskripsi gambar di sini

masukkan deskripsi gambar di sini

geekyaleks
sumber
2
Memiliki masalah yang sama di sini. Saat ini sedang menggali masalah ini. Tetap kirim saya jika Anda sudah menemukan solusi!
Mattk90
2
Sangat senang melihat bahwa saya bukan satu-satunya .... Jika saya mengetahuinya, saya akan memberi tahu Anda. Juga, tolong beri tahu saya jika Anda membuat kemajuan.
geekyaleks
Saya sudah bisa memberi tahu Anda bahwa itu ada hubungannya dengan proses penandatanganan kerangka kerja. Jadi masalahnya adalah Xcode mengatakan bahwa penandatanganan kerangka kerja yang tertanam salah atau tidak sama dengan kerangka kerja Anda sendiri. Saya saat ini menggali lebih dalam. Periksa artikel ini untuk pengantar yang bagus untuk topik: medium.com/@tally_b/more-unfolding-on-ios-signings-b6886236d7fc
Mattk90
2
Ya, ada yang salah dengan proses penandatanganan ini ... Untuk saat ini, saya memasukkan kerangka Alamofire saya ke kerangka kerja saya sendiri, menandatangani dan menyematkannya di sana, DAN menandatangani dan menyematkannya di App itu sendiri. Saya tahu jenis ini menyebalkan, tapi ini akan membiarkan saya setidaknya terus coding, dan semoga perbaikan nyata keluar dalam waktu dekat.
geekyaleks
1
Terima kasih atas jawaban yang sangat komprehensif ... Saya telah memutuskan bahwa untuk saat ini, saya hanya akan menandatangani kerangka kerja "tertanam / tertanam" di aplikasi itu sendiri, semoga jawaban lain akan muncul dalam waktu dekat ...
geekyaleks

Jawaban:

15

Kerangka kerja bersarang tidak didukung di iOS (lihat technotes ). Satu-satunya solusi yang sah saat ini adalah menautkan kerangka kerja "yang disematkan" langsung ke aplikasi hosting.

* XCFramework terutama merupakan gabungan dari binari platform khusus dan sayangnya tidak ada hubungannya dengan kerangka kerja embedding.

berec
sumber
Ada berita tentang masalah ini? Saya menghadapi masalah yang sama: framework saya A menggunakan framework saya B dan saya membutuhkan aplikasi terakhir untuk hanya menyertakan framework A dan tidak dapat mengakses framework B
Silvia
@ Silvia Jika Anda benar-benar perlu menyembunyikan B, maka saya percaya Anda dapat mengubahnya menjadi Perpustakaan Statis.
berec
0

Anda harus menanamkan Alamofire ke proyek Anda juga.

Misalnya, Anda menggunakan Carthage dan Cartfile dari kerangka kerja Anda memiliki pustaka Alamofire. Anda harus menggunakan Carfile yang sama untuk aplikasi utama Anda juga. Selain itu, Anda harus melakukan tindakan Kartago lainnya (menghubungkan perpustakaan, menambahkan skrip run) untuk aplikasi utama.

Yusuf Demirci
sumber
Ya, saya menemukan itu juga, namun, itu bukan tujuan saya untuk memiliki semua Kerangka saya terkena pengembang akhir. Saya berharap untuk memiliki semua yang dibundel dengan baik dalam satu kerangka kerja (kerangka kerja saya). Terima kasih ..
geekyaleks