applicationDataDirectory への書き込み

Ti.Filesystem.applicationDataDirectory への書き込みで iPhoneAndroid で違いがあったのでメモ。
Titanium Mobile 1.7.5 で確認。
iPhone では以下のように書くと書き込める。

var f = Ti.Filesystem.getFile(Ti.Filesystem.applicationDataDirectory, fileName);
f.write(blob);

けど、Android だと IOException encountered と出て書き込めない。
以下のようにディレクトリを作成してあげると書き込める。

var directory = Ti.Filesystem.getFile(Ti.Filesystem.applicationDataDirectory, "hoge");
if(!directory.exists()) {
    directory.createDirectory();
}
var f = Ti.Filesystem.getFile(directory.nativePath, fileName);
f.write(blob);

あと、書き込み権限の確認で File オプジェクトのプロパティとして writeable というのが Titanium Studio のオートコンプリートで補完されるけど、writable が正しい。