Mais conteúdo relacionado
Semelhante a 【 ヒカ☆ラボ 】LIFULL Home's androidアプリの開発の裏側について (20)
Mais de LIFULL Co., Ltd. (20)
【 ヒカ☆ラボ 】LIFULL Home's androidアプリの開発の裏側について
- 2. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。2
自己紹介
• 寒川 明好
• 株式会社LIFULL
– Android開発グループ
• Engineering Manager
• 2010年入社
– 入社後1年半はWebを担当
– その後はアプリ開発メイン
• Android
• iOS
• Windows Phone
- 3. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。3
あらゆるLIFEを、FULLに。
「LIFULL」とは、
世界中の人々の人生やくらし(LIFE)を満たす
(FULL)企業へと成長していきたいという想いを
こめた造語で、不動産業界だけでなく様々な事業
領域でサービスを提供していきます。
- 4. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。4
HOME’Sは新しいステージへ
2017年4月1日より、
不動産・住宅情報サイト「HOME’S」は「LIFULL
HOME’S(ライフルホームズ)」にブランド名を
変更いたします。
- 5. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。5
LIFULL HOME’Sとは
最上の住まいに出逢えるよう、最大の不動産・住宅情
報と、最良の情報品質、最適な手法によって
住まい探しをお手伝いする、不動産・住宅情報の総合
サービスです。
• ブラウザ
– デスクトップ
– スマートフォン
• アプリ
– Android
• Phone
• Tablet
• Wear
– iOS
• Phone
• Tablet
• Watch
• TV
– Windows
- 7. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。7
アジェンダ
チーム体制
施策の決め方、進め方
LIFULL HOME’Sアプリ開発のキーワード
マテリアルデザイン移行
mBaaS活用事例
レビュー&テスト
今後進めたい事
- 8. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。8
アプリチームの体制
• アプリチームは4つのグループから成り立っている
iOS
Direction&DesignTech Lead
Android
✕1 ✕6
✕4
✕7
- 9. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。9
施策の決め方
• ユーザの声
– Google Play Storeのレビュー評価
– 不具合報告(改善意見)
• データ解析
– Google Analytics
• アイデア
– 個々のメンバーからの「これがユーザのためになる」
– ブレスト
• 必須
– 法律などの対応
– ブランドなど
- 10. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。10
アイデア
OSで一緒の施策はやらない
• OSごとに別々の施策を考えている
• 同じ施策をする場合でも同時に進行しない
ユーザの声
データ
解析
OSによって
UI・UXが異なる
施策
必須
- 11. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。11
リリースサイクル
• Androidでは約2週間〜3週間ごとにリリース
ユーザの声・アイデア
仕様作成
キックオフ
開発
機能テスト
リリース
モック作成
ブレスト
リリースapk全体ウォークスルー
PJ単位
- 12. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。12
LIFULL HOME’S開発におけるキーワード
マイクロサービス化
✕
マテリアルデザイン
✕
mBaaS利活用
- 13. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。13
マテリアルデザイン と LIFULL HOME’Sアプリの歴史
• 2014年9月にファーストリリース
• 約60回のアップデート
• 最新バージョンは 6.0.0
- 14. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。14
マテリアルデザインへシフト
• v1.0.0 はActivityとFragmentで構成
– ActivityはMainのみ
– 1画面に対して複数のFragmentが Attach されていた
• ベースとなるActivityから移植を開始
– Avtivityを主要画面ごとに分割
– Fragment開発のため、機能単位で移植
- 15. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。15
ToolBar
• ToolBar
– OS3(Holo)以降ではActionBarとしてActivityで管理
– OS5(Material)以降はToolBarとしてFragmentで管理
• 画面によってUXが異なる
– 常にToolBarを表示する
– スクロールするとToolBarは非表示
– CollapsingToolbarLayoutを使ってスクロールするとヘッダーが縮小
される
- 16. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。16
開発環境
PlayConsole
GrowthPush
Crashlytics
CircleCI
GitHub
AWS
Firebase
AndroidStuido
Deyloygate
- 17. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。17
Firebase
• mBaaSとしては Firebase を採用
– Google I/O 2016 で新しいFirebaseが発表
– LIFULL HOME’Sでも発表翌日から採用を検討しテスト導入
– 採用理由
• Analytics, Develop, Grow, Earn によるアプリの最大化
• プラットフォームとの連携
– Google Analytics
- 18. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。18
LIFULL HOME’S ✕ Firebase 活用例#1
活用例の紹介
• Analytics
• Develop
– Database
– Storage
• Grow
– Remote Config
• Earn
特集
• シーズンで入れ
替わる
• キャッシュ活用
• iOSと共有
- 19. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。19
LIFULL HOME’S ✕ Firebase 活用例#2
活用例の紹介
• Analytics
• Develop
– Database
– Storage
• Grow
– Remote Config
• Earn
ABテスト
• CVR計測
• 2〜3パターン
- 20. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。20
LIFULL HOME’S ✕ Firebase 今後やってみたい
今後やる 自分がやってみたい 活用例
• Develop
– Functions
• Database, Storage, Authentication の各種イベントをトリガーに
Functions が起動できる
- 21. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。21
レビューやテスト周り
テストの種類 実行環境
セキュリティテスト JSSECセキュアコーディングガイド
単体テスト AndroidTestCase ( InstrumentationRegistry )
結合テスト Excelベース
UIテスト ActivityInstrumentationTestCase2 ( ActivityTestRule )
※ 一部機能のみ対応
ユーザテスト QAチーム
ウォークスルー Androidチームメンバー
• ソースレビュー
– Android Studioの Inspection
– GitHubによる Pull Request
• テスト
- 22. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。22
LIFULL HOME’Sの今後
• さらなるFirebaseの利活用(またはそれに代わるmBaaSの導入)
– Functions
– Notifications
– Chat
• Android O対応
– Core app qualityの実施
• IoTにも注目 ※個人的に
- 23. © LIFULL Co.,Ltd. 本書の無断転載、複製を固く禁じます。23
最後に
開発で取り組んでもらいたいこと
• アスペクト比2:1以上の画面に対応
– 対応しないと上下または左右に黒い帯が表示されてしまう
• Data Binding
– 双方向Data BindingによるMVVM化
• WebP対応
– リソースや通信量の削減
Notas do Editor
- 社内でのTechLeadとしては、コードレビューや品質周り、将来的なことを見越した全体設計や技術相談、先進的な技術チャレンジをおこなっている
- mobile backend as a Service
- Cloud Functions for Firebase
- 日本スマートフォンセキュリティフォーラム(Japan Smartphone Security Forum:JSSEC ジェーセック)
- セッションのスケジュールを見ると、今後のAndroidの方向性がわかるので、それにマッチした動きが大事
- WebPサポート、Instant Run → Apply Changes、Androidエミュレーター → コピー&ペースト
最大アスペクト比が16:9に設定された従来のアプリを実行すると、上下または左右に黒い帯が表示される