24 Stimmen

Facebook SDK 3.1 für iOS - läuft auf iOS6, stürzt aber auf iOS 5.x ab

Wir haben gerade unser Facebook SDK für iOS auf 3.1 aktualisiert. Facebook SDK 3.0.8 lief nicht auf iOS6, jetzt, wo wir auf 3.1 aktualisiert haben, läuft es auf iOS 6, stürzt aber unter iOS 5.x ab.

aufgrund von AdSupport.framework stürzt die App unter iOS 5.x sofort nach dem Start mit folgendem Fehler ab:

dyld: Library not loaded: /System/Library/Frameworks/AdSupport.framework/AdSupport

Referenced from: /Volumes/Macintosh HD/Users/dmitrybaranov/Library/Application Support/iPhone Simulator/5.0/Applications/D6A93996-1E58-48A5-A457-DBC4FCCEE0EB/app.app/app
        
Reason: image not found
(lldb)

Hatte jemand dieses Problem? Gibt es ein Problem auf der Seite von Facebook und wird daran gearbeitet, dieses Problem zu beheben?

Oder machen wir etwas falsch?

57voto

stipe108 Punkte 1640

Haben Sie die Frameworks als optional eingestellt? Beim Hinzufügen von AdSupport.framework, Social.framework und Accounts.framework gibt es rechts ein Dropdown-Menü, in dem Sie zwischen "Erforderlich" und "Optional" wählen können. Ein Beispielbild sehen Sie hier: Link

Außerdem sollten Sie in den "Build Settings" Ihres Projekts überprüfen, ob "Base SDK" auf 6.0 und "iOS Deployment Target" auf iOS 4.3 eingestellt ist.

Ich bin in der Lage, FB SDK 3.1 auf meinem iOS 5.1 mit diesen Einstellungen zu erstellen.

10voto

VSN Punkte 2341

Wenn Sie auf iOS-Versionen vor 6.0 abzielen, müssen Sie die AdSupport.framework , Soziales.Rahmenwerk y Konten.rahmen optional verlinkt.

Bitte sehen Sie sich den beigefügten Screenshot an. enter image description here

Prost...!!!

1voto

MattyG Punkte 8299

Für alle, die dies lesen und Facebook SDK 3.6+ für iOS verwenden, müssen Sie diese Bibliotheken nicht mehr einschließen oder optional verknüpfen. Siehe die Facebook-Dokumente für das Upgrade von 3.5 auf 3.6:

"Entfernen Sie die Framework-Abhängigkeiten, die Ihrer Anwendung bei der Installation des Facebook-SDK hinzugefügt wurden. Das SDK hängt immer noch von ihnen ab, lädt sie aber jetzt automatisch, was die Einrichtung vereinfacht. Entfernen Sie diese Frameworks/Bibliotheken:

Accounts.framework

AdSupport.framework

Security.framework

Social.framework

libsqlite3.dylib [oder entfernen Sie das Linkerflag -lsqlite3.0].

[Hinweis: Wenn Ihre Anwendung eine der APIs dieser Frameworks/Bibliotheken direkt verwendet, sollte Ihr Projekt das Framework dennoch explizit einschließen]"

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X