我想出的一种简单的方式打开图像,给定一个文件路径链接到移动设备(Android)上的内部存储
public void openFileWithIntent(String completeFilePath, String directory) {
//convert file path to File
File newFile = new File(String.valueOf(Uri.parse(fileName)));
// convert create content Uri for sharing with other apps
Uri contentUri = getUriForFile(reactContext, reactContext.getApplication Context().getPackageName() + ".fileprovider", newFile);
//create an intent
Intent intent = new Intent();
// set the action type
intent.setAction(Intent.ACTION_VIEW);
// set the data and mime type
String mimeType = ...
intent.setDataAndType(contentUri, mimeType);
// Grant temporary access to application opening the file
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION | Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
// Due to context being outside an activity, we add the flag.
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
// Launch file chooser
reactContext.startActivity(intent);
}
添加到您的Android清单
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="${applicationId}.fileprovider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_paths" />
</provider>
我们为上述****** android创建一个文件路径。
<?xml version="1.0"encoding="utf-8"?>
<pathsxmlns:android="http://schemas.android.com/apk/res/android">
<external-files-pathname="photos"path="photos/" />
</paths>
就是这样。
深水潜水。
外部链接
- Twitter :@benny_wayn
- LinkedIn: Ibenge-uforo
- 正在进行的 研究[5分钟] :Social Survey