2015-09-21 9 views
12

Lo schema seguente URL stava lavorando alla versione precedente, ma non funziona più su iOS 9:Google Maps schema URL non funziona su iOS 9

comgooglemaps://?q=Google+Japan,+Minato,+Tokyo,+Japan&center=35.660888,139.73073&zoom=15&views=transit 

ha fatto qualcosa di cambiamento su iOS 9 che impediscono le applicazioni di aprire altri app che utilizzano schemi URL?

risposta

24

In iOS 9, Apple ha apportato una modifica alla gestione degli schemi URL. Ora è necessario aggiungere la chiave "LSApplicationQueriesSchemes" in plist e quindi aggiungere URLScheme che si desidera chiamare.

<key>LSApplicationQueriesSchemes</key> 
<array> 
<string>comgooglemaps</string> 
</array> 
+2

Ho aggiunto questo ma ottengo ancora il messaggio di errore "-canOpenURL: non riuscito per URL:" comgooglemaps: // "- errore:" Questa app non è autorizzata a interrogare per schema comgooglemaps "" –

13

In iOS 9.0, ulteriori restrizioni sono stati collocati sul metodo canOpenURL - per questo metodo di lavorare, è necessario aggiungere una matrice LSApplicationQueriesSchemes al file del app info.plist, e quindi aggiungere elementi per ogni URL scheme si vuole vuoi interrogare. Questi schemi come comgooglemaps, comgooglemaps-x-callback e lo schema URL personalizzato della tua app.

Ho aggiunto i seguenti articoli nel mio info.plist.

<key>LSApplicationQueriesSchemes</key> 
<array> 
    <string>comgooglemaps</string> 
    <string>comgooglemaps-x-callback</string> 
</array> 

Provare con questo codice di esempio OpenInGoogleMaps-iOS.