この記事は ドワンゴ Advent Calendar 2023 の 10 日目の記事です。
N予備校 Android アプリ開発チームでは、2023 年はアプリの実装および内部改善を活発に行い、内容をまとめた記事も例年より多く公開できました。
この記事では 2023 年に行った開発内容を振り返りながら、得られた知見などをあらためてまとめていきます。
新機能の追加・改善
ユーザーがN予備校アプリを使って、さらに学習しやすくするためにいくつかの機能を追加・改善しました。
2023 年のもっとも大きなアプリの変更は、必修レポートの表示の追加です。これは、N/S高等学校に通う生徒が提出するレポートの状況と締め切りが一覧できるものです。
もともとの課題として、生徒が計画的にレポートを進めづらかったため、レポートの提出が締め切りギリギリになったり、場合によっては締め切りに間に合わないということがありました。
そこで、レポートの状況と締め切りが一覧できる表示を実装することで、生徒のレポート提出率の改善につながりました。
リリース時のアナウンス内容: N予備校フォーラム
他には、N予備校の学習で使用している動画の画質が粗く、教材や黒板に書かれた文字が見づらいという声を受けて、動画の高画質化にも対応しました。
これまでの最高画質は 640x360 でしたが、今回の対応で 1280x720 の画質で動画を再生できるようになっています。
ただし、スマホを利用している場合は通信量が増えるとデータ制限がかかる場合があるため、Wi-Fi 使用時だけ高画質で再生を選択できるオプションも追加しました。
リリース時のアナウンス内容: N予備校フォーラム
また、秋には Android 14 がリリースされ、新しい OS での権限リクエストに対応するためにカメラロール画面の実装に取り組みました。
より細かいところでは、Edge-to-edge を導入してアプリの表示領域を広げて情報量を増やしました。詳しくは以下の記事に詳細がまとまっています。
他にも各画面で細かい実装や修正をしましたが、ここでは割愛いたします。来年以降も引き続きユーザーにとって使いやすいアプリになるように取り組みます!
内部実装の改善
表に見える改善以外にも、開発効率を高めるための内部実装の改善に数多く取り組んでいます。詳細はそれぞれの記事に記載がありますので、気になる内容があればご参照ください。
- テストの実装効率を上げるために kotlin.test を導入
- 非同期通信の処理実行を RxJava から Kotlin Flow に移行
- ビルドロジックを buildSrc から Composite Build に移行
- 端末内のデータを SharedPreferences から DataStore で管理するように変更
- ライフサイクルに応じた処理を LifecycleObserver から実行する
Android アプリ開発教材のリニューアル
N予備校の教材である『Android アプリ開発コース』をリニューアルしました。
N予備校のAndroidアプリ開発コースがリニューアルされました✨
— N予備校 (@n_yobikou) 2023年1月18日
プログラミング言語Kotlinを使用した開発方法を学ぶことができます。
ドワンゴのエンジニアが作成したAndroidアプリ開発の教材です。https://t.co/noSdVfQ8ZH pic.twitter.com/3wa8fierGD
リニューアル前の Android の教材は Java を使って xml で画面を作成する内容だったのですが、技術の変化に合わせて Kotlin で Jetpack Compose を使って画面を作成する内容に更新しています。
Android 開発のこれまでの技術変化は非常に早く、新しい技術を用いた実装方法について解説している参考書やオンライン教材が少なかったため、今回のリニューアルに至りました。
これから Android アプリ開発をやってみたい方の参考になればと思います。
DroidKaigi アプリへのコントリビュート
今年も公開された DroidKaigi アプリにチームでコントリビュートしました。
普段の開発が DroidKaigi アプリの開発に役立つこともあり、逆に DroidKaigi アプリの開発を通して得られた知見をN予備校アプリの開発に活かすこともあり、非常に有意義な経験になったと思います。
また、DroidKaigi 当日は業務の一環としてチームで参加・聴講して、学んだことをN予備校アプリの開発に反映できました。以下は一例となります。
- 大きなリストを折りたたみで表示するとき、開閉のアニメーションにアコーディオンを実装した
- よく見るあのUIをJetpack Composeで実装する方法〇選 を参考にしました
- 通知チャンネルの最適化を行った
- 通知許諾率向上のアプローチ を参考にしました
まだまだ DroidKaigi で学んだことを活かせる部分はあるので、来年も新機能の実装と並行しながら、アプリの改善に取り組んでいきます。
2023 年の総括
この 1 年を通して新しい機能をいくつか提供でき、内部実装もよりモダンな実装に改善できました。
チームとしてはフルリモート環境で着実に実装を重ねつつ、雑談の時間に色々な話をしたり、インターン生の送別会や DroidKaigi などの節目では顔を合わせることもできました。
一方で、アプリとしてはまだまだ課題が山積みで、サービスとしても 2025 年 4 月の ZEN大学(仮称)(設置認可申請中) 開学に向けた新機能の実装を行なっていく予定です。
来年も今年と同じく、新機能の開発と内部改善を積み重ねていきます。もしこのような開発に興味を持っていただけましたら、ぜひまずはカジュアル面談でお話ししましょう!
We are hiring!
株式会社ドワンゴの教育事業では、一緒に未来の当たり前の教育をつくるメンバーを募集しています。 カジュアル面談も行っています。 お気軽にご連絡ください!
開発チームの取り組み、教育事業の今後については、他の記事や採用資料をご覧ください。