簡體   English   中英

使用fileprovider將圖像保存到圖庫

[英]Save image to gallery using fileprovider

我正在嘗試確定是否必須將圖像保存到外部存儲,然后再保存到Gallery,從而需要WRITE_EXTERNAL_STORAGE,或者我可以使用Fileprovider做。

這樣的事情可能嗎?

    Uri uri = FileProvider.getUriForFile(getApplicationContext(), Config.CAPTURE_IMAGE_FILE_PROVIDER, imageFile);
    ContentValues values = new ContentValues();    
    values.put(MediaStore.Images.Media.DATA, uri.toString());
    ...
    ContentResolver cr = getContentResolver();
    Uri mediaStoreUri = cr.insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);

如何授予READ_URI_PERMISSION給Gallery(媒體商店)?

請參閱https://stackoverflow.com/a/44455957/966789(Android為Android 6.0棉花糖添加了新的權限模型)。

...並在onRequestPermissionsResult()中處理結果:

            File path = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES);
            File file = new File(path, "sample.JPG");
            try {
                file.createNewFile();
            }
            catch (IOException e) {
                Toast.makeText(this.getApplicationContext(),"createNewFile:"+e.toString(),Toast.LENGTH_LONG).show();
            }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM