我正在构建一个应用程序,它有一个函数可以重命名内部存储中的文件。
代码:
Button button2 = (Button) findViewById(R.id.button2);
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
File currentFile = new File("/sdcard/from.txt");
File newFile = new File("/sdcard/to.txt");
}
private boolean rename(File from, File to) {
return from.getParentFile().exists() && from.exists() && from.renameTo(to);
}
它适用于android4.2.2,但是对于andoid9和andoid10它不起作用 android:requestLegacyExternalStorage="true"
并将外部读写权限转换为manifest.xml。
请帮忙。
1条答案
按热度按时间ss2ws0br1#
其实这个“错误”自己解决了。我所做的只是在我的android10设备上卸载并重新安装这个应用程序,当运行时存储权限对话框弹出时,我先拒绝了这个权限,然后手动允许了它。在这之后它成功了。我没有更改上面的任何代码,所以这可能是运行时权限对话框的错误。