このプロジェクトについて
Now in Androidは、Googleが開発した完全に機能するAndroidアプリで、KotlinとJetpack Composeのみで構築されています。アーキテクチャ、モジュール化、テスト、パフォーマンスなど、Android開発のベストプラクティスのリファレンス実装として機能します。このアプリはNow in Androidシリーズのコンテンツを表示し、ユーザーは最近の動画、記事、その他のコンテンツへのリンクを閲覧できます。ユーザーは興味のあるトピックをフォローし、一致する新しいコンテンツが公開されたときに通知を受け取ることができます。
このアプリは現在開発中で、prodReleaseバリアントがPlay Storeで利用可能です。Gradleビルドシステムを使用し、Android Studioに直接インポートできます。demoDebugとdemoReleaseビルドバリアントはローカルでビルドおよび実行できますが、prodバリアントは公開されていないバックエンドサーバーを必要とします。
アーキテクチャ: このアプリは公式のAndroidアーキテクチャガイダンスに従っており、詳細な学習ジャーニーが利用可能です。完全にモジュール化されており、モジュール化の学習ジャーニーで戦略が説明されています。
ビルド: このアプリにはデバッグバリアントとリリースバリアント、さらに起動パフォーマンステストとベースラインプロファイル生成のためのベンチマークバリアントが含まれています。コンテンツソースを制御するためにプロダクトフレーバー(demoとprod)を使用しています。demoフレーバーは静的なローカルデータを使用し、prodフレーバーはバックエンドへのネットワーク呼び出しを行います。
テスト: このアプリは依存性注入にHiltを使用し、テストでモッキングライブラリを避け、代わりに本番実装と同じインターフェースを実装するテストダブルを使用しています。ローカルテスト、インストルメンテッドテスト、Roborazziを使用したスクリーンショットテストが含まれています。スクリーンショットテストは異なる画面サイズでのUIレンダリングを検証します。
UI: このアプリはMaterial 3ガイドラインを使用して設計され、完全にJetpack Composeで構築されています。動的カラーテーマ(ユーザーの壁紙に基づく)とデフォルトテーマをサポートし、どちらもダークモードに対応しています。異なる画面サイズをサポートするためにアダプティブレイアウトを使用しています。
パフォーマンス: このアプリには起動パフォーマンスとベースラインプロファイル生成のためのMacrobenchmarkテストが含まれています。また、パフォーマンス分析のためのComposeコンパイラメトリクスも提供しています。
ライセンス: Apache License 2.0の下で配布されています。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.