ローカルDBを使って、ページを保存するテスト

iPhoneだと不要かもしれないが、iPod touchの場合通信がオフラインの状態で使うことが多く、その場合に保存したwebページを見られると便利なことがある。

htmlファイルをSafariのローカルDBに保存して、オフライン状態でも見られるようにするものを作ってみた。

http://touch.wakufactory.jp/sample/webpocket.html

url欄に取得したいurlを入れて、GETを押すと、サーバ経由でページを取り込み、ローカルDBに格納している。
一旦格納したものは、オフラインになっても、DBから呼び出して表示することができるというわけ。
PC版のSafariでも動作する。


今のところ指定ページのhtmlのみを取ってくるだけなので、画像も出なければ、外部ファイルのcssも効かない状態だが、文章を見る目的ならなんとか使えそう。上のキャプ画面では、青空文庫のhtmlファイルを保存してオフラインで呼び出している。


ローカルDBに保存されていることは、設定画面のSafari->Databaseで確認できる。ここにはドメインごとに保存されたDBがリストアップされ、DBごとに以下のような詳細情報が見られる。

300kbあまりのページが保存されていることがわかる。最大は5MBまでで、どうやら現段階では変更できないようだ。



オフラインで見られるとはいえ、このページ自体がブラウザに残っていなければ使えないのが難点。Safariのページキャッシュは、重いアプリを使ったりするとすぐに開放されてしまうようなので、ページの再読み込みが起こってしまったら、その時点でアウトである。


制約はあるものの、なんとか実用になりそうな雰囲気なので、ちゃんとしたアプリとして仕上げてみるつもり。