Aus einer App (NSString/UIImage) auf die eigene facebook seite posten

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Aus einer App (NSString/UIImage) auf die eigene facebook seite posten

    Hallo wissende Gemeinde,

    Die Herausforderung:
    Aus meiner iOS-App heraus, möchte ich einen NSString (und evtl. ein UIImage) per Knopfdruck
    (kein WebView) in verschiedene Soziale Netze (facebook, twitter, StudiVZ, google+, ..) posten.

    Ich gehe davon aus, dass der Anwender meiner iOS-App bereits einen Account bei dem jeweiligen
    Sozialen Netz hat und der dortige UserName und Passwort in meiner iOS-App hinterlegt wurde.



    Als erstes Soziales Netz habe ich mir mal facebook rausgegriffen:

    Nach einigen Recherchen bei developers.facebook, hier im Forum und generell bei Google, stoße ich immer wieder auf
    "ShareKit" und natürlich das "iOS SDK" von facebook. Hier wird im Detail erklärt wie das eine oder andere zu implementieren ist.
    Allein die grundsätzliche Sinnfrage wird nicht beantwortet.

    Ich frage mich nämlich, ob "Single-Sign-On", "Call Graph API", "display Platform Dialogs",
    "Erstellen einer facebook-Anwendung", ... für mein Vorhaben nicht viel zu übertriebener Aufwand ist?

    Mir ist klar, das bspw. facebook keine normale HTML-Seite mehr ist, sondern hauptsächlich via Java(?)-Script
    funktioniert, aber sollte es eine einfache HTTP-Anweisung nicht auf tun?

    Etwas anderes als eine HTTP-Nachricht schickt der Browser doch auch nicht an den facebook WebServer, oder?



    Kann mir jemand grundsätzlich sagen, ob ich --für mein Vorhaben-- das iOS SDK von facebook (mit Single-Sign-On & Co)
    überhaupt benötige?

    Wenn ja, wäre ein kurzes warum (bzw. warum nicht) auch sehr willkommen. ;)

    besten Gruß,
    ich aka Catweazle
  • Es geht nicht einfacher und selbst das Sharekit ist ein Kreuz zu implementieren. Ich habe jedenfalls tagelang gekotzt bis es bei mir zufriedenstellend lief. Gerade die Facebook API ist der letzte Mist. Die Pappnasen die die Entwickeln ändern manchmal einfach irgendwas nicht abwärts kompatibel und dann geht Deine App mal wieder ein paar Tage nicht, bis die ihre Bugreports mal ansehen und das wieder fixen. Dafür machen die alles immer komplizierter. Bald muss man sich wahrscheinlich einen Finger abhacken und hinschicken damit sie Dich über Deinen Fingerabdruck identifizieren können. ;)

    Viel Spaß mit Deinem Projekt

    Claus
    2 Stunden Try & Error erspart 10 Minuten Handbuchlesen.

    Pre-Kaffee-Posts sind mit Vorsicht zu geniessen :)
  • Hm!? Ich würde aber einen anderen Weg nehmen (ich habe damit noch nie Erfahrung gemacht), nämlich: Facebook hat ja PHP SDK und ich würde da auf meinem Webserver einfache Schnittstelle (wenn es mehr sein soll, dann REST) implementieren und dein App kommuniziert mit dem "Webservice" und der leitet die Sachen weiter über PHP SDK an Facebook. Damit ist man viel flexibler als alles fest im Cocoa App einzubauen.
    Aus macfreakz wurde Apfelbeisser …
  • Den Teufel (facebook iOS SDK) mit dem Beelzebub (PHP SDK + eigener WebServer) austreiben ?!?
    Umwege sind ja manchmal, die sicherere Alternative, kommt wg. fehlender Infrastruktur momentan wohl aber nicht in Frage.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Catweazle () aus folgendem Grund: Zweideutigkeit eindeutig gemacht

  • Ich freue mich ja über die rege Anteilnahme. Aber ganz ehrlich, hatte ich vor meiner Frage schon zwei (ähnliche) der drei Antworten hier im Forum gefunden.


    Wenn ich das richtig sehe, kann man mit den SDK -- facebook und ShareKit -- bestimmt ganz tolle Sachen machen.
    Ich will aber nur ganz simpel und einfach ein Posting platzieren. Postings sind doch der Urgedanke der SozialenNetzwerke.

    Wenig Code -> Wenig Fehlermöglichkeiten

    Was mich wundert:
    a) Wenn ich als User auf meine facebook-Pinwand (Wall) poste, brauche ich "nur" den UserNamen und das Passwort.
    b) Wenn genau das Gleiche von einer App, quasi für mich erledigt werden soll, brauche ich zusätzliche noch eine facebook-App (ID) für die iOS-App ???

    Warum?
    Technisch muss das (siehe "a)" ) auch anders möglich sein!

    Bin ich tatsächlich der erste dem das auffällt?

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Catweazle () aus folgendem Grund: doppeltes Wort gelöscht

  • Facebook und Konsorten wollen sich nunmal das Recht vorbehalten, Anwendungen, die den Service missbrauchen, auszusperren. Zu Recht, wie ich finde.
    Sicher "geht" das auch anders. Spontan würde mir eine UIWebView und darin JavaScript ausführen, einfallen.
    ABER: An einer API wird i.d.R. nichts geändert, was die grundlegende Funktion zerstören würde. Mit solchen "Hacks" passiert das schon eher.
    Und mal ehrlich: Einfacher als ShareKit geht es wirklich nicht.
  • 10Min? Claus / Thallius sieht das offenbar etwas anders ... .


    Das klärt zwar nicht die Frage, ob es bei den SDKs einen vermeidbaren Overhead gibt, aber 10min klingt nach vertretbarem Aufwand.


    Frei nach dem Motto: "Solange es mir schmeckt, esse ich - Egal was verwurstet wurde."


    Sollte ich nach 30min noch kein Ergebnis zustande bekommen haben, darf ich mich doch bestimmt mal bei der melden, oder? :-)
  • So, aus dem reichen Schatz meiner heutigen Erfahrung kann ich berichten, dass man mehr als 20min benötigt.
    Was aber an facebook liegt. Bis man sich nämlich eine fb-App mit Handy-Verfikation eingerichtet hat, ... . Wer dann noch die Nutzungsbedingungen -- die man abnicken muss -- mal überfliegt ist schon mal 'ne gute Stunde beschäftigt.

    Mein Hauptproblem ist aber:

    Bei der Verwendung ShareKit/Facebook-App wird der Nutzer der iOS-App
    1. auf eine Web-View geleitet :(
    2. nach eMail-Adresse und Passwort (zur Verifikation gegenüber facebook) gefragt
    3. muss dann zusätzlich noch der eigens erstellten facebook-App Zugriff gewähren.


    a.) ist unschön - das sollte innerhalb der iOS-App passieren
    b.) ist unvermeidlich
    c.) schreckt jeden halbwegs bedarften User (der iOS-App) ab.


    Wie machen dass andere iOS-Apps wie "What's up" und die iOS-App von facebook selbst?
    Hier installiert man die iOS-App auf dem Handy, teilt der iOS-App seine LoginDaten (eMail/Passwort) für das jeweilige SocialNet mit und
    hat sofort ein Posting auf seiner Pinwand/Wall, wie "Catweazle hat die facebook-App auf seinem iPhone installiert!"

    Nix mit Web, oder der Warnung "Achtung folgende (facebook) Anwendung will auf Ihre Daten zugreifen".
    Da wird doch Wasser gepredigt aber Wein gesoffen und mir zweierlei Maß gemessen!

    Wer kann mir mit dem HTTP-Post request weiterhelfen?
  • Facebook kann alles mit seiner App machen was es will, ist doch mit Apple und der private API nicht anders...Ich versteh nicht warum ihr euch immer alles so beschweren müsst. Ihr wollt Facebook benutzen und die Vorteile daraus ziehen, na dann findet euch gefälligst mit deren Bedingungen ab, wenn es euch nicht passt lasst es halt sein. Gleichzeitig ist euch Facebook bei der ganzen Datensammelei (was ich hier keinesfalls leugnen und/oder unterstützten will!) nicht Sicher genug, am liebsten hättet ihr es aber, dass man ohne Passwort (!!!, mal ehrlich)) aus Apps Sachen posten kann, jeder wie er Lust und Laune hat....
  • Ich nehme Antwort B !
    Der Sinn mit der WebView liegt darin dass der User nicht jedem seine Nutzerdaten bekannt geben muss/soll. Einen Umweg dafür gibt es kaum. Höchstens tatsächlich über einen externen Server welcher eine Sitzung startet, Cookie speichert, mit Cookie auf die Wall zugreift und Bild postet. Aber kein User würde irgendwo seine Facebook-Daten angeben.
    _____________________________
    Alle Angaben ohne Gewähr :)

    On the internet you can be anything you want. It's strange that so many people choose to be stupid.


    Superbientem animus prosternet