ようやく少しだけMOONPhaseを触ってみる

いろいろと忙しい+自部屋の無線LAN強化ができてなかったので、落書きにしか使っていなかったenchantMOON。
が、おちついてきたのと、昔使っていた無線LAN親機をみつけて中継器化したので部屋でも無線問題なしに!

早朝だったけど、勢いをもってちょっとだけやってみたメモ。

【MOONPhaseの準備】

1) enchantMOON上でシールを作る
2) PCに接続して、/DCIM/100MOON/MyNotebook1_xxxxxx を見つつ、作成した画面を探す。見つけたらxxxxxx部分をメモる
3) /Data/MyNotebook1/xxxxxxを開く
4) hack.jsがある方が、シールに関するディレクトリ。(yyyyyyとする)
5) /App/MOONBlock/libを、/Data/MyNotebook1/xxxxxx/yyyyyy にコピーする
6) 非公式ガイド[http://d.hatena.ne.jp/shi3z/20130724/1374630729]にある上側のサンプルを /Data/MyNotebook1/xxxxxx/hack.jsに上書きして、保存。
7) 一度マウントをはずして、シールを実行してダイアログがでるかを確認
 ※ライブラリのコピーをしていないとMOONがないよとエラーが出る
8) シールをタップして、「hoge」が出たら実行する準備は完了

【XHR(XMLHttpRequest)でサーバ接続】

1) ontapをクリア

    sticker.ontap = function() { //ステッカーがタップされたときに呼ばれるイベント
    };

2) XHRとpostする部分

    sticker.ontap = function() { //ステッカーがタップされたときに呼ばれるイベント
         // XHR
          var xhr = null;
          try {
               xhr = new XMLHttpRequest();
          } catch (e) {
               MOON.alert(e, function() {
                 MOON.finish();
               });
          }

          // Server
          var host = 'アクセスするサーバ';

          // POST
          xhr.open('POST', host, true);
          xhr.onreadystatechange = function() {
               if (xhr.readyState == 4) {
                    if (xhr.status == 200) {
                         MOON.alert('XHR FINISH', function() {
                              MOON.finish();
                         });
                    }
                    else {
                         MOON.alert('XHR ERROR', function() {
                              MOON.finish();
                         });
                    }
               }
         }
          xhr.setRequestHeader( 'Content-Type', 'application/x-www-form-urlencoded');
          xhr.send();

    };

3)保存してタップすると… アクセス来た!
 POST [url] HTTP/1.1″ 200 15 “-” “Dalvik/1.6.0 (Linux; U; Android 4.0.4; MOON01 Build/IMM76D)
ようやく、、USER_AGENTに会えた。

ここまでで、軽く1時間ぐらい・・・かな。マウント・アンマウントに時間かかったり、なぜか、通信が不安定なときがあったり。
今度は、APIで取得できるオブジェクトを・・見ていきます。

Leave a Comment