ボタン内のアンドロイドギャラリーに自分のアプリケーションからビットマップを保存する方法を知りましたか?私はちょうど私のビットマップがギャラリーに置かれて、ユーザーが彼のバックグラウンドとして設定することができるようにしたい。だからどうしたの?ギャラリーに画像を保存
0
A
答えて
0
あなたは、あなたがこのようなギャラリーに画像を保存することができます
private void takeSnapShot(Bitmap bitmap) {
OutputStream outStream = null;
String state = Environment.getExternalStorageState();
String appName = mContext.getString(R.string.app_name);
if (state.equals(Environment.MEDIA_MOUNTED)) {
String sdroot = Environment.getExternalStorageDirectory().getAbsolutePath();
String path = sdroot + "/" + appName;
File dir = new File(path);
if (!dir.exists() && !dir.mkdirs()) {
return;
}
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd-HH-mm-ss", Locale.US);
String dstr = sdf.format(new Date());
String filename = path + "/" + dstr + ".jpg";
try {
outStream = new FileOutputStream(filename);
} catch (FileNotFoundException e) {
LogUtils.println("Exception while writing image");
e.printStackTrace();
}
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, outStream);
try {
if (outStream != null)
outStream.close();
mMediaScanner.scanMediaByName(filename, R.string.snapshot_save);
} catch (IOException e) {
e.printStackTrace();
}
} else {
// Add some parameters to the image that will be stored in the Image ContentProvider
int UNIQUE_BUCKET_ID = 111;
String disp = "anything";
ContentValues values = new ContentValues(7);
values.put(MediaStore.Images.Media.DISPLAY_NAME, disp);
values.put(MediaStore.Images.Media.TITLE, disp);
values.put(MediaStore.Images.Media.DESCRIPTION, appName + disp);
values.put(MediaStore.Images.Media.BUCKET_DISPLAY_NAME, appName + " snapshot");
values.put(MediaStore.Images.Media.BUCKET_ID, UNIQUE_BUCKET_ID);
values.put(MediaStore.Images.Media.DATE_TAKEN, System.currentTimeMillis());
values.put(MediaStore.Images.Media.MIME_TYPE, "image/jpeg");
// Inserting the image meta data inside the content provider
Uri uri = mContext.getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);
try {
if (uri != null) {
outStream = mContext.getContentResolver().openOutputStream(uri);
if (outStream != null) {
outStream.close();
}
}
} catch (FileNotFoundException e) {
LogUtils.println("Exception while writing image");
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
0
あなたのニーズに合った以下の機能を変更します。
MediaStore.Images.Media.insertImage(getContentResolver()、yourBitmap、yourTitle、yourDescription);同様に
試しこの
画像がメディアストアプロバイダ
パブリック静的ボイドaddImageToGallery(最終列filePathに、最終的なコンテキストコンテキスト){
ContentValues values = new ContentValues();
values.put(Images.Media.DATE_TAKEN, System.currentTimeMillis());
values.put(Images.Media.MIME_TYPE, "image/jpeg");
values.put(MediaStore.MediaColumns.DATA, filePath);
context.getContentResolver().insert(Images.Media.EXTERNAL_CONTENT_URI, values);
に格納されているギャラリーに表示されています
}
+0
これを保存するだけで簡単に聞こえる – Luca486
関連する問題
- 1. ギャラリーに画像を保存
- 2. ギャラリーに画像を保存する
- 3. トリミング画像をギャラリーに保存
- 4. ギャラリーに画像を保存する
- 5. ギャラリーからアプリケーションに画像を取得してsqliteに保存
- 6. 撮影した画像をギャラリーに保存するには
- 7. SDWebImageを使用して画像を公開ギャラリーに保存
- 8. fileproviderを使用して画像をギャラリーに保存
- 9. imageView画像をギャラリーに保存しようとしましたが、ギャラリーに保存できません。(Android)
- 10. ギャラリーからSQLiteに画像を保存する方法は?
- 11. ImageViewからデバイス(ギャラリー/ SdCard)に画像を保存(カメラインテントで撮影)
- 12. エミュレータのギャラリーに画像を保存する方法
- 13. Androidのギャラリーに画像を保存する方法は?
- 14. Android:画像はギャラリーの最後に保存されます
- 15. ギャラリーから画像を選択し、画像ビューに表示して画像を保存します。
- 16. ギャラリーから画像を選んで、画像を保存し、画像をxamarinのプロフィール画像として保存します。android
- 17. 画像をギャラリーに表示アセット/画像
- 18. 保存画像
- 19. 保存画像
- 20. 保存画像
- 21. 保存画像
- 22. アンドロイドにアップグレードしてからギャラリーに画像を保存できません。
- 23. ギャラリーにアクセスできない場所に画像を保存する
- 24. JavaScript画像ギャラリー
- 25. ライトボックス画像ギャラリー
- 26. リアクションサイクリング画像ギャラリー
- 27. Django画像ギャラリー
- 28. ギャラリーを保存する前に画像データをトリミングする方法は?
- 29. 画像をレルムデータベースに保存
- 30. mysqlに画像を保存
おそらく、ギャラリーが画像を読み込むデバイスの場所に画像を保存してみてください。たとえば、DCIMなどです。 –
ギャラリーはアプリであり、場所ではありません。 [外部ストレージ](https://commonsware.com/blog/2014/04/08/storage-situation-external-storage.html)のような場所に画像を保存します。 – CommonsWare
さて、どうすれば対応できますか?私はたくさんのバージョンを試しましたが、何も私のために働いていますか? – Luca486