質問: ハイブリッドアプリを制作してAppStoreなどに公開しようと思っています。 サーバを使わないようなアプリで、iPhone内のストレージやDBのみで完結させようと思っています。 Monacaと呼ばれる開発環境があるそうで、ここで作られたTodoアプリなどあるのですが、それはインターネット常にあるサーバのDBへアクセスしてデータの保存や抽出を行っています。 作りたいアプリは完全オフラインでもデータ(テキストや画像)の保存ができ、出力ができるものです。 そこで一つ疑問なのですが、iPhoneなどの内部ストレージなどに保存することはできるのでしょうか?ハイブリットアプリで(JavaScript) DBをiPhone内部に持っていると思うのですが、サンプルなど見つからないので、どうやって作っていくのかわかりません。
回答: monacaで開発をおこなっている者です。 monacaではlocalStorageが使用できます。 文字列と画像(canvasタグ)の保存/取得方法↓↓ ■文字列 保存方法は ``` localStorage.setItem('Key', 'value'); ``` 取得方法は ``` var str = localStorage.getItem('Key'); ``` ちなみに削除方法は ``` localStorage.removeItem('Key'); ``` ■画像(canvasタグ内の画像の場合) 保存方法は ``` var canvas = document.getElementById(canvasタグのid); var base64 = canvas.toDataURL(); localStorage.setItem('Key', base64); ``` 取得方法は ``` var base64 = localStorage.getItem('Key'); var image = new Image(); image.src = base64; var ctx = document.getElementById(canvasタグのid).getContext("2d"); ctx.drawImage(image, 0, 0); ``` こんな感じで保存/取得ができるかと思いますよ^^