SlideShare a Scribd company logo
1 of 68
とあるお祭りにて…
とあるお祭りにて…
Qiitaの結果を
表示する
アプリ作ろうぜ!!
とあるお祭りにて…
Androidユーザだし…
とあるお祭りにて…
Androidで開発したい…
とあるお祭りにて…
よっしゃ!Androidで作ったる!
モダンなAndroidアプリ開発
株式会社ベーシック
柿崎昭一
〜楽して開発しよう!〜
Androidとは?
Googleによって開発されたOS
AndroidStudio
・コード補完が優秀
・UIがわかりやすい(IntelliJ)
・動作がEclipseより軽快
・Googleが使えって言ってる
などなど…
Androidの基本
まずは抑えたいライフサイクル
Androidの基本
・Javaの構文
・レイアウト
・Intentの発行
・実機での動作検証
Androidの基本
ごめんなさい!割愛します!!
Androidの基本
何となくわかったし開発するか〜!
問題発生
どうやってAPI叩くんだろう?
どうやってAPI叩くんだろう?
Volley使えば余裕w
Volley使えば?
Volley概要
・Androidの通信処理フレームワーク
・簡単に、そして、早く実装がコンセプト
・ネットワーク通信は非同期で処理
・カスタムリクエストが簡単
・Googleが開発
Volleyの使い方
実際のソースコード
Volleyの使い方
リクエストの種類
リクエスト名 説明
ClearCacheRequest キャッシュのクリア要求
ImageRequest Bitmap用
JsonRequest JSON処理用の抽象クラス
JsonArrayRequest JSON Array
JsonObjectRequest JSONオブジェクト用
StringRequest 文字列用
Volleyの使い方
実際のソースコード
Volleyの使い方
引数 説明
Method Method.POST、Method.GETを指定
url リクエスト先のURL文字列
jsonRequest リクエスト先へ一緒に引き渡すJSON。
なければnullを指定
listener レスポンスを受け取るリスナーを登録
errorListener 処理の失敗を受け取るリスナーを登録。処理を省略する場合は
nullを指定
JsonRequestの引数一覧
問題発生
取得した値をどうやって通知するんだろう?
問題発生
Observerパターン
Delegateパターン
を使えば簡単に
コールバックを取れるよ
なるほどわからん
問題発生
問題発生
問題発生
①EventBusのインスタンスを作成
③ Activity or Fragmentでコールバックをキャッチ
② EventBusのインスタンスで取得した値を整形
めっちゃ簡単じゃん!
問題発生
・アプリケーション内の任意のインスタンスに任意の通知を送れる
・データも詰め込めて、スレッドも飛び越える
・通知を受け取る側が死んでいてもアプリは落ちない
・コールバックが基本一対一に対し、一体多の通知も可能
EventBus概要
EventBus概要
EventBus概要
① EventBusのインスタンスを作成
③ Activity or Fragmentでコールバックをキャッチ
② EventBusのインスタンスで取得した値を整形
EventBusのインスタンスを作成
EventBusのインスタンスで取得した値を整形
Activity or Fragmentでコールバックをキャッチ
Activity or Fragmentでコールバックをキャッチ
よっしゃこれでいけるで!!
問題発生
Activityがおデブになっちゃった…
問題発生
Fragment概要
・一つのActivityに複数貼り付け可能なUI
・UI自身がロジックを保持
・Android3.0系から使用可能
Fragmentがなかった時代…
・タブがあるアプリはタブごとにActivityを
生成していた…(メモリバカ食い)
・ロジックを含むViewの使い回しができな
かった…
・画面回転するとActivityが死ぬ…
そんな暗黒時代を経てFragmentの誕生
Fragmentのメリット
・Fragment自身がロジックを持っている
ので再利用が楽になる
・タブレット、スマートフォンの同時開発
が劇的に楽になる
・Fragmentを保存出来るので
画面回転で死なない
(ようにできる)
Fragmentのメリット
Activityがおデブにならない
Fragmentのイメージ
Fragmentのライフサイクル
Fragment実装の3ステップ
① Fragmentの作成(ロジック)
② xmlファイルの作成(レイアウト)
③ ActivityのレイアウトにFragmentを追加
Fragmentの作成(ロジック)
xmlファイルの作成(レイアウト)
Fragment
ActivityのレイアウトにFragmentを追加
Activity
Activityがめっちゃスリムに!
完成
おまけ
ボタンの作成を簡単にする
ButterKnife
Text text =
(Text)findViewById(R.id.text1)
⇩
@InjectView(R.id.text_view)
TextView textView;
ButterKnifeのメリット
ButterKnife使い方
ButterKnife使い方
おまけ②
お気に入り機能とか付けたいな…
SQLiteを使ってお気に入り機能を実装しよう!
Railsみたいな感じでDB操作したいな…
(楽したい…)
ありました
ActiveAndroid
ActiveAndroid概要
・SQLiteのO/Rマッパー
・ActiveRecordモデルがベース
・DBへのアクセスが楽になる
・設定も非常に簡単
ActiveAndroid設定
ActiveAndroid
insert文
select文
ActiveAndroid
まとめ
車輪の再発明をしない。
先人の知恵をどんどん活用して
楽して開発をする。
有難う御座いました
(次回はFragment特化の勉強したいです)

More Related Content

What's hot

エンジニアリングするデザイナーが領域を超えて見えたこと
エンジニアリングするデザイナーが領域を超えて見えたことエンジニアリングするデザイナーが領域を超えて見えたこと
エンジニアリングするデザイナーが領域を超えて見えたことMayumi Narisawa
 
デザイナーとエンジニアが話す、iOSアプリケーション開発
デザイナーとエンジニアが話す、iOSアプリケーション開発デザイナーとエンジニアが話す、iOSアプリケーション開発
デザイナーとエンジニアが話す、iOSアプリケーション開発Kenta Ohsugi
 
テストがあればなんとかなる〜効率化までの道程〜
テストがあればなんとかなる〜効率化までの道程〜テストがあればなんとかなる〜効率化までの道程〜
テストがあればなんとかなる〜効率化までの道程〜Takao Sumitomo
 
Cordovaで作る!センサと超小型BLEモジュールを用いた簡単IoTアプリ開発
Cordovaで作る!センサと超小型BLEモジュールを用いた簡単IoTアプリ開発Cordovaで作る!センサと超小型BLEモジュールを用いた簡単IoTアプリ開発
Cordovaで作る!センサと超小型BLEモジュールを用いた簡単IoTアプリ開発Hikaru Ito
 
勘違いだらけのAndroid UIデザイン
勘違いだらけのAndroid UIデザイン勘違いだらけのAndroid UIデザイン
勘違いだらけのAndroid UIデザインNobuya Sato
 
Androidをやっただけで iOSアプリもできればいいのに 〜MOEという選択〜
Androidをやっただけで iOSアプリもできればいいのに 〜MOEという選択〜Androidをやっただけで iOSアプリもできればいいのに 〜MOEという選択〜
Androidをやっただけで iOSアプリもできればいいのに 〜MOEという選択〜Saiki Iijima
 
用途に合わせたアニメーションの実装方法
用途に合わせたアニメーションの実装方法用途に合わせたアニメーションの実装方法
用途に合わせたアニメーションの実装方法Takao Sumitomo
 
HTML5ハイブリッドアプリ開発のベストプラクティス
HTML5ハイブリッドアプリ開発のベストプラクティスHTML5ハイブリッドアプリ開発のベストプラクティス
HTML5ハイブリッドアプリ開発のベストプラクティスアシアル株式会社
 
2015年度研究室プレ卒研用Android講座1
2015年度研究室プレ卒研用Android講座12015年度研究室プレ卒研用Android講座1
2015年度研究室プレ卒研用Android講座1Hokuto Tateyama
 
Google I/O 2017 現地レポート VR、PWA風味をJAG運営委員が語る ~IoTやAIも隠し味でVRとAIの報告と I/Oに参加して思ったコ...
Google I/O 2017 現地レポート VR、PWA風味をJAG運営委員が語る ~IoTやAIも隠し味でVRとAIの報告と I/Oに参加して思ったコ...Google I/O 2017 現地レポート VR、PWA風味をJAG運営委員が語る ~IoTやAIも隠し味でVRとAIの報告と I/Oに参加して思ったコ...
Google I/O 2017 現地レポート VR、PWA風味をJAG運営委員が語る ~IoTやAIも隠し味でVRとAIの報告と I/Oに参加して思ったコ...嶋 是一 (Yoshikazu SHIMA)
 
コンポーネント単位で考えるWeb制作
コンポーネント単位で考えるWeb制作コンポーネント単位で考えるWeb制作
コンポーネント単位で考えるWeb制作祐磨 堀
 
iOS側のUIの特徴と見比べるAndroid側でのUI実装のヒント
iOS側のUIの特徴と見比べるAndroid側でのUI実装のヒントiOS側のUIの特徴と見比べるAndroid側でのUI実装のヒント
iOS側のUIの特徴と見比べるAndroid側でのUI実装のヒントFumiya Sakai
 
minneにおけるテスト〜リリース〜リリース後にやっている事の紹介
minneにおけるテスト〜リリース〜リリース後にやっている事の紹介minneにおけるテスト〜リリース〜リリース後にやっている事の紹介
minneにおけるテスト〜リリース〜リリース後にやっている事の紹介Masataka Kono
 
UXデザインをゆるく学ぶ意味
UXデザインをゆるく学ぶ意味UXデザインをゆるく学ぶ意味
UXデザインをゆるく学ぶ意味Tatsuya_Yokoyama
 
デブサミ2013 【15-B-2】iOS/Android向け開発をビジュアルに!
デブサミ2013 【15-B-2】iOS/Android向け開発をビジュアルに!デブサミ2013 【15-B-2】iOS/Android向け開発をビジュアルに!
デブサミ2013 【15-B-2】iOS/Android向け開発をビジュアルに!hmimura_embarcadero
 
ユーザーの心に刺ささるためには - UX実践編 -
ユーザーの心に刺ささるためには - UX実践編 -ユーザーの心に刺ささるためには - UX実践編 -
ユーザーの心に刺ささるためには - UX実践編 -Midori Hirose
 
MY JOB WEND TO VIETNUM? DevSumi ver.
MY JOB WEND TO VIETNUM? DevSumi ver.MY JOB WEND TO VIETNUM? DevSumi ver.
MY JOB WEND TO VIETNUM? DevSumi ver.Ryo Amano
 
Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催
Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催
Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催嶋 是一 (Yoshikazu SHIMA)
 
Developers.IO 2016 F-1 セッション資料
Developers.IO 2016 F-1 セッション資料Developers.IO 2016 F-1 セッション資料
Developers.IO 2016 F-1 セッション資料Shinichi Hirauchi
 

What's hot (20)

エンジニアリングするデザイナーが領域を超えて見えたこと
エンジニアリングするデザイナーが領域を超えて見えたことエンジニアリングするデザイナーが領域を超えて見えたこと
エンジニアリングするデザイナーが領域を超えて見えたこと
 
デザイナーとエンジニアが話す、iOSアプリケーション開発
デザイナーとエンジニアが話す、iOSアプリケーション開発デザイナーとエンジニアが話す、iOSアプリケーション開発
デザイナーとエンジニアが話す、iOSアプリケーション開発
 
テストがあればなんとかなる〜効率化までの道程〜
テストがあればなんとかなる〜効率化までの道程〜テストがあればなんとかなる〜効率化までの道程〜
テストがあればなんとかなる〜効率化までの道程〜
 
Cordovaで作る!センサと超小型BLEモジュールを用いた簡単IoTアプリ開発
Cordovaで作る!センサと超小型BLEモジュールを用いた簡単IoTアプリ開発Cordovaで作る!センサと超小型BLEモジュールを用いた簡単IoTアプリ開発
Cordovaで作る!センサと超小型BLEモジュールを用いた簡単IoTアプリ開発
 
勘違いだらけのAndroid UIデザイン
勘違いだらけのAndroid UIデザイン勘違いだらけのAndroid UIデザイン
勘違いだらけのAndroid UIデザイン
 
XAML のこれまでとこれから、今「やる」べき意義
XAML のこれまでとこれから、今「やる」べき意義XAML のこれまでとこれから、今「やる」べき意義
XAML のこれまでとこれから、今「やる」べき意義
 
Androidをやっただけで iOSアプリもできればいいのに 〜MOEという選択〜
Androidをやっただけで iOSアプリもできればいいのに 〜MOEという選択〜Androidをやっただけで iOSアプリもできればいいのに 〜MOEという選択〜
Androidをやっただけで iOSアプリもできればいいのに 〜MOEという選択〜
 
用途に合わせたアニメーションの実装方法
用途に合わせたアニメーションの実装方法用途に合わせたアニメーションの実装方法
用途に合わせたアニメーションの実装方法
 
HTML5ハイブリッドアプリ開発のベストプラクティス
HTML5ハイブリッドアプリ開発のベストプラクティスHTML5ハイブリッドアプリ開発のベストプラクティス
HTML5ハイブリッドアプリ開発のベストプラクティス
 
2015年度研究室プレ卒研用Android講座1
2015年度研究室プレ卒研用Android講座12015年度研究室プレ卒研用Android講座1
2015年度研究室プレ卒研用Android講座1
 
Google I/O 2017 現地レポート VR、PWA風味をJAG運営委員が語る ~IoTやAIも隠し味でVRとAIの報告と I/Oに参加して思ったコ...
Google I/O 2017 現地レポート VR、PWA風味をJAG運営委員が語る ~IoTやAIも隠し味でVRとAIの報告と I/Oに参加して思ったコ...Google I/O 2017 現地レポート VR、PWA風味をJAG運営委員が語る ~IoTやAIも隠し味でVRとAIの報告と I/Oに参加して思ったコ...
Google I/O 2017 現地レポート VR、PWA風味をJAG運営委員が語る ~IoTやAIも隠し味でVRとAIの報告と I/Oに参加して思ったコ...
 
コンポーネント単位で考えるWeb制作
コンポーネント単位で考えるWeb制作コンポーネント単位で考えるWeb制作
コンポーネント単位で考えるWeb制作
 
iOS側のUIの特徴と見比べるAndroid側でのUI実装のヒント
iOS側のUIの特徴と見比べるAndroid側でのUI実装のヒントiOS側のUIの特徴と見比べるAndroid側でのUI実装のヒント
iOS側のUIの特徴と見比べるAndroid側でのUI実装のヒント
 
minneにおけるテスト〜リリース〜リリース後にやっている事の紹介
minneにおけるテスト〜リリース〜リリース後にやっている事の紹介minneにおけるテスト〜リリース〜リリース後にやっている事の紹介
minneにおけるテスト〜リリース〜リリース後にやっている事の紹介
 
UXデザインをゆるく学ぶ意味
UXデザインをゆるく学ぶ意味UXデザインをゆるく学ぶ意味
UXデザインをゆるく学ぶ意味
 
デブサミ2013 【15-B-2】iOS/Android向け開発をビジュアルに!
デブサミ2013 【15-B-2】iOS/Android向け開発をビジュアルに!デブサミ2013 【15-B-2】iOS/Android向け開発をビジュアルに!
デブサミ2013 【15-B-2】iOS/Android向け開発をビジュアルに!
 
ユーザーの心に刺ささるためには - UX実践編 -
ユーザーの心に刺ささるためには - UX実践編 -ユーザーの心に刺ささるためには - UX実践編 -
ユーザーの心に刺ささるためには - UX実践編 -
 
MY JOB WEND TO VIETNUM? DevSumi ver.
MY JOB WEND TO VIETNUM? DevSumi ver.MY JOB WEND TO VIETNUM? DevSumi ver.
MY JOB WEND TO VIETNUM? DevSumi ver.
 
Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催
Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催
Kotlin/Golang Developer seminor. 「Androidが生み出す開発言語の多様性」 リックテレコム主催
 
Developers.IO 2016 F-1 セッション資料
Developers.IO 2016 F-1 セッション資料Developers.IO 2016 F-1 セッション資料
Developers.IO 2016 F-1 セッション資料
 

Viewers also liked

KVI白熱教室Vol.4「刺さるプレゼン」20140521
KVI白熱教室Vol.4「刺さるプレゼン」20140521 KVI白熱教室Vol.4「刺さるプレゼン」20140521
KVI白熱教室Vol.4「刺さるプレゼン」20140521 Ishii Kenichi
 
小学生でもできるAndroidアプリ開発
小学生でもできるAndroidアプリ開発小学生でもできるAndroidアプリ開発
小学生でもできるAndroidアプリ開発shunXnegi
 
Go MobileでAndroidアプリ開発
Go MobileでAndroidアプリ開発Go MobileでAndroidアプリ開発
Go MobileでAndroidアプリ開発Takuya Ueda
 
スマホ開発を始める前に知っておきたいこと色々
スマホ開発を始める前に知っておきたいこと色々スマホ開発を始める前に知っておきたいこと色々
スマホ開発を始める前に知っておきたいこと色々Takuto Nishioka
 
リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4
リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4
リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4Yusuke Yamamoto
 
Programming24 第2回androidアプリ勉強会
Programming24 第2回androidアプリ勉強会Programming24 第2回androidアプリ勉強会
Programming24 第2回androidアプリ勉強会codeal
 
Webエンジニアのためのandroidアプリ開発
Webエンジニアのためのandroidアプリ開発Webエンジニアのためのandroidアプリ開発
Webエンジニアのためのandroidアプリ開発Soudai Sone
 
Androidアプリのマネタイズ方法|metaps pte. ltd.
Androidアプリのマネタイズ方法|metaps pte. ltd.Androidアプリのマネタイズ方法|metaps pte. ltd.
Androidアプリのマネタイズ方法|metaps pte. ltd.Katsuaki Sato
 
初心者〜中級者 Android StudioによるAndroid勉強会資料(スライド)
初心者〜中級者 Android StudioによるAndroid勉強会資料(スライド)初心者〜中級者 Android StudioによるAndroid勉強会資料(スライド)
初心者〜中級者 Android StudioによるAndroid勉強会資料(スライド)Masafumi Terazono
 
職業プログラマに必要な意識について
職業プログラマに必要な意識について職業プログラマに必要な意識について
職業プログラマに必要な意識についてakimichi Yamada
 
Android Studioの魅力
Android Studioの魅力Android Studioの魅力
Android Studioの魅力Keiji Ariyama
 
ゴールデンウィークに最適な学習コンテンツ
ゴールデンウィークに最適な学習コンテンツゴールデンウィークに最適な学習コンテンツ
ゴールデンウィークに最適な学習コンテンツYusuke Ando
 
アプリ開発・端末毎の解像度の違いを吸収する方法 Android Bazaar and Conference 2011 Summer
アプリ開発・端末毎の解像度の違いを吸収する方法 Android Bazaar and Conference 2011 Summer アプリ開発・端末毎の解像度の違いを吸収する方法 Android Bazaar and Conference 2011 Summer
アプリ開発・端末毎の解像度の違いを吸収する方法 Android Bazaar and Conference 2011 Summer Kunimasa Noda
 
カスタムトランジションやアニメーションを活用した「写真を生かすUI」のサンプル
カスタムトランジションやアニメーションを活用した「写真を生かすUI」のサンプルカスタムトランジションやアニメーションを活用した「写真を生かすUI」のサンプル
カスタムトランジションやアニメーションを活用した「写真を生かすUI」のサンプルFumiya Sakai
 
DroidKaigi2016 windows環境での効率的なアプリ開発手法
DroidKaigi2016 windows環境での効率的なアプリ開発手法DroidKaigi2016 windows環境での効率的なアプリ開発手法
DroidKaigi2016 windows環境での効率的なアプリ開発手法tkawashita
 
Firebaseで驚くほど簡単に作れるリアルタイムイベントドリブンアプリ
Firebaseで驚くほど簡単に作れるリアルタイムイベントドリブンアプリFirebaseで驚くほど簡単に作れるリアルタイムイベントドリブンアプリ
Firebaseで驚くほど簡単に作れるリアルタイムイベントドリブンアプリFumihiko Shiroyama
 
Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)
Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)
Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)Kengo Suzuki
 
Master of Canvas
Master of CanvasMaster of Canvas
Master of CanvasMima Yuki
 
Model View Presenter for Android
Model View Presenter for AndroidModel View Presenter for Android
Model View Presenter for Androidshinnosuke kugimiya
 

Viewers also liked (20)

KVI白熱教室Vol.4「刺さるプレゼン」20140521
KVI白熱教室Vol.4「刺さるプレゼン」20140521 KVI白熱教室Vol.4「刺さるプレゼン」20140521
KVI白熱教室Vol.4「刺さるプレゼン」20140521
 
小学生でもできるAndroidアプリ開発
小学生でもできるAndroidアプリ開発小学生でもできるAndroidアプリ開発
小学生でもできるAndroidアプリ開発
 
Go MobileでAndroidアプリ開発
Go MobileでAndroidアプリ開発Go MobileでAndroidアプリ開発
Go MobileでAndroidアプリ開発
 
スマホ開発を始める前に知っておきたいこと色々
スマホ開発を始める前に知っておきたいこと色々スマホ開発を始める前に知っておきたいこと色々
スマホ開発を始める前に知っておきたいこと色々
 
リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4
リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4
リーンスタートアップ x Java #jjug #jjug_ccc #ccc_h4
 
Programming24 第2回androidアプリ勉強会
Programming24 第2回androidアプリ勉強会Programming24 第2回androidアプリ勉強会
Programming24 第2回androidアプリ勉強会
 
Webエンジニアのためのandroidアプリ開発
Webエンジニアのためのandroidアプリ開発Webエンジニアのためのandroidアプリ開発
Webエンジニアのためのandroidアプリ開発
 
Androidアプリのマネタイズ方法|metaps pte. ltd.
Androidアプリのマネタイズ方法|metaps pte. ltd.Androidアプリのマネタイズ方法|metaps pte. ltd.
Androidアプリのマネタイズ方法|metaps pte. ltd.
 
初心者〜中級者 Android StudioによるAndroid勉強会資料(スライド)
初心者〜中級者 Android StudioによるAndroid勉強会資料(スライド)初心者〜中級者 Android StudioによるAndroid勉強会資料(スライド)
初心者〜中級者 Android StudioによるAndroid勉強会資料(スライド)
 
職業プログラマに必要な意識について
職業プログラマに必要な意識について職業プログラマに必要な意識について
職業プログラマに必要な意識について
 
Android Studioの魅力
Android Studioの魅力Android Studioの魅力
Android Studioの魅力
 
ゴールデンウィークに最適な学習コンテンツ
ゴールデンウィークに最適な学習コンテンツゴールデンウィークに最適な学習コンテンツ
ゴールデンウィークに最適な学習コンテンツ
 
アプリ開発・端末毎の解像度の違いを吸収する方法 Android Bazaar and Conference 2011 Summer
アプリ開発・端末毎の解像度の違いを吸収する方法 Android Bazaar and Conference 2011 Summer アプリ開発・端末毎の解像度の違いを吸収する方法 Android Bazaar and Conference 2011 Summer
アプリ開発・端末毎の解像度の違いを吸収する方法 Android Bazaar and Conference 2011 Summer
 
カスタムトランジションやアニメーションを活用した「写真を生かすUI」のサンプル
カスタムトランジションやアニメーションを活用した「写真を生かすUI」のサンプルカスタムトランジションやアニメーションを活用した「写真を生かすUI」のサンプル
カスタムトランジションやアニメーションを活用した「写真を生かすUI」のサンプル
 
shinobu.apk #3
shinobu.apk #3shinobu.apk #3
shinobu.apk #3
 
DroidKaigi2016 windows環境での効率的なアプリ開発手法
DroidKaigi2016 windows環境での効率的なアプリ開発手法DroidKaigi2016 windows環境での効率的なアプリ開発手法
DroidKaigi2016 windows環境での効率的なアプリ開発手法
 
Firebaseで驚くほど簡単に作れるリアルタイムイベントドリブンアプリ
Firebaseで驚くほど簡単に作れるリアルタイムイベントドリブンアプリFirebaseで驚くほど簡単に作れるリアルタイムイベントドリブンアプリ
Firebaseで驚くほど簡単に作れるリアルタイムイベントドリブンアプリ
 
Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)
Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)
Androidのセキュア開発について考えてみた(明日、敗訴しないためのセキュアコーディング.ver2)
 
Master of Canvas
Master of CanvasMaster of Canvas
Master of Canvas
 
Model View Presenter for Android
Model View Presenter for AndroidModel View Presenter for Android
Model View Presenter for Android
 

Similar to モダンなAndroidアプリ開発勉強会

20161125 Unity-Android連携の発表資料
20161125 Unity-Android連携の発表資料20161125 Unity-Android連携の発表資料
20161125 Unity-Android連携の発表資料WheetTweet
 
あの手この手で楽して覚えるAndroid開発Tips
あの手この手で楽して覚えるAndroid開発Tipsあの手この手で楽して覚えるAndroid開発Tips
あの手この手で楽して覚えるAndroid開発TipsYoshihiro Wada
 
HTML5でハイブリットなアプリ開発をアレしてみた件
HTML5でハイブリットなアプリ開発をアレしてみた件HTML5でハイブリットなアプリ開発をアレしてみた件
HTML5でハイブリットなアプリ開発をアレしてみた件Tatsuo Kurita
 
ソースが書けなくてもAndroidアプリをクリック(GUI)開発したい
ソースが書けなくてもAndroidアプリをクリック(GUI)開発したいソースが書けなくてもAndroidアプリをクリック(GUI)開発したい
ソースが書けなくてもAndroidアプリをクリック(GUI)開発したいYukio Saito
 
12.04.22 勉強会イントロ
12.04.22 勉強会イントロ12.04.22 勉強会イントロ
12.04.22 勉強会イントロKei Nakazawa
 
20170804 Builderscon Androidアプリ開発アンチパターン
20170804 Builderscon Androidアプリ開発アンチパターン20170804 Builderscon Androidアプリ開発アンチパターン
20170804 Builderscon Androidアプリ開発アンチパターンmokelab
 
Androidアプリの魅力的なインターフェース〜本当にiOSアプリのデザインを流用するだけでいいの?〜
Androidアプリの魅力的なインターフェース〜本当にiOSアプリのデザインを流用するだけでいいの?〜Androidアプリの魅力的なインターフェース〜本当にiOSアプリのデザインを流用するだけでいいの?〜
Androidアプリの魅力的なインターフェース〜本当にiOSアプリのデザインを流用するだけでいいの?〜Chihiro Tomita
 
Androidとは。ちょっと変った視点から
Androidとは。ちょっと変った視点からAndroidとは。ちょっと変った視点から
Androidとは。ちょっと変った視点からdemuyan
 
Unity に於ける Android ビルド自動化のおはなし - 20141215 第27回 Unity 勉強会
Unity に於ける Android ビルド自動化のおはなし - 20141215 第27回 Unity 勉強会Unity に於ける Android ビルド自動化のおはなし - 20141215 第27回 Unity 勉強会
Unity に於ける Android ビルド自動化のおはなし - 20141215 第27回 Unity 勉強会Mori Tetsuya
 
Abc2012f adamrocker
Abc2012f adamrockerAbc2012f adamrocker
Abc2012f adamrockeradamrocker
 
iアプリつくろうぜ!~20101020 DevLOVE Android勉強会~
iアプリつくろうぜ!~20101020 DevLOVE Android勉強会~iアプリつくろうぜ!~20101020 DevLOVE Android勉強会~
iアプリつくろうぜ!~20101020 DevLOVE Android勉強会~一法 山崎
 
CLT-014_ゲーム開発だけじゃない! Unity で作る UWP アプリ
CLT-014_ゲーム開発だけじゃない! Unity で作る UWP アプリCLT-014_ゲーム開発だけじゃない! Unity で作る UWP アプリ
CLT-014_ゲーム開発だけじゃない! Unity で作る UWP アプリdecode2016
 
20120324 ABC2012S Android開発者とデザイナーの効率的な連携に利く話
20120324 ABC2012S Android開発者とデザイナーの効率的な連携に利く話20120324 ABC2012S Android開発者とデザイナーの効率的な連携に利く話
20120324 ABC2012S Android開発者とデザイナーの効率的な連携に利く話youten (ようてん)
 
福井スマートフォンハッカソン Titanium Mobileの紹介
福井スマートフォンハッカソン Titanium Mobileの紹介福井スマートフォンハッカソン Titanium Mobileの紹介
福井スマートフォンハッカソン Titanium Mobileの紹介Mori Shingo
 
Android & Nui & Physical Computing
Android & Nui & Physical ComputingAndroid & Nui & Physical Computing
Android & Nui & Physical ComputingTakahiro KUREBAYASHI
 
Weekend Androidのススメ
Weekend AndroidのススメWeekend Androidのススメ
Weekend AndroidのススメSuzuki Junko
 
Google Glassでできること XE11版 最新開発情報 Mirror API & GDK
Google Glassでできること XE11版 最新開発情報 Mirror API & GDKGoogle Glassでできること XE11版 最新開発情報 Mirror API & GDK
Google Glassでできること XE11版 最新開発情報 Mirror API & GDKMasahiro Wakame
 

Similar to モダンなAndroidアプリ開発勉強会 (20)

20161125 Unity-Android連携の発表資料
20161125 Unity-Android連携の発表資料20161125 Unity-Android連携の発表資料
20161125 Unity-Android連携の発表資料
 
あの手この手で楽して覚えるAndroid開発Tips
あの手この手で楽して覚えるAndroid開発Tipsあの手この手で楽して覚えるAndroid開発Tips
あの手この手で楽して覚えるAndroid開発Tips
 
Google Glass XE17版
Google Glass XE17版Google Glass XE17版
Google Glass XE17版
 
HTML5でハイブリットなアプリ開発をアレしてみた件
HTML5でハイブリットなアプリ開発をアレしてみた件HTML5でハイブリットなアプリ開発をアレしてみた件
HTML5でハイブリットなアプリ開発をアレしてみた件
 
ソースが書けなくてもAndroidアプリをクリック(GUI)開発したい
ソースが書けなくてもAndroidアプリをクリック(GUI)開発したいソースが書けなくてもAndroidアプリをクリック(GUI)開発したい
ソースが書けなくてもAndroidアプリをクリック(GUI)開発したい
 
12.04.22 勉強会イントロ
12.04.22 勉強会イントロ12.04.22 勉強会イントロ
12.04.22 勉強会イントロ
 
20170804 Builderscon Androidアプリ開発アンチパターン
20170804 Builderscon Androidアプリ開発アンチパターン20170804 Builderscon Androidアプリ開発アンチパターン
20170804 Builderscon Androidアプリ開発アンチパターン
 
Androidアプリの魅力的なインターフェース〜本当にiOSアプリのデザインを流用するだけでいいの?〜
Androidアプリの魅力的なインターフェース〜本当にiOSアプリのデザインを流用するだけでいいの?〜Androidアプリの魅力的なインターフェース〜本当にiOSアプリのデザインを流用するだけでいいの?〜
Androidアプリの魅力的なインターフェース〜本当にiOSアプリのデザインを流用するだけでいいの?〜
 
Androidとは。ちょっと変った視点から
Androidとは。ちょっと変った視点からAndroidとは。ちょっと変った視点から
Androidとは。ちょっと変った視点から
 
Unity に於ける Android ビルド自動化のおはなし - 20141215 第27回 Unity 勉強会
Unity に於ける Android ビルド自動化のおはなし - 20141215 第27回 Unity 勉強会Unity に於ける Android ビルド自動化のおはなし - 20141215 第27回 Unity 勉強会
Unity に於ける Android ビルド自動化のおはなし - 20141215 第27回 Unity 勉強会
 
Abc2012f adamrocker
Abc2012f adamrockerAbc2012f adamrocker
Abc2012f adamrocker
 
iアプリつくろうぜ!~20101020 DevLOVE Android勉強会~
iアプリつくろうぜ!~20101020 DevLOVE Android勉強会~iアプリつくろうぜ!~20101020 DevLOVE Android勉強会~
iアプリつくろうぜ!~20101020 DevLOVE Android勉強会~
 
CLT-014_ゲーム開発だけじゃない! Unity で作る UWP アプリ
CLT-014_ゲーム開発だけじゃない! Unity で作る UWP アプリCLT-014_ゲーム開発だけじゃない! Unity で作る UWP アプリ
CLT-014_ゲーム開発だけじゃない! Unity で作る UWP アプリ
 
20120324 ABC2012S Android開発者とデザイナーの効率的な連携に利く話
20120324 ABC2012S Android開発者とデザイナーの効率的な連携に利く話20120324 ABC2012S Android開発者とデザイナーの効率的な連携に利く話
20120324 ABC2012S Android開発者とデザイナーの効率的な連携に利く話
 
福井スマートフォンハッカソン Titanium Mobileの紹介
福井スマートフォンハッカソン Titanium Mobileの紹介福井スマートフォンハッカソン Titanium Mobileの紹介
福井スマートフォンハッカソン Titanium Mobileの紹介
 
Androidの開発概要
Androidの開発概要Androidの開発概要
Androidの開発概要
 
Logcatの話
Logcatの話Logcatの話
Logcatの話
 
Android & Nui & Physical Computing
Android & Nui & Physical ComputingAndroid & Nui & Physical Computing
Android & Nui & Physical Computing
 
Weekend Androidのススメ
Weekend AndroidのススメWeekend Androidのススメ
Weekend Androidのススメ
 
Google Glassでできること XE11版 最新開発情報 Mirror API & GDK
Google Glassでできること XE11版 最新開発情報 Mirror API & GDKGoogle Glassでできること XE11版 最新開発情報 Mirror API & GDK
Google Glassでできること XE11版 最新開発情報 Mirror API & GDK
 

Recently uploaded

【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 

Recently uploaded (10)

【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介: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.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 

モダンなAndroidアプリ開発勉強会

Editor's Notes

  1. Googleによってスマートフォンやタブレットなどの携帯情報端末を主なターゲットとして開発されたプラットフォームである。 カスタマイズ版Linuxカーネル、ライブラリやフレームワークその他のミドルウェア、ART仮想マシン、主要なアプリケーションからなるソフトウェアスタック(集合)パッケージで構成されている。 2015年現在、スマートフォン用のOSとしては、世界シェア1位である。
  2. あとは インポートが楽だったり グレードルが優秀でプラグインを入れるのが楽だったり あとAndroidの場合 xml ファイルを使ってレイアウトを組めるのですが、リアルタイムプレビューが出来るのでいちいちビルドしなくても良いのはとても嬉しいです。
  3. Androidの基本中の基本です。Iosでもあるともいますが、Androidの場合まず、Activityクラスが呼ばれます。 そのAcrivityクラスのなか呼ばれる順番があるのですが、それをライフサイクルと呼びます。
  4. ベーシック文庫にある本で今のは全て書いてあります!
  5. VolleyはAndroidの通信処理フレームワークです。 https://android.googlesource.com/platform/frameworks/volley/ Androidでの通信処理は、通信処理のキューイング、非同期でのデータ取得からのUIスレッドへの連携、キャッシュ(メモリーキャッシュ・ローカルキャッシュ)の扱い(特に画像を扱う場合)通信失敗時のリトライ機構、といった様々な課題を効率的に解決する必要があります。 その解決方法はAndroid固有の機構を各実装者が独自に組みあわせた「オレオレ設計」(悪い意味じゃないです)によって様々で、それが故にベストプラクティスが定まらない状況でした。 そんな時、Google I/O 2013で通信処理用のフレームワークが発表・公開されました。 基本コンセプトは「簡単で高速な通信フレームワーク」とのこと。 個人的にはGoogleの中の人が「通信する時は、これ使えば楽だよ」って言っているので、余程の事情が無い限りはこれ使った方が良いと思います。
  6. 一番注目したいのはこれです。Androidの場合Acitityが長い間呼ばれていないと突然死ぬことがあります。非同期系だとどうしてもここが問題で、結果NULL → 死ぬ みたいな事に良くなっていました。ですが、Eventbusはただ通知を送るのだけので死なないのです。