Pebbleアプリ開発メモ

Pebbleアプリ、Watchface開発のメモを残していきます。

【Pebble】データの永続化(App側・PebbleKit JS・サーバー側)

データの永続化には3種類あります。

Cで書くと時計に、PebbleKit JSファイルに書くとローカルのlocalStorageに、設定ページに書くとwebViewのlocalStorageに保存されます。

ユーザーに設定をさせてそれをCやPebblekit JSから読みたいときは渡ってきた設定ファイルをそれぞれに保存しなければならないようです。

なにか良い方法あれば教えて下さい。

App側
// 存在チェック
if(!persist_exists(KEY_TIME_SHOW_IN_C)) {
    persist_write_bool(KEY_GMT_ENABLED, false);
    persist_write_string(KEY_GMT_TIME_DIFF, "-11");
    persist_write_bool(KEY_TIME_SHOW_IN_C, true);
    persist_write_bool(KEY_FORECAST_ENABLED, false);
    persist_write_string(KEY_FORECAST_API_KEY, "");
  }
PebbleKit JS(プロジェクト内のhoge.js)
localStorage.setItem(KEY_GMT_ENABLED, false);
localStorage.setItem(KEY_GMT_TIME_DIFF, "-11");
localStorage.setItem(KEY_TIME_SHOW_IN_C, true);
localStorage.setItem(KEY_FORECAST_ENABLED, false);
localStorage.setItem(KEY_FORECAST_API_KEY, "");
設定ページ(hoge.php等)
localStorage.setItem(KEY_GMT_ENABLED, false);
localStorage.setItem(KEY_GMT_TIME_DIFF, "-11");
localStorage.setItem(KEY_TIME_SHOW_IN_C, true);
localStorage.setItem(KEY_FORECAST_ENABLED, false);
localStorage.setItem(KEY_FORECAST_API_KEY, "");

プロジェクト設定にKEYの記述を忘れると受け渡しができないので忘れないよう注意。