MonacaとPhoneGap触って見ました。使用OSはAndroid。
で、ローカルファイルシステムはどうなってるんだろうかと。
基本的にW3CのFile APIを使うようになってるみたいです。
こんなのをHTML側の適当なボタンから呼び出して動作を確認してみます。
function showFSInfo(fs) { alert(fs.name + "\n" + fs.root.name + "\n" + fs.root.fullPath); } function fsdemo01persistent() { window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, showFSInfo, null); } function fsdemo01temporary() { window.requestFileSystem(LocalFileSystem.TEMPORARY, 0, showFSInfo, null); } function fsdemo02write() { window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function(fs){ fs.root.getFile("foo.txt", {create: true}, function(fileEntry) { alert("fullpath=" + fileEntry.fullPath); fileEntry.createWriter( function(writer) { writer.onwrite = function(evt) { alert("success"); } writer.write("Hello"); }, function(fileError) { alert(fileError.code); } ); }, function(fileError) { alert(fileError.code); } ); }, function(fileError) { alert(fileError.code); } ); } function fsdemo03write_temp() { window.requestFileSystem(LocalFileSystem.TEMPORARY, 0, function(fs){ fs.root.getFile("bar.txt", {create: true}, function(fileEntry) { alert("fullpath=" + fileEntry.fullPath); fileEntry.createWriter( function(writer) { writer.onwrite = function(evt) { alert("success"); } writer.write("This is temporary file."); }, function(fileError) { alert(fileError.code); } ); }, function(fileError) { alert(fileError.code); } ); }, function(fileError) { alert(fileError.code); } ); }
アプリケーション名:myApp
パッケージ名:your.app.name
でデバッグ版でビルドします。
この辺、PhoneGapの仕様としてそうなっているのか、Monaca独自のカスタマイズでそうなっているのかは不明です。
ただ、sdcardに保存されるという点から、あんまり重要情報は保存したくないなぁという感じです。他のアプリからも読み書き出来てしまいますので・・・。
FileSystem以外の感想としては、
他、参考サイト:
なんというか、N88-BASIC触ってるような感触を受けました。単純といえば単純なんだけど、アイデア次第で結構面白いの出来るんじゃないか、とか、プログラミングの入り口としても良さそうだな、とか。PhoneGapという制限範囲の中でどんな「捻り」を思いつくのかとか、そんな面白さがある気がします。
コメント