2012-06-25 6 views
0
private void createShareIntent() { 
    Intent shareIntent = new Intent(Intent.ACTION_SEND); 
    String file = "/mnt/sdcard/9gag_4155804.jpg"; 
    File f = new File(file); 
    if (!f.exists()) { 
     Toast.makeText(getApplicationContext(), "File doesnt exists", Toast.LENGTH_SHORT).show(); 
     return; 
    } else { 
     Toast.makeText(getApplicationContext(), "We can go on!!!", Toast.LENGTH_SHORT).show(); 
    } 
    Uri uri = Uri.fromFile(f); 
    shareIntent.setType("image/jpeg"); 
    shareIntent.putExtra(Intent.EXTRA_STREAM, uri); 
    shareIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); 
    startActivity(Intent.createChooser(shareIntent, "How do you want to share?")); 
} 

Файл существует, и я не получаю Toast. При вызове этого метода множество намерений - это список. (Google Диск, Почта, Плюс и т. Д.) Я нажимаю на Google Plus, и он говорит мне, что «не все медиафайлы могут быть добавлены к сообщению». То же самое происходит при использовании Google Диска или любой другой услуги. Я просто не могу поделиться никаким изображением ...Share Intent не работает для изображения?

Любые идеи?

// edit Я получаю тост «Мы можем продолжать !!!»

+0

пытаются поставить Тост в 'else' и проверить ... –

+0

добавил и я получаю тост, что«мы можем пойти на» –

+1

Использование' Environment.getExternalStorageDirectory() 'и проверить у вас есть изображение в папке вы дали путь –

ответ

-3

Вы определили фильтр намерений в своем манифесте? Если вы не можете добавить это:

<intent-filter> 
      <action android:name="android.intent.action.SEND" /> 

      <category android:name="android.intent.category.DEFAULT" /> 
      <data android:mimeType-"image/*"/> 
</intent-filter> 

Необходимо,

+0

Фильтр намерений используется, чтобы сообщить системе Android, что мое приложение может получить общие изображения или? –

+0

да, вам нужно объявить это в своем манифесте, чтобы система Android указала ваше приложение в списке .. когда вы нажимаете на кнопку share – user1351659

+0

Я не хочу получать раздачу. Я хочу поделиться некоторыми изображениями с другие приложения –

Смежные вопросы