Soumettre la recherche
Mettre en ligne
Androidで使えるJSON-Javaライブラリ
•
Télécharger en tant que PPTX, PDF
•
23 j'aime
•
16,378 vues
Yukiya Nakagawa
Suivre
JSON日の金曜日#1での発表です http://atnd.org/events/29927
Lire moins
Lire la suite
Technologie
Signaler
Partager
Signaler
Partager
1 sur 49
Télécharger maintenant
Recommandé
TeX言語の展開制御による文書の構造化(TeXユーザの集い2014)
TeX言語の展開制御による文書の構造化(TeXユーザの集い2014)
T. Suwa
Kotlinアンチパターン
Kotlinアンチパターン
Recruit Lifestyle Co., Ltd.
JSON SchemaとPHP
JSON SchemaとPHP
Hiraku Nakano
mROS:組込みデバイス向けのROS1ノード軽量実行環境
mROS:組込みデバイス向けのROS1ノード軽量実行環境
Hideki Takase
Kotlinミニアンチパターン
Kotlinミニアンチパターン
Recruit Lifestyle Co., Ltd.
UX디자인을 넘어 서비스디자인으로
UX디자인을 넘어 서비스디자인으로
USABLE 윤
ナレッジグラフとオントロジー
ナレッジグラフとオントロジー
University of Tsukuba
グラフデータベース入門
グラフデータベース入門
Masaya Dake
Recommandé
TeX言語の展開制御による文書の構造化(TeXユーザの集い2014)
TeX言語の展開制御による文書の構造化(TeXユーザの集い2014)
T. Suwa
Kotlinアンチパターン
Kotlinアンチパターン
Recruit Lifestyle Co., Ltd.
JSON SchemaとPHP
JSON SchemaとPHP
Hiraku Nakano
mROS:組込みデバイス向けのROS1ノード軽量実行環境
mROS:組込みデバイス向けのROS1ノード軽量実行環境
Hideki Takase
Kotlinミニアンチパターン
Kotlinミニアンチパターン
Recruit Lifestyle Co., Ltd.
UX디자인을 넘어 서비스디자인으로
UX디자인을 넘어 서비스디자인으로
USABLE 윤
ナレッジグラフとオントロジー
ナレッジグラフとオントロジー
University of Tsukuba
グラフデータベース入門
グラフデータベース入門
Masaya Dake
분석 현장에서 요구되는 데이터과학자의 역량과 자질
분석 현장에서 요구되는 데이터과학자의 역량과 자질
Sun Young Kim
고려대학교 컴퓨터학과 특강 - 대학생 때 알았더라면 좋았을 것들
고려대학교 컴퓨터학과 특강 - 대학생 때 알았더라면 좋았을 것들
Chris Ohk
The Timeless Way of Programming between Wiki and XP
The Timeless Way of Programming between Wiki and XP
Koichiro Eto
JavaプログラマのためのWebSocket概要
JavaプログラマのためのWebSocket概要
Shumpei Shiraishi
SFUの話
SFUの話
tnoho
Djangoアプリの実践的設計手法
Djangoアプリの実践的設計手法
Ian Lewis
どこに何を書くのか?
どこに何を書くのか?
pospome
블록체인 POW 작업증명 방식
블록체인 POW 작업증명 방식
Bumkyu Lee
파이썬 생존 안내서 (자막)
파이썬 생존 안내서 (자막)
Heungsub Lee
IT技術系書籍読書会のしおり
IT技術系書籍読書会のしおり
You_Kinjoh
WebSocketのキホン
WebSocketのキホン
You_Kinjoh
DockerコンテナでPython3を使う
DockerコンテナでPython3を使う
Kazuhiro Suga
RxSwiftを“チーム開発に”導入する話
RxSwiftを“チーム開発に”導入する話
LINE Corporation
今改めて見る Plane finding
今改めて見る Plane finding
Takahiro Miyaura
서비스디자인컨설팅 활용가이드북 - 한국디자인진흥원
서비스디자인컨설팅 활용가이드북 - 한국디자인진흥원
한국디자인진흥원 공공서비스디자인PD
論文紹介:Multimodal Learning with Transformers: A Survey
論文紹介:Multimodal Learning with Transformers: A Survey
Toru Tamaki
[부스트캠퍼세미나]권혁우_REST는 바이바이_ GraphQL과 함께하는 칼퇴시대
[부스트캠퍼세미나]권혁우_REST는 바이바이_ GraphQL과 함께하는 칼퇴시대
CONNECT FOUNDATION
20221131_레츠스위프트_2022_iOS개발에서_알아두면_좋은것들.pdf
20221131_레츠스위프트_2022_iOS개발에서_알아두면_좋은것들.pdf
정민 안
文献紹介:Image-to-Image Translation: Methods and Applications
文献紹介:Image-to-Image Translation: Methods and Applications
Toru Tamaki
Cesiumを動かしてみよう
Cesiumを動かしてみよう
Kazutaka ishizaki
Androidで部 第7回 APTすごい
Androidで部 第7回 APTすごい
Masahiro Wakame
僕の考えるAPT開発の常識 ぐだ生 2011/04/09版
僕の考えるAPT開発の常識 ぐだ生 2011/04/09版
Masahiro Wakame
Contenu connexe
Tendances
분석 현장에서 요구되는 데이터과학자의 역량과 자질
분석 현장에서 요구되는 데이터과학자의 역량과 자질
Sun Young Kim
고려대학교 컴퓨터학과 특강 - 대학생 때 알았더라면 좋았을 것들
고려대학교 컴퓨터학과 특강 - 대학생 때 알았더라면 좋았을 것들
Chris Ohk
The Timeless Way of Programming between Wiki and XP
The Timeless Way of Programming between Wiki and XP
Koichiro Eto
JavaプログラマのためのWebSocket概要
JavaプログラマのためのWebSocket概要
Shumpei Shiraishi
SFUの話
SFUの話
tnoho
Djangoアプリの実践的設計手法
Djangoアプリの実践的設計手法
Ian Lewis
どこに何を書くのか?
どこに何を書くのか?
pospome
블록체인 POW 작업증명 방식
블록체인 POW 작업증명 방식
Bumkyu Lee
파이썬 생존 안내서 (자막)
파이썬 생존 안내서 (자막)
Heungsub Lee
IT技術系書籍読書会のしおり
IT技術系書籍読書会のしおり
You_Kinjoh
WebSocketのキホン
WebSocketのキホン
You_Kinjoh
DockerコンテナでPython3を使う
DockerコンテナでPython3を使う
Kazuhiro Suga
RxSwiftを“チーム開発に”導入する話
RxSwiftを“チーム開発に”導入する話
LINE Corporation
今改めて見る Plane finding
今改めて見る Plane finding
Takahiro Miyaura
서비스디자인컨설팅 활용가이드북 - 한국디자인진흥원
서비스디자인컨설팅 활용가이드북 - 한국디자인진흥원
한국디자인진흥원 공공서비스디자인PD
論文紹介:Multimodal Learning with Transformers: A Survey
論文紹介:Multimodal Learning with Transformers: A Survey
Toru Tamaki
[부스트캠퍼세미나]권혁우_REST는 바이바이_ GraphQL과 함께하는 칼퇴시대
[부스트캠퍼세미나]권혁우_REST는 바이바이_ GraphQL과 함께하는 칼퇴시대
CONNECT FOUNDATION
20221131_레츠스위프트_2022_iOS개발에서_알아두면_좋은것들.pdf
20221131_레츠스위프트_2022_iOS개발에서_알아두면_좋은것들.pdf
정민 안
文献紹介:Image-to-Image Translation: Methods and Applications
文献紹介:Image-to-Image Translation: Methods and Applications
Toru Tamaki
Cesiumを動かしてみよう
Cesiumを動かしてみよう
Kazutaka ishizaki
Tendances
(20)
분석 현장에서 요구되는 데이터과학자의 역량과 자질
분석 현장에서 요구되는 데이터과학자의 역량과 자질
고려대학교 컴퓨터학과 특강 - 대학생 때 알았더라면 좋았을 것들
고려대학교 컴퓨터학과 특강 - 대학생 때 알았더라면 좋았을 것들
The Timeless Way of Programming between Wiki and XP
The Timeless Way of Programming between Wiki and XP
JavaプログラマのためのWebSocket概要
JavaプログラマのためのWebSocket概要
SFUの話
SFUの話
Djangoアプリの実践的設計手法
Djangoアプリの実践的設計手法
どこに何を書くのか?
どこに何を書くのか?
블록체인 POW 작업증명 방식
블록체인 POW 작업증명 방식
파이썬 생존 안내서 (자막)
파이썬 생존 안내서 (자막)
IT技術系書籍読書会のしおり
IT技術系書籍読書会のしおり
WebSocketのキホン
WebSocketのキホン
DockerコンテナでPython3を使う
DockerコンテナでPython3を使う
RxSwiftを“チーム開発に”導入する話
RxSwiftを“チーム開発に”導入する話
今改めて見る Plane finding
今改めて見る Plane finding
서비스디자인컨설팅 활용가이드북 - 한국디자인진흥원
서비스디자인컨설팅 활용가이드북 - 한국디자인진흥원
論文紹介:Multimodal Learning with Transformers: A Survey
論文紹介:Multimodal Learning with Transformers: A Survey
[부스트캠퍼세미나]권혁우_REST는 바이바이_ GraphQL과 함께하는 칼퇴시대
[부스트캠퍼세미나]권혁우_REST는 바이바이_ GraphQL과 함께하는 칼퇴시대
20221131_레츠스위프트_2022_iOS개발에서_알아두면_좋은것들.pdf
20221131_레츠스위프트_2022_iOS개발에서_알아두면_좋은것들.pdf
文献紹介:Image-to-Image Translation: Methods and Applications
文献紹介:Image-to-Image Translation: Methods and Applications
Cesiumを動かしてみよう
Cesiumを動かしてみよう
En vedette
Androidで部 第7回 APTすごい
Androidで部 第7回 APTすごい
Masahiro Wakame
僕の考えるAPT開発の常識 ぐだ生 2011/04/09版
僕の考えるAPT開発の常識 ぐだ生 2011/04/09版
Masahiro Wakame
僕の考えるAPT開発の常識
僕の考えるAPT開発の常識
Masahiro Wakame
プログラミング言語Egison - 表現の新たな抽象化の発見
プログラミング言語Egison - 表現の新たな抽象化の発見
Rakuten Group, Inc.
Android 開発を加速するオープンソースライブラリ
Android 開発を加速するオープンソースライブラリ
健一 辰濱
イマドキの現場で使えるJavaライブラリ事情
イマドキの現場で使えるJavaライブラリ事情
takezoe
Swift : クラス継承とプロトコル拡張を比べてみる #yidev
Swift : クラス継承とプロトコル拡張を比べてみる #yidev
Tomohiro Kumagai
(旧版) オープンソースライセンスの基礎と実務
(旧版) オープンソースライセンスの基礎と実務
Yutaka Kachi
短期間で新技術を学ぶ技術
短期間で新技術を学ぶ技術
Takafumi ONAKA
Coding in the context era
Coding in the context era
lestrrat
En vedette
(10)
Androidで部 第7回 APTすごい
Androidで部 第7回 APTすごい
僕の考えるAPT開発の常識 ぐだ生 2011/04/09版
僕の考えるAPT開発の常識 ぐだ生 2011/04/09版
僕の考えるAPT開発の常識
僕の考えるAPT開発の常識
プログラミング言語Egison - 表現の新たな抽象化の発見
プログラミング言語Egison - 表現の新たな抽象化の発見
Android 開発を加速するオープンソースライブラリ
Android 開発を加速するオープンソースライブラリ
イマドキの現場で使えるJavaライブラリ事情
イマドキの現場で使えるJavaライブラリ事情
Swift : クラス継承とプロトコル拡張を比べてみる #yidev
Swift : クラス継承とプロトコル拡張を比べてみる #yidev
(旧版) オープンソースライセンスの基礎と実務
(旧版) オープンソースライセンスの基礎と実務
短期間で新技術を学ぶ技術
短期間で新技術を学ぶ技術
Coding in the context era
Coding in the context era
Similaire à Androidで使えるJSON-Javaライブラリ
Groovyでjson
Groovyでjson
Yasuharu Hayami
JSON Value into Power Automate
JSON Value into Power Automate
Tomoyuki Obi
Bp study39 nodejs
Bp study39 nodejs
Yohei Sasaki
130329 perl casual_ruik
130329 perl casual_ruik
Rui Kimura
Antのススメ
Antのススメ
Tatsumi Naganuma
Ja sst'14東北 いまさら聞けないJenkins
Ja sst'14東北 いまさら聞けないJenkins
勝信 今井
Rx java x retrofit
Rx java x retrofit
Shun Nakahara
GroovyでJSON2014
GroovyでJSON2014
Yasuharu Hayami
Node.js を選ぶとき 選ばないとき
Node.js を選ぶとき 選ばないとき
Ryunosuke SATO
Why js
Why js
Nakajima Shigeru
Groovyコンファレンス
Groovyコンファレンス
Shinichiro Takezaki
探検!SwiftyJSON
探検!SwiftyJSON
Yuka Ezura
Javaと小道具
Javaと小道具
Sho Ito
JavaEdge第3回ライブセッション
JavaEdge第3回ライブセッション
Yoichiro Tanaka
LODを使ってみよう!
LODを使ってみよう!
uedayou
Osc2012.dbに行ってきました
Osc2012.dbに行ってきました
Masaru Kobashigawa
【Potatotips #23】手軽にHTTPでJSONにアクセスできる環境を用意する
【Potatotips #23】手軽にHTTPでJSONにアクセスできる環境を用意する
Hiroyuki Kusu
Djangoフレームワークの紹介
Djangoフレームワークの紹介
Shinya Okano
Javaで1から10まで書いた話(sanitized)
Javaで1から10まで書いた話(sanitized)
Tokuhiro Matsuno
ふぉとぶらり+LODAC -iPhoneアプリでのSPARQLでの活用事例-
ふぉとぶらり+LODAC -iPhoneアプリでのSPARQLでの活用事例-
uedayou
Similaire à Androidで使えるJSON-Javaライブラリ
(20)
Groovyでjson
Groovyでjson
JSON Value into Power Automate
JSON Value into Power Automate
Bp study39 nodejs
Bp study39 nodejs
130329 perl casual_ruik
130329 perl casual_ruik
Antのススメ
Antのススメ
Ja sst'14東北 いまさら聞けないJenkins
Ja sst'14東北 いまさら聞けないJenkins
Rx java x retrofit
Rx java x retrofit
GroovyでJSON2014
GroovyでJSON2014
Node.js を選ぶとき 選ばないとき
Node.js を選ぶとき 選ばないとき
Why js
Why js
Groovyコンファレンス
Groovyコンファレンス
探検!SwiftyJSON
探検!SwiftyJSON
Javaと小道具
Javaと小道具
JavaEdge第3回ライブセッション
JavaEdge第3回ライブセッション
LODを使ってみよう!
LODを使ってみよう!
Osc2012.dbに行ってきました
Osc2012.dbに行ってきました
【Potatotips #23】手軽にHTTPでJSONにアクセスできる環境を用意する
【Potatotips #23】手軽にHTTPでJSONにアクセスできる環境を用意する
Djangoフレームワークの紹介
Djangoフレームワークの紹介
Javaで1から10まで書いた話(sanitized)
Javaで1から10まで書いた話(sanitized)
ふぉとぶらり+LODAC -iPhoneアプリでのSPARQLでの活用事例-
ふぉとぶらり+LODAC -iPhoneアプリでのSPARQLでの活用事例-
Plus de Yukiya Nakagawa
Atomic Designは「マルチ」で真価を発揮する
Atomic Designは「マルチ」で真価を発揮する
Yukiya Nakagawa
Androidの入門書を書いたときに気にしたこと #NDS57
Androidの入門書を書いたときに気にしたこと #NDS57
Yukiya Nakagawa
React Nativeの光と闇
React Nativeの光と闇
Yukiya Nakagawa
アグリノートにおけるGIS情報を活かした圃場・作付管理の取り組み @ FOSS4GJ
アグリノートにおけるGIS情報を活かした圃場・作付管理の取り組み @ FOSS4GJ
Yukiya Nakagawa
React Native Androidはなぜ動くのか
React Native Androidはなぜ動くのか
Yukiya Nakagawa
CSS in JSの話 #friday13json
CSS in JSの話 #friday13json
Yukiya Nakagawa
React Nativeアプリをリリースし続けるために、最初に行う8つの取り組み
React Nativeアプリをリリースし続けるために、最初に行う8つの取り組み
Yukiya Nakagawa
React Nativeはクロスプラットフォームモバイルアプリ開発の夢を見るか #DroidKaigi
React Nativeはクロスプラットフォームモバイルアプリ開発の夢を見るか #DroidKaigi
Yukiya Nakagawa
AndroidLint #DroidKaigi
AndroidLint #DroidKaigi
Yukiya Nakagawa
Android Lintを覚えてベテラン開発者に追いつこう #ndsmeetup
Android Lintを覚えてベテラン開発者に追いつこう #ndsmeetup
Yukiya Nakagawa
僕らのデータ同期プラクティス
僕らのデータ同期プラクティス
Yukiya Nakagawa
Android再入門 〜Eclipseのことは忘れろ〜
Android再入門 〜Eclipseのことは忘れろ〜
Yukiya Nakagawa
もう一度Kotlinの話をしよう #ndsmeetup4
もう一度Kotlinの話をしよう #ndsmeetup4
Yukiya Nakagawa
アグリノートを支える技術
アグリノートを支える技術
Yukiya Nakagawa
NDS36 Kotlin Cute
NDS36 Kotlin Cute
Yukiya Nakagawa
NDS36 Java7&Java8
NDS36 Java7&Java8
Yukiya Nakagawa
Coworking Business Forum in NIIGATA 2013
Coworking Business Forum in NIIGATA 2013
Yukiya Nakagawa
Niigata.rb#03
Niigata.rb#03
Yukiya Nakagawa
PechaKucha Niigata #3 2013.7.27
PechaKucha Niigata #3 2013.7.27
Yukiya Nakagawa
ぼくのかんがえたふつうのあんどろいどかいはつ
ぼくのかんがえたふつうのあんどろいどかいはつ
Yukiya Nakagawa
Plus de Yukiya Nakagawa
(20)
Atomic Designは「マルチ」で真価を発揮する
Atomic Designは「マルチ」で真価を発揮する
Androidの入門書を書いたときに気にしたこと #NDS57
Androidの入門書を書いたときに気にしたこと #NDS57
React Nativeの光と闇
React Nativeの光と闇
アグリノートにおけるGIS情報を活かした圃場・作付管理の取り組み @ FOSS4GJ
アグリノートにおけるGIS情報を活かした圃場・作付管理の取り組み @ FOSS4GJ
React Native Androidはなぜ動くのか
React Native Androidはなぜ動くのか
CSS in JSの話 #friday13json
CSS in JSの話 #friday13json
React Nativeアプリをリリースし続けるために、最初に行う8つの取り組み
React Nativeアプリをリリースし続けるために、最初に行う8つの取り組み
React Nativeはクロスプラットフォームモバイルアプリ開発の夢を見るか #DroidKaigi
React Nativeはクロスプラットフォームモバイルアプリ開発の夢を見るか #DroidKaigi
AndroidLint #DroidKaigi
AndroidLint #DroidKaigi
Android Lintを覚えてベテラン開発者に追いつこう #ndsmeetup
Android Lintを覚えてベテラン開発者に追いつこう #ndsmeetup
僕らのデータ同期プラクティス
僕らのデータ同期プラクティス
Android再入門 〜Eclipseのことは忘れろ〜
Android再入門 〜Eclipseのことは忘れろ〜
もう一度Kotlinの話をしよう #ndsmeetup4
もう一度Kotlinの話をしよう #ndsmeetup4
アグリノートを支える技術
アグリノートを支える技術
NDS36 Kotlin Cute
NDS36 Kotlin Cute
NDS36 Java7&Java8
NDS36 Java7&Java8
Coworking Business Forum in NIIGATA 2013
Coworking Business Forum in NIIGATA 2013
Niigata.rb#03
Niigata.rb#03
PechaKucha Niigata #3 2013.7.27
PechaKucha Niigata #3 2013.7.27
ぼくのかんがえたふつうのあんどろいどかいはつ
ぼくのかんがえたふつうのあんどろいどかいはつ
Dernier
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
danielhu54
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
Toru Tamaki
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
taisei2219
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Yuma Ohgami
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
iPride Co., Ltd.
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
Hiroki Ichikura
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Toru Tamaki
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
Toru Tamaki
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Ryo Sasaki
Dernier
(10)
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Androidで使えるJSON-Javaライブラリ
1.
Androidで使える JSON-Javaライブラリ JSON日の金曜日 1週目
2012/7/13(金)
2.
aboutme.json {
"name":"Yukiya Nakagawa", "nick_name":"なかざん", "screen_name":"Nkzn", "org":[ { "name":"ウォーターセル株式会社", "activity":"農業支援システム「アグリノート」" }, { "name":"日本Androidの会 新潟支部", "activity":"さいきんなにもやってない(´・ω・`)" } ] }
3.
スマホと鯖とJavaScriptの美味しい関係 なぜJSON×Androidなのか?
4.
鯖と端末の関係
5.
鯖と端末の関係 鯖だと思いねえ
データのやり取り
6.
「データ」 • HTTP通信でやり取りできるものの例 –
XML • Java系フレームワークの伝統と信頼 • Android向けの標準ライブラリでも豊富にサポート • Content-Type: application/xml – 平文 • 構造化とかどうでもいいとき • Content-Type: text/plain – JSON • マルチプラットフォーム展開の強い味方 • Content-Type: application/json
7.
マルチプラットフォーム展開
鯖だと思いねえ Webアプリ スマートフォン タブレット
8.
Webアプリといえば JavaScript
9.
マルチプラットフォーム展開
鯖だと思いねえ XML JSON クライアントでの 受け取りが楽! Webアプリ スマートフォン タブレット
10.
マルチプラットフォーム展開
鯖だと思いねえ XML JSON 2種類用意するの、 無駄じゃね? Webアプリ スマートフォン タブレット
11.
マルチプラットフォーム展開
鯖だと思いねえ JSON ゚i ・。i*i゜・。oi ・。i 。*。|o___・|゚o| JSON XML ・+o。゚/_ノヽ_\゚*・ JSON ゚i・。/(≡) (≡)\゚+ 。|゚//// (_人_) //∧゚ *| |┬| | ・i。\_ `ーU _/。 ゚*/ \| ノ \・o ゚i||  ̄ ̄ ⌒ヽ o|| / | ・i ソヽ_人 /人 | ゚。/ /  ̄ ̄ / | | Webアプリ / / || |\∧MMM∧/| <J S O N 状 態!> |/VWWWV\| スマートフォン タブレット
12.
Parse & Serialize JSON-Javaライブラリの役割
13.
JSON-Javaライブラリの役割 • 最低限:JSONデータが読めること • JSON文字列とJavaオブジェクト(POJO)
の相互変換 – Java → JSON:シリアライズ – JSON → Java:パース(デシリアライズ)
14.
POJOとの相互変換 AboutMe.java
aboutme.json { public class AboutMe { "name":"Yukiya Nakagawa”, String name; "nick_name":"なかざん", String nickName; "screen_name":"Nkzn", String screenName; パース "orgs":[ List<Org> orgs; { // getter-setter "name":"ウォーターセル株式会社", "activity":"農業支援システム「アグリノート」” class Org { }, String name; シリアライズ { String activity; "name":"日本Androidの会 新潟支部", // getter-setter "activity":"さいきんなにもやってない(´・ω・`)” } } } ] }
15.
POJO • Plain Old
Java Object – 「昔ながらの素朴なJavaオブジェクト」 – POJO自体には命名規則はない – POJOの一種であるJavaBeansの規約/命名規 則が流用される • publicな引数なしコンストラクタ • いくつかのインスタンス変数 • 上記に対応するgetter/setter – JavaBeansよりはゆるふわ
16.
できるだけ頑張らない方向の Androidで使えるJSONライブラリ
17.
Androidで使えるJSONライブラリ • 選定基準 –
依存ライブラリがほぼないこと • 外部jarが増えるとMaven使いたくなる • MavenとAndroidは相性悪め – 使い方が分かりやすいこと • 独断と偏見 – Androidに存在しないJavaAPIを使っていない こと • JavaVMじゃなくてDalvikVMだからね! • 基本的に気にしなくても問題ない
18.
Androidで使えるJSONライブラリ • org.json
– Android SDK標準搭載のJSONパーサー • JSONIC (ver 1.2.11) – http://jsonic.sourceforge.jp/ – JSP連携とか強いらしい • google-gson (ver 2.2.2) – http://code.google.com/p/google-gson/ – グーメン • JsonPullParser (ver 1.4.11) – https://github.com/vvakame/JsonPullParser – APTを利用する移植作 – 軽量
19.
AndroidSDKにも付いてる org.json
20.
パース
21.
パース
22.
パース
23.
シリアライズ
24.
感想 1.
めんどい 2. めんどい 3. POJO関係ねえ 4. めんどい
25.
いたれりつくせり JSONIC
26.
JSONIC • 特徴 –
POJO⇔JSON変換 – 対応している型の数がなんかすごい – JavaScriptに親和的な出力 • JSP内でJS用にJSONを出力する場合とか • エスケープかけてくれたり – XML→JSON変換 • (org.w3c.dom.Document/Elementを経由)
27.
パース
28.
シリアライズ
29.
感想 1. jar1個にパス通したら使えた便利 2. 基本的に1行でなんとかなる便 3.
JSONObjectとは一体なんだったのか
30.
信仰が貴方の力となる ―― グーメン google-gson
31.
google-gson • 特徴 –
POJO⇔JSON変換 – 字句解析機能も備えているため org.json.JSONObjectのような真似も可能 – 速さにムラがあるらしい(後述)
32.
パース
33.
シリアライズ
34.
感想 1. JSONIC触った後だと「シリアライズ時
の型くらい自分で分かれよ」と思わなく もない 2. jar1個にパス通すだけでいいのはやはり 楽
35.
すごいぞぼくらのJPP! JsonPullParser
作者@vvakame(ジェイソン仕様)
36.
特徴 • APT(Annotation Processing
Tool)を利用して いる – アノテーションに応じてクラスの自動生成とか出 来る – 詳しくはこのへん • http://www.slideshare.net/vvakame/apt-7568357 • 各POJOに応じたJSONパーサーを自動生成 • 軽量 – JSONIC 208KB – gson: 184KB – JPP: 45KB
37.
パース
38.
シリアライズ
39.
感想 1. いつもアグリノート内でお世話になってい
ます 2. 正直アノテーション付けるの面倒臭いとき ある – でもお陰で型安全になってる部分ある 3. 割と作るのが簡単なTokenConverterを実装 すればJavaの型に1対1対応できない値が 来ても大丈夫! – 文字列値が来るか配列が来るか分からないキー のための「String2ListConverter」作りました。
40.
ぶっちゃけた話 総括
41.
ぶっちゃけorg.jsonのやつ以外は
好みじゃね?
42.
使い分け • 1 Entry
per Day: Androidアプリで使える JSONライブラリ比較 – http://mstssk.blogspot.jp/2011/12/androidjson. html – ぶっちゃけ今回の発表はここの記事参考にし ただけです。 – 色んなパフォーマンス計測結果が出てます。 – 次ページで特徴に合わせた使い分けをば。
43.
それぞれの特徴 • JSONIC
– ゆるふわな使い勝手と引換にファイルも動作 も重い • google-gson – パースは超速いけどシリアライズは遅い • JsonPullParser – 専用クラスを生成した恩恵で安定のスピード
44.
それぞれの特徴からみた使い道 • JSONIC
– とにかくすぐ使いたい&そこまで速度は求め てないとき • google-gson – パースしかする予定がないとき • JsonPullParser – 本体を重くしたくない時
45.
Proguard Android特有の悩み
46.
セキュリティ問題 • Androidのリバースエンジニアリング手法
は既に確立している • そのままリリースするとJavaファイルま で丸見え • ソースコード難読化という足止めが必要 • 標準難読化ツール「Proguard」との相性 は重要となる
47.
Proguardとの相性 • JPP以外は基本的にアウト –
変数名とJSON内のキーの対応が重要 – 難読化すると変数名が変わってしまう • 逆にPOJOを難読化しなければ行ける – JPPはPOJO専用クラスを生成して、難読化 前に内部でキー名と変数の対応が出来上がっ ているため、難読化の影響を受けない 難読化に強いのはJPP!
48.
Stealth Marketing 結論
49.
みんなJPPつかおうぜ
って言えって言われました
Télécharger maintenant