1
我已经编写了内容提供程序,可以在我的应用程序包中使用外部应用程序(Android的标准图像查看器)打开png文件。图像存储在资产文件夹中。使用外部程序从资产中打开图像
我不明白哪里是问题,但它不适合我。
的ContentProvider的中openFile:
@Override
public ParcelFileDescriptor openFile(Uri uri, String mode) throws FileNotFoundException {
URI file_uri = URI.create("file:///data/data/com.package/assets/image.png");
File file = new File(file_uri.getPath());
ParcelFileDescriptor parcel = ParcelFileDescriptor.open(file, ParcelFileDescriptor.MODE_READ_ONLY);
return parcel;
}
开始活动:
Uri uri = Uri.parse("file:///android_asset/image.png");
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(uri, "image/*");
startActivity(intent);
是这种做法正确,哪里是我错了吗?还是我完全错了?