android 開発でIntentを利用したinstagramに画像をつけて投稿することができません。
サンプルなどたくさん落ちているのあっさりできるかと思ったのですがエラーになります。
エラーメッセージ
ndroid.os.FileUriExposedException: file:///storage/emulated/0/DCIM/Camera/temp_image.png exposed beyond app through ClipData.Item.getUri()
調査内容
①上記の内容からファイルが存在していないかと思ったのですが、ファイルは存在しています。
②パーミッションが足りていない可能性
同じ画像をLINEアプリにIntentで渡すことがききましので、画像を参照することは可能です。
所感
Lineのときは、
File media = new File(mediaPath)
Uri uri = Uri.fromFile(media);
の書き方をしていなので、このあたりが原因かと思っています。
宜しくお願いします。
Android
1 2 3 //■設定 4 Intent share = new Intent(Intent.ACTION_SEND); 5 share.setPackage("com.instagram.android"); 6 share.setType("image/*"); 7 8 File media = new File(mediaPath); 9 Uri uri = Uri.fromFile(media); 10 share.putExtra(Intent.EXTRA_STREAM, uri); 11 12 try { 13 startActivity(Intent.createChooser(share, "Share to")); 14 } catch (Exception e) { 15 Toast.makeText(getApplicationContext(), "Instgramアプリがインストールされていません", Toast.LENGTH_LONG) 16 .show(); 17 } 18
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/10/16 17:56