2015-02-10 3 views
4

Я хотел сделать кнопку совместного доступа в ящике навигации, когда пользователь прикасается к кнопке, он откроет черный ящик со списком всех приложений, и пользователь сможет поделиться ссылкой на Google Apps для приложений. Есть ли общий шаблон кода? единственные ответы, которые я нашел, - это просто поделиться им с одним приложением, таким как Facebook, который кажется бесполезным, потому что не все используют Facebook.Android Share Share

ответ

0

Вы можете отправить содержимое, вызывая неявного намерения с ACTION_SEND.

Для передачи изображения или двоичные данные:

final Intent shareIntent = new Intent(Intent.ACTION_SEND); 
shareIntent.setType("image/jpg"); 
final File photoFile = new File(getFilesDir(), "foo.jpg"); 
shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(photoFile)); 
startActivity(Intent.createChooser(shareIntent, "Share image using")); 

отправить изображение вместе с текстом. Это может быть сделано с:

String text = "Look at my awesome picture"; 
Uri pictureUri = Uri.parse("file://my_picture"); 
Intent shareIntent = new Intent(); 
shareIntent.setAction(Intent.ACTION_SEND); 
shareIntent.putExtra(Intent.EXTRA_TEXT, text); 
shareIntent.putExtra(Intent.EXTRA_STREAM, imageUri); 
shareIntent.setType("image/*"); 
shareIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); 
startActivity(Intent.createChooser(shareIntent, "Share images...")); 

Совместное использование нескольких изображений может быть сделано с:

Intent shareIntent = new Intent(Intent.ACTION_SEND_MULTIPLE); 
shareIntent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, imageUris); 
shareIntent.setType("image/*"); 
Смежные вопросы