2015-09-25 5 views
15

ho improvvisamente ricevo un messaggio sul iOS 9:Impostazione di NSAllowsArbitraryLoads in iOS 9 - Apple rifiuterà l'app?

La risorsa non potrebbe essere caricato perché il politica di App Transport Security richiede l'utilizzo di una connessione sicura

Searched un po 'e ha scoperto che NSAllowsArbitraryLoads impostazione a SÌ risolve ciò che effettivamente funziona.
Tuttavia ho trovato anche che Apple may reject the App per questo. Anche se ha dichiarato nel App Transport Security Technote

NSAllowsArbitraryLoads

Un valore booleano utilizzato per disattivare App Transport Security per eventuali domini non elencati nel dizionario NSExceptionDomains. I domini elencati utilizzano le impostazioni specificate per quel dominio.

ma poiché questa è l'unica soluzione di lavoro in questo momento e anche di Apple può o non può respingere l'App, ha voluto solo per confermare prima della pubblicazione.

Aggiornamento: Apple ha superato la revisione e la mia app è vivo ora con questa impostazione :)

+0

Apple ha dato soluzione per questo. Non penso che Apple respinga l'app. Perché se vogliamo usare HTTP e HTTPS entrambi nella stessa applicazione, questa è solo una soluzione. http://stackoverflow.com/questions/32774138/how-can-we-use-http-and-https-both-ats-app-transport-security-in-one-applicati –

+1

Invio la mia nuova versione dell'app a settimana fa con questa chiave 'NSAllowsArbitraryLoads' a' YES', e abbiamo passato il processo di revisione delle app – Leo

+0

@Leo: Buono a sapersi :) – Nitish

risposta

21

Aggiornamento:

Apple ha annunciato che le applicazioni iOS hanno fino al 1 gennaio 2017, per consentire App Transport Security.

Pertanto, se si prevede di inviare l'app all'app store dopo il 2017, attivare ATS.

Inoltre, vedono questo link

====== ===== Vecchio risposta

La mia esperienza:

presento le mie app a 2015/09/17, e ha superato il processo di revisione dell'app store e ha rilasciato correttamente l'app.

Ecco lo screenshot di info.plist della mia app. enter image description here

Quindi, non penso di Apple rifiuterà l'applicazione per questo motivo per ora

Aggiornamento:

mia nuova applicazione superato processo di revisione mela al 10/30/2015 con questa chiave impostata su SÌ.

+0

Sembra abbastanza bizzarro che Apple abbia introdotto questa funzionalità di sicurezza, ma renderla banale per aggirare il problema ?? – Fattie

+0

Ecco come risolvere il problema per chiunque usi google su http://stackoverflow.com/a/32038743/294884 – Fattie

+0

Forse non ora, ma nelle imminenti iterazioni di iOS, Apple potrebbe iniziare a rifiutare tali app. – Nishant

0

Ha sprecato un tempo considerevole (⏱ ==) per questo motivo. Testare il nuovo codice NSURL ... ha fallito con alcuni utenti, ha funzionato con altri. Non avevo idea del perché.Poi sono incappato nell'output del registro che normalmente non guardo (chi vede davvero i log su un iPhone, seriamente ...) e c'era questo avviso.

Questo era un trucco piuttosto sgradevole Apple ... ha perso tempo nel debugging, perso tempo in utenti frustranti, perdendo credibilità nell'avere software che "funziona". Rotti i raggi a causa del bastone di Apple spinto lì dentro. Dovendo gettare Apple sotto l'autobus con i miei tester su questo.

Ref: NSAppTransportSecurity: NSAllowsArbitraryLoads NSAppTransportSecurity: NSExceptionDomains

enter image description here

+0

Oh sì, l'intero testo di errore è: App Transport Security ha bloccato un carico di risorse HTTP (http: //) in chiaro poiché è insicuro. Le eccezioni temporanee possono essere configurate tramite il file Info.plist dell'app. –