2016-06-21 18 views
1

gmailに空のファイルを添付できないというエラーが表示されます。ボタンをクリックすると画像を送信できる選択肢が表示される単純なアプリケーションを作成しようとしています以下のコードは動作しません。 私はAndroidの初心者です。 コード:画像を添付してアンドロイドの電子メール添付ファイルとして送信する

 if(view.getId()==R.id.SendImage) 
     { 
     Uri imageUri = Uri.parse("android:resource://com.example.jaspreet.intentstest.drawable/"+R.drawable.image); 
     intent=new Intent(android.content.Intent.ACTION_SEND); 
     intent.setType("application/image"); 
     intent.putExtra(Intent.EXTRA_STREAM,imageUri); 
     intent.putExtra(Intent.EXTRA_TEXT,"Hey i have attached this image"); 
     chooser=Intent.createChooser(intent,"Send Image"); 
     startActivity(chooser); 

     } 

答えて

0

はこれを使用してみてください:

shareIntent.setType("image/png"); 

この意図を使用することにより、それがファイルを.pngを送信することを知っています。

あなたはすべてのメディアタイプ/サブタイプのリスト

+0

既に試してみましたが、うまくいきませんでした。 – jaspreet

0

Intent share = new Intent(Intent.ACTION_SEND); 
    share.setType("image/jpeg"); 
    share.putExtra(Intent.EXTRA_STREAM, Uri.parse("android.resource://" + C.PROJECT_PATH + "/drawable/" + R.drawable.icon_to_share); 
    startActivity(Intent.createChooser(share, "Select")); 

アンドロイドこのスニペットを試してみてください。この

Bitmap b =BitmapFactory.decodeResource(getResources(),R.drawable.ic_launcher); 

Intent share = new Intent(Intent.ACTION_SEND); 
share.setType("image/jpeg"); 

ByteArrayOutputStream bytes = new ByteArrayOutputStream(); 
b.compress(Bitmap.CompressFormat.JPEG, 100, bytes); 

String path = MediaStore.Images.Media.insertImage(getContentResolver(), 
       b, "Title", null); 

Uri imageUri = Uri.parse(path); 
share.putExtra(Intent.EXTRA_STREAM, imageUri); 
startActivity(Intent.createChooser(share, "Select")); 
+0

私の解決策を試しましたか? –

0

を試してみてください見つけることができますthis linkオン:リソース://ですファイルではなく、恐らくファイルに変換してUriに戻ってUriを台無しにしているのかもしれません。

+0

C.PROJECT_PATHは何ですか? – jaspreet

関連する問題