SlideShare a Scribd company logo
ゼロから始めるモバイルアプリ開発

AWS Mobile Hubハンズオン
【本編】
2016年01月16日 JAWS-UG沖縄
西島 幸一郎 @k_nishijima
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
ゼロから始めるモバイルアプリ開発 / 

AWS Mobile Hubハンズオン
にご参加(表明)いただき
ありがとうございます!
2
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
こちらの資料は「本編」です。
「事前準備編」が完了していることを
前提としています。
終わってない方は、お近くの
サポートスタッフにお声がけください。
3
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
勿論分からないところや
詰まった所があれば、
お気軽にご質問ください!
4
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
Twitterのハッシュタグ
#jawsug
みんな見てるので

反応が早いです!
5
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
本資料は
http://bit.ly/handson201601-main
よりダウンロード可能です。
GitHubリポジトリはこちら。
https://github.com/jaws-ug/hands-on/
tree/master/Mobile-Hub
6
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
あんた誰?
7
西島 幸一郎 / にしじま こういちろう

アールスリーインスティテュート ソリューションアーキテクト
https://www.r3it.com

JAWS−UG沖縄のコアメンバー
AWSサムライ2013/2014 2年連続拝命 

当資料について、ご質問などあればFacebook/Twitterなどで
お気軽にお問い合わせください!
@k_nishijima
nishijima.koichiro
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
アールスリーインスティテュート
8
大阪の業務系システム開発会社
AWSとkintoneで「ハイスピードSI」
西島は沖縄から100%リモートワーク
【コミュニティにフルコミットする】と

宣言している珍しい会社
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
ハンズオンの流れ
9
開発環境
の準備
Facebook
Google
などの準備
AWS
Mobile
Hub
色々
遊ぶ!
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
10
開発環境
の準備
Facebook
Google
などの準備
AWS
Mobile
Hub
色々
遊ぶ!
こちらが今回の本編です!
ハンズオンの流れ
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
11
✦ 当資料はAndroid向けかつMacで作成されました
✦ ただしWindowsでもほぼ同じ、iOS向けもかなり似たような感じだと思います。
✦ MobileHub自体はiOSおよびWindowsでの開発もサポートしています。
✦ 今回は iOS向けではなくAndroid向け資料ですが、きっと将来拡張される予定で
す(プルリクエストお待ちしております!)
✦ Windows環境向けのサポートも同じく・・・

(当方は窓環境が全く無いのでサポートできません・・・)
ご注意!
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
12
✦一旦簡単にアプリを作って動かしてみる
✦Cloud Logicを使ってみる
✦更にその先へ!
Mobile Hubハンズオンの流れ
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
13
✦ http://aws.amazon.com/jp/

より右上の「コンソールへサインイン」をクリック。
✦ MFAを設定してある人はそれぞれのtokenを使ってください。
AWSコンソールへサインイン
2016年お正月記念
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
14
✦ モバイルサービスの中の

「Mobile Hub」をクリック
サービス一覧
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
15
✦ こんな画面になるので、

各項目の説明を見つつ

「Get started」をクリック。
AWS Mobile Hub Get started!
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
16
✦ プロジェクト名を

「handson-20160116」と入力し、
「Create project」をクリック
プロジェクトの作成
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
17
✦ こんな画面になります。

ここから、プロジェクトの各機能要素を
設定します。
✦ 左上の「User Sign-in」をクリックする
ところから、はじめましょう。
プロジェクトの設定
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
18
✦ ユーザー認証を組込むかどうかの選択です。
✦ サインインしなくてもアプリが使えるよう
にするなら「optional」を、サインイン必
須とするなら「required」を選択します。
✦ ここではoptionalを選択します。
User Sign-inの設定
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
19
✦ その下のユーザ認証プロバイダは、現時
点(2016年1月)Facebookと
Customしか選択できません。
✦ ここではFacebookを選択し、AppIDを
入力します。
✦ 事前準備編で作成したAppIDを入力して
「Save changes」をクリックします。
User Sign-inの設定
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
20
✦ ひとつ設定をすると、このように色が変わります。
このような感じでどんどん設定していきましょう。
✦ 次は右隣の「Push Notifications」をクリック
します。
User Sign-inの設定完了
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
21
✦ プッシュ通知を利用する場合「Enable push」
を選択します。
✦ 事前準備編のGoogle Cloud
Messaging(GCM)で作成したAPI Keyを入力
します。
✦ 「Sender ID」には、Google Developers
Console のダッシュボードに表示されている
「プロジェクト番号」を入力します。
Push Notificationsの設定
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
22
✦ いま作成されるのは、アプリを入れた全デ
バイスにクラウド側から一斉に通知するト
ピックになります。
✦ 「Save changes」をクリックして保存し
ます。
Push Notificationsの設定
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
23
✦ ちなみにこのボタン、設定外終わった項目
では右のようになります。
✦ 「Configure more features」で各設定
一覧に戻り、「Build your app」でビル
ド画面に進みます。
各設定画面のボタン
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
24
✦ アプリが利用する画像ファイルなどを外部ク
ラウドストレージにおいて、アプリに対して
配信する機能の設定です。
✦ 「Single location」を選択するとS3から
直接ダウンロード、「Global CDN」を選択
するとCloudFrontからファイルを配信しま
す。
✦ ここではSingle locationを選択します。
App Content Deliveryの設定
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
25
✦ シンプル、スケーラブルなクラウドストレージであり、

AWSの根幹をなすサービスのひとつ
✦ イレブンナイン(99.999999999%)の堅牢性と、99.99%の可用性
✦ httpsでデータのやり取りが出来るので、HTML等を置いて静的なWeb
サーバの代わりに使える
✦ 勿論アプリのデータ保管場所としても使える
✦ デフォルト非公開状態になるが、間違って機密データを

公開状態に設定しないように!
✦ 詳細:https://aws.amazon.com/jp/cloudfront/details/
ちょっと待った!Amazon Simple Storage Service
(Amazon S3)(えすすりー)って何?
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
26
✦ 全世界にエッジロケーションを持つコンテンツ配信ネットワーク
(CDN)
✦ 日本にも2箇所エッジロケーションがあり、ネットワーク的に

近い方からコンテンツ配信される
✦ 入れておくと大元のサーバまでアクセスが来ないので、

Yahoo砲にも余裕で耐えられる様になる
✦ 大元のコンテンツ配信サーバは、オンプレミスでも普通に使える
✦ 最近はWAFとも統合され、ますます進化
✦ 詳細:https://aws.amazon.com/jp/cloudfront/details/
ちょっと待った!
Amazon CloudFront(くらうどふろんと)って何?
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
27
✦ これらのファイルの実体はS3の

「handson-contentdelivery-
mobilehub-数字」というようなバケット名
でパブリック状態で置かれています(URLが
分かれば誰でもダウンロードできる状態)。
✦ アクセス制御が必要なコンテンツの配信には、
相応の作りこみが必要になります。
App Content Deliveryの設定

ご注意ください!
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
28
✦ どんどん色が変わってきました!
✦ あと2つ、User Data Storage と

App Analyticsを設定してみましょう。
ここまでの設定
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
29
✦ ユーザに紐づく情報をハッシュマップのような形
か、S3上にファイルとしてクラウド側に保存でき
るようになります。
✦ ユーザ認証を利用しない場合でも、匿名ユーザ扱
いでCognitoにハッシュマップを保存可能です。
✦ S3上にファイルをプライベートな状態で保存する
には、ユーザ認証が必要になります。
✦ ここでは「Store user data」を選択し「Save
changes」をクリックして保存します。
User Data Storageの設定
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
30
✦ 一時的なAWS認証情報の配布及び管理、モバイル向けには

ユーザID管理とデータ同期サービスを提供
✦ モバイル向けにオフライン機能
✦ デバイス間での情報の同期をサポート
✦ 実質2つのサービス(Cognito IdentityとCognito Sync)が

含まれているので若干混乱を招くので注意
✦ 詳細:http://docs.aws.amazon.com/cognito/devguide/
ちょっと待った!
Amazon Cognito(こぐにーと)って何?
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
31
✦ アプリの利用動向をレポーティングするツー
ル「Mobile Analytics」を利用するかど
うかの設定です。
✦ 日毎のアクティブユーザ数(DAU)をはじ
め、様々な指標を確認することが出来ます。
ここでは利用する方を選択しています。
✦ 「Save changes」をクリックして保存し
ます。
App Analyticsの設定
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
32
✦ 残り1つが気になりますが、

ここで一旦左メニューの上から2番目
「Build」アイコンをクリックして、

ソースをビルドしてみます。
ここまでの設定
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
33
✦ iOSまたはAndroidが選択できますが、

ここではAndroidをクリックします。
✦ クリックした瞬間ソースがビルドされますの
で、しばらく待ちます。
Buildプラットフォームの選択
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
34
✦ 「Download Android source package」
のリンクが現れたら、クリックしてソースの
ZIPファイルをダウンロードします。
ソースダウンロード
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
35
✦ まずダウンロードしたZIPファイル
を解凍します。
✦ ここから先はAndroid Studioで

作業を行います。
Android Studioでアプリをビルド
この辺で
ひとやすみ
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
37
✦ USBケーブルで端末とPCを接続します。
✦ 端末側に「USBデバッグが接続されまし
た」と表示されればOKです。
✦ 表示されない人は、周りの方やサポート
スタッフにお声がけください。
実機の端末で開発する場合
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
38
✦ Android Studioを起動して、

「Import Project (Eclipse…」
を選択。
✦ フォルダは先程解凍したフォルダの
「MySampleApp」を選択。
Android Studioでアプリをビルド
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
39
✦ 例えばこのようなエラー。
✦ 「読んで適切に対処しましょう」としか言い
ようがありません(^^;)
✦ 右のエラーは「Install Repository and
sync project」をクリックすることで解決
します。
✦ プロジェクト読み込み直後のフルビルドは、
ネットワークが安定していないと厳しいこと
が多いと思います。
この時点で何かエラーが出たら
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
40
✦ メニューのRun -> Run ‘app’ を選択して実
行してみましょう。
✦ 「Choose a running device」側には、起
動していればエミュレーターと、接続してい
る実機が表示されているはずです。
✦ 「Launch emulator」側を選択すると、事
前に登録したAVDを指定してエミュレーター
を起動することが出来ます。
✦ どちらかを選択して「OK」をクリックしま
す。
アプリの実行
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
41
✦ エミュレーターの場合には、3-5分程度!待ちます。
エミュレーター上でOSが起動した後、アプリが自
動的に起動するまでしばらく待ってみてください。
✦ 左のような画面が出てきたら、アプリを操作するこ
とが出来るようになります。
✦ 開発中はアプリを終了しても、エミュレーターを終
了する必要はありません。
エミュレーターでのアプリの実行
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
42
✦ 実機での動作も、当然エミュレーターとほぼ同じ動
きになります。
✦ 各メニューを色々いじってみてください。例えば
「App Content Delivery」メニューでは、S3バ
ケットの中身を直接見ることが出来ます。
実機でのアプリの実行
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
43
✦ エミュレーターでは動かない(と思われる)動作を
1つ試してみましょう。
✦ アプリのメニューから「Push Notifications」を
タップしてください。
push通知の実行
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
44
✦ push通知の概要の画面下部の
「Demo Push Notifications」を
タップし、「Recive Push
Notifications」にチェックが入っ
ていることを確認します。
push通知の実行
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
45
✦ ブラウザに戻り、Mobile Hubの左メニューの
一番下のアイコン「Resources」をクリック
します。
✦ ここに、Mobile Hubが自動的に作成した
AWS上のリソースが一覧されています。
✦ Amazon SNS Topicsの中の
「handson_alldevices_…」をクリックして
ください。
Mobile Hubが作成したAWS上のリソース
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
46
✦ 自動的に作成されたSNSトピックの詳細
が開きます。
✦ Regionの項目を見ると、us-east-1
リージョンに作成されていることが分か
ります。
✦ 左上の青いボタン「Publish to topic」
をクリックしてください。
SNSトピック詳細
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
47
✦ Message部分に適当に文章を入力し
て、「Publish message」をクリッ
クすると・・・
SNSトピックからメッセージ送信
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
48
✦ 簡単に実機側でクラウド側からの通知を

受け取れることが確認できると思います。
実機側で確認
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
49
✦ ブラウザに戻り、別のResourceを見てみま
しょう。
✦ 左上にあるAmazon Cognito Identity
Poolsの中の「handson_MOBILEHUB_…」
をクリックしてください。
クラウド側に保存されているユーザ情報
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
50
✦ ここではUnauthenticated
ユーザが2人いることが分かり
ます。
✦ 他にも、今月9回syncしてる
ことやストレージのサイズが
表示されています。
Cognitoのダッシュボード
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
51
✦ ここではUnauthenticated
(いわゆる匿名ユーザのこと)
ユーザが2人いることが分かり
ます。
✦ 他にも、今月9回syncしてる
ことやストレージのサイズが
表示されています。
Cognitoのダッシュボード
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
52
✦ 左のメニューでIdentity browserを
クリックします。
✦ 匿名ユーザのIDが出てるので、それを
クリックしてみます。
CognitoのIdentity browser
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
53
✦ このユーザが持っているDatasetの一覧が出てくる
ので、”user_settings”をクリックしてみます。
Cognitoが保存しているdataset
✦ key=valueの形式でデータが保存され
ているのが見えると思います。
✦ このような形で、クラウド側にデータ
が保存され、閲覧したり書き換えたり
することが可能となっています。
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
54
✦ 今度はアプリ側に戻ってみてください。
✦ App Analyticsのメニューも試してみましょう。
「Demo App Analytics」をタップし、左下の
「CUSTOM」ボタンをクリックしてみます。
✦ これは、アプリ側からクラウド側にカスタムイベン
トを発行した様子です。
✦ 何人のユーザがアプリをダウンロードしたか、どの
ボタンをクリックしたか、などの統計レポートがイ
ベントごとに自動的に作成されます。
App Analyticsの実行
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
55
✦ 色々いじったら、アプリを一旦終了しておきます。
✦ ブラウザに戻って、Mobile Hubページの左下のAnalytics
をクリックします。
Mobile Analyticsのレポート
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
56
✦ 今は色々出て「いない」!と思います。

(レポートはリアルタイムではないので(^_^;)
✦ 30分もしないうちに、出てくると思います。
✦ 以下参考までに、どんなレポートが見えるのか
貼っておきます。
Mobile Analyticsのレポート
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
57
✦ アクティブユーザーはこんな感じ
✦ マンスリーとデイリーが出てます
Mobile Analyticsのレポート
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
58
✦ 先ほど送ったカスタムイベントの例
✦ 項目ごと、もしくはまとめてグラフ化さ
れます。
✦ 上司に「実際アプリはどこがどのくらい
使われてるんだ?」って詰められた経験
のある方に、朗報ですw
Mobile Analyticsのレポート
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
59
✦ 今回は触れませんが、「Test」というメニューをクリックする
と「AWS Device Farm」というサービスにリンクします。
✦ これを使うと、クラウド上で数あるAndroid / iOS端末を

選んで、テストを走らせることが出来ます。
✦ 詳細:http://aws.amazon.com/jp/device-farm/
クラウドでテストも出来る
この辺で
ひとやすみ
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
61
✦ Cloud Logicとは? 

= AWS Lambda をアプリから

直接呼び出せる機能
✦ Mobile Hubのメニューから右下
のCloud Logicをクリック
お楽しみはこれからだ!
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
62
✦ クラウド上(AWSが運用管理するサーバ上)で、

自分の書いたコードが実行されるサービス
✦ 言語は現在のところNode.js (JavaScript)、Python、および
Java8をサポート
✦ 「サーバレスアーキテクチャ」はマーケティング用語なので、

実際にはマネージドサービスの上で動く仕組みなんだ、

というのを理解しておくと良いと思います
✦ 詳細:https://aws.amazon.com/jp/lambda/details/
ちょっと待った!
AWS Lambda(らむだ)って何?
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
63
✦ 「Enable Logic」を選択。
✦ 「Create a new function」をク
リックすると、ラムダ関数作成ウィ
ザードが始まってしまうので、グッ
とこらえて次頁に進みましょう。
Cloud Logic の設定
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
64
✦ コードはNode.jsです。ソースコードはGitHubにあります。

https://github.com/jaws-ug/hands-on/tree/master/
Mobile-Hub
✦ サンプルとして以下を用意しました。

以下よりZIPファイルをダウンロードしてください。
✦ Twitterに投稿する
✦ 天気予報を取得する
今回のハンズオンで
用意したLambda関数について
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
65
✦ 関数を作るリージョンを選択
✦ 関数の名前を決めて
✦ ランタイム(実行環境)を選択
✦ コードをフォームで書くもしくはファイルでアップロードする
✦ ロール(実行権限)を設定して
✦ 利用するメモリ量を設定
(全体共通)
Lambda関数のデプロイ手順
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
66
✦ 本来はご自分のTwitterアカウントで https://apps.twitter.com/
にアクセスして「Create New App」して、consumer_key・
consumer_secretなどを取得しておく必要があります。
✦ 本lambdaTweet.zipには @handson201601 アカウントの
consumer_keyなどが予め含まれています

「悪用厳禁!」
Lambdaサンプル
Twitter投稿:事前準備
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
67
✦ では先程の画面で

「Create a new function」を

クリックします。
✦ 別ウィンドウで開くので、

ポップアップ禁止設定をしてある

ブラウザは注意。
Cloud Logic の設定画面から
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
68
✦ MobileHubの仕様で、

現在のところバージニアにある

関数しか選択できないので、

右上のリージョン選択が

「バージニア北部」

となっているかを確認します

(なって無ければ「バージニア北部」を選択して変更)
Lambdaを作るリージョンの確認
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
69
✦ ブループリントには色々と

興味深いものがあるが、

今回は「Skip」をクリック
Lambda関数の作成
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
70
✦ Nameは「lambdaTweet」
✦ RuntimeはNode.js
✦ Code entry typeは

「Upload a .ZIP file」

を選択し、

「Upload」をクリック
Lambda関数の作成
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
71
✦ Handlerはそのまま
「index.handler」
✦ RoleはCreate new roleの中の

「Basic execution role」を

選ぶと、別ウィンドウが開く

(初めての設定の場合)
Lambda関数の作成
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
72
✦ 2回目以降は

Use existing roleの中から
「lambda_basic_execution」 を
選択するだけ
Lambda関数の作成
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
73
✦ 適当にロール名をつけてくれるので、

右下の「許可」をクリックします。
✦ これはこのLambda関数が実行されるときに利用する
権限の設定になるので、例えばS3に書き込むとか、
EC2インスタンスを起動するとか、必要な場合には権
限を付与する必要があります。
✦ その場合は適当なロール名ではなくて、権限を表すロー
ル名を付けておかないと混乱するので注意。
IAM roleの作成
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
74
✦ 最後にメモリ使用量とタイムアウト
時間を設定します。
✦ 今回は恐らくデフォルトで良いが、
規模の大きいアプリケーションの
場合はこの辺りを調整する必要が
あります。
Lambda関数の作成
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
75
✦ 確認画面で「Create funciton」
をクリックすると・・・
Lambda関数の作成
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
76
✦ Lambda関数の完成!
✦ 以後の設定変更やソースの更
新はこのページから行います。
Lambda関数の作成
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
77
✦ MobileHubのタブに戻って、リロードアイコン
(Function nameの右隣)をクリックすると、
いま作成した関数が出てくるのでチェックを入れ
ます。
✦ 出てこなければ、8ページほど戻って「Lambda
を作るリージョンの確認」を再度確認。
✦ 「Save changes」-> 左メニューの「Build」
で、再度ソースをビルドして、ダウンロードしま
す。
Lambda関数の作成
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
78
✦ ZIPファイルを解凍して、ソースを上書き
✦ Android Studioを起動して、

「Import Project (Eclipse…」を選択。
✦ フォルダは先程上書きしたフォルダの
「MySampleApp」を選択します。
✦ メニューのRun -> Run ‘app’ を選択して
実行してください。
Android Studioで再度アプリをビルド
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
79
✦ 一番下にメニューが増えてる!
✦ クリックして先に進み、Cloud Logicを
実行してみましょう。
実機でのアプリの実行
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
80
✦ FUNCTIONに先ほどのLambda関数名
「lambdaTweet」
✦ REQUESTにJSONで

「{“tweet”: “投稿したいメッセージ”}」
✦ 最後に「INVOKE」をクリックすると・・・
✦ see https://twitter.com/handson201601
実機でのアプリの実行
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
81
✦ Lambdaの実行時ログはどこに出るの?
✦ CloudWatch -> ログ -> 関数名のロググループ
✦ Lambda関数の更新は?
✦ ZIPを作りなおして再度アップロード後、「Saveボタン」
✦ MobileHubが生成したソースの更新はAndroidStudioでどうやる?
✦ ディレクトリごと上書きして、「Import Project」が手っ取り早い
どこかで上手く行かなかった場合
その他もろもろのFAQ
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
82
✦ 関数名を「lambdaWeather」とする
✦ ダウンロードしたZIPファイルをUpload
✦ Roleは先ほど作った「lambda_basic_execution」を選択
✦ Lambda関数が出来たら、MobileHubのタブに戻って、リロードアイコン
✦ 「lambdaWeather」にチェックを入れて、「Save changes」-> 左メニューの
「Build」で、再度ソースをビルドして、ダウンロード、上書きしておく
✦ Android StudioでプロジェクトをImport、Runで実行
Lambdaサンプル
天気予報を取得:手順はほぼ一緒
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
83
✦ FUNCTIONに「lambdaWeather」
✦ REQUESTにJSONで

「{“id”: “数字”}」と入力します。
✦ 数字は http://weather.yahoo.co.jp/weather/rss/ 

の警報・注意報「以外」を参照してください。
✦ 最後に「INVOKE」をクリック!
実機で実行
更にその先へ
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
85
✦進む前に、再度現状の確認
✦実案件で使うにはどうすればいい?
✦自動生成されたソースコードの解析
更にその先へ
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
86
✦ 現在のMobile Hubは

「AWSのリソース生成ウィザード」+

「生成されたリソースにアクセスする

 サンプルソースコード自動生成ツール」

と見ることが出来ます。
現状の確認
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
87
✦ Mobile Hubの左メニューの一番下のアイコン
「Resources」をクリックします。
✦ ここに、Mobile Hubが自動的に作成した
AWS上のリソースが一覧されています。
Mobile Hubが作成したAWS上のリソース
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
88
✦ ここまでの作業は、全て無料枠の範囲内で収まる
はずですが(頑張って行っても数百円程度)、

心配の方はこのリソースを全てクリックして行っ
て、削除しておくと良いでしょう。
完全無料で利用したい場合
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
89
✦ アプリ側でGUIを作りこむ
✦ デバイスから情報を取得する部分(GPSとか)
も作る必要あり
✦ サーバ側で必要なロジック

(主にデータの読み書き)を作りこむ
実案件で使うには?
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
90
✦ AWS部分はインフラ担当に

「こんな感じで作ったからよろしくね!」
✦ アプリ部分はアプリ担当に

「これ参考によろしくね!」
実案件で使うには?
そうそう上手く
逃げられるはずがない
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
92
✦ この先はほんの少しだけJavaの知識が必要になります
✦ 「オレ無理そう」というかたは、

アプリをいじって遊んでましょう(^^)
✦ ただし、エンジニアと共通言語を持つという意味では、

ちらっと見ておくと良いかと思います。
ここから少しだけ
自動生成されたソースコードの解析
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
93
✦ Android Studioを起動すると今まで
開いていたプロジェクトが開くはず。
✦ 左上の「1: Project」をクリックする
と、プロジェクトの一覧が見える。
✦ 「app」フォルダをクリックして中身を
どんどん開いていって、
「MainActivity」を探す。
Android Studioでアプリを見てみる
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
94
✦ パッケージ名は「com.mysampleapp」
✦ 起動時のActivityは「com.mysampleapp.MainActivity」
↑この2つは、事前準備編でFacebookApp側に設定したやつ!

これを変えたら、Facebook側の設定を変えるのをお忘れなく
ここで分かること
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
95
✦ com.mysampleapp.demo.UserSettingsを開く
✦ これはアプリの情報をクラウド側に

保存するときに使われるもの
✦ アプリ起動時にクラウド側から情報を取ってくるコー
ドになっている
✦ MainActivityの中で”syncUserSettings”を探し
てみると・・・
UserSettingsクラス
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
96
✦ com.mysampleapp.demo.CloudLogicDemoFrag
mentを開く
✦ これはCloud Logicの画面を開いたときに使われるもの
✦ DEFAULT_FUNCTION_NAME や
DEFAULT_REQUEST_CONTENTS をいじって保存す
ると、画面を開いた時のデフォルト値が変わる
✦ invokeFunctionメソッドがLambda呼出のコードにな
るので参考にすると良い
CloudLogicDemoFragmentクラス
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
97
その他もろもろ
✦ ContentDeliveryDemoFragmentはS3利用のサンプル
✦ MobileAnalyticsDemoFragmentは

Mobile Analytics利用のサンプル
✦ PushDemoFragmentクラスはSNS購読のサンプル
などなど
アプリ構築のテンプレートとして利用可能!
OKINAWA
AWS Mobile Hubハンズオン【本編】
http://jaws-ug.jp/
GitHub repositories https://github.com/jaws-ug/
お疲れ様でした
今回のハンズオンはここまで!
Any questions?
98
再掲:資料やソースコードはこちらから
https://github.com/jaws-ug/hands-on/tree/master/Mobile-Hub

More Related Content

What's hot

クラウドネイティブ化する未来
クラウドネイティブ化する未来クラウドネイティブ化する未来
クラウドネイティブ化する未来
Keisuke Nishitani
 
Introducing Serverless Computing (20160802)
Introducing Serverless Computing (20160802)Introducing Serverless Computing (20160802)
Introducing Serverless Computing (20160802)
Keisuke Nishitani
 
AWS クラウドで構築するスマホアプリ バックエンド
AWS クラウドで構築するスマホアプリ バックエンドAWS クラウドで構築するスマホアプリ バックエンド
AWS クラウドで構築するスマホアプリ バックエンドkaki_k
 
Serverless Architecture on AWS (20151201版)
Serverless Architecture on AWS (20151201版)Serverless Architecture on AWS (20151201版)
Serverless Architecture on AWS (20151201版)
Keisuke Nishitani
 
Amazon Cognito Deep Dive @ JAWS DAYS 2016
Amazon Cognito Deep Dive @ JAWS DAYS 2016Amazon Cognito Deep Dive @ JAWS DAYS 2016
Amazon Cognito Deep Dive @ JAWS DAYS 2016
akitsukada
 
AWSにおける モバイル向けサービス及び事例紹介(20151211)
AWSにおける モバイル向けサービス及び事例紹介(20151211)AWSにおける モバイル向けサービス及び事例紹介(20151211)
AWSにおける モバイル向けサービス及び事例紹介(20151211)
Keisuke Nishitani
 
Automated Testing on AWS Device Farm
Automated Testing on AWS Device FarmAutomated Testing on AWS Device Farm
Automated Testing on AWS Device Farm
Keisuke Nishitani
 
モバイルファースト時代のクラウドネイティブアーキテクチャ JAWS DAYS 2015
モバイルファースト時代のクラウドネイティブアーキテクチャ JAWS DAYS 2015モバイルファースト時代のクラウドネイティブアーキテクチャ JAWS DAYS 2015
モバイルファースト時代のクラウドネイティブアーキテクチャ JAWS DAYS 2015
Rikitake Oohashi
 
Ad Tech on AWS - IVS CTO Night and Day Spring 2016
Ad Tech on AWS - IVS CTO Night and Day Spring 2016Ad Tech on AWS - IVS CTO Night and Day Spring 2016
Ad Tech on AWS - IVS CTO Night and Day Spring 2016
Eiji Shinohara
 
クラウド時代のソフトウェアアーキテクチャ
クラウド時代のソフトウェアアーキテクチャクラウド時代のソフトウェアアーキテクチャ
クラウド時代のソフトウェアアーキテクチャ
Keisuke Nishitani
 
AWSで実現するクラウドネイティブなアプリ開発のポイント
AWSで実現するクラウドネイティブなアプリ開発のポイントAWSで実現するクラウドネイティブなアプリ開発のポイント
AWSで実現するクラウドネイティブなアプリ開発のポイント
Keisuke Nishitani
 
AWS Introduction for Startups
AWS Introduction for StartupsAWS Introduction for Startups
AWS Introduction for Startups
akitsukada
 
AWS IoTアーキテクチャパターン
AWS IoTアーキテクチャパターンAWS IoTアーキテクチャパターン
AWS IoTアーキテクチャパターン
Amazon Web Services Japan
 
AWS Lambda / Amazon API Gateway Deep Dive
AWS Lambda / Amazon API Gateway Deep DiveAWS Lambda / Amazon API Gateway Deep Dive
AWS Lambda / Amazon API Gateway Deep Dive
Keisuke Nishitani
 
【IVS CTO Night & Day】Networking Technology
【IVS CTO Night & Day】Networking Technology【IVS CTO Night & Day】Networking Technology
【IVS CTO Night & Day】Networking Technology
Amazon Web Services Japan
 
JAWSDAYS2016 Technical Deep DIVE
JAWSDAYS2016 Technical Deep DIVE JAWSDAYS2016 Technical Deep DIVE
JAWSDAYS2016 Technical Deep DIVE
陽平 山口
 
Serverless Revolution
Serverless RevolutionServerless Revolution
Serverless Revolution
Keisuke Nishitani
 
地方のユーザとクラウド
地方のユーザとクラウド地方のユーザとクラウド
地方のユーザとクラウド
Taku Harako
 
BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk
BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning TalkBaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk
BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk
崇之 清水
 
Aws summits2014 サイバーエージェント_ユーザーの趣味嗜好に適した広告配信システムdynalystができるまでad_techstudioでの...
Aws summits2014 サイバーエージェント_ユーザーの趣味嗜好に適した広告配信システムdynalystができるまでad_techstudioでの...Aws summits2014 サイバーエージェント_ユーザーの趣味嗜好に適した広告配信システムdynalystができるまでad_techstudioでの...
Aws summits2014 サイバーエージェント_ユーザーの趣味嗜好に適した広告配信システムdynalystができるまでad_techstudioでの...Boss4434
 

What's hot (20)

クラウドネイティブ化する未来
クラウドネイティブ化する未来クラウドネイティブ化する未来
クラウドネイティブ化する未来
 
Introducing Serverless Computing (20160802)
Introducing Serverless Computing (20160802)Introducing Serverless Computing (20160802)
Introducing Serverless Computing (20160802)
 
AWS クラウドで構築するスマホアプリ バックエンド
AWS クラウドで構築するスマホアプリ バックエンドAWS クラウドで構築するスマホアプリ バックエンド
AWS クラウドで構築するスマホアプリ バックエンド
 
Serverless Architecture on AWS (20151201版)
Serverless Architecture on AWS (20151201版)Serverless Architecture on AWS (20151201版)
Serverless Architecture on AWS (20151201版)
 
Amazon Cognito Deep Dive @ JAWS DAYS 2016
Amazon Cognito Deep Dive @ JAWS DAYS 2016Amazon Cognito Deep Dive @ JAWS DAYS 2016
Amazon Cognito Deep Dive @ JAWS DAYS 2016
 
AWSにおける モバイル向けサービス及び事例紹介(20151211)
AWSにおける モバイル向けサービス及び事例紹介(20151211)AWSにおける モバイル向けサービス及び事例紹介(20151211)
AWSにおける モバイル向けサービス及び事例紹介(20151211)
 
Automated Testing on AWS Device Farm
Automated Testing on AWS Device FarmAutomated Testing on AWS Device Farm
Automated Testing on AWS Device Farm
 
モバイルファースト時代のクラウドネイティブアーキテクチャ JAWS DAYS 2015
モバイルファースト時代のクラウドネイティブアーキテクチャ JAWS DAYS 2015モバイルファースト時代のクラウドネイティブアーキテクチャ JAWS DAYS 2015
モバイルファースト時代のクラウドネイティブアーキテクチャ JAWS DAYS 2015
 
Ad Tech on AWS - IVS CTO Night and Day Spring 2016
Ad Tech on AWS - IVS CTO Night and Day Spring 2016Ad Tech on AWS - IVS CTO Night and Day Spring 2016
Ad Tech on AWS - IVS CTO Night and Day Spring 2016
 
クラウド時代のソフトウェアアーキテクチャ
クラウド時代のソフトウェアアーキテクチャクラウド時代のソフトウェアアーキテクチャ
クラウド時代のソフトウェアアーキテクチャ
 
AWSで実現するクラウドネイティブなアプリ開発のポイント
AWSで実現するクラウドネイティブなアプリ開発のポイントAWSで実現するクラウドネイティブなアプリ開発のポイント
AWSで実現するクラウドネイティブなアプリ開発のポイント
 
AWS Introduction for Startups
AWS Introduction for StartupsAWS Introduction for Startups
AWS Introduction for Startups
 
AWS IoTアーキテクチャパターン
AWS IoTアーキテクチャパターンAWS IoTアーキテクチャパターン
AWS IoTアーキテクチャパターン
 
AWS Lambda / Amazon API Gateway Deep Dive
AWS Lambda / Amazon API Gateway Deep DiveAWS Lambda / Amazon API Gateway Deep Dive
AWS Lambda / Amazon API Gateway Deep Dive
 
【IVS CTO Night & Day】Networking Technology
【IVS CTO Night & Day】Networking Technology【IVS CTO Night & Day】Networking Technology
【IVS CTO Night & Day】Networking Technology
 
JAWSDAYS2016 Technical Deep DIVE
JAWSDAYS2016 Technical Deep DIVE JAWSDAYS2016 Technical Deep DIVE
JAWSDAYS2016 Technical Deep DIVE
 
Serverless Revolution
Serverless RevolutionServerless Revolution
Serverless Revolution
 
地方のユーザとクラウド
地方のユーザとクラウド地方のユーザとクラウド
地方のユーザとクラウド
 
BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk
BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning TalkBaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk
BaaS vs. バース ホームラン対決 - AWS Summit Tokyo 2014 Lightning Talk
 
Aws summits2014 サイバーエージェント_ユーザーの趣味嗜好に適した広告配信システムdynalystができるまでad_techstudioでの...
Aws summits2014 サイバーエージェント_ユーザーの趣味嗜好に適した広告配信システムdynalystができるまでad_techstudioでの...Aws summits2014 サイバーエージェント_ユーザーの趣味嗜好に適した広告配信システムdynalystができるまでad_techstudioでの...
Aws summits2014 サイバーエージェント_ユーザーの趣味嗜好に適した広告配信システムdynalystができるまでad_techstudioでの...
 

Similar to ゼロから始めるモバイルアプリ開発 / 
 AWS Mobile Hubハンズオン 本編

ゼロから始めるモバイルアプリ開発 / 
 AWS Mobile Hubハンズオン 事前準備編
ゼロから始めるモバイルアプリ開発 / 
 AWS Mobile Hubハンズオン 事前準備編ゼロから始めるモバイルアプリ開発 / 
 AWS Mobile Hubハンズオン 事前準備編
ゼロから始めるモバイルアプリ開発 / 
 AWS Mobile Hubハンズオン 事前準備編
Koichiro Nishijima
 
AWSのサーバレス関連アップデートを10分で紹介します
AWSのサーバレス関連アップデートを10分で紹介しますAWSのサーバレス関連アップデートを10分で紹介します
AWSのサーバレス関連アップデートを10分で紹介します
Keisuke Nishitani
 
SageMakerでもAUTOMATIC1111したい
SageMakerでもAUTOMATIC1111したいSageMakerでもAUTOMATIC1111したい
SageMakerでもAUTOMATIC1111したい
真吾 吉田
 
【12/5 最新版】AWS Black Belt Online Seminar AWS re:Invent 2018 アップデート情報
【12/5 最新版】AWS Black Belt Online Seminar AWS re:Invent 2018 アップデート情報【12/5 最新版】AWS Black Belt Online Seminar AWS re:Invent 2018 アップデート情報
【12/5 最新版】AWS Black Belt Online Seminar AWS re:Invent 2018 アップデート情報
Amazon Web Services Japan
 
[最新版は別にございます! Descriptionをご確認ください] AWS Black Belt Online Seminar AWS re:Inven...
[最新版は別にございます! Descriptionをご確認ください] AWS Black Belt Online Seminar AWS re:Inven...[最新版は別にございます! Descriptionをご確認ください] AWS Black Belt Online Seminar AWS re:Inven...
[最新版は別にございます! Descriptionをご確認ください] AWS Black Belt Online Seminar AWS re:Inven...
Amazon Web Services Japan
 
[最新版(12/5 最新版) が別にございます! Descriptionをご確認ください] AWS Black Belt Online Seminar A...
[最新版(12/5 最新版) が別にございます! Descriptionをご確認ください] AWS Black Belt Online Seminar A...[最新版(12/5 最新版) が別にございます! Descriptionをご確認ください] AWS Black Belt Online Seminar A...
[最新版(12/5 最新版) が別にございます! Descriptionをご確認ください] AWS Black Belt Online Seminar A...
Amazon Web Services Japan
 
AWSを利用してDevとOpsの間を考える
AWSを利用してDevとOpsの間を考えるAWSを利用してDevとOpsの間を考える
AWSを利用してDevとOpsの間を考える
Junichiro Ueno
 
Watson API トレーニング 20160716 rev02
Watson API トレーニング 20160716 rev02Watson API トレーニング 20160716 rev02
Watson API トレーニング 20160716 rev02
Hiroaki Komine
 
AWS Black Belt Online Seminar AWSサービスを利用したアプリケーション開発を始めよう
AWS Black Belt Online Seminar AWSサービスを利用したアプリケーション開発を始めようAWS Black Belt Online Seminar AWSサービスを利用したアプリケーション開発を始めよう
AWS Black Belt Online Seminar AWSサービスを利用したアプリケーション開発を始めよう
Amazon Web Services Japan
 
Slerとaws運用の付き合い方
Slerとaws運用の付き合い方Slerとaws運用の付き合い方
Slerとaws運用の付き合い方
Sato Shun
 
20190619 AWS Black Belt Online Seminar Dive Deep into AWS Chalice
20190619 AWS Black Belt Online Seminar Dive Deep into AWS Chalice20190619 AWS Black Belt Online Seminar Dive Deep into AWS Chalice
20190619 AWS Black Belt Online Seminar Dive Deep into AWS Chalice
Amazon Web Services Japan
 
エンジニア向け初めてのAWS (2015年1月6日)
エンジニア向け初めてのAWS (2015年1月6日)エンジニア向け初めてのAWS (2015年1月6日)
エンジニア向け初めてのAWS (2015年1月6日)
Koichiro Nishijima
 
AWS White Belt Guide 目指せ黒帯!今から始める方への学び方ガイド
AWS White Belt Guide 目指せ黒帯!今から始める方への学び方ガイドAWS White Belt Guide 目指せ黒帯!今から始める方への学び方ガイド
AWS White Belt Guide 目指せ黒帯!今から始める方への学び方ガイド
Trainocate Japan, Ltd.
 
AWSで地球の裏側ブラジルの人にすばやくWEBサイトを見せたい。
AWSで地球の裏側ブラジルの人にすばやくWEBサイトを見せたい。AWSで地球の裏側ブラジルの人にすばやくWEBサイトを見せたい。
AWSで地球の裏側ブラジルの人にすばやくWEBサイトを見せたい。
医療IT数学同好会 T/T
 
JAWS-UG Kansai Meetup(2020/11) Amazon Connectの今
JAWS-UG Kansai Meetup(2020/11) Amazon Connectの今JAWS-UG Kansai Meetup(2020/11) Amazon Connectの今
JAWS-UG Kansai Meetup(2020/11) Amazon Connectの今
Daiki Mori
 
【AWS活用ハンズオン】アプリケーションサーバをAWS Marketplaceで構築してみよう!
【AWS活用ハンズオン】アプリケーションサーバをAWS Marketplaceで構築してみよう!【AWS活用ハンズオン】アプリケーションサーバをAWS Marketplaceで構築してみよう!
【AWS活用ハンズオン】アプリケーションサーバをAWS Marketplaceで構築してみよう!Masaru Tomonaga
 
Bay Area Startup Report - IVS CTO Night & Day in Miyazaki
Bay Area Startup Report - IVS CTO Night & Day in MiyazakiBay Area Startup Report - IVS CTO Night & Day in Miyazaki
Bay Area Startup Report - IVS CTO Night & Day in Miyazaki
Eiji Shinohara
 
01_2021年上半期 AWS IoT サービスアップデート
01_2021年上半期 AWS IoT サービスアップデート01_2021年上半期 AWS IoT サービスアップデート
01_2021年上半期 AWS IoT サービスアップデート
Amazon Web Services Japan
 
インフラ系自主トレするならAWS
インフラ系自主トレするならAWSインフラ系自主トレするならAWS
インフラ系自主トレするならAWS
Yasuhiro Araki, Ph.D
 
reGrowth福島 サーバレスの事例とセキュリティサービス
reGrowth福島 サーバレスの事例とセキュリティサービスreGrowth福島 サーバレスの事例とセキュリティサービス
reGrowth福島 サーバレスの事例とセキュリティサービス
Haga Takeshi
 

Similar to ゼロから始めるモバイルアプリ開発 / 
 AWS Mobile Hubハンズオン 本編 (20)

ゼロから始めるモバイルアプリ開発 / 
 AWS Mobile Hubハンズオン 事前準備編
ゼロから始めるモバイルアプリ開発 / 
 AWS Mobile Hubハンズオン 事前準備編ゼロから始めるモバイルアプリ開発 / 
 AWS Mobile Hubハンズオン 事前準備編
ゼロから始めるモバイルアプリ開発 / 
 AWS Mobile Hubハンズオン 事前準備編
 
AWSのサーバレス関連アップデートを10分で紹介します
AWSのサーバレス関連アップデートを10分で紹介しますAWSのサーバレス関連アップデートを10分で紹介します
AWSのサーバレス関連アップデートを10分で紹介します
 
SageMakerでもAUTOMATIC1111したい
SageMakerでもAUTOMATIC1111したいSageMakerでもAUTOMATIC1111したい
SageMakerでもAUTOMATIC1111したい
 
【12/5 最新版】AWS Black Belt Online Seminar AWS re:Invent 2018 アップデート情報
【12/5 最新版】AWS Black Belt Online Seminar AWS re:Invent 2018 アップデート情報【12/5 最新版】AWS Black Belt Online Seminar AWS re:Invent 2018 アップデート情報
【12/5 最新版】AWS Black Belt Online Seminar AWS re:Invent 2018 アップデート情報
 
[最新版は別にございます! Descriptionをご確認ください] AWS Black Belt Online Seminar AWS re:Inven...
[最新版は別にございます! Descriptionをご確認ください] AWS Black Belt Online Seminar AWS re:Inven...[最新版は別にございます! Descriptionをご確認ください] AWS Black Belt Online Seminar AWS re:Inven...
[最新版は別にございます! Descriptionをご確認ください] AWS Black Belt Online Seminar AWS re:Inven...
 
[最新版(12/5 最新版) が別にございます! Descriptionをご確認ください] AWS Black Belt Online Seminar A...
[最新版(12/5 最新版) が別にございます! Descriptionをご確認ください] AWS Black Belt Online Seminar A...[最新版(12/5 最新版) が別にございます! Descriptionをご確認ください] AWS Black Belt Online Seminar A...
[最新版(12/5 最新版) が別にございます! Descriptionをご確認ください] AWS Black Belt Online Seminar A...
 
AWSを利用してDevとOpsの間を考える
AWSを利用してDevとOpsの間を考えるAWSを利用してDevとOpsの間を考える
AWSを利用してDevとOpsの間を考える
 
Watson API トレーニング 20160716 rev02
Watson API トレーニング 20160716 rev02Watson API トレーニング 20160716 rev02
Watson API トレーニング 20160716 rev02
 
AWS Black Belt Online Seminar AWSサービスを利用したアプリケーション開発を始めよう
AWS Black Belt Online Seminar AWSサービスを利用したアプリケーション開発を始めようAWS Black Belt Online Seminar AWSサービスを利用したアプリケーション開発を始めよう
AWS Black Belt Online Seminar AWSサービスを利用したアプリケーション開発を始めよう
 
Slerとaws運用の付き合い方
Slerとaws運用の付き合い方Slerとaws運用の付き合い方
Slerとaws運用の付き合い方
 
20190619 AWS Black Belt Online Seminar Dive Deep into AWS Chalice
20190619 AWS Black Belt Online Seminar Dive Deep into AWS Chalice20190619 AWS Black Belt Online Seminar Dive Deep into AWS Chalice
20190619 AWS Black Belt Online Seminar Dive Deep into AWS Chalice
 
エンジニア向け初めてのAWS (2015年1月6日)
エンジニア向け初めてのAWS (2015年1月6日)エンジニア向け初めてのAWS (2015年1月6日)
エンジニア向け初めてのAWS (2015年1月6日)
 
AWS White Belt Guide 目指せ黒帯!今から始める方への学び方ガイド
AWS White Belt Guide 目指せ黒帯!今から始める方への学び方ガイドAWS White Belt Guide 目指せ黒帯!今から始める方への学び方ガイド
AWS White Belt Guide 目指せ黒帯!今から始める方への学び方ガイド
 
AWSで地球の裏側ブラジルの人にすばやくWEBサイトを見せたい。
AWSで地球の裏側ブラジルの人にすばやくWEBサイトを見せたい。AWSで地球の裏側ブラジルの人にすばやくWEBサイトを見せたい。
AWSで地球の裏側ブラジルの人にすばやくWEBサイトを見せたい。
 
JAWS-UG Kansai Meetup(2020/11) Amazon Connectの今
JAWS-UG Kansai Meetup(2020/11) Amazon Connectの今JAWS-UG Kansai Meetup(2020/11) Amazon Connectの今
JAWS-UG Kansai Meetup(2020/11) Amazon Connectの今
 
【AWS活用ハンズオン】アプリケーションサーバをAWS Marketplaceで構築してみよう!
【AWS活用ハンズオン】アプリケーションサーバをAWS Marketplaceで構築してみよう!【AWS活用ハンズオン】アプリケーションサーバをAWS Marketplaceで構築してみよう!
【AWS活用ハンズオン】アプリケーションサーバをAWS Marketplaceで構築してみよう!
 
Bay Area Startup Report - IVS CTO Night & Day in Miyazaki
Bay Area Startup Report - IVS CTO Night & Day in MiyazakiBay Area Startup Report - IVS CTO Night & Day in Miyazaki
Bay Area Startup Report - IVS CTO Night & Day in Miyazaki
 
01_2021年上半期 AWS IoT サービスアップデート
01_2021年上半期 AWS IoT サービスアップデート01_2021年上半期 AWS IoT サービスアップデート
01_2021年上半期 AWS IoT サービスアップデート
 
インフラ系自主トレするならAWS
インフラ系自主トレするならAWSインフラ系自主トレするならAWS
インフラ系自主トレするならAWS
 
reGrowth福島 サーバレスの事例とセキュリティサービス
reGrowth福島 サーバレスの事例とセキュリティサービスreGrowth福島 サーバレスの事例とセキュリティサービス
reGrowth福島 サーバレスの事例とセキュリティサービス
 

ゼロから始めるモバイルアプリ開発 / 
 AWS Mobile Hubハンズオン 本編

  • 2. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ ゼロから始めるモバイルアプリ開発 / 
 AWS Mobile Hubハンズオン にご参加(表明)いただき ありがとうございます! 2
  • 3. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ こちらの資料は「本編」です。 「事前準備編」が完了していることを 前提としています。 終わってない方は、お近くの サポートスタッフにお声がけください。 3
  • 4. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 勿論分からないところや 詰まった所があれば、 お気軽にご質問ください! 4
  • 5. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ Twitterのハッシュタグ #jawsug みんな見てるので
 反応が早いです! 5
  • 6. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 本資料は http://bit.ly/handson201601-main よりダウンロード可能です。 GitHubリポジトリはこちら。 https://github.com/jaws-ug/hands-on/ tree/master/Mobile-Hub 6
  • 7. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ あんた誰? 7 西島 幸一郎 / にしじま こういちろう
 アールスリーインスティテュート ソリューションアーキテクト https://www.r3it.com
 JAWS−UG沖縄のコアメンバー AWSサムライ2013/2014 2年連続拝命 
 当資料について、ご質問などあればFacebook/Twitterなどで お気軽にお問い合わせください! @k_nishijima nishijima.koichiro
  • 8. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ アールスリーインスティテュート 8 大阪の業務系システム開発会社 AWSとkintoneで「ハイスピードSI」 西島は沖縄から100%リモートワーク 【コミュニティにフルコミットする】と
 宣言している珍しい会社
  • 9. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ ハンズオンの流れ 9 開発環境 の準備 Facebook Google などの準備 AWS Mobile Hub 色々 遊ぶ!
  • 10. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 10 開発環境 の準備 Facebook Google などの準備 AWS Mobile Hub 色々 遊ぶ! こちらが今回の本編です! ハンズオンの流れ
  • 11. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 11 ✦ 当資料はAndroid向けかつMacで作成されました ✦ ただしWindowsでもほぼ同じ、iOS向けもかなり似たような感じだと思います。 ✦ MobileHub自体はiOSおよびWindowsでの開発もサポートしています。 ✦ 今回は iOS向けではなくAndroid向け資料ですが、きっと将来拡張される予定で す(プルリクエストお待ちしております!) ✦ Windows環境向けのサポートも同じく・・・
 (当方は窓環境が全く無いのでサポートできません・・・) ご注意!
  • 12. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 12 ✦一旦簡単にアプリを作って動かしてみる ✦Cloud Logicを使ってみる ✦更にその先へ! Mobile Hubハンズオンの流れ
  • 13. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 13 ✦ http://aws.amazon.com/jp/
 より右上の「コンソールへサインイン」をクリック。 ✦ MFAを設定してある人はそれぞれのtokenを使ってください。 AWSコンソールへサインイン 2016年お正月記念
  • 14. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 14 ✦ モバイルサービスの中の
 「Mobile Hub」をクリック サービス一覧
  • 15. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 15 ✦ こんな画面になるので、
 各項目の説明を見つつ
 「Get started」をクリック。 AWS Mobile Hub Get started!
  • 16. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 16 ✦ プロジェクト名を
 「handson-20160116」と入力し、 「Create project」をクリック プロジェクトの作成
  • 17. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 17 ✦ こんな画面になります。
 ここから、プロジェクトの各機能要素を 設定します。 ✦ 左上の「User Sign-in」をクリックする ところから、はじめましょう。 プロジェクトの設定
  • 18. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 18 ✦ ユーザー認証を組込むかどうかの選択です。 ✦ サインインしなくてもアプリが使えるよう にするなら「optional」を、サインイン必 須とするなら「required」を選択します。 ✦ ここではoptionalを選択します。 User Sign-inの設定
  • 19. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 19 ✦ その下のユーザ認証プロバイダは、現時 点(2016年1月)Facebookと Customしか選択できません。 ✦ ここではFacebookを選択し、AppIDを 入力します。 ✦ 事前準備編で作成したAppIDを入力して 「Save changes」をクリックします。 User Sign-inの設定
  • 20. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 20 ✦ ひとつ設定をすると、このように色が変わります。 このような感じでどんどん設定していきましょう。 ✦ 次は右隣の「Push Notifications」をクリック します。 User Sign-inの設定完了
  • 21. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 21 ✦ プッシュ通知を利用する場合「Enable push」 を選択します。 ✦ 事前準備編のGoogle Cloud Messaging(GCM)で作成したAPI Keyを入力 します。 ✦ 「Sender ID」には、Google Developers Console のダッシュボードに表示されている 「プロジェクト番号」を入力します。 Push Notificationsの設定
  • 22. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 22 ✦ いま作成されるのは、アプリを入れた全デ バイスにクラウド側から一斉に通知するト ピックになります。 ✦ 「Save changes」をクリックして保存し ます。 Push Notificationsの設定
  • 23. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 23 ✦ ちなみにこのボタン、設定外終わった項目 では右のようになります。 ✦ 「Configure more features」で各設定 一覧に戻り、「Build your app」でビル ド画面に進みます。 各設定画面のボタン
  • 24. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 24 ✦ アプリが利用する画像ファイルなどを外部ク ラウドストレージにおいて、アプリに対して 配信する機能の設定です。 ✦ 「Single location」を選択するとS3から 直接ダウンロード、「Global CDN」を選択 するとCloudFrontからファイルを配信しま す。 ✦ ここではSingle locationを選択します。 App Content Deliveryの設定
  • 25. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 25 ✦ シンプル、スケーラブルなクラウドストレージであり、
 AWSの根幹をなすサービスのひとつ ✦ イレブンナイン(99.999999999%)の堅牢性と、99.99%の可用性 ✦ httpsでデータのやり取りが出来るので、HTML等を置いて静的なWeb サーバの代わりに使える ✦ 勿論アプリのデータ保管場所としても使える ✦ デフォルト非公開状態になるが、間違って機密データを
 公開状態に設定しないように! ✦ 詳細:https://aws.amazon.com/jp/cloudfront/details/ ちょっと待った!Amazon Simple Storage Service (Amazon S3)(えすすりー)って何?
  • 26. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 26 ✦ 全世界にエッジロケーションを持つコンテンツ配信ネットワーク (CDN) ✦ 日本にも2箇所エッジロケーションがあり、ネットワーク的に
 近い方からコンテンツ配信される ✦ 入れておくと大元のサーバまでアクセスが来ないので、
 Yahoo砲にも余裕で耐えられる様になる ✦ 大元のコンテンツ配信サーバは、オンプレミスでも普通に使える ✦ 最近はWAFとも統合され、ますます進化 ✦ 詳細:https://aws.amazon.com/jp/cloudfront/details/ ちょっと待った! Amazon CloudFront(くらうどふろんと)って何?
  • 27. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 27 ✦ これらのファイルの実体はS3の
 「handson-contentdelivery- mobilehub-数字」というようなバケット名 でパブリック状態で置かれています(URLが 分かれば誰でもダウンロードできる状態)。 ✦ アクセス制御が必要なコンテンツの配信には、 相応の作りこみが必要になります。 App Content Deliveryの設定
 ご注意ください!
  • 28. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 28 ✦ どんどん色が変わってきました! ✦ あと2つ、User Data Storage と
 App Analyticsを設定してみましょう。 ここまでの設定
  • 29. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 29 ✦ ユーザに紐づく情報をハッシュマップのような形 か、S3上にファイルとしてクラウド側に保存でき るようになります。 ✦ ユーザ認証を利用しない場合でも、匿名ユーザ扱 いでCognitoにハッシュマップを保存可能です。 ✦ S3上にファイルをプライベートな状態で保存する には、ユーザ認証が必要になります。 ✦ ここでは「Store user data」を選択し「Save changes」をクリックして保存します。 User Data Storageの設定
  • 30. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 30 ✦ 一時的なAWS認証情報の配布及び管理、モバイル向けには
 ユーザID管理とデータ同期サービスを提供 ✦ モバイル向けにオフライン機能 ✦ デバイス間での情報の同期をサポート ✦ 実質2つのサービス(Cognito IdentityとCognito Sync)が
 含まれているので若干混乱を招くので注意 ✦ 詳細:http://docs.aws.amazon.com/cognito/devguide/ ちょっと待った! Amazon Cognito(こぐにーと)って何?
  • 31. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 31 ✦ アプリの利用動向をレポーティングするツー ル「Mobile Analytics」を利用するかど うかの設定です。 ✦ 日毎のアクティブユーザ数(DAU)をはじ め、様々な指標を確認することが出来ます。 ここでは利用する方を選択しています。 ✦ 「Save changes」をクリックして保存し ます。 App Analyticsの設定
  • 32. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 32 ✦ 残り1つが気になりますが、
 ここで一旦左メニューの上から2番目 「Build」アイコンをクリックして、
 ソースをビルドしてみます。 ここまでの設定
  • 33. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 33 ✦ iOSまたはAndroidが選択できますが、
 ここではAndroidをクリックします。 ✦ クリックした瞬間ソースがビルドされますの で、しばらく待ちます。 Buildプラットフォームの選択
  • 34. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 34 ✦ 「Download Android source package」 のリンクが現れたら、クリックしてソースの ZIPファイルをダウンロードします。 ソースダウンロード
  • 35. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 35 ✦ まずダウンロードしたZIPファイル を解凍します。 ✦ ここから先はAndroid Studioで
 作業を行います。 Android Studioでアプリをビルド
  • 37. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 37 ✦ USBケーブルで端末とPCを接続します。 ✦ 端末側に「USBデバッグが接続されまし た」と表示されればOKです。 ✦ 表示されない人は、周りの方やサポート スタッフにお声がけください。 実機の端末で開発する場合
  • 38. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 38 ✦ Android Studioを起動して、
 「Import Project (Eclipse…」 を選択。 ✦ フォルダは先程解凍したフォルダの 「MySampleApp」を選択。 Android Studioでアプリをビルド
  • 39. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 39 ✦ 例えばこのようなエラー。 ✦ 「読んで適切に対処しましょう」としか言い ようがありません(^^;) ✦ 右のエラーは「Install Repository and sync project」をクリックすることで解決 します。 ✦ プロジェクト読み込み直後のフルビルドは、 ネットワークが安定していないと厳しいこと が多いと思います。 この時点で何かエラーが出たら
  • 40. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 40 ✦ メニューのRun -> Run ‘app’ を選択して実 行してみましょう。 ✦ 「Choose a running device」側には、起 動していればエミュレーターと、接続してい る実機が表示されているはずです。 ✦ 「Launch emulator」側を選択すると、事 前に登録したAVDを指定してエミュレーター を起動することが出来ます。 ✦ どちらかを選択して「OK」をクリックしま す。 アプリの実行
  • 41. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 41 ✦ エミュレーターの場合には、3-5分程度!待ちます。 エミュレーター上でOSが起動した後、アプリが自 動的に起動するまでしばらく待ってみてください。 ✦ 左のような画面が出てきたら、アプリを操作するこ とが出来るようになります。 ✦ 開発中はアプリを終了しても、エミュレーターを終 了する必要はありません。 エミュレーターでのアプリの実行
  • 42. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 42 ✦ 実機での動作も、当然エミュレーターとほぼ同じ動 きになります。 ✦ 各メニューを色々いじってみてください。例えば 「App Content Delivery」メニューでは、S3バ ケットの中身を直接見ることが出来ます。 実機でのアプリの実行
  • 43. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 43 ✦ エミュレーターでは動かない(と思われる)動作を 1つ試してみましょう。 ✦ アプリのメニューから「Push Notifications」を タップしてください。 push通知の実行
  • 44. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 44 ✦ push通知の概要の画面下部の 「Demo Push Notifications」を タップし、「Recive Push Notifications」にチェックが入っ ていることを確認します。 push通知の実行
  • 45. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 45 ✦ ブラウザに戻り、Mobile Hubの左メニューの 一番下のアイコン「Resources」をクリック します。 ✦ ここに、Mobile Hubが自動的に作成した AWS上のリソースが一覧されています。 ✦ Amazon SNS Topicsの中の 「handson_alldevices_…」をクリックして ください。 Mobile Hubが作成したAWS上のリソース
  • 46. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 46 ✦ 自動的に作成されたSNSトピックの詳細 が開きます。 ✦ Regionの項目を見ると、us-east-1 リージョンに作成されていることが分か ります。 ✦ 左上の青いボタン「Publish to topic」 をクリックしてください。 SNSトピック詳細
  • 47. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 47 ✦ Message部分に適当に文章を入力し て、「Publish message」をクリッ クすると・・・ SNSトピックからメッセージ送信
  • 48. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 48 ✦ 簡単に実機側でクラウド側からの通知を
 受け取れることが確認できると思います。 実機側で確認
  • 49. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 49 ✦ ブラウザに戻り、別のResourceを見てみま しょう。 ✦ 左上にあるAmazon Cognito Identity Poolsの中の「handson_MOBILEHUB_…」 をクリックしてください。 クラウド側に保存されているユーザ情報
  • 50. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 50 ✦ ここではUnauthenticated ユーザが2人いることが分かり ます。 ✦ 他にも、今月9回syncしてる ことやストレージのサイズが 表示されています。 Cognitoのダッシュボード
  • 51. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 51 ✦ ここではUnauthenticated (いわゆる匿名ユーザのこと) ユーザが2人いることが分かり ます。 ✦ 他にも、今月9回syncしてる ことやストレージのサイズが 表示されています。 Cognitoのダッシュボード
  • 52. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 52 ✦ 左のメニューでIdentity browserを クリックします。 ✦ 匿名ユーザのIDが出てるので、それを クリックしてみます。 CognitoのIdentity browser
  • 53. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 53 ✦ このユーザが持っているDatasetの一覧が出てくる ので、”user_settings”をクリックしてみます。 Cognitoが保存しているdataset ✦ key=valueの形式でデータが保存され ているのが見えると思います。 ✦ このような形で、クラウド側にデータ が保存され、閲覧したり書き換えたり することが可能となっています。
  • 54. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 54 ✦ 今度はアプリ側に戻ってみてください。 ✦ App Analyticsのメニューも試してみましょう。 「Demo App Analytics」をタップし、左下の 「CUSTOM」ボタンをクリックしてみます。 ✦ これは、アプリ側からクラウド側にカスタムイベン トを発行した様子です。 ✦ 何人のユーザがアプリをダウンロードしたか、どの ボタンをクリックしたか、などの統計レポートがイ ベントごとに自動的に作成されます。 App Analyticsの実行
  • 55. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 55 ✦ 色々いじったら、アプリを一旦終了しておきます。 ✦ ブラウザに戻って、Mobile Hubページの左下のAnalytics をクリックします。 Mobile Analyticsのレポート
  • 56. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 56 ✦ 今は色々出て「いない」!と思います。
 (レポートはリアルタイムではないので(^_^;) ✦ 30分もしないうちに、出てくると思います。 ✦ 以下参考までに、どんなレポートが見えるのか 貼っておきます。 Mobile Analyticsのレポート
  • 57. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 57 ✦ アクティブユーザーはこんな感じ ✦ マンスリーとデイリーが出てます Mobile Analyticsのレポート
  • 58. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 58 ✦ 先ほど送ったカスタムイベントの例 ✦ 項目ごと、もしくはまとめてグラフ化さ れます。 ✦ 上司に「実際アプリはどこがどのくらい 使われてるんだ?」って詰められた経験 のある方に、朗報ですw Mobile Analyticsのレポート
  • 59. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 59 ✦ 今回は触れませんが、「Test」というメニューをクリックする と「AWS Device Farm」というサービスにリンクします。 ✦ これを使うと、クラウド上で数あるAndroid / iOS端末を
 選んで、テストを走らせることが出来ます。 ✦ 詳細:http://aws.amazon.com/jp/device-farm/ クラウドでテストも出来る
  • 61. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 61 ✦ Cloud Logicとは? 
 = AWS Lambda をアプリから
 直接呼び出せる機能 ✦ Mobile Hubのメニューから右下 のCloud Logicをクリック お楽しみはこれからだ!
  • 62. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 62 ✦ クラウド上(AWSが運用管理するサーバ上)で、
 自分の書いたコードが実行されるサービス ✦ 言語は現在のところNode.js (JavaScript)、Python、および Java8をサポート ✦ 「サーバレスアーキテクチャ」はマーケティング用語なので、
 実際にはマネージドサービスの上で動く仕組みなんだ、
 というのを理解しておくと良いと思います ✦ 詳細:https://aws.amazon.com/jp/lambda/details/ ちょっと待った! AWS Lambda(らむだ)って何?
  • 63. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 63 ✦ 「Enable Logic」を選択。 ✦ 「Create a new function」をク リックすると、ラムダ関数作成ウィ ザードが始まってしまうので、グッ とこらえて次頁に進みましょう。 Cloud Logic の設定
  • 64. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 64 ✦ コードはNode.jsです。ソースコードはGitHubにあります。
 https://github.com/jaws-ug/hands-on/tree/master/ Mobile-Hub ✦ サンプルとして以下を用意しました。
 以下よりZIPファイルをダウンロードしてください。 ✦ Twitterに投稿する ✦ 天気予報を取得する 今回のハンズオンで 用意したLambda関数について
  • 65. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 65 ✦ 関数を作るリージョンを選択 ✦ 関数の名前を決めて ✦ ランタイム(実行環境)を選択 ✦ コードをフォームで書くもしくはファイルでアップロードする ✦ ロール(実行権限)を設定して ✦ 利用するメモリ量を設定 (全体共通) Lambda関数のデプロイ手順
  • 66. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 66 ✦ 本来はご自分のTwitterアカウントで https://apps.twitter.com/ にアクセスして「Create New App」して、consumer_key・ consumer_secretなどを取得しておく必要があります。 ✦ 本lambdaTweet.zipには @handson201601 アカウントの consumer_keyなどが予め含まれています
 「悪用厳禁!」 Lambdaサンプル Twitter投稿:事前準備
  • 67. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 67 ✦ では先程の画面で
 「Create a new function」を
 クリックします。 ✦ 別ウィンドウで開くので、
 ポップアップ禁止設定をしてある
 ブラウザは注意。 Cloud Logic の設定画面から
  • 68. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 68 ✦ MobileHubの仕様で、
 現在のところバージニアにある
 関数しか選択できないので、
 右上のリージョン選択が
 「バージニア北部」
 となっているかを確認します
 (なって無ければ「バージニア北部」を選択して変更) Lambdaを作るリージョンの確認
  • 69. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 69 ✦ ブループリントには色々と
 興味深いものがあるが、
 今回は「Skip」をクリック Lambda関数の作成
  • 70. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 70 ✦ Nameは「lambdaTweet」 ✦ RuntimeはNode.js ✦ Code entry typeは
 「Upload a .ZIP file」
 を選択し、
 「Upload」をクリック Lambda関数の作成
  • 71. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 71 ✦ Handlerはそのまま 「index.handler」 ✦ RoleはCreate new roleの中の
 「Basic execution role」を
 選ぶと、別ウィンドウが開く
 (初めての設定の場合) Lambda関数の作成
  • 72. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 72 ✦ 2回目以降は
 Use existing roleの中から 「lambda_basic_execution」 を 選択するだけ Lambda関数の作成
  • 73. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 73 ✦ 適当にロール名をつけてくれるので、
 右下の「許可」をクリックします。 ✦ これはこのLambda関数が実行されるときに利用する 権限の設定になるので、例えばS3に書き込むとか、 EC2インスタンスを起動するとか、必要な場合には権 限を付与する必要があります。 ✦ その場合は適当なロール名ではなくて、権限を表すロー ル名を付けておかないと混乱するので注意。 IAM roleの作成
  • 74. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 74 ✦ 最後にメモリ使用量とタイムアウト 時間を設定します。 ✦ 今回は恐らくデフォルトで良いが、 規模の大きいアプリケーションの 場合はこの辺りを調整する必要が あります。 Lambda関数の作成
  • 75. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 75 ✦ 確認画面で「Create funciton」 をクリックすると・・・ Lambda関数の作成
  • 76. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 76 ✦ Lambda関数の完成! ✦ 以後の設定変更やソースの更 新はこのページから行います。 Lambda関数の作成
  • 77. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 77 ✦ MobileHubのタブに戻って、リロードアイコン (Function nameの右隣)をクリックすると、 いま作成した関数が出てくるのでチェックを入れ ます。 ✦ 出てこなければ、8ページほど戻って「Lambda を作るリージョンの確認」を再度確認。 ✦ 「Save changes」-> 左メニューの「Build」 で、再度ソースをビルドして、ダウンロードしま す。 Lambda関数の作成
  • 78. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 78 ✦ ZIPファイルを解凍して、ソースを上書き ✦ Android Studioを起動して、
 「Import Project (Eclipse…」を選択。 ✦ フォルダは先程上書きしたフォルダの 「MySampleApp」を選択します。 ✦ メニューのRun -> Run ‘app’ を選択して 実行してください。 Android Studioで再度アプリをビルド
  • 79. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 79 ✦ 一番下にメニューが増えてる! ✦ クリックして先に進み、Cloud Logicを 実行してみましょう。 実機でのアプリの実行
  • 80. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 80 ✦ FUNCTIONに先ほどのLambda関数名 「lambdaTweet」 ✦ REQUESTにJSONで
 「{“tweet”: “投稿したいメッセージ”}」 ✦ 最後に「INVOKE」をクリックすると・・・ ✦ see https://twitter.com/handson201601 実機でのアプリの実行
  • 81. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 81 ✦ Lambdaの実行時ログはどこに出るの? ✦ CloudWatch -> ログ -> 関数名のロググループ ✦ Lambda関数の更新は? ✦ ZIPを作りなおして再度アップロード後、「Saveボタン」 ✦ MobileHubが生成したソースの更新はAndroidStudioでどうやる? ✦ ディレクトリごと上書きして、「Import Project」が手っ取り早い どこかで上手く行かなかった場合 その他もろもろのFAQ
  • 82. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 82 ✦ 関数名を「lambdaWeather」とする ✦ ダウンロードしたZIPファイルをUpload ✦ Roleは先ほど作った「lambda_basic_execution」を選択 ✦ Lambda関数が出来たら、MobileHubのタブに戻って、リロードアイコン ✦ 「lambdaWeather」にチェックを入れて、「Save changes」-> 左メニューの 「Build」で、再度ソースをビルドして、ダウンロード、上書きしておく ✦ Android StudioでプロジェクトをImport、Runで実行 Lambdaサンプル 天気予報を取得:手順はほぼ一緒
  • 83. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 83 ✦ FUNCTIONに「lambdaWeather」 ✦ REQUESTにJSONで
 「{“id”: “数字”}」と入力します。 ✦ 数字は http://weather.yahoo.co.jp/weather/rss/ 
 の警報・注意報「以外」を参照してください。 ✦ 最後に「INVOKE」をクリック! 実機で実行
  • 85. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 85 ✦進む前に、再度現状の確認 ✦実案件で使うにはどうすればいい? ✦自動生成されたソースコードの解析 更にその先へ
  • 86. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 86 ✦ 現在のMobile Hubは
 「AWSのリソース生成ウィザード」+
 「生成されたリソースにアクセスする
  サンプルソースコード自動生成ツール」
 と見ることが出来ます。 現状の確認
  • 87. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 87 ✦ Mobile Hubの左メニューの一番下のアイコン 「Resources」をクリックします。 ✦ ここに、Mobile Hubが自動的に作成した AWS上のリソースが一覧されています。 Mobile Hubが作成したAWS上のリソース
  • 88. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 88 ✦ ここまでの作業は、全て無料枠の範囲内で収まる はずですが(頑張って行っても数百円程度)、
 心配の方はこのリソースを全てクリックして行っ て、削除しておくと良いでしょう。 完全無料で利用したい場合
  • 89. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 89 ✦ アプリ側でGUIを作りこむ ✦ デバイスから情報を取得する部分(GPSとか) も作る必要あり ✦ サーバ側で必要なロジック
 (主にデータの読み書き)を作りこむ 実案件で使うには?
  • 90. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 90 ✦ AWS部分はインフラ担当に
 「こんな感じで作ったからよろしくね!」 ✦ アプリ部分はアプリ担当に
 「これ参考によろしくね!」 実案件で使うには?
  • 92. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 92 ✦ この先はほんの少しだけJavaの知識が必要になります ✦ 「オレ無理そう」というかたは、
 アプリをいじって遊んでましょう(^^) ✦ ただし、エンジニアと共通言語を持つという意味では、
 ちらっと見ておくと良いかと思います。 ここから少しだけ 自動生成されたソースコードの解析
  • 93. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 93 ✦ Android Studioを起動すると今まで 開いていたプロジェクトが開くはず。 ✦ 左上の「1: Project」をクリックする と、プロジェクトの一覧が見える。 ✦ 「app」フォルダをクリックして中身を どんどん開いていって、 「MainActivity」を探す。 Android Studioでアプリを見てみる
  • 94. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 94 ✦ パッケージ名は「com.mysampleapp」 ✦ 起動時のActivityは「com.mysampleapp.MainActivity」 ↑この2つは、事前準備編でFacebookApp側に設定したやつ!
 これを変えたら、Facebook側の設定を変えるのをお忘れなく ここで分かること
  • 95. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 95 ✦ com.mysampleapp.demo.UserSettingsを開く ✦ これはアプリの情報をクラウド側に
 保存するときに使われるもの ✦ アプリ起動時にクラウド側から情報を取ってくるコー ドになっている ✦ MainActivityの中で”syncUserSettings”を探し てみると・・・ UserSettingsクラス
  • 96. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 96 ✦ com.mysampleapp.demo.CloudLogicDemoFrag mentを開く ✦ これはCloud Logicの画面を開いたときに使われるもの ✦ DEFAULT_FUNCTION_NAME や DEFAULT_REQUEST_CONTENTS をいじって保存す ると、画面を開いた時のデフォルト値が変わる ✦ invokeFunctionメソッドがLambda呼出のコードにな るので参考にすると良い CloudLogicDemoFragmentクラス
  • 97. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ 97 その他もろもろ ✦ ContentDeliveryDemoFragmentはS3利用のサンプル ✦ MobileAnalyticsDemoFragmentは
 Mobile Analytics利用のサンプル ✦ PushDemoFragmentクラスはSNS購読のサンプル などなど アプリ構築のテンプレートとして利用可能!
  • 98. OKINAWA AWS Mobile Hubハンズオン【本編】 http://jaws-ug.jp/ GitHub repositories https://github.com/jaws-ug/ お疲れ様でした 今回のハンズオンはここまで! Any questions? 98 再掲:資料やソースコードはこちらから https://github.com/jaws-ug/hands-on/tree/master/Mobile-Hub