2017-08-21 24 views
1

私はdrawableフォルダ内にあるgifファイルを共有したいのですが、多くのコードを試しましたが動作しませんでした。 私はこのdrawableフォルダからgifファイルを共有

void shareGif(String resourceName){ 

    String baseDir = Environment.getExternalStorageDirectory().getAbsolutePath(); 
    String fileName = "sharingGif.gif"; 

    File sharingGifFile = new File(baseDir, fileName); 



    try { 
     byte[] readData=new byte[1024*500]; 
     InputStream fis = getResources().openRawResource(getResources().getIdentifier(resourceName, "drawable", getPackageName())); 
     Log.e("eeeee",getResources().getIdentifier(resourceName, "drawable", getPackageName())+""); 
     FileOutputStream fos = new FileOutputStream(sharingGifFile); 
     int i = fis.read(readData); 

     while (i != -1) { 
      fos.write(readData, 0, i); 
      i = fis.read(readData); 
     } 

     fos.close(); 
    } catch (IOException io) { 
     Log.e("eeeee",io.getMessage()); 
    } 
    Intent shareIntent = new Intent(android.content.Intent.ACTION_SEND); 
    shareIntent.setType("image/gif"); 
    Uri uri = Uri.fromFile(sharingGifFile); 
    shareIntent.putExtra(Intent.EXTRA_STREAM, uri); 
    startActivity(Intent.createChooser(shareIntent, "Share Emoji")); 
} 

を試してみましたが、誰も私を助けてくださいすることができますonclicklistner

share.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 

      String name=getString(resource); 
      shareGif(name); 

     } 
    }); 

でこれを呼び出す、ありがとうございました。

+0

これは機能しません。エラーメッセージが表示されます。どれ? – greenapps

+0

cant attach emptyファイル –

+0

誰がそのエラーを通知していますか? – greenapps

答えて

0

変更your package name - >あなたのパッケージ名はcom.example.testです。あなたのデバイスは、テレグラムのような選択をファイルする必要があります...

エミュレータで使用する場合、Telegram、ESファイルエクスプローラのようなファイルチューザをインストールする必要があります。

Intent intent = new Intent(); 
intent.setAction(Intent.ACTION_SEND); 
intent.setType("image/*"); 
Uri uri = Uri.parse("android.resource://your package name/"+R.drawable.gif); 
intent.putExtra(Intent.EXTRA_STREAM, uri); 
intent.putExtra(Intent.EXTRA_TEXT, "Share gif file"); 
startActivity(Intent.createChooser(shareIntent, "Send your image")); 
+0

ではありません。空きファイルを添付してください。 –

+0

もう一度やり直してください。私のために働く。 –

+0

何度も試してみました。 –

関連する問題