如果我在应用程序的缓存目录中创建一个临时文件,我就不能将其作为附件发送.这是因为其他应用程序没有读取文件的权限.
在API 9及更高版本中,我可以使用setReadable(true,false)将文件设置为全局可读.不幸的是,我的目标是API级别7.我不想依赖SD卡的存在,因此我不能使用getExternalStorageDir()返回的位置来存储它以防万一卡不存在.
解决方法
final String FILENAME = "file.tmp"; final String someData = "File data"; FileOutputStream fos = openFileOutput(FILENAME,Context.MODE_WORLD_WRITEABLE | Context.MODE_WORLD_READABLE); fos.write(someData.getBytes()); fos.close();