保存后文件不存在

时间:2018-10-12 15:19:22

标签: android

我正在开发简单的节点管理器,用户可以在其中为笔记制作照片。 这是启动相机的按钮的代码:

data = [
{
    dataId: 1,
    name: test1,
    description: 'some desc',
    parentId: null
},
{
    dataId: 2,
    name: test1,
    description: 'some desc',
    parentId: 2
},
{
    dataId: 3,
    name: test1,
    description: 'some desc',
    parentId: 1
},
{
    dataId: 4,
    name: test1,
    description: 'some desc',
    parentId: null
}

我以这种方式创建File对象:

final Intent makePhotoIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);

PackageManager packageManager = fragment.getActivity().getPackageManager();
Uri uri = FileProvider.getUriForFile(getActivity(), FILE_PROVIDER, mTempPhotoFile);
makePhotoIntent.putExtra(MediaStore.EXTRA_OUTPUT, uri);

List<ResolveInfo> cameraActivities = packageManager
        .queryIntentActivities(makePhotoIntent, PackageManager.MATCH_DEFAULT_ONLY);
for (ResolveInfo info : cameraActivities) {
    getActivity().grantUriPermission(info.activityInfo.packageName, uri,
            Intent.FLAG_GRANT_WRITE_URI_PERMISSION | Intent.FLAG_GRANT_READ_URI_PERMISSION);
}

startActivityForResult(makePhotoIntent, REQUEST_PHOTO);

这是FileProvider配置:

public File getPhotoFile(String fileName) {
    File filesDir = context.getFilesDir();
    return new File(filesDir, fileName);
}

在制作完照片后,我将其设置为ImageView并正确显示。然后,将照片文件名设置为便笺字段,并使用Room将便笺保存到本地数据库。

但是当我打开保存的注释时,照片不会显示。我从便笺的字段中按名称获取了照片文件,但是file.exists()返回false。

哪里出错了,我无法弄清楚。请帮忙。

0 个答案:

没有答案