こんにちは、またくです。ハンドメイドマーケット minne の Android アプリを作っています。
2019/02/07 から 02/08 にかけて開催された DroidKaigi へ業務で参加してきました。業務に関係ある技術イベントであれば、外出時でも万が一の場合の対応ができるような業務に支障がない体制が取れるなど、適切な工程を踏めば業務として、チケット代の補助込でイベントへ参加することができます。
今回は印象に残ったテーマ及び発表を、現状の minne と照らし合わせながら紹介させていただきます。
マルチモジュール
今年の DroidKaigi の発表のテーマの中で多く挙げられていたものの 1 つとしてマルチモジュールが挙げられるかと思います。
モジュール化はそれ自体でも変化に対応しやすいといったメリットがありますが、dynamic feature や instant apps のように Android アプリとしての新しいアプローチに対応するためにはモジュール化されていることが条件となっています。それを踏まえると採用事例が増えノウハウが蓄積されてきた時期なのかもしれませんね。
minne 全体で見てみると、web アプリケーションにてマイクロサービス化が進んでおり、iOS/Android では 1 モジュールで運用がなされているのが現状です。しかし現在進行系で両 OS ともモジュール化が進められている状態なので興味ある方はお声がけください。
中規模以上のアプリ開発におけるCIレシピとリリースフロー戦略
KazaKago さんによる、中規模以上のアプリ開発におけるCIレシピとリリースフロー戦略のお話です。
属人化を防ぐための自動化に関しては、minne の Android/iOS チームでも取り組んでいるところがあるせいか当てはまる点があり、のめり込むように聞かせていただきました。加えてスライドのイラストにとても癒やされています。
規模が大きくなるにつれプロダクトの運用面に対して考える割合が増えてくる中、人による運用を頑張る方向でなく自動化することで、属人化を防ぐことに加え、機能開発などの本質的な所に割く割合を増やすことができます。
このような取り組みは各プロダクトごとで、ツールや取り組み方といった色が出るだろうと考えています。実際に minne では iOS では bitrise, Android では drone を CI サービスとして用いており、様々なワークフローが日々動いています。これらは別の機会に紹介できればと思います。
詳解定期購入
Ryo Yamazaki さんによる、Google Play Billing Library を用いて定期購入をアプリ内で実装したお話です。
僕個人がプロダクトを通じて定期購入を実装したことはないため、技術領域として発見が多い発表だと感じました。DroidKaigi は自分が普段その領域を知ることがなかったようなことを知ることができる場でもあり、毎年様々な形で刺激を受けています。
サービスをどう実装していったかの流れに関して、以下のような点をわかりやすく詳解してくださっていました。
- アプリ内課金画面をどういった UI で組んでいくかに関する調査
- Google Play 課金を利用したことでどういった結果が得られたか
- Google Play Billing Library を実際にどう利用していったのか
センシティブな機能で利益にも直結するようなシステムなので考慮する点は数多くありますが、このセクションを通じてとてもやりがいのある機能なのだと感じています。
おわりに
Android として様々な進化が日々行われている中で、プロダクトの課題と照らし合わせながらどう採用していくかということに関してとても刺激があるイベントでした。
DroidKaigi では Android に関わる方々と大勢出会うことができるため、普段 Android を開発している身としましては勝手ながらホームのような気持ちになって楽しく臨んでいます。
運営の皆様及び登壇された方々のおかげで、2 日間とても楽しい時間を過ごすことができました。本当にありがとうございました。