Quindi, sappiamo tutti che Apple proibisce l'utilizzo di API private o non documentate nelle app iOS. Non ho alcun problema con questo, perché ci sono validi motivi tecnici per cui questa è una buona idea. Tuttavia, per due volte ho avuto un'app rifiutata per l'utilizzo di API private, quando in realtà non era così. Non è difficile: le API private includono simboli come connectionState
, setThumbnail
, setOrder
e così via. Qualsiasi chiamata effettuata ai metodi denominati come tali verrà contrassegnata come un uso privato dell'API, anche se il metodo chiamato è qualcosa che hai definito tu stesso. Per un programma che fa qualcosa con connessioni, miniature o l'ordine delle cose, i nomi dei metodi sopra menzionati non sono poi così improbabili. Ottenere respinto per questo e dover rinominare un metodo e inviare nuovamente i ritardi di almeno una settimana mentre aspetti una nuova recensione.Verifica autonomamente "utilizzo" API privato?
Quindi c'è un modo, utilizzando nm
, discariche di classe dei quadri iOS, ecc per scoprire per lei se i vostri nomi dei metodi conflitti con qualcosa dentro? Se è così, potremmo avere una possibilità di correggere questo prima del rilascio ed evitare inutili rifiuti.
Yay, la pagina di download sembra essere incompatibile con Safari sul Mac. Ho dovuto usare Firefox per vedere il pulsante di download. – auco
Funziona bene per me su Safari 5.1 (Mac) – Andrew
App Scanner non cattura il caso quando performSelector: viene chiamato con un selettore che è un metodo privato. Tuttavia, gli strumenti di Apple catturano questo caso. – ThomasW