要给出Android Q的DocumentFile.delete方法的代码示例,首先需要创建一个DocumentFile对象,然后调用delete方法来删除指定的文件或目录。以下是一个示例代码:
import android.content.Context;
import android.net.Uri;
import android.os.Build;
import android.provider.DocumentsContract;
import android.support.v4.provider.DocumentFile;
public class FileUtils {
public static void deleteFile(Context context, Uri uri) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
DocumentFile documentFile = DocumentFile.fromSingleUri(context, uri);
if (documentFile != null && documentFile.exists()) {
documentFile.delete();
}
} else {
// 在Android Q以下的版本可以使用其他方式删除文件
// 例如:File file = new File(uri.getPath());
// file.delete();
}
}
}
上述代码中,我们首先检查设备的Android版本是否大于等于Android Q。如果是,则使用DocumentFile.fromSingleUri方法创建一个DocumentFile对象。然后,我们检查该对象是否存在,并调用delete方法来删除文件或目录。
请注意,在Android Q以下的版本中,可以使用传统的文件操作方式(如File类)来删除文件。在示例代码中,我们给出了一个简单的注释来说明如何在Android Q以下的版本中删除文件。
请确保在使用该代码示例时,已经添加了适当的权限(例如,READ_EXTERNAL_STORAGE和WRITE_EXTERNAL_STORAGE)以及运行时权限请求逻辑(如果需要的话)。