尝试在android SD卡上创建只读文件失败

尝试在android SD卡上创建只读文件失败,android,Android,我正在尝试将只读文件写入SD卡。我需要分两步来做 public void method1(String cacheFilename) { File cacheDir = mContext.getExternalCacheDir(); File cachedFileOnDisk = new File(cacheDir, cacheFilename); FileOutputStream fileStream = new FileOutputStream(cachedFile); fileStream

我正在尝试将只读文件写入SD卡。我需要分两步来做

public void method1(String cacheFilename) {
File cacheDir = mContext.getExternalCacheDir();
File cachedFileOnDisk = new File(cacheDir, cacheFilename);
FileOutputStream fileStream = new FileOutputStream(cachedFile);
fileStream.write(...)
fileStream.flush();
fileStream.close();
}
public void method2(String cacheFilename) {
   File cacheDir = mContext.getExternalCacheDir();
   File cachedFileOnDisk = new File(cacheDir, cacheFilename);
   if(!cachedFileOnDisk.setReadOnly()) {
       throw new IllegalStateException(); 
}
其中调用method1,然后在后续阶段调用method2。
cachedFileOnDisk.setReadOnly()
调用向我返回一个false,我无法将文件设置为只读


有没有办法将只读文件写入SD卡?

SD卡使用FAT类型的文件系统,不支持文件所有权

在实现级别,FAT可以支持只读位,但这将是有限的,因为任何具有sd卡写入权限的其他内容都可以自由更改该位。考虑到有限的价值,是否有可能在android上设置这一点是一个悬而未决的问题