Flipperを活用したデバッグ効率化について2021.10.26 morizooo#TechTalk_merpay_zozo_mirrativ© 2021 Mirrativ, Inc.
View Slide
●Profile●morizooo(@morizo_999)●ミラティブAndroid担当(2018/2〜)●マイブーム:高級食パン,散財
99
99● モバイルアプリデバッグのためのデスクトップアプリケーション● アプリからデータを受信して整形して可視化できる○ アプリにデータを送信することも可能FLIPPERについて
目次99Flipper基本編
99● OkHttpでのAPI通信の内容を確認できるFLIPPERの標準機能
99● HTTPレスポンスのモックも可能○ isMockResponseSupportedを有効にすると使える○ APIモックサーバーの用途に使える○ データを一部書き換えて表示確認にも使えるFLIPPERの標準機能
99● SharedPreferencesの表示/更新ができるFLIPPERについて
99● DeepLinkの表示確認できる○ 任意のリンクも実行可能FLIPPERの標準機能
目次99Flipper応用編
99● FlipperはElectron+Reactで作られている○ 柔軟なカスタマイズが可能● PubSubパターンに組み合わせると便利FLIPPERのカスタムプラグインについて
99MIRRATIV内のPUBSUBの一例 ● リアルタイム通信のためにPubSubを利用 ● 通信内容はJson ○ TypeによってClient側でParse処理を切り替えている 配信者 視聴者 ①HTTPリクエスト②Publish③Subscribe③SubscribePubSubサーバー APIサーバー 配信画面
99MIRRATIV内のPUBSUBの問題点 ● Publishされるまでの条件が複雑だと検証に時間がかかる ○ 例:配信者のランキング情報の切り替え → カスタムプラグインで解決 配信者 視聴者 ①HTTPリクエスト②Publish③Subscribe③SubscribePubSubサーバー APIサーバー 配信画面
99カスタムプラグインについて● プラグインの開発の流れ1. FlipperのDesktopPluginを作成2. Androidで作成したDesktopPluginと接続するためのClientを作成3. AndroidはClientからデータを流す4. FlipperのDesktopPluginでデータが表示されるか確認 ● 詳細はTech blogへ!! https://tech.mirrativ.stream/entry/flipperCustomPlugin
99プラグインの実装Desktop Plugins Android Plugin アプリからデータ受信
99プラグインの実装Desktop Plugins Android Plugin アプリにデータ送信
カスタムプラグインの画面
99カスタムプラグイン導入の結果 配信者 視聴者 ①HTTPリクエスト②Publish③Subscribe③SubscribePubSubサーバー APIサーバー ● 革命と呼ばれデバッグが爆速になった○ 通信内容の確認が楽○ 任意タイミングでReplayできる○ メッセージを決めればMockで開発できるFlipper
99● Flipperのカスタムプラグインを作成してデバッグの効率化をしている● PubSubでのメッセージ通信で有効に使えるまとめ
99● 積極採用中です!! ● 一緒に開発やりませんか!!11 WE ARE HIRING