Intent.ACTION_SEND Whatsapp - PullRequest
       29

Intent.ACTION_SEND Whatsapp

4 голосов
/ 26 декабря 2011

Я пытаюсь поделиться mp3-файлом через WhatsApp. Он отлично работает с другими приложениями, такими как Gmail, но не работает на WhatsApp. Может кто-нибудь мне помочь? Нужно ли добавить метод putExtra ()?

Вот мой код:

public void shareWithFriends(int id)
{       
  Intent share = new Intent(Intent.ACTION_SEND);
  share.setType("audio/mp3");
  //share.putExtra(Intent.EXTRA_SUBJECT,"subject");
  //Uri uri = Uri.parse("android.resource://com.igs.pokemonsoundboard/" + id);
  Uri uri = Uri.parse("android.resource://com.igs.pokemonsoundboard/raw/" + R.raw.pikachump3);
  share.putExtra(Intent.EXTRA_STREAM,uri);
  //share.putExtra("sms_body","Ringtone File :");
  startActivity(Intent.createChooser(share, "Share sound"));
}

Спасибо;)

Ответы [ 4 ]

6 голосов
/ 30 декабря 2011

Вы должны скопировать ваш аудиофайл на SDCard и поделиться им как файлом, а не как ресурс Android, например:

final Intent shareIntent = new Intent(android.content.Intent.ACTION_SEND);
shareIntent.setType("audio/mp3");
shareIntent.putExtra(android.content.Intent.EXTRA_STREAM, Uri.parse("file://"+path+filename));
startActivity(Intent.createChooser(shareIntent, getString(R.string.share_sound)));

Теперь должно работать через WhatsApp.

0 голосов
/ 08 января 2016

Вы должны включить это в свой код:

sendIntent.setPackage("com.whatsapp");
0 голосов
/ 17 декабря 2013

WhatsApp также принимает формат OGG:

Intent shareIntent = new Intent(Intent.ACTION_SEND);
shareIntent.setType("audio/ogg");
shareIntent.putExtra(Intent.EXTRA_STREAM, getSoundUri());
startActivity(shareIntent);
0 голосов
/ 26 декабря 2011

Попробуйте изменить тип MIME на «audio / mpeg3», чтобы вторая строка гласила

share.setType("audio/mpeg3")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...