Schemi URL personalizzati (URL Scheme) sono la strada, approvata da Apple, che consentono ad un’applicazione di comunicare con un’altra. Ad esempio, è possibile avviare l’applicazione telefono per effettuare una chiamata utilizzando l’URL personalizzato tel ://. Allo stesso modo, è possibile chiamare una app da terzi (non Apple) utilizzando un URL personalizzato, e allo stesso modo, altre applicazioni richiamare la vostra applicazione se si definisce un URL personalizzato.
Se si prevede di chiamare un’altra applicazione tramite un sistema di URL personalizzato su iOS, ecco una guida rapida per verificare se un sistema di URL specifico è stato definito. I due esempi seguenti mostrano il codice per la creazione di un oggetto NSURL con lo schema URL di destinazione e utilizzando l’istanza condivisa dell’applicazione per verificare se l’URL può essere aperto:
[code lang=”obj-c”]// Verifica l’app di Facebook è installata
if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"fb://"]])
{
do something…
}
// Verifica l’app di Ebay è installata
if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"ebay://"]])
{
do something…
}[/code]
Non ci sono restrizioni su chi può definire un URL personalizzato. Ad esempio, fb :// non è necessariamente limitato a Facebook, per cui questo processo non è del tutto infallibile. Da quello che ho letto, Apple non definisce un processo per determinare quale applicazione sarà chiamato, se più di una app ha registrato lo sesso URL.
Qui è presente un elenco davvero ben fatto di URL personalizzati: iOS URL Schemes