Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
Masaaki Yonebayashi
1,442 views
Android T2 on cloud
Java Cloud Meeting Tokyo 2010 x Seasar Conference 2010
Technology
◦
Read more
1
Save
Share
Embed
Embed presentation
Download
Downloaded 14 times
1
/ 63
2
/ 63
3
/ 63
4
/ 63
5
/ 63
6
/ 63
7
/ 63
8
/ 63
9
/ 63
10
/ 63
11
/ 63
12
/ 63
13
/ 63
14
/ 63
15
/ 63
16
/ 63
17
/ 63
18
/ 63
19
/ 63
20
/ 63
21
/ 63
22
/ 63
23
/ 63
24
/ 63
25
/ 63
26
/ 63
27
/ 63
28
/ 63
29
/ 63
30
/ 63
31
/ 63
32
/ 63
33
/ 63
34
/ 63
35
/ 63
36
/ 63
37
/ 63
38
/ 63
39
/ 63
40
/ 63
41
/ 63
42
/ 63
43
/ 63
44
/ 63
45
/ 63
46
/ 63
47
/ 63
48
/ 63
49
/ 63
50
/ 63
51
/ 63
52
/ 63
53
/ 63
54
/ 63
55
/ 63
56
/ 63
57
/ 63
58
/ 63
59
/ 63
60
/ 63
61
/ 63
62
/ 63
63
/ 63
More Related Content
PPT
第10回Mozilla拡張機能勉強会-FireMobileSimulatorについて
by
Takahiro (Poly) Horikawa
PDF
AWS Simple Email Service詳細 -ほぼ週刊AWSマイスターシリーズ第11回-
by
SORACOM, INC
PPTX
やや関数型を意識した風Elixir/Phoenixご紹介
by
fukuoka.ex
PPT
mSpoke Overview
by
Sean Ammirati
PDF
T2 in Action
by
Masaaki Yonebayashi
PDF
guice-servlet
by
Masaaki Yonebayashi
PDF
Five Misunderstandings about MVPs
by
Sean Ammirati
PDF
Minimally Awesome Products - Lean Entrepreneurship Carnegie Mellon
by
Sean Ammirati
第10回Mozilla拡張機能勉強会-FireMobileSimulatorについて
by
Takahiro (Poly) Horikawa
AWS Simple Email Service詳細 -ほぼ週刊AWSマイスターシリーズ第11回-
by
SORACOM, INC
やや関数型を意識した風Elixir/Phoenixご紹介
by
fukuoka.ex
mSpoke Overview
by
Sean Ammirati
T2 in Action
by
Masaaki Yonebayashi
guice-servlet
by
Masaaki Yonebayashi
Five Misunderstandings about MVPs
by
Sean Ammirati
Minimally Awesome Products - Lean Entrepreneurship Carnegie Mellon
by
Sean Ammirati
Similar to Android T2 on cloud
PPTX
Androidで使えるJSON-Javaライブラリ
by
Yukiya Nakagawa
PDF
JavaFX-with-Adobe
by
Masaaki Yonebayashi
PDF
TypeScript 勉強会
by
Masahiro Wakame
PDF
汎用apiサーバの構築
by
Hidetoshi Mori
PPTX
つぶLT20121215
by
遼一 杉浦
PDF
女子中高生とTwitter4J #twtr_hack
by
Itsuki Kuroda
KEY
いまさらJavaScript
by
Naomichi Yamakita
PDF
イマドキの現場で使えるJavaライブラリ事情
by
takezoe
KEY
JSON Based Web Services
by
Toru Yamaguchi
PDF
TypeScript ファーストステップ ~ Any browser. Any host. Any OS. Open Source. ~
by
Akira Inoue
PPTX
dstn交流会_DataSpider のソーシャルとの融合、手組との融合
by
dstn
PDF
セプテーニさんでのセミナー
by
Tokusei Noborio
PDF
Androidとは何か
by
Koji Shigemura
PPTX
Androidが起こしたオープン・イノベーション
by
Koji Shigemura
PDF
Kddi mugen lab
by
Kazuya Hiruma
PDF
Seasarプロジェクト徹底攻略
by
takezoe
PDF
TypeScriptへの入口
by
Sunao Tomita
PDF
JavaScript.Next Returns
by
dynamis
PDF
20120611 SC研究会
by
Satoshi Yazawa
PDF
Firefox OS - Blaze Your Own Path
by
dynamis
Androidで使えるJSON-Javaライブラリ
by
Yukiya Nakagawa
JavaFX-with-Adobe
by
Masaaki Yonebayashi
TypeScript 勉強会
by
Masahiro Wakame
汎用apiサーバの構築
by
Hidetoshi Mori
つぶLT20121215
by
遼一 杉浦
女子中高生とTwitter4J #twtr_hack
by
Itsuki Kuroda
いまさらJavaScript
by
Naomichi Yamakita
イマドキの現場で使えるJavaライブラリ事情
by
takezoe
JSON Based Web Services
by
Toru Yamaguchi
TypeScript ファーストステップ ~ Any browser. Any host. Any OS. Open Source. ~
by
Akira Inoue
dstn交流会_DataSpider のソーシャルとの融合、手組との融合
by
dstn
セプテーニさんでのセミナー
by
Tokusei Noborio
Androidとは何か
by
Koji Shigemura
Androidが起こしたオープン・イノベーション
by
Koji Shigemura
Kddi mugen lab
by
Kazuya Hiruma
Seasarプロジェクト徹底攻略
by
takezoe
TypeScriptへの入口
by
Sunao Tomita
JavaScript.Next Returns
by
dynamis
20120611 SC研究会
by
Satoshi Yazawa
Firefox OS - Blaze Your Own Path
by
dynamis
More from Masaaki Yonebayashi
PPTX
Go guide for Java programmer
by
Masaaki Yonebayashi
PDF
HHVM Hack
by
Masaaki Yonebayashi
PDF
Guice2.0
by
Masaaki Yonebayashi
PDF
Flex's DI Container
by
Masaaki Yonebayashi
PDF
T2@java-ja#toyama
by
Masaaki Yonebayashi
PDF
Merapi -Adobe Air<=>Java-
by
Masaaki Yonebayashi
PDF
sc2009white_T2
by
Masaaki Yonebayashi
PDF
sc2009white_Teeda
by
Masaaki Yonebayashi
PDF
yonex
by
Masaaki Yonebayashi
PDF
S2Flex2
by
Masaaki Yonebayashi
PDF
Teeda
by
Masaaki Yonebayashi
PDF
Wankumatoyama#01
by
Masaaki Yonebayashi
Go guide for Java programmer
by
Masaaki Yonebayashi
HHVM Hack
by
Masaaki Yonebayashi
Guice2.0
by
Masaaki Yonebayashi
Flex's DI Container
by
Masaaki Yonebayashi
T2@java-ja#toyama
by
Masaaki Yonebayashi
Merapi -Adobe Air<=>Java-
by
Masaaki Yonebayashi
sc2009white_T2
by
Masaaki Yonebayashi
sc2009white_Teeda
by
Masaaki Yonebayashi
yonex
by
Masaaki Yonebayashi
S2Flex2
by
Masaaki Yonebayashi
Teeda
by
Masaaki Yonebayashi
Wankumatoyama#01
by
Masaaki Yonebayashi
Android T2 on cloud
1.
Androidから
T2 on Cloud Team T2Framework 2010/06/13
2.
Agenda 自己紹介 T2 on Cloud T2Frameworkとは
GAEとEC2 GAE用Eclipse Plugin Vili AMF3 vs JSON Androidからの AndroidでのJSON処理 DEMO
3.
自己紹介
4.
自己紹介 名前
米林 正明 ID yone098(はてな,Twitter,mixi,…) 所属 株式会社Abby 代表取締役社長 社員募集中 ⼀緒に働きませんか? T2 Project
5.
自己紹介 名前
片山 暁雄 ID c9katayama (はてな,Twitter) 所属 株式会社キャピタル・アセット・プランニング T2 Project
6.
T2 on Cloud
7.
T2Frameworkとは
8.
T2 on Cloud T2とは シンプルなWebフレームワーク
フィルタ指向 アノテーションベース ⾊々なリクエストに対応 テーマ「つなぐ・つながる」 ユーザと開発者を 案件と楽しさを あらゆるクライアントとサーバアプリを クライアントとユーザーコードの仲介役 仲介役に徹します!
9.
T2 on Cloud クライアント
HTML Ajax Flex3 Param XML AMF3 T2! サーバ
10.
T2 on Cloud
ところで、GAEとか Androidとか、最近の トレンドとかに対応し てんの?
11.
T2 on Cloud GAE うごきます! EC2
うごきます! Android 通信できます!
12.
GAEとEC2
13.
T2 on Cloud GAE Google先生提供のクラウド環境
JavaとPythonが動く環境を提供 JettyベースのJavaEE環境 EJBないよ 制約厳しめ EC2 Amazon先生提供のクラウド環境 OSも選べる root権もある TomcatでもWebSphereでもなんでもござれ
14.
Project生成Plugin Vili
15.
Vili Vili 汎用のプロジェクト生成支援Eclipseプラグイン
Eclipse3.3以上で動作 http://code.google.com/p/t‐2/wiki/Vili 読み方は「ヴィリ」 北欧神話の神様の名前。オーディンの兄弟 プロジェクトの雛形(スケルトン)を用意することで様々なプロジェクトを 生成可能 T2プロジェクト、Ymirプロジェクト、Cubbyプロジェクト、… プログラム部品(フラグメント)を用意することでプロジェクトに簡単に機 能を追加可能 データベースアクセス機能、メール送信機能、統合テスト環境、ログイン機能、…
16.
Vili T2用のスケルトン T2+Seasar2+S2Daoプロジェクト T2プロジェクト
for GAE/J スケルトン、フラグメントは今後増やしていく 予定です Slim3 いきます
17.
setup
18.
Vili Eclipse3.5.1の場合 Help → Install New Software…
Addボタンを押して http://eclipse.t2framework.org/updates/3.3/ を追加
20.
使い方
25.
Vili ドキュメントがほとんどないので今後公開して いく予定です T2用のスケルトン、フラグメントも今後増やし ていく予定です Viliを使えば5分あればT2をGAE上で動かす アプリが作れ公開出来ます
26.
AMF3 vs JSON
27.
AMF
28.
AMFとは AMF ActionMessageFormat Flash/FlexのObject Serialize方法
通信フォーマットに利用可能 バイナリ形式で小さい! JSONの1/4、XMLの1/10
29.
AMFとは 例えば整数 (数値hex) :(binary) 0x00000000 ‐
0x0000007F : 0xxxxxxx 0x00000080 ‐ 0x00003FFF : 1xxxxxxx 0xxxxxxx 0x00004000 ‐ 0x001FFFFF : 1xxxxxxx 1xxxxxxx 0xxxxxxx 0x00200000 ‐ 0x3FFFFFFF : 1xxxxxxx 1xxxxxxx 1xxxxxxx xxxxxxxx 0x40000000 ‐ 0xFFFFFFFF : レンジ例外が発⽣ 0‐127までの値なら、1byteに変換! 例えば文字列 ⽂字列の参照テーブルがあるので、同じ⽂字列なら 参照で済ます →サイズを⼩さくする仕掛けがされてます
30.
AMFとは AMFが利用できる型の一覧 undefined Type null Type false Type true Type integer Type double Type String Type XMLDocument Type Date Type Array Type XML Type ByteArray Type Object Type(型ありObject,形無しObject)
31.
AMFとは AMF0とAMF3 AMF3:ActionScript3から利用可能
(FlashPlayer9以降) Flex2/3ではAMF3を利用 format仕様はOpen http://download.macromedia.com/pub/labs/amf/amf3_spec_121207.pdf
32.
AMFとは AMF利用イメージ
サーバ クライアント HTTP/HTTPS で転送 ASオブジェクト AMF3でJavaオブジェクトに デシリアライズ AMF3でシリアライズ
33.
JSON
34.
JSONとは JSON JavaScript Object Notation テキストベースのデータフォーマット
2006年に RFC4627 として公開 XMLより簡潔 記述が容易、理解し易い
35.
JSONとは JSONが利⽤できる型の⼀覧 数値 ⽂字列 真偽値(true, false) 配列 オブジェクト null
36.
JSONとは JSON記法 {
"employeeId":"0001", "department":"⼈事部", "name":"⼭⽥ 太郎" } 配列 [ “りんご”, “みかん”, “桃” ] オブジェクトと配列のネスト { “お菓⼦” : [ “チョコレート”, “ビスケット” ] }
37.
AMFとは JSON利用イメージ
サーバ クライアント HTTP/HTTPS で転送 JSオブジェクト JSONでJavaオブジェクトに デシリアライズ JSONでシリアライズ
38.
JSONとは AMF3 vs JSON AMF3はFlash,Flex JSONはJavaScript
オブジェクトを送受信する機能は似た感じ どちらもフォーマットはオープン
39.
JSONとは 昨年まではFlexが流行ってたの で、T2はAMF3対応してました!
40.
JSONとは でも最近Androidとか 流行ってるやん!
41.
Androidからの
42.
AndroidからCloudへ AndroidからCloud通信 通常のHTTP
GET/POST JSON デフォルトでAPI提供されてる(org.json) AMF3 T2のクライアント⽤AMF(API1.6対応) SOAP デフォルトで利⽤不可 kSOAPのようなライブラリもあるがまだ微妙 標準ライブラリHttpClientは遅い
43.
AndroidでのJSON処理
44.
AndroidでのJSON AndroidでのJSON処理 オリジナルパッケージ
org.json google‐gson これいいよ Jar1つのみでサイズも⼩さい •Google同⼠で相性も良い
45.
AndroidでのJSON
org.jsonの使い⽅ public class Sample { private List<String> test; private int num; public List<String> getTest() { return test; } public void setTest(List<String> test) { this.test = test; } public int getNum() { return num; } public void setNum(int num) { this.num = num; } }
46.
AndroidでのJSON org.jsonの使い⽅ String json
= "{" + "¥"test¥" : [ ¥"aa¥", ¥"bb¥" ]," + "¥"num¥" : 1000" + "}"; JSONObject jsonObj = new JSONObject(json); JSONArray test = jsonObj.getJSONArray("test"); String aa = test.getString(0); String bb = test.getString(1); int num = jsonObj.getInt("num"); // Sampleクラスに変換 Sample sample = new Sample(); List<String> tmpList = new ArrayList<String>(); tmpList.add(aa); tmpList.add(bb); sample.setNum(num); sample.setTest(tmpList);
47.
AndroidでのJSON org.jsonの使い⽅ // SampleクラスからJSON文字列作成 JSONObject jsonObj2 = new JSONObject(); JSONArray array = new JSONArray(); array.put("aa"); array.put("bb"); jsonObj2.put("test", array); jsonObj2.put("num", 100); String jsonStr
= jsonObj2.toString(); Log.i(“Log", "jsonStr[" + jsonStr + "]");
48.
AndroidでのJSON google‐gson使い⽅ String json = "{" +
"¥"test¥" : [ ¥"aa¥", ¥"bb¥" ]," + "¥"num¥" : 1000" + "}"; Sample sample1 = new Gson().fromJson(json, Sample.class);
49.
AndroidでのJSON google‐gson使い⽅
String json = "{" + "¥"test¥" : [ ¥"aa¥", ¥"bb¥" ]," + "¥"num¥" : 1000" + "}"; Sample sample1 = new Gson().fromJson(json, Sample.class); String sampleJson = new Gson().toJson(sample1);
50.
AndroidでのJSON google‐gson使い⽅ Type listType
= new TypeToken<List<Tweet>>() { }.getType(); List<Tweet> items = new Gson().fromJson(timelineJson, listType);
51.
Demo
52.
Twitter
53.
⾊T2witter
54.
DEMO Google App Engine
Amazon EC2 MQ MQ JSON JSON AMF3 AMF3 タッチすると、つぶやき ⾊でつぶやく がサーバに保存される
55.
DEMO
56.
DEMO Google App Engine
Amazon EC2 MQ MQ JSON+HTMLなので JSON iPadでもOK! つぶやきを⾒る
57.
DEMO
58.
AndroidでのJSON コードの説明 Eclipseで!
59.
Demo 伝えたかったこと いろいろなクライアントからサーバへ 新クライアントから構築済みのサービスへ
Android to FlexServer サーバからサーバへ OAuth JavaからJavaへ Web to Android
60.
まとめ
61.
まとめ クラウド化でさまざまな環境が登場 何がどこで動くかの把握重要 クライアントもさまざま プロトコルを押さえればつながる Java書けるならAndroidやってみよう T2とつないでみよう
62.
まとめ T2のロードマップ より⼩さくしていこう=Micro webframework
現在のコアも、さらに分割していく コアは、各機能をフックするポイントを提供する 次世代デバイス、RIA対応 HTML5 クライアント側のつなぎポイントの強化 AMF3、JSON Scalaベースのt2を出したい(shot6)
63.
ご成⻑ありがとうございました
Download