У меня проблема с обменом аудио.Мой код работает везде, если вы удалите строку "shareMedia.setPackage (" com.facebook.orca ");"Мессенджер всегда выдает ошибку «попробуйте позже».Logcat не выдает ошибку.Претензии даются.
private String copyFiletoExternalStorage(int resourceId, String resourceName){
String pathSDCard = Environment.getExternalStorageDirectory() + "/Android/data/" + resourceName;
try{
InputStream in = getResources().openRawResource(resourceId);
FileOutputStream out = null;
out = new FileOutputStream(pathSDCard);
byte[] buff = new byte[1024];
int read = 0;
try {
while ((read = in.read(buff)) > 0) {
out.write(buff, 0, read);
}
} finally {
in.close();
out.close();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return pathSDCard;
}
private void shareFile(){
try {
String mediaPath = copyFiletoExternalStorage(R.raw.numer_1, "numer_1.mp3");
Intent shareMedia = new Intent(Intent.ACTION_SEND);
shareMedia.setPackage("com.facebook.orca");
shareMedia.setType("audio/mp3");
shareMedia.putExtra(Intent.EXTRA_STREAM, Uri.parse(mediaPath));
startActivity(Intent.createChooser(shareMedia, "Compartiendo archivo."));
} catch (Exception e) {
Toast.makeText(getApplicationContext(), "Messenger nie jest zainstalowany", Toast.LENGTH_LONG).show();
}
}