从Titanium Mobile中的applicationDataDirectory更改文件的权限

时间:2011-05-08 00:57:03

标签: file mobile titanium file-permissions

我正在尝试使用Titanium Mobile通过手机的电子邮件客户端发送文件作为附件。我遇到了附件发送的障碍,但收到的是0字节文件。

问题是data/data/package/app_appdata中创建的文件是-rw------

通过浏览Android SDK,这是设计的。应用程序的“私有存储”只能由该文件夹的所有者(正在运行的应用程序)读取。 我认为Android电子邮件客户端可以看到该文件,但无法读取它。

完整的Android SDK提到了MODE_WORLD_WRITABLE,它允许您继续使用applicationDataDirectory并授予所有应用程序读/写该文件的权限。 Titanium Mobile中是否存在等价物?

另一个解决方案是创建一个临时文件,不幸的是使用了Titanium自己的命名方案(tiXXXXX.txt),或者我可以写入“外部存储”,因为它是公共的(但可能并不总是可用)。 )

这是我用来获取当前文件的调用,它可以在我的应用程序中读取就好了,但是当我使用addAttachment emailDialog调用时,它只是发送一个0字节文件给我。

var f = Ti.Filesystem.getFile(Ti.Filesystem.applicationDataDirectory, "generated_filename.txt")

1 个答案:

答案 0 :(得分:1)

您是否尝试过使用tempDirectory。我当然假设一旦文件通过电子邮件发送,您不需要保留它,因为applicationDataDirectory已完全备份,通常用于存储应用程序保留的数据。

http://developer.appcelerator.com/apidoc/mobile/latest/Titanium.Filesystem.tempDirectory-property.html