0
我目前有一個應用程序,我正在拍照,我試圖直接通過應用程序分享它們。我遇到的問題是,當選擇器出現並選擇一個時,我彈出一個錯誤信息,並顯示「無法附加文件」。然後它將我帶回到應用程序中,其他一切仍然有效。我假設這意味着我必須首先保存圖像,但我不確定是否正確執行此操作。我在網上找到了一些關於如何保存圖像的例子,但我不確定這是問題還是共享意圖是問題。如何分享我在應用中拍攝的圖像?
final Button shareButton = (Button) findViewById(R.id.shareButton);
shareButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
imageView.setDrawingCacheEnabled(true);
Bitmap b = imageView.getDrawingCache();
MediaStore.Images.Media.insertImage(getContentResolver(), b, "title", "description");
Intent shareIntent = new Intent(Intent.ACTION_SEND);
shareIntent.setType("image/jpeg");
BitmapDrawable bitmapDrawable = (BitmapDrawable) imageView.getDrawable();
Bitmap image = bitmapDrawable.getBitmap();
ByteArrayOutputStream bytes = new ByteArrayOutputStream();
image.compress(Bitmap.CompressFormat.JPEG, 100, bytes);
File f = new File(Environment.getExternalStorageDirectory() + File.separator + "temp.jpg");
try {
f.createNewFile();
FileOutputStream fo = new FileOutputStream(f);
fo.write(bytes.toByteArray());
} catch (IOException e) {
e.printStackTrace();
}
shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse(Environment.getExternalStorageDirectory().getPath()));
startActivity(Intent.createChooser(shareIntent, "Share Image"));
}
});
作爲佔位符,我有「標題」和「描述」,直到我能得到它的工作。
在你的問題中添加錯誤。 – Pipiks
@Pipiks我沒有在android工作室或任何東西的錯誤,我的應用程序沒有崩潰。吐司剛剛彈出說「無法附加文件」,然後它返回到我的應用程序主屏幕,它仍然正常工作。我在帖子中加了一點。 –
好吧,我認爲錯誤的行是'shareIntent.putExtra(Intent.EXTRA_STREAM,Uri.parse(Environment.getExternalStorageDirectory()。getPath()));'你需要在第二個參數中設置圖像路徑 – Pipiks