简体   繁体   English

getExternalStorageDirectory 在 Android 10 中已弃用

[英]getExternalStorageDirectory deprecated in Android 10

I am trying to generate a file name to save an AR Model using ARCore and Kotlin.我正在尝试使用 ARCore 和 Kotlin 生成文件名以保存 AR 模型。

Since Android 10 the Environment methods getExternalStoragePublicDirectory() and getExternalStorageDirectory() were deprecated for privacy concerns.自 Android 10 起,出于隐私考虑,环境方法getExternalStoragePublicDirectory()getExternalStorageDirectory()已被弃用。

What can be a replacement for the following code?什么可以替代以下代码?

private fun generateFileName() : String {
        val date = SimpleDateFormat("yyyyMMddHHmmss", java.util.Locale.getDefault()).format(Date())
        return Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES) + File.separator + "CardAR/" + date + "_screenshot.jpg"
    }
private File getAbsoluteFile(String relativePath, Context context) {
    if (Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())) {
        return new File(context.getExternalFilesDir(null), relativePath);
    } else {
        return new File(context.getFilesDir(), relativePath);
    }
}

This method will return the full path to the file.此方法将返回文件的完整路径。

Instead of using Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES) you can now use getExternalFilesDir(Environment.DIRECTORY_PICTURES)您现在可以使用getExternalFilesDir(Environment.DIRECTORY_PICTURES)而不是使用Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES) getExternalFilesDir(Environment.DIRECTORY_PICTURES)

Here are a few answers that might help you. 以下是一些可能对您有所帮助的答案。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Android 10 创建文件夹 - getExternalFilesDir 代替 getExternalStorageDirectory()(不推荐) - Android 10 create a folder - getExternalFilesDir instead getExternalStorageDirectory() (deprecated) getExternalStorageDirectory() 已弃用 - getExternalStorageDirectory() is deprecated 方法 getExternalStorageDirectory() 已弃用 - Method getExternalStorageDirectory() deprecated 为什么文件访问方法 getExternalStorageDirectory() 在 Android 10 (API 29) 上不起作用 - why file accessing method getExternalStorageDirectory() is not working on Android 10 (API 29) Environment.getExternalStorageDirectory() 已弃用。 那么如何访问android API 29 内部存储中的自定义文件夹呢? - Environment.getExternalStorageDirectory() deprecated. So how to access custom folders in internal storage in android API 29? `getExternalStorageDirectory()`问题 - Android - `getExternalStorageDirectory()` issue - Android Android Studio模拟器getExternalStorageDirectory() - Android Studio emulator getExternalStorageDirectory() Environment.getExternalStorageDirectory()在Android中不起作用 - Environment.getExternalStorageDirectory() not working in Android 所有设备上的Android getExternalStorageDirectory()行为 - Android getExternalStorageDirectory() behavior on all devices android Environment.getExternalStorageDirectory()。getPath() - android Environment.getExternalStorageDirectory().getPath()
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM