【发布时间】:2019-03-20 07:41:04
【问题描述】:
我有以下代码,想将数据保存在照片/画廊等内部存储中,但无法使用以下代码。如何将数据保存到内部存储?一些样本或提示会很棒!很高兴收到您的来信!
我正在使用当前代码来保存数据。
@SuppressLint("MissingPermission")
private void saveImage() {
if (requestPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
showLoading("Saving...");
File file = new File(getBaseContext().getFilesDir()
+ File.separator + ""
+ System.currentTimeMillis() + ".png");
try {
file.createNewFile();
SaveSettings saveSettings = new SaveSettings.Builder()
.setClearViewsEnabled(true)
.setTransparencyEnabled(true)
.build();
mPhotoEditor.saveAsFile(file.getAbsolutePath(), saveSettings, new PhotoEditor.OnSaveListener() {
@Override
public void onSuccess(@NonNull String imagePath) {
hideLoading();
showSnackbar("Image Saved Successfully");
mPhotoEditorView.getSource().setImageURI(Uri.fromFile(new File(imagePath)));
}
@Override
public void onFailure(@NonNull Exception exception) {
hideLoading();
showSnackbar("Failed to save Image");
}
});
} catch (IOException e) {
e.printStackTrace();
hideLoading();
showSnackbar(e.getMessage());
}
}
}
【问题讨论】:
-
它说什么错误?
-
没有错误没有保存在任何地方
-
requestPermission是做什么的?也许它返回 true 并执行该块,但用户尚未实际接受权限。
标签: java android imageview android-imageview java-io