Awesome Android
Androidを扱う資料や関連プロジェクトをまとめたAwesomeリストです。
目次
エミュレーター
ライブラリ
チャート
- AChartEngine - チャートエンジン
- EazeGraph - チャートおよびグラフライブラリ
- WilliamChart - 良好な動き機能を備えたチャートライブラリ
- HelloCharts - スケーリング、スクロール、アニメーションをサポートするチャートおよびグラフライブラリ
- MPAndroidChart - ジェスチャによるスケーリングおよびドラッグをサポートするAndroid用チャートおよびグラフライブラリ
- ArcChartView - 創造的な統計アーカイブチャートを描画
- AnyChart - データ可視化ライブラリ、インタラクティブチャート
クラウドサービス
- CloudRail - クラウドストレージ、ソーシャルプロフィール、決済、メール、SMSおよびPOIに関する統一APIライブラリ
データバインディング
- Anvil - Reactにインスパイアされた小さなライブラリで反応型UIコンポーネントを作成。データバインディングおよびイベントリスナーのバインディングを提供し、MVVMに適している。
- Data Binding Library - Android用公式データバインディングライブラリ。宣言型レイアウトを書くことで、アプリケーションロジックとレイアウトをバインディングするためのグリースコードを最小限にできる。
依存性注入
- Dagger 2 - AndroidおよびJava用の高速な依存関係インジェクタ
- Butter Knife - Android用ビュー「インジェクション」ライブラリ
- ActivityStarter - 複数の引数を指定してアクティビティを開始するためのシンプルな方法を提供するAndroidライブラリ
- AndroidAnnotations - コンパイル時に依存関係インジェクションを実行するJavaアノテーション
- Toothpick - Java用スコープツリーベースの依存関係インジェクション(DI)ライブラリ
Androidサービス
- Remoter - Android Remote IPCサービスに、シンプルなJavaインターフェースを使用するAndroid AIDLの代替案
- Service Connector - Androidサービスおよびコールバックをフィールドおよびメソッドにバインディング
ゲーム開発
- Libgdx - クロスプラットフォームゲームエンジンおよびSDK。 Open Source
- Vuforia - 拡張現実ライブラリ
- Unity - クロスプラットフォームゲーム開発システム
- Rajawali - Android OpenGL ES 2.0/3.0エンジン
- Cocos2d-x - クロスプラットフォーム2Dゲームフレームワーク
- JustWeEngine - オープンソースのAndroidネイティブゲームフレームワーク
セキュリティ
- libsignal-protocol-java - 同期および非同期メッセージ環境でも動作する、スライド式の前向きセキュリティプロトコル
- Themis - 複数言語をサポートする、典型的な暗号化スキームを簡単に使用できるフレームワーク:データの保存時、認証されたデータの交換、送信時の保護、認証など
GUI
- Pull to refresh - v4サポートライブラリに含まれるスワイプリフレッシュレイアウト
- Cardslib - AndroidでUIカードを作成するためのライブラリ
- AndroidStaggeredGrid - 複数列をサポートし、行のサイズが異なるグリッドビュー
- Flow - アプリを、ある程度独立したスクリーンの集合として表現するためのライブラリ
- SortableTableView - シンプルなTableViewと高度なソート可能なTableViewを提供するAndroidライブラリ。すべてのニーズに合わせたカスタマイズが可能。
- MaterialProgressBar - マテリアルデザインのプログレスバーで一貫した見た目。
- AndroidFillableLoaders - SVGパスと連動する、埋め込み可能なプログレスビュー。興味深いアプリロゴの作成にもおすすめ。
- NexusDialog - Androidで、少ないコードでフォームを簡単にかつ迅速に作成できる。
- Snap RecyclerView Utils - アダプタを作成せずに、シングルまたは複数レイアウトのRecyclerViewを埋め込む。
- MultiSnapRecyclerView - AndroidでRecyclerViewの複数スナップを実現するライブラリ
- SwipeableCard - ストリートビューのようなスワイプカードの実装!!
- ElasticProgressBar - 美しいロードバー。
- EntryScreenManager - 導入/入力/体験/開始画面。
- EasyIntro - あなたのAndroidプロジェクトに、柔軟で使いやすく、すべてを一括で提供するアプリ導入ライブラリ。
- Material-Calendar-View - API 8以降に対応するマテリアルデザインカレンダー
- CrunchyCalendar - 無限スクロール、日付範囲選択、色のカスタマイズをサポートするマテリアルカレンダーウィジェット。
- SmoothOverscrollableScrollView - スムーズなオーバースクロールを備えた小さなカスタムビュー。ヘッダーを追加し、スケール背景を設定できる。
- SectionedRecyclerViewAdapter - RecyclerViewをヘッダーおよび/またはフッター付きセクションに分割できるアダプタ
- DragListView - リスト、グリッド、ボード内の項目の並び替えをドラッグ&ドロップで行う
- Animated Expanding ListView - アニメーション付き展開ListViewが、リストビュー項目のコンテンツの展開または収縮時に華やかなアニメーションを提供
- TastyToast - アイコンと色付きのトースト
- DotLoader - ドットによるカスタマイズ可能なロードアニメーション
- PodSlider - マテリアルデザイン仕様に準拠したカスタマイズ可能なスライダー要素
- TapTargetView - マテリアルデザインガイドラインに基づくタップターゲットの実装(機能発見用)
- ShowCaseView - ShowcaseViewライブラリは、アプリの特定部分をユーザーに魅力的で平面的なオーバーレイで強調・紹介するためのもの
- MaterialIntroScreen - マテリアルイントラオースクリーンの実装(拡張性の高いAPIを備える)
- FloatingView - FloatingViewは、アンカービューの上にターゲットビューを浮かせるための、カッコイイアニメーションを提供
- Timecon - 使いやすいアニメーション付き時計アイコン
- Audiogram - 軽量なオーディオウェーブプログレスバー
- Bubbles for Android - フェイスブック風チャットバブルライブラリ
- Litho (By Facebook) - Android上で効率的なUIを構築するための宣言型フレームワーク
- MultiViewAdapter - Recyclerviewアダプタライブラリでコンポジブルビューを構築
- LGSnackbar - マルチアクティビティ間でも表示が続く、ネイティブAndroidのSnackbarを簡単に使いやすくカスタマイズしたラッパー
- ShimmerLayout - Androidアプリ向けのメモリ効率の高いシャイミング効果
- CircleProgressBar - Android用のシンプルな円形プログレスバーを作成するためのライブラリ
- Easy-Signature-Android - シンプルなUIライブラリで、プラグイン可能な署名ビューを提供
- Flashbar - 高度にカスタマイズ可能で、強力かつ使いやすいAndroid用アラートライブラリ
- YuanaItemSettingView - Android向けカスタマイズ可能なアイテム設定ビュー
- Gradients - 素晴らしいグラデーションを収録したキュレーションされたコレクション
- OneAdapter - 複数のモジュールとホックを備えたRecyclerViewアダプタで、使いやすさを簡略化し、誤りを防ぐ
ページネーション
- NoPaginate - シンプルなAndroidのページネーションライブラリ
ActionBar
- ActionBarSherlock - 古いAndroidバージョン向けのActionBar
- FadingActionBar - 新しいPlay Musicアプリに見られるフェード効果のActionBar
ナビゲーション
- SlidingMenu - スライドインメニューを用いたアプリ開発用のライブラリ
- SlidingTutorial - シンプルなライブラリで、素晴らしいスライドAndroidアプリチュートリアルを作成可能
- PagerSlidingTabStrip - ViewPagerの各ページ間をナビゲートするインタラクティブなインジケーター
- Page View indicator - 水平スクロール可能なViewPagerのサポート
- RecyclerTabLayout - RecyclerViewを用いた効率的なTabLayoutライブラリ
- MaterialDrawer - シンプルなマテリアルデザインナビゲーションドロップダウン
- Debug-Artist - leakcanary、scalpelなど、デバッグ用メニューを簡単に有効化
- Floating-Navigation-View - アンカー付きナビゲーションビューを表示するシンプルなフローティングアクションボタン
アニメーション
- SmoothMotion - Jetpack Composeでのアニメーションとトランジションを簡易化するKotlinライブラリ
- Rebound - ReboundはJavaで実装されたバネの動的モデルライブラリ
- Android View Animations - かわいいビューアニメーションコレクション
- Android-Transition - ユーザーの入力に反応するビューのトランジションを簡単に作成可能
- Android-View-Actions - ビューの複雑なアニメーションを作成を容易にする
- Swipper - ボリューム、明るさ、シークを制御するスワイプジェスチャーを備えたAndroidライブラリ
- Spotlight - チュートリアルやウォークスルーなどにアイテムを明るく表示するAndroidライブラドリ
画像
- Crescento - 画像ビューの下にカーブを追加して、Material Designにおける新しいスタイルを探索する。
- android-crop - 画像の切り取りを行うためのライブラリプロジェクト。
- CircularImageView - 描画性能を最適化しつつ、円形画像を表示するためのカスタムビュー。
- Android-Image-Filter - 画像フィルターを簡単に適用できるライブラリプロジェクト。
- Compressor - Compressorは軽量かつ強力なAndroid画像圧縮ライブラリ。
- ShapeImageView - さまざまな形状で画像を表示できるライブラリ。
入力
- FloatingLabel - FloatingLabel は、EditTextの一種を作成できる機能。GradleやMavenのサポートはなし。
- MaterialEditText - Floating Labels、1行エラーテキスト、最大/最小文字数、ヘルパーテキストおよびエラーテキストをカスタムカラーでサポート。
- EmojiCompat - アプリに表情文字を追加する。
- MaterialSearchBar - Android用のMaterial Design検索バー。
- InputMask - パターンベースのユーザー入力フォーマッタ、パーサー、バリデータ。
- SweetPassword - カスタムトグルボタンを許容するパスワードEditText。
- VoiceOverlay - ユーザーの音声許可を得て、カスタマイズ可能なUIでテキストとして入力するオーバーレイ。
ViewPager
- Material Dots Indicators - View Pagers用の3つのマテリアルドットインディケータスタイル
画像読み込み
- Picasso - Android用の強力な画像ダウンロードおよびキャッシュライブラリ。
- Universal Image Loader - 非同期で、即座に画像の読み込みとキャッシュを実行。
- Glide - スムーズなスクロールに最適化されたAndroid用画像読み込みおよびキャッシュライブラリ。Googleが推奨。
- Fresco - Androidで画像とその使用するメモリを管理するためのライブラリ。
- Glide Bitmap Pool - Glide Bitmap Poolは、ビットマップメモリの再利用を目的としたメモリ管理ライブラリ。
- Coil - Kotlin Coroutinesをバックアップとして持つAndroid用画像読み込み。
メディア選択
- MediaPicker - Androidで複数の画像、動画、音声を選択できるライブラ及。
- Android Image Picker - ギャラリーから画像や動画を選択する操作を簡単にするライブラリ。GIFやシンプルなカメラ操作もサポート
動画
- ijkplayer - FFmpeg n3.2をベースにしたAndroid/iOS用動画プレイヤー。MediaCodec、VideoToolboxに対応
- Exoplayer - 動画に関するAndroidライブラリ、ツール、サービス、または資料です。 Supports features like Dynamic adaptive streaming over HTTP (DASH), SmoothStreaming and Common Encryption
- VideoPlayView - カスタムAndroidビューで動画プレイヤー、再生/停止、ローダー、プレースホルダー画像を提供
カメラ
- MagicalCamera - ギャラリーから写真を撮影または選択するシンプルな方法。写真管理の他の機能も備えている
- Camera - Androidカメラを使って写真や動画を撮影。camera2 APIに基づく
フィールド検証
- Convalida - 入力フィールドのバリデーションを、シンプルかつアノテーションベースで行う方法
JSON
- Gson - GsonはJavaでJSONからJavaオブジェクトをシリアライズ・デシリアライズするためのライブラリ
- Jackson JSON Processor - 高性能なJSONプロセッサ
- Moshi - AndroidおよびJava向けの現代的なJSONライブラリ
クラッシュ監視
- Fabric Crashlytics - 簡単なクラッシュ報告ソリューション
- HockeyApp - 配布、クラッシュ報告、フィードバック、分析
- Splunk MINT - 監視、クラッシュ報告、リアルタイムデータ、統計
- Bugsnag - クロスプラットフォームエラーモニタリング。無料プラン。SDKおよびNDK対応。エラーレポートにはデバイス、リリース、ユーザー情報、および任意データを含む
- Catcho - もう強制終了はなし
- Apteligent - クロスプラットフォームクラッシュ報告/分析ソリューション。NDKログをサポート
- Instabug - バグ報告、クラッシュ報告、アプリ内フィードバック
ネットワーク
- Ion - Android向けの優れたネットワークライブラリ
- OkHttp - AndroidおよびJavaアプリ向けのHTTP+SPDYクライアント
- RoboSpice - 非同期ネットワークリクエストの記述を簡単にするライブラリ
- IceNet - Android向けの高速・シンプル・簡単なネットワーク
- Android Volley - 公式Android HTTPライブラリ。ネットワーク処理をより簡単・速くする
- IceSoap - 簡単で非同期かつアノテーションベースのSOAP for Android
- node-android - AndroidでNode.jsを実行
- HappyDns - DNSライブラリ。ユーザーはカスタムDNSサーバー、DNSPOD HTTPDNSを使用可能。Aレコードのみ対応
- RESTMock - AndroidのインストリメンテーションテストでAPIレスポンスをモックするためのHTTPウェブサーバー
- Fast-Android-Networking - 完全で高速なAndroidネットワークライブラリ。HTTP/2もサポート
ロガー
- logger - Android向けシンプルで美しく、強力なログ出力ライブラリ
- timber - Androidの標準Logクラスに上位のユーティリティを提供する、小さな拡張性のあるログ出力ライブラリ
- LoggingInterceptor - OkHttpのインターセプターで、リクエストとレスポンスデータを整形してログ出力
- Bugfender - ログをアップロードし、オンラインで確認可能。特にモバイル向けに開発
- EzyLogger - シンプルで軽量なログ出力ライブラリ
- Logback Android - Android向けLogbackのポート。Androidアプリ向けに高度にカスタマイズ可能なログフレームワークを提供
- LogDog - LogDogはiOSおよびAndroid向けのリモートデバッグ・ログ出力SDKであり、WebUIを備えている。リアルタイムですべてのログとリクエストをキャプチャし、それらを中断可能にできる
通知
- android-remote-notifications - リモートJSONファイルから通知を取得し、アプリ内に表示
- Android HeartBeat Fixer - ハートビート間隔を設定し、GCMからユーザーにプッシュ通知を送信
データベース
- Cupboard - SQLiteに直接データベースアクセスまたはContentProviderフレームワークを介して簡単にアクセス
- DbInspector - デバッグ用にアプリ内データベースの内容を簡単に確認できる方法を提供
- SQLite Asset Helper - アプリのraw assetファイルを使ってデータベースの作成とバージョン管理を管理
- Realm - SQLiteおよびORMの代替:シンプル、現代的で高速!オブジェクト指向APIとマルチプラットフォーム対応
- Realm Asset Helper - APKのアセットフォルダからRealmデータベースをコピー。読み取り専用のRealmデータベースのバージョン管理を効率的に処理
- RestorableSQLiteDatabase - AndroidのSQLiteDatabaseを再現するためのラッパーで、復元機能を備える
- Nitrite Database - Android用のMongoDbのようなAPIを持つNoSQL埋め込みドキュメントストア
ORM
- requery - JavaおよびAndroid用のコンパイル時ORMとSQLクエリライブラリ
- GreenDAO - 軽量で高速なORMソリューション
- ORMLite - JDBCおよびAndroid用の軽量ORMJavaパッケージ
- ActiveAndroid - アクティブレコードスタイルのORM
- Sugar ORM - Androidデータベースとのやり取りを極めて簡単にする方法
- DBFlow - コンパイル時アノテーション処理を活用した高速かつ強力なORM
- NexusData - Android用のオブジェクトグラフと永続性フレームワーク
- SimpleNoSQL - Android用のシンプルなNoSQLクライアント。キー/バリューペアと簡単なクエリを使用するドキュメントストアとして設計されており、SQLコードの煩雑さを回避するのに役立ちます
- RxSimpleNoSQL - SimpleNoSQL用の反応型拡張。Observableを使ってエンティティを操作します
REST
- Retrofit - RetrofitはあなたのREST APIをJavaインターフェースに変換します
- Spring for Android - Rest Template - Android用のRESTクライアント
テスト
- Robotium - ブラックボックスUIテスト用の自動テストフレームワーク
- Roboletric - JVM上でワークステーションでテストを実行するためのユニットテストフレームドワーク(エミュレータではなく)
- AssertJ Android - Android向けのアサートJアサーション
- Green Coffee - あなたのAndroidインストルメンテーションテスト内でCucumberテストを実行できます
追跡
- MobileAppTracking - 複数の広告ネットワークを介してマーケティングキャンペーンを追跡
- Mixpanel - ユーザーの行動を分析するためのアナリティクスプラットフォーム
- Countly - Node.js、MongoDBおよびLinuxに基づくオープンソースのモバイル・ウェブアナリティクス、プッシュ通知、クラッシュレポートプラットフォーム
- CleverTap - 100万件の無料イベントを提供するアナリティクスプラットフォームおよびユーザー参加度プラットフォーム
地図
- Google-Directions-Android - 2つの場所間の方向を計算し、GoogleマップにGoogle Directions APIを用いてルートを表示できます。
- Android Maps Extensions - Google Maps Android API v2の機能拡張。マーカークラスタリングなどを追加しています。
- MapScaleView - Google Maps Android API用のスケールバー。
- GLMap - マルチプラットフォーム対応のオフラインベクターマップ(MapCSSスタイル)。オフライン検索およびオフラインナビゲーションが含まれています。
ユーティリティ
- Conceal SharedPreferences - Facebook Secure Encryptionを用いたセキュアなPreferences(設定)です。Concealと呼ばれます。
- EventBus - アプリケーションの異なる部分間の通信を簡便に実現するライブラリです。
- Otto - Android用のEvent Bus。
- Weak handler - android.os.Handlerのメモリ安全な実装。
- Byte Buddy - Android向けのランタイムコード生成ライブラリ。
- Secure Preference Manager - Android用のセキュアなPreferenceマネージャー。アプリのShared Preferencesを複数の暗号化で保護します。
- LeakCanary - メモリリークが発生する際にその場で検出します。
- Drekkar - WebViewおよびJS用のAndroidイベントバス。
- Androl4b - Androidアプリの評価に用いる仮想マシン。
- DroidMVP - MVPおよびパッシブビュー、プレゼンテーションモデルパターンをアプリに統合するためのAndroidライブラリ。
- EasyDeviceInfo - デバイス情報を非常に簡単な方法で取得できます。
- Shutter-Android - デバイスのカメラから写真・動画をキャプチャするか、ギャラリーアプリから写真・動画を取得することができる。実行時権限は必要ありません。
- Validator - TextInputLayout内のテキストを検証するためのユーティリティクラス。
- Keyboard Visibility Event - ソフトキーボードの表示変更イベントを処理するためのDSL。
- TimeIt - Android用のストップウォッチライブラリ。アプリ内で複数のストップウォッチを開始・一時停止・表示・維持する操作を簡単に行えます。
- Reactor - ReactorはAndroid用の高速かつ安全なキー・バリューライブラリです。
デバッグツール
- Linx - デバッグビルド時にデバイス内のlogcatを表示
- Scalpel - スマートフォン上で3Dで全体の階層を表示
- Stetho - Chromeから階層とネットワークをデバッグ
- Android Debug Database - Android Debug Databaseは、Androidアプリにおけるデータベースや共有設定のデバッグに使える強力なライブラリ
- Android Debug Bridge - ADB - Android搭載デバイスのデバッグを支援するコマンドラインツール
- ADB Enhanced - 開発者向けのADBのコマンドラインラッパー。開発者がバージョン依存の特殊なコマンドを覚える必要がないようにする
- Pidcat - 特定のアプリパッケージのログのみを表示するカラーディスプレイのコマンドラインADBラッパー
- AppSpector - AndroidおよびiOSのリモートデバッグとデータ収集サービス。ネットワーク、ログ、SQLite、仮想デバイスの地理位置をデバッグ可能
無線
- SmartGattLib - Bluetooth SMARTデバイス(Bluetooth 4.0におけるBluetooth Low Energy)との対話の簡易化
チャットとメッセージング
- Applozic Android Chat SDK - Androidアプリにリアルタイムチャットおよびアプリ内メッセージ機能を追加するためのチャットとメッセージングSDK
- Qiscus SDK - Qiscus SDKは軽量かつ強力なAndroidチャットライブラリ。Qiscus SDKにより、アプリにQisc及エンジンを簡単に統合し、魅力的なチャットアプリを作成できます
- Kommunicate Live Chat SDK - KommunicateはAndroid向けオープンソースのライブチャットSDKを提供。Kommunicateにより、お客様サポート用にモバイル(Android、iOS)アプリおよびウェブサイトにリアルタイムライブチャットおよびアプリ内メッセージを追加できます
- CometChat Voice, Video and Text Chat SDK with UI - CometChatを使用して、アプリ(およびウェブサイト)に音声、動画、テキストチャットを数分で追加。CometChatのSDKには完全なUIが含まれており、独自にUIを作成する必要がありません。さらに、リアルタイム翻訳、白板、スクリーン共有、友達同期、役割ベースのアクセス制御、クレジットの消費など、事前対応機能が備わっています
- Build a one-on-one Android chat app using Kotlin - CometChat Proを使用して、Kotlinで数分で1対1のAndroidチャットアプリを構築。このチュートリアルではログイン、連絡先リストの取得、ユーザーの存在状態表示、メッセージの送受信などの機能について説明しています
- Stream Chat - Streamを基盤としたリアルタイムチャット用の包括的なSDKおよびコンポーネント
- Add Push Notifications to Your Android Chat App Using Kotlin - CometChat ProとFirebase Cloud Messaging(FCM)を活用して、Androidチャットアプリにプッシュ通知を追加
カスタムダイアログ
- MediaRecorderDialog - 自作ダイアログで音声を録音し、保存し、端末上で再生
- HijriDatePicker - グーグルのマテリアルデザイン原則に基づいたヒジリ(イスラム暦)日付選択画面を提供
- Noty - アニメーション付きアラートやダイアログ、警告を生成するシンプルなライブラリ
バージョン確認
- AppUpdater - アマゾンやFDroidでのチェックをサポートする、包括的かつ機能豊かなライブラリ
- Gandalf - 包括的な機能と「コンパニオン」iOSソリューションを提供
- Siren - 同名のポピュラーiOSライブラリを模倣した機能セット。AmazonおよびPlayに対応
- Fit - バージョンチェックコールバックフレームワーク(UIなし)
日付と時刻
- ThreeTen Android Backport - Android用のJSR-310バックポートのアダプテーション
- Joda-Time Android - Joda-TimeライブラリにAndroid向けの特殊化を施したもの
- True Time - Android用NTP時間ライブラリ。デバイス時計の変更にかかわらず、正確な現在時刻を取得可能
実行時権限
- Permission Dispatcher - 実行時権限を扱うシンプルなアノテーションベースAPI
- RxPermissions - RxJavaを用いたAndroid実行時権限
- NoPermission - シンプルなAndroid用権限リクエストライブラリ。1つのクラスのみを構成。
- Ask-Permission - シンプルな実行時権限マネージャー
- Gota - Android権限を簡易化
- EasyPermissions - EasyPermissionsは、Android M以降のターゲットで基本的なシステム権限の論理を簡易化するためのラッパーライブラリ。
決済
- Square In-App Payments for Android - Digital Walletおよび保存されたカードをサポートし、迅速な決済を可能にするSquare決済をモバイルアプリに統合
その他
- Licensee - Licenseeは、Gradleプラグインであり、依存関係グラフのライセンスが期待するものと一致しているかを検証し、一致しない場合はビルドを失敗させる!
- Android Support library - Androidサポートライブラリパッケージは、AndroidフレームワークAPIのバックワード互換バージョンを提供するコードライブラリのセット。
- Google Play Services - Googleサービス(アカウント同期、Google+(共有、シングルサインオン)、Googleマップ、位置API、Googleプレイゲーム、クラウドメッセージング、Androidデバイスマネージャーなど)にアクセスするためのライブラリ。
- Tape - AndroidおよびJava向けの高速でトランザクション型、ファイルベースのFIFO。
- Guava: Google Core Libraries for Java - コレクション、キャッシュ、プリミティブサポート、並列処理ライブラリ、共通アノテーション、文字列処理、I/Oなど。
- Android Scripting - Android上でスクリプト言語を実行できるようにする。
- Android Priority Job Queue - ジョブキューの実装により、バックグラウンドで実行されるジョブ(タスク)を簡単にスケジュールでき、UXおよびアプリの安定性を向上。
- RateMeMaybe - ユーザーにアプリの評価にPlayストアを開くことを尋ねる。
- Easy Rating Dialog - Libは、アプリ評価用のアラートダイアログをシンプルに表示する方法を提供。
- ZXing Android-Integration - バーコードスキャナーとのIntentによる統合。
- Gradle Retrolambda Plugin - Java 8 ラムダ関数を Android で使用!
- RxJava - RxJava – JVM 用の反応型拡張 – Java VM での非同期およびイベントベースのプログラムを、可観測シーケンスを使って構成するためのライブラリ。
- RxAndroid - 最小限の RxJava バインディングを追加し、反応型 Android Java コードの簡単な記述を可能にする。
- RxBinding - RxBinding – Android プラットフォームおよびサポートライブラリの UI ウィジェットに対する RxJava バインディング API。
- Caffeine - Android 開発を早めるために役立つユーティリティクラスのコレクション。
- AboutLibraries - 使用されたライブラリの一覧を表示する「このアプリについて」セクションを自動生成。
- AudioPlayerView - URL からオーディオを読み込み、基本的な再生ツールを備えたビュー。
- andle - 依存関係、SDK、またはビルドツールバージョンの同期を支援するコマンドラインツール。
- Typography - Android でビューにカスタムフォントを使用する際の簡単なライブラリ。
- Calligraphy - Android でのカスタムフォントの使用方法。
- transai - ローカライゼーション文字ファイルの管理を支援するコマンドラインツール。
- Android-Link-Preview - URL からプレビューを作成し、タイトル、関連テキスト、画像などの情報を取得。
- Sensey - ジェスチャの検知を簡単に行う。
- UserAwareVideoView - ユーザーがデバイスの画面を確認していない場合、自動的に動画再生を一時停止するカスタム動画ビュー。
- Flexbox Layout - FlexboxLayout は、Android に CSS Flexible Box Layout Module の機能を提供するライブラリ。
- Agile Boiler Plate - ボイラープレートは MVP アーキテクチャに基づき、Dagger2 を使用した依存性注入設計パターンで構成されている。
- Gradle buildSrcVersions - Kotlin DSL による依存関係管理の簡易化。
- Teller - Teller は、アプリのキャッシュデータのダウンロード、保存、読み取りを支援。ユーザーのデータを常に最新に保ち、不快なロード画面を削除!
資料
- Programming Community Curated Resources for Learning Android Development - プログラミングコミュニティが提出・投票した Android チュートリアルとコース。
- Vogella Tutorials - Lars Vogel による非常に優れたチュートリアル。
- Android Design in Action Video series - GoogleのAndroid Design Teamが公開した動画シリーズ
- Android DevBytes Video Series - Android Design in Actionシリーズの技術的な対応作品
- Developing for Android - Googlerのチェット・ハサエらが執筆した記事シリーズ。最もよく問われる質問に答えるもの:「Androidアプリ開発時に意識すべき重要なルールは何か?」
- Android Hive Tutorials - 初心者向けの非常に良いチュートリアル
- Android Weekly - Androidに関する週刊ニュースレター
- Android Asset Studio - アイコンやその他のアセットを生成するツール
- Android Action Bar Style Generator - .
- Device Art Generator - アプリのスクリーンショットを実際のデバイスのアートワークに囲む
- Android UI design resources - UI/UX分野のGoogle開発者エキスパートが提供する多様なデザインリソース
- Pencil Project - オープンソースのプロトタイピングソフトウェア
- How to Make Android Apps - デレク・バナスによる動画チュートリアル
- android-blogs - Androidに関するブログ一覧
- Future Studio - Retrofit、Picasso、GlideおよびGsonに関する広範なAndroidチュートリアル
- Android Tips & Tricks - Android開発におけるヒントとコツをまとめたチェックシート
- Associate Android Developer Certification Materials - テスト準備に必要な資料のコレクション
- Google Developers Training - Google開発者公式トレーニングページには、初心者から経験者までに役立つ学習リソースのリストが掲載されている
- Mindorks - 完全で満足できるAndroid開発者になる
- AndroidVille - より良いAndroidエンジニアになる。Android開発に特化したウェブサイトで、RxJava、Android Zygoteなど高度なトピックをカバー
- Android Stack Weekly - Android宇宙の新しい開発やアップデートに関する週刊ニュースレター
コード例
- Android Architecture Blueprints - Androidアーキテクチャブルーインプトプロジェクトは、よくあるAndroid問題を解決または回避するための戦略を示している
- Kotlin MVVM example - MVVM(Model View ViewModel)パターンについての例
- Kotlin VIPER example - VIPER(View Interactor Presenter Entity Router)パターンについての例
- Complete-Google-Map-API-Tutorial - AndroidでGoogle Map APIを使用する方法を、基礎から応用まで完全な例付きで学ぶ
- Android Modular Architecture - Kotlinで記述された、モジュール化・クリーン・スケーラブル・テスト可能アーキテクチャを採用したAndroidサンプルアプリ。Jetpackのベストプラクティスに従っている
ポッドキャスト
- Fragmented - Android開発者向けのポッドキャスト。Donn FelkerとKaushik Gopalが、良いソフトウェアの開発やより良いAndroid開発者になるための話題を語る
- Android Developers Backstage - Android開発者による、Android開発者向けのポッドキャスト。GoogleのAndroidエンジニアチームの開発者たちが主催し、Android開発者に興味深いテーマを深く掘り下げ、GoogleのAndroidチームエンジニアとのインタビューを実施
- Android Dialogs - Androidコミュニティのメンバーと短い会話を行うビデオベースのポッドキャスト
- The Context - Hannes Dorfmann、Artem Zinnatullinと素晴らしいゲストたちによるAndroid開発に関するポッドキャスト
- Talking Kotlin - Kotlinとその他の話題に関するポッドキャスト
- Android Authority - Adam Doud、Joe Hindy、Jonathan FeistによるAndroid Authorityチームが運営する週刊Androidポッドキャスト
- Android Central - Android Centralチームが運営する週刊Androidポッドキャスト
ほかのライブラリ一覧
- The Android Arsenal - Android用のライブラリの大きなリスト
- Square libraries - Squareによる複数の高品質ライブラリ
- Awesome Android @LibHunt - あなたのAndroid用のツールボックス
- Android Store - Androidのライブラリ、プロジェクト、ツールを検索
代替開発手段
現時点ではAndroid APIを使ったネイティブアプリ開発を推奨します。Scalaはコードを簡潔にできますがメソッド数が増え、Multidexが必要です。KotlinはJavaプロジェクトと100%相互運用でき、Multidexなしで利用できる現代的な言語です。一方、クロスプラットフォーム開発などの代替手段が適する用途もあります。
C#
- Xamarin - C#でネイティブなiOS、Android、Mac、Windowsアプリを開発できるフレームワーク
HTML、CSS、JavaScript
- PhoneGap - Adobeが開発したオープンソースフレームワーク。HTML、CSS、JavaScriptを使用してクロスプラットフォームのモバイルアプリを作成可能
- Titanium - JavaScriptを使用して「ネイティブ」クロスプラットオームアプリを作成できるオープンソースフレームワーク
- NativeScript - JavaScriptから1つのコードベースでネイティブiOSおよびAndroidアプリを構築できるオープンソースフレームワーク
- React Native - Facebookが開発したReactでネイティブアプリを構築できるフレームワーク
- Ionic Framework - モバイル最適化されたHTML、CSS、JSとAngularJSを使用してハイブリッドアプリを構築できるフレームワーク
- Apache Cordova - コルダヴァベースのアプリケーションは、本質的にウェブ技術(HTML、CSSおよびJavaScript)で書かれたアプリケーションです。
- Capacitor - iOS、Android、ウェブ向けのクロスプラットフォームネイティブプログレッシブウェブアプリの開発。非常に有望なコルダヴァの代替ツールです。
Lua
- Corona SDK - ネイティブなiOSおよびAndroidアプリ(特にゲーム)を開発できるフレームワーク
Scala
Groovy
- Groovy on Android - GroovyによるAndroidの導入ガイド。
- Groovy Language Support for Android - Android向けGroovyのコンパイル用Gradleプラグイン。
- SwissKnife - Android向けにアノテーションを使用してビューインジェクションとスレッド管理を行うマルチ用途Groovyライブラリ。
Kotlin
- Anko - JetBrainsがKotlinで書いたAndroid向けDSL。
- Kotterknife - ButterKnifeに基づいたKotlinによるAndroidビューインジェクション。
- Android Kotlin Samples - Kotlinで書かれた基本的なAndroidコードサンプル。
- Kotlin coding puzzles - 白板コーディングおよび問題解決スキルを向上させるためのプログラミングチャレンジセット。
- KAndroid - Android SDKにおけるボイラープレートコードを削減するための軽量ライブラリ。
- RxKotlin/Pocket - このアプリはユーザーがリンクを簡単に保存でき、週ごとにEvernoteへエクスポート可能です。
- Android Clean Architecture - Kotlin - Uncle BobのクリーンアーキテクチャをKotlinと最新のAndroid技術で使用したベースプロジェクト。
- Koin - Kotlin向けの軽量な依存関係注入フレームワーク。
- AppDimens - どんな画面でもスマートにレスポンシブな次元(FX、DY、DP、SP、対数)を提供。
Flutter
- Flutter - AndroidおよびiOS向けの高品質ネイティブインターフェースを短時間で作成できるGoogleのモバイルアプリSDK
パフォーマンス
- awesome-android-performance - パフォーマンス最適化に役立つ素晴らしいAndroidチュートリアル、動画、ツールの一覧。
- Booster - BoosterはAndroidアプリ向けの最適化ツールキットです。
ほかのAwesomeリスト
ほかの優れたAwesomeリストはawesome-awesomenessで確認できます。
コントリビューション
コントリビューションを歓迎します。最初にコントリビューションガイドラインを確認してください。