AWS対応してみました
今日のABC2011wでもAmazonさんが講演されていた今話題(?)のAmazon Web Service for Android(AWS)。 SmartTrainigでもAWSを利用してみたのでまとめまとめ。 ◇今の状況 ・「ラリー機能で誰が先頭を走ってるか表示できたら燃えるよ?」って意見もらう。 ・GAE本買って読む。 ・よくわからない。時間無い。挫折。 ・半年放置。 ・デ部でセカイのやましたさんからAWSについて教えてもらう。 ・何それ、サーバプログラム書きたくない俺向きジャン。 ・とりあえずテスト的にSmartTrainingに機能追加してみた。 ←今ここ! ◇成果 これまで、 SmartTrainig のラリー機能は自分が走った距離を貯めて仮想的なコース上に進捗状況を表示するだけでした。 これに、他の人のラリー記録を重ね合わせて表示することができるようになりました。 ◇手順 ・AWSのアカウント作成。 この辺から適当に 。 ・AWS SDK for Androidの 取得 。 ・AWS SDKのセットアップ ・あとはやりたいことを書けばいい。 ※詳しくはたぶん こちら (自分は日本語の情報を見つけられず、 本家サイト の情報だけでなんとかなりました) ◇軽く技術的なこと ・SimpleDB上にドメインを1つ作る(ほぼサンプル通り)。 ・各クライアントはラリー登録時にラリー関連のデータをアップロードする(ほぼサンプル通り)。 ・他クライアントはラリー画面表示時に条件にヒットする他人のラリーデータをダウンロードしてマップ上に表示する(ほぼサンプル通り)。 ・AWSへのアクセス用アカウントはAWS Identity and Access Management(IAM)で権限を制限したアカウントを生成して、全クライアントがこれを利用。accessKeyとsecretKeyは軽く暗号化かけてアプリ埋め込みw「セキュリティ軟弱じゃねぇ?」とか言われると、否定できません。でも、accessKeyとsecretKeyバレても権限制限してるから、いいかなっと。変なことされたら無効にして新しいKey生成しちゃえばいいや。みたいな。とにかく、鍵管理サーバとかも書きたくない。 ・扱うデータに個人情報や機密情報は含めない。抜かれても大丈夫なデータだけ扱う。 ・ ここ とか真面目に...