Apple, iOS uygulamalarında özel veya belgelenmemiş API'lerin kullanılmasını yasaklar. Özel veya belgelenmemiş API yöntemleriyle aynı adı taşıyan yöntemlere yaptığınız tüm çağrılar, çağrılan yöntem sizin tanımladığınız bir şey olsa bile özel API kullanımı olarak işaretlenecektir.
Uygulama Yükleyici, yöntem adlarını, örnek değişken erişimini ve hatta özel yöntem adlarıyla @selector kullanımını kontrol ederek bir başlangıç taraması yapar. Uygulama Yükleyici her zaman harika bir iş çıkarmaz ve ne kadar çok kaynak dosyanız olursa, oluşturduğu API analiz dosyasının "çok büyük" olduğu konusunda size uyarı verme olasılığı o kadar artar.
Neyse ki, uyarıya rağmen başvurunuzu yine de gönderebilirsiniz. Apple bunu dahili olarak kontrol edecek ve çakışan isimler nedeniyle bir şey geri çevrilirse, gözden geçirme sürecinden tekrar geçmeniz gerekecek.
Erika Sadun, sizin için taramayı yapacak API Kiti adında bir uygulama yapmaya çalıştı, ancak işini bırakmış ve uygulamanın herhangi bir izini web sitesinden kaldırmış gibi görünüyor.
Chimp Studios aynı şeyi yapmak için App Scanner'ı yarattı , ancak 2011'den beri güncellenmedi. Ne yazık ki, büyük projeler için - ve bu CocoaPod'lardan çok sayıda ekstra kapsülü olan projeleri de içeriyor - şu anda (2014) iyi bir şey yok özel API yöntemi ve örnek adlarıyla çakışmayacak şekilde şeyleri proaktif olarak adlandırmaktan başka bu sorunu çözmenin bir yolu.
Apple'ın Kakao Adlandırma Kuralları hakkında proaktif olarak bilgi edinebilir ve tahmin etmeye çalışabilirsiniz. Bu gelecekteki baş ağrılarını azaltacaktır. Ancak Apple ad alanları gibi bir şey sunana kadar, zaman zaman bu sorunla karşılaşmaya devam edebiliriz.
"Geçersiz ikili" hatası bir dizi nedenden kaynaklanabilir, ancak bu, Uygulama Yükleyici tarafından oluşturulan API analiz belgesiyle tamamen ilgisizdir.
Tarama sırasında bile, özel / belgelenmemiş API'leri kullanma yasağını aşmanın yolları olduğunu bilmelisiniz. :)