teilen Absicht über Facebook für Android Jelly Bean

8

Ich möchte etwas Bild und Text über Facebook von Android Jelly Bean teilen. Es funktioniert in allen Geräten außer Android Jelly Bean. Bitte helfen Sie mir, dieses Problem zu lösen.

mein Code

%Vor%

In diesem Code möchte ich einen Text schreiben. Aber EXTRA_TEXT funktioniert nicht.Wie Zeichenfolge oder Bild in diesem EXTRA_TEXT übergeben.

    
AndroidEnthusiastic 22.02.2013, 13:17
quelle

3 Antworten

6

Du solltest Facebook nicht nur direkt ansprechen.

Stattdessen sollten Sie nur die Share Intent verwenden. Übergeben Sie Ihre Daten in den Extras, wie im SDK angegeben, und lassen Sie dann den Benutzer auswählen, mit wem er teilen möchte. Zwinge sie nicht, Facebook zu verwenden, da sie NICHT die einzigen sozialen Medien sind. Theres auch Twitter, 4square und viele andere, die der Benutzer benutzt. Lassen Sie diese Apps mit Ihrer Absicht umgehen, diktieren Sie nicht eine so strenge Einschränkung wie NICHT , wie die Absichtsaktion ACTION_SEND funktionieren sollte.

Was Ihr Problem mit dem Extra anbelangt, wird EXTRA_TEXT intent offensichtlich nicht funktionieren, da es nicht für Bilder oder Referenzen wie diese verwendet wird.

Lesen Sie die Dokumentation

Ссылка

Es sagt:

  

Wenn Sie eine SEND-Absicht starten, sollten Sie sie normalerweise in eine Auswahl einfügen   (durch createChooser (Intent, CharSequence)), die geben die   richtige Schnittstelle für den Benutzer zu wählen, wie Sie Ihre Daten senden und erlauben   Sie geben eine Eingabeaufforderung an, die angibt, was sie tun.

     
    

Eingabe: getType () ist der MIME-Typ der gesendeten Daten. bekomme * Extra     kann entweder ein EXTRA_TEXT - oder EXTRA_STREAM - Feld haben, das den     zu sendende Daten. Wenn EXTRA_TEXT verwendet wird, sollte der MIME-Typ sein     "Text / Ebene"; andernfalls sollte es der MIME-Typ der Daten sein     EXTRA_STREAM. Verwenden Sie / , wenn der MIME-Typ unbekannt ist (dies wird nur     Absender zulassen, die mit generischen Datenströmen umgehen können). Wenn Sie verwenden     EXTRA_TEXT, Sie können EXTRA_HTML_TEXT optional auch für Kunden bereitstellen     um Ihren Text mit HTML-Formatierung abzurufen.

         

Ab JELLY_BEAN können die gesendeten Daten durch geliefert werden     setClipData (ClipDaten). Dies ermöglicht Ihnen zu verwenden     FLAG_GRANT_READ_URI_PERMISSION beim Teilen von Inhalten: URIs und andere     erweiterte Funktionen von ClipData. Wenn Sie diesen Ansatz verwenden, müssen Sie immer noch     Geben Sie die gleichen Daten über die Felder EXTRA_TEXT oder EXTRA_STREAM ein     Im Folgenden wird die Kompatibilität mit alten Anwendungen beschrieben. Wenn du es nicht tust     Legen Sie ein ClipData fest, es wird beim Aufruf für Sie dorthin kopiert     startActivity (Absicht).

         

Optionale Standard-Extras, die von einigen Empfängern interpretiert werden können     Gegebenenfalls sind: EXTRA_EMAIL, EXTRA_CC, EXTRA_BCC, EXTRA_SUBJECT.

  

Angesichts dieser Informationen müssen Sie auch den MIME-Typ für Ihre bestimmten Daten in Ihrem Intent-Typ festlegen.

    
JoxTraex 22.02.2013 13:18
quelle
2

Probieren Sie den folgenden Code aus. Ich habe diesen Code verwendet, um den Text & amp; Bild von einer meiner Anwendung und es funktioniert gut für mich.

Ich hoffe, es wird auch für dich funktionieren.

%Vor%

In diesem habe ich das Bild verwendet, das an einem bestimmten Ort im Gerät gespeichert ist. Sie können es entsprechend Ihrem Bildstandort ändern.

    
GrIsHu 06.03.2013 04:37
quelle
0

Weitere Einzelheiten finden Sie auf der FaceBook-Seite

Es sieht so aus, als könnten wir keinen Text weitergeben, den wir in der Facebook App teilen sollen.

Facebook Share Intent Details

    
Jijo Thomas 05.06.2013 12:29
quelle

Tags und Links