openURL() der UIApplication-Klasse das iOS veranlassen, eine URL in der App zu öffnen, die sich für das URL-Schema der URL beim System angemeldet hat. Dabei werden die Schemata http und https immer an den Standard-Browser weitergeleitet (ist iCab der Standard-Browser, öffnet dann auch iCab Mobile diese Seite). Möchte man eine Seite in iCab Mobile öffnen, ohne das iCab Mobile notwendigerweise der Standard-Browser sein muss, kann man anstatt http und https statt dessen die Schemata icabmobile und icabmobiles, sowie web und webs verwenden (d.h. statt 'https://apple.com/' öffnet man z.B. 'icabmobiles://apple.com/').
Eine URL die dem X-Callback-URL-Protokoll entspricht, ist folgendermaßen aufgebaut:
[scheme]://x-callback-url/[action]?
[action-parameters]&
[x-callback-parameters]
Dabei ist für iCab Mobile für [scheme] der Wert x-icabmobile zu verwenden.
[action] definiert das Kommando, [action-parameters] die zum Kommando gehörigen Parameter.
Folgende Kommandos und Parameter werden von iCab unterstützt…
| Aktion | Erforderliche Parameter Optionale Parameter |
Beschreibung |
|---|---|---|
| addBookmark | url=[url] title=[title] |
Speichert ein Lesezeichen mit URL [url] und Titel [title] |
| addQuickstarter | url=[url] title=[title] |
Fügt ein Lesezeichen im Schnellstarter hinzu, mit URL [url] und Titel [title] |
| addReadingList | url=[url] title=[title] |
Fügt einen Eintrag in der Leseliste hinzu, mit URL [url] und Titel [title] |
| addSearchEngine | url=[url] title=[title] |
Fügt die Suchmaschine mit Namen [title] und URL [url] in die Liste der Suchmachinen hinzu. Die URL sollte dabei entweder den Platzhalter '%@' beinhalten, der bei der Suche durch den Suchbegriff ersetzt werden kann, oder erlauben, den Suchbegriff ans Ende der URL anzuhängen. |
| search | searchTerm= searchEngine= |
Startet eine Suche mit dem Suchbegriff [searchTerm] mit der Suchmaschine [searchEngine]. Fehlt letzteres, oder ist die angegebene Suchmaschine unbekannt, nutzt iCab Mobile die eingestellte Standardsuchmaschine. |
| fullscreen | Schaltet den Vollbildmodus ein | |
| normalmode | Schaltet den Vollbildmodus aus | |
| open | url=[url] destination= destination= destination=
fullscreen=yes |
Öffnet die durch [url] angegebene Webseite, wahlweise im aktuellen Tab, in einem neuen Tab im Vordergrund oder Hintergrund. Außerdem kann auch noch optional der Vollbildmodus aktiviert/deaktiviert werden. Gibt man in [url] 'quickstarter:' an, öffnet sich der Schnellstarter. |
| download | url=[url] filename= referrer=[url] |
Startet den Download von [url] und speichert die Datei unter dem Namen [filename] (sofern angegeben). Optional kann auch der Referrer angegeben werden. |
[x-callback-parameters] definiert die Rückgabe eines Ergebnisses zur App, die die URL an iCab Mobile geschickt hatte. Erwartet die App keine Antwort, bleibt der Parameter leer. Ansonsten werden folgende Rückgabe-Parameter unterstützt:
| Parameter | Beschreibung |
|---|---|
| x-success=[url] | Im Falle eines Erfolgs öffnet iCab die hier angegebene URL, die als URL-Schema das App-Scheme der aufrufenden App nutzen sollte |
| x-error=[url] | Im Falle eines Fehlers öffnet iCab die hier angegebene URL, die als URL-Schema das App-Scheme der aufrufenden App nutzen sollte |
Beim Aufbau der URL für das X-Callback-URL-Protokol ist zu beachten, dass Parameter wie bei URLs üblich durch '&' getrennt werden und über das 'Percent-Encoding'-Verfahren kodiert werden müssen.
x-icabmobile://x-callback-url/open?
url=quickstarter:&
destination=newTab
Öffnet die iCab-Mobile Webseite im aktuellen Tab und im Vollbildmodus:
x-icabmobile://x-callback-url/open?
url=http://www.icab-mobile.de/&
destination=currentTab&
fullscreen=yes
Speichert die iCab-Mobile-Seite als Lesezeichen und meldet den Erfolg bzw. Misserfolg an die App (mit URL-Schema yourapp) zurück
x-icabmobile://x-callback-url/addBookmark?
url=http://www.icab-mobile.de/&
title=iCab%20Mobile%20Homepage&
x-success=yourapp://success-handler&
x-error=yourapp://error-hander