Ich verwende das hierFacebook SDK
gefundene und versuche das bereitgestellte Beispiel (im Ordner ).FacebookiOSSample
Wenn ich das AppId
hier einfach durch mein spezifisches ersetze AppId
, kann ich es nicht mehr teilen. (Ich habe es sowohl in der AppDelegate
Datei als auch in der info.plist
Datei ersetzt). Ich erhalte jetzt folgenden Fehler:
FBSDKLog: Ungültige Verwendung von FBAppCall, fb **** ist nicht als URL-Schema registriert. Haben Sie 'FacebookUrlSchemeSuffix' in Ihre Liste aufgenommen?
Andernfalls funktioniert dies gut mit dem Original des Samples, AppId
das auf einen Namen verweist IFaceTouch
.
Was könnte an der Einrichtung meiner App falsch sein, wie registriere ich meine AppId
?
ios
facebook
xamarin
url-scheme
L. Desjardins
quelle
quelle
Antworten:
Befolgen Sie diese drei Schritte:
Die fertige .plist sollte ungefähr so aussehen:
Quelllink:
quelle
In Bezug auf Rohschlüssel und Werte sollten Sie CFBundleURLTypes und CFBundleURLSchemes haben. Hoffentlich hilft das!
quelle
Unter den Info- URL-Typen befindet sich ein weiterer Abschnitt
Überprüfen Sie, ob die Werte dort im Feld URL-Schemata mit dem Wert in den URL-Typen -> URL-Schemata in der obigen Eigenschaftsliste übereinstimmen . (und auch mit der FacebookAppID übereinstimmen)
quelle
Für iOS 9
Wenn Sie einen Fehler haben: 'LSApplicationQueriesSchemes'
Basierend auf der Antwort von Bear with me müssen Sie auch die folgenden Zeilen hinzufügen:
<key>LSApplicationQueriesSchemes</key> <array> <string>fbauth2</string> </array>
Sehen Sie das .
Sie sollten mit diesen Zeilen am Ende Ihrer .plist-Dateien enden:
<key>CFBundleURLTypes</key> <array> <dict> <key>CFBundleURLSchemes</key> <array> <string>fb2R3234544534554</string> </array> </dict> </array> <key>FacebookAppID</key> <string>2R3234544534554</string> <key>FacebookDisplayName</key> <string>stevejeff</string> <key>NSAppTransportSecurity</key> <dict> <key>NSExceptionDomains</key> <dict> <key>facebook.com</key> <dict> <key>NSIncludesSubdomains</key> <true/> <key>NSThirdPartyExceptionRequiresForwardSecrecy</key> <false/> </dict> <key>fbcdn.net</key> <dict> <key>NSIncludesSubdomains</key> <true/> <key>NSThirdPartyExceptionRequiresForwardSecrecy</key> <false/> </dict> <key>akamaihd.net</key> <dict> <key>NSIncludesSubdomains</key> <true/> <key>NSThirdPartyExceptionRequiresForwardSecrecy</key> <false/> </dict> </dict> </dict> <key>LSApplicationQueriesSchemes</key> <array> <string>fbauth2</string> </array> </dict> </plist>
* Wenn Sie Version 4.6.0 oder höher des SDK verwenden, müssen Sie nur Folgendes hinzufügen: * (Danke mohsinj )
<key>LSApplicationQueriesSchemes</key> <array> <string>fbapi</string> <string>fb-messenger-api</string> <string>fbauth2</string> <string>fbshareextension</string> </array>
quelle
<key>LSApplicationQueriesSchemes</key> <array> <string>fbapi</string> <string>fb-messenger-api</string> <string>fbauth2</string> <string>fbshareextension</string> </array>
1- Klicken Sie in Xcode mit der rechten Maustaste auf die Info.plist-Datei Ihres Projekts und wählen Sie Öffnen als -> Quellcode.
2- Fügen Sie das folgende XML-Snippet unmittelbar vor dem letzten
</dict>
Element in den Hauptteil Ihrer Datei ein .<key>CFBundleURLTypes</key> <array> <dict> <key>CFBundleURLSchemes</key> <array> <string>fb{your-app-id}</string> </array> </dict> </array> <key>FacebookAppID</key> <string>{your-app-id}</string> <key>FacebookDisplayName</key> <string>{your-app-name}</string> <key>LSApplicationQueriesSchemes</key> <array> <string>fbapi</string> <string>fb-messenger-share-api</string> <string>fbauth2</string> <string>fbshareextension</string> </array>
3- Ersetzen Sie {Ihre-App-ID} und {Ihren-App-Namen} durch die App-ID und den Namen Ihrer App, die Sie im Facebook App Dashboard finden.
quelle
Gehen Sie zu diesem Link. Wählen Sie Ihre App aus und konfigurieren Sie Ihre
info.plist
quelle
Heute habe ich diesen Fehler behoben, indem ich einfach Speicherplatz aus FacebookDisplayName entfernt habe .
Stellen Sie sicher, dass in FacebookDisplayName kein Speicherplatz vorhanden ist
quelle
Ich weiß nicht, ob Ihr Problem dasselbe ist wie meins. Aber ich habe einige Zeit gebraucht, um es zu finden, und ich werde es hier einfügen, damit es jedem helfen kann. Das Problem war, dass die Google-Anmeldung denselben Attributnamen info.plist verwendete und die von Facebook überschrieb. Also ich konnte dies in X-Code sehen und zusammenfügen, jetzt funktioniert alles gut! (Attribut URL-Typen).
quelle
In meinem Fall hatte ich bereits LSApplicationQueriesSchemes- und CFBundleURLTypes-Schlüssel in meiner info.plist, als ich sie erneut separat in info.plist hinzufügte. es hat den zweiten nicht gelesen und erkennt ihn nicht. Das Hinzufügen von Werten zu den vorherigen Schlüsseln LSApplicationQueriesSchemes und CFBundleURLTypes hat mein Problem gelöst.
quelle
Ich stand auch vor dem gleichen Problem. Dann tat dies:
<dict> <key>CFBundleURLSchemes</key> <array> <string>fb154510174913175</string> <string>fbauth2</string> // add this line to remove the error </array> </dict>
und das Problem ist jetzt behoben.
quelle