3

次のコード

final Intent sendImage = new Intent(Intent.ACTION_SEND);
sendImage.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
sendImage.putExtra(Intent.EXTRA_STREAM, theUri);
sendImage.setType("image/png");
startActivity(Intent.createChooser(sendImage, "Send Image using "));

任意のアプリ (例: Dropbox、Gmail、通常のメッセージング/テキスト メッセージ、Kik) を使用して画像を送信できますが、Facebook Messenger アプリは使用できません。

写真の送信に使用するアプリとして Facebook Messenger アプリを選択するたびに、「申し訳ありませんが、Messenger は現在、このファイル タイプを処理できません」という例外が発生します。

Uri はこのメソッドから取得されます

File path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES);
File imageFile = new File(path, "Yogamoji!" + ".png");
FileOutputStream fileOutPutStream = new FileOutputStream(imageFile);
BitmapFactory.decodeStream(theAssets.open("emojis/" + fileName)).
compress(Bitmap.CompressFormat.PNG, 100, fileOutPutStream);

fileOutPutStream.flush();
fileOutPutStream.close();

return Uri.parse("file://" + imageFile.getAbsolutePath());
4

1 に答える 1