0
私は、ユーザーからのテキストをQRコードに変換し、QRコードをimageViewに表示するアプリケーションを持っています。私の問題は、どのように私はそれのための指定されたパスとしてこのイメージ上の共有インテントを使用することができないか、イメージはどこに保存されますか?デバイスに保存されていないイメージを共有するには?
私は、ユーザーからのテキストをQRコードに変換し、QRコードをimageViewに表示するアプリケーションを持っています。私の問題は、どのように私はそれのための指定されたパスとしてこのイメージ上の共有インテントを使用することができないか、イメージはどこに保存されますか?デバイスに保存されていないイメージを共有するには?
イメージのビットマップをキャッシュに保存して共有することで、これを行うことができます。
//To get the bitmap from Imageview
imageView.setDrawingCacheEnabled(true);
Bitmap bitmap = imageView.getDrawingCache();
//To share it via Intent**
try {
File file = new File(getContext().getCacheDir(), fileName + ".png");
FileOutputStream fOut = new FileOutputStream(file);
bitmap.compress(CompressFormat.PNG, 100, fOut);
fOut.flush();
fOut.close();
file.setReadable(true, false);
final Intent intent = new Intent(android.content.Intent.ACTION_SEND);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file));
intent.setType("image/png");
startActivity(intent);
} catch (Exception e) {
e.printStackTrace();
}
uがファイルパス –
http://stackoverflow.com/a/32829056/4265664 – Anu
カントあなたがどこかに一時として画像を保存して、あなたはもうそれを必要といけないときにそれを削除使用して共有し、その後、ビットマップを保存する必要がありますか? – Tirolel