2012-11-06 9 views
5

Próbuję udostępnić tekst obrazem za pomocą intencji ACTION_SEND. Połów jest taki, że obraz jest reprezentowany przez adres URL, a nie lokalny identyfikator URI. Aktualnie posiadany kod to:Android: Udostępnianie tekstu i obrazu (URL) za pomocą intencji

Intent shareIntent = new Intent(android.content.Intent.ACTION_SEND); 
shareIntent.setType("*/*"); 
shareIntent.putExtra(Intent.EXTRA_TEXT, text); // <- String 
shareIntent.putExtra(Intent.EXTRA_STREAM, url); // <- URL object 

Teraz próbowałem kilku wariacji na ten temat. Próbowałem już z setType ("image/*"), próbowałem parsować URI z adresu URL, próbowałem przekazać sam adres URL itp. Nic tak daleko nie działa. Jednak podczas wysyłania do Twittera widzę tekst, a nie obraz.

Edycja: Wygląda na to, że oryginalny opis nie był wystarczająco pomocny, więc .... po uruchomieniu powyższego zamiaru pomyślnie otwiera wybraną aplikację, taką jak Twitter, Facebook, Gmail lub wiadomości tekstowe, ale obraz jest wyświetlany w żadnym z tych aplikacji. Tekst pojawia się na Twitterze - nie pamiętam, czy tekst pojawia się gdzie indziej, ale w tym momencie skupiam się na części obrazu.

+0

"Jak dotąd nic nie działa" to dość niepoinformowany opis objawów. – CommonsWare

+0

Przynajmniej jeśli chodzi o Facebooka, zalecamy używanie ich SDK do udostępniania informacji na Facebooku. W przeszłości miałem problemy z publikowaniem na Facebooku za pośrednictwem intencji ACTION_SEND, więc przełączyłem się na używanie ich SDK. Słyszałem, że nie obsługują już intencji Androida ACTION_SEND, ale nie jestem pewien, czy to prawda, czy nie. – chRyNaN

+0

@AndroidStudent Czy możesz umieścić link do biblioteki Androida używanej do uzyskiwania dostępu do SDK Facebooka? Czy wiesz, czy Twitter oferuje analogiczny pakiet? – Matt

Odpowiedz

5

Nie będą mogli dzielić się na Facebooku w ten sposób ze względu na politykę Facebooka jak mówi w sposób known bug:

API nie obsługuje wstępnego napełniania wiadomość dla użytkowników

+0

Próbowałem ostatnio przesłać aplikację na Androida, która korzysta z pakietu SDK. Aplikacja udostępniła obraz z wcześniej wypełnionym, ale wciąż edytowalnym tekstem, który został odrzucony, gdy prosi o pozwolenie "publish_actions". Po prostu nie pozwalają na to za pośrednictwem aplikacji na Facebooku. – Diederik

-2
Intent sharingIntent = new Intent(Intent.ACTION_SEND_MULTIPLE); 
sharingIntent.setType("image/*"); 
sharingIntent.setPackage("com.whatsapp");    
sharingIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET); 
sharingIntent.putExtra(Intent.EXTRA_TEXT,videoPos); 
sharingIntent.putExtra(Intent.EXTRA_STREAM,getImageUri(getApplicationContext(), bitmap)); 
+0

To nie jest odpowiedź. – Martin

+0

Zadajesz podobne pytanie. Usuń tę odpowiedź. – Martin

Powiązane problemy