uri字符串不能在android中缓存

我使用的下面的代码

String fileName = "image" + "_" + title.getText().toString()+"_" + val.toString(); 
                    photo = this.createFile(fileName, ".jpg");
                    intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(photo));
                    uriOfPhoto = Uri.fromFile(photo);
                    startActivityForResult(intent, RESULT_CAMERA_SELECT);
                }
            }
            catch(Exception e)
            {
                Log.v("Error", "Can't create file to take picture!");
                displayAlert("Can't create file to take picture!","SDCard Error!");
            }
        }

        private File createFile(String part, String ext) throws Exception
        {
            File tempDir = new File (Environment.getExternalStorageDirectory() + "/MyFolder/Images");
            if(!tempDir.exists())
            {
                tempDir.mkdir();
            }
            tempDir.canWrite();
            return new File(tempDir, part+ext);
        }
    });

UriOfPhoto 给出提示uriString not chached in debug。它不是存储文件中的uri。如何解决这个问题呢?

authority   Uri$Part$EmptyPart  (id=830004244032)   
fragment    Uri$Part$EmptyPart  (id=830004245408)   
host    "NOT CACHED" (id=830003914304)  
path    Uri$PathPart  (id=830067926736) 
port    -2  
query   Uri$Part$EmptyPart  (id=830004245408)   
scheme  "file" (id=830002660688)    
ssp null    
uriString   "NOT CACHED" (id=830003914304)  
userInfo    null


炎炎设计
浏览 378回答 2
2回答

婷婷同学_

photo 的值是确定的,photo = this.createFile(fileName, ".jpg"); intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(photo)); uriOfPhoto = Uri.fromFile(photo);为什么还在这里实例化uriOfPhoto, 有点多余。 在用到的时候在实例化

互换的青春

String fileName = Environment.getExternalStorageDirectory() + "/MyFolder/Images" + fileName + ".jpg"; UriOfPhoto = Uri.parse(fileName); Intent intent = new Intent(Intent.ACTION_VIEW); intent.putExtra(MediaStore.EXTRA_OUTPUT,  UriOfPhoto); startActivityForResult(intent, RESULT_CAMERA_SELECT);不需要创建文件来存储照片,你只需要传递 uri,它里面的照片必须是像android系统创建的文件一样,然后在 uri 中存储捕捉的图像。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java