Ich versuche, die Instagram-URL zu meiner App in iOS9 hinzuzufügen, erhalte jedoch die folgende Warnung:
-canOpenURL: failed for URL: "instragram://media?id=MEDIA_ID" - error: "This app is not allowed to query for scheme instragram"
Ich habe jedoch Folgendes zum LSApplicationQueriesSchemes
in meinem info.plist
Hinzugefügt;
<key>LSApplicationQueriesSchemes</key>
<array>
<string>instagram</string>
<string>instagram://media?id=MEDIA_ID</string>//this one seems to be the issue
</array>
Jede Hilfe wird sehr geschätzt?
EDIT 1
Dies ist der Code, mit dem ich instagram öffne:
NSURL * instagramURL = [NSURL URLWithString:@"instragram://media?id=MEDIA_ID"];//edit: note, to anyone copy pasting this code, please notice the typo OP has in the url, that being "instragram" instead of "instagram". This typo was discovered after this StackOverflow question was posted.
if ([[UIApplication sharedApplication] canOpenURL:instagramURL]) {
//do stuff
}
else{
NSLog(@"NO instgram found");
}
basierend auf diesem Beispiel.
Ihr LSApplicationQueriesSchemes
Eintrag sollte nur Schemata enthalten. Der zweite Eintrag hat keinen Sinn.
<key>LSApplicationQueriesSchemes</key>
<array>
<string>instagram</string>
</array>
Lesen Sie den Fehler. Sie versuchen, die URL mit einem Tippfehler im Schema zu öffnen. Korrigieren Sie Ihren Verweis auf instragram
in Ihrem Aufruf an canOpenURL:
.
Für Facebook wer braucht:
<key>LSApplicationQueriesSchemes</key>
<array>
<string>fbauth</string>
<string>fbauth2</string>
<string>fb-messenger-api20140430</string>
<string>fbapi20130214</string>
<string>fbapi20130410</string>
<string>fbapi20130702</string>
<string>fbapi20131010</string>
<string>fbapi20131219</string>
<string>fbapi20140410</string>
<string>fbapi20140116</string>
<string>fbapi20150313</string>
<string>fbapi20150629</string>
<string>fbshareextension</string>
</array>
Setze nur <string>instagram</string>
. Es ist nicht der vollständige Pfad, sondern die Basis der Schema-URL erforderlich.