素晴らしい WanAndroid プロジェクトはマテリアル デザイン + MVP + Rxjava2 + Retrofit + Dagger2 + GreenDao + Glide に基づいています
これは、とても良い気分になれる技術学習アプリです。使用されている技術は、基本的に現在の Android 開発で一般的に使用されている主流の技術フレームワークをカバーしています。主に Android 開発分野の専門家になりたい友人向けです。さらに、私はより優れた Android 開発者になることを目的とした新しい Android アドバンスト プランに取り組んでいます。興味のある方は参考にしてください。
Android Studio では、Dagger によって生成されたクラスが見つからないというメッセージが表示されます。プロジェクトを直接コンパイルすると、Dagger2 によって自動的に生成されます。
このプロジェクトにはまだ不完全な点がいくつかあります。バグを見つけた場合は、お気軽にメール ([email protected]) または PR までご連絡ください。
プロジェクトの API はすべて WanAndroid Web サイトからのものであり、純粋に共有学習を目的としており、商業目的で使用することはできません。 !ご質問やご提案がございましたら、[email protected] までご連絡ください。
プロジェクトのコードは、Alibaba Java 開発仕様と Alibaba Android 開発仕様に最大限準拠するよう努めており、良いコメントが付いています。
Rxjava2 を Retrofit2 と組み合わせて使用して、ネットワーク リクエストを作成します。
Rxjava2 オペレーターを使用して、イベント ストリームの変換、遅延、フィルターなどの操作を実行します。Compose オペレーターを RxUtils ツール クラスと組み合わせて使用すると、スレッド切り替え呼び出しのコードの数が簡素化されます。
Dagger2 を Dagger.Android と組み合わせて使用すると、結合せずにモデルをプレゼンターに挿入し、プレゼンターをビューに挿入して、MVP パターンをより効率的に実現できます。
BasePresenter は、イベント ストリーム サブスクリプションのライフ サイクルを統合するために使用されます。
マテリアル デザインのビヘイビア コレクション ツールバーを使用して、応答性の高い「上下」特殊効果を実装します。
上部にスライドするフローティングボタンを随所に採用し、閲覧の利便性を向上させています。
SmartRefreshLayout の豊富な更新アニメーションを使用して、プロジェクトの美しさを新たなレベルに引き上げます。
Tencent Bugly は、プロジェクトのバグと CI を修正するために使用されます。
プロジェクトのさまざまな場所で、見事なアニメーションや特殊効果が使用されています。
高カバレッジの単体テストと一部の UI テスト。
詳細を表示するには、このプロジェクトのクローンを作成してください。 。 。
「素晴らしいサードライブラリソース分析」を参照してください。
1. リクエスト URL のスキーム フィールドを https にグローバルに置き換えます。
2. 問題のバグを解決する
1. 公式アカウント内の検索をサポートするために、新しい公式アカウント列を追加しました
2. Bugly のバグを解決する
1. Android Oバージョンに適応する
2. Bugly のバグを解決する
1. Presenter レイヤーの単体テストを追加し、一部の View レイヤーの UI テストを自動化しました。
2.一定時間経過するとログイン状態が無効になる不具合を解決
3. 適切な小規模リファクタリングを実行する
4. Bugly の互換性バグを解決する
1. dagger.androidを追加します
2. config.gradle を使用して Gradle の依存関係を均一に管理する
3. RxBinding サブスクリプション処理をカプセル化する
4. 共有要素適応処理の追加
5. Compose を使用して統合された戻り結果処理を追加する
6. Glide メモリ、bitmapPool、diskCache 構成を追加します
7. 読み込みエラーページの表示ロジックを最適化
8. 登録インターフェースの最適化
9. 没入型ステータスバー表示効果を最適化する
10.Gradle バージョンを 3.0.1 に更新します。
1. 設定モジュールの追加
2. 共通の Web サイトインターフェイスを分離する
3. アイテムのマルチラベルを追加する
4.詳細インターフェースメニューを美しくする
5.ActivityOptionジャンプアニメーションを追加
6. メモリ リークの 90% 以上を解決する
1. RxBus のメモリ リークの問題を解決するために RxBus サブスクリプション管理を追加します。
2. Webviewが読み込めない場合がある問題を解決しました。
3. Android 6.0 の権限の問題を処理するために RxPermission を追加します。
4. 基本応答基本クラスは汎用であるため、大量のエンティティ コードが削減されます。
5. 知識分類ナビゲーションの詳細ページを追加します
6. 検索ページで検索レコードを追加および削除し、UI インターフェイスがより美しくなりました。
7.プロジェクト全体のUI美化
1. プロジェクトの下請け構造の合理化
2. 検索モジュールの最適化
3. 自動ログインを追加する
4.TabLayoutインテリジェント連携RecyclerViewの追加
5.没入型ステータスバーを追加する
6. 詳細記事メニューのスタイルを最適化する
7.プロジェクト全体のUI美化
1.Awesome WanAndroid の最初のバージョンを送信する
Hongyang が提供する WanAndroid API
GeekNews が Dagger2 と MVP のアーキテクチャ上のアイデアを提供します
MD 特殊効果の実装アイデア (Toutiao 提供)
diycode が提供するスマート スライド フローティング ボタンの実装アイデア
Eyepetizer-in-Kotlin が提供する検索インターフェイス切り替えの特殊効果を実装するためのアイデア
また、国内外の優秀な方々のプロジェクトもたくさん参考にさせていただきました、オープンソースありがとうございます!
Petal は美しい UI インターフェイス デザインを提供します。Petal に感謝します
iconfont 外部世界に公開された Alibaba の優れたアイコン リソース
Rxjava
RxAndroid
Rxバインディング
後付け
OKHTTP
グソン
グライド
ダガー2
バターナイフ
グリーンダオ
スマートリフレッシュレイアウト
ロッティアンドロイド
現在、Android 業界は徐々に人材が飽和してきていますが、シニア人材は依然として不足しており、100 件の履歴書のうち適切な候補者は 2 ~ 3 人しかおらず、ほとんどがビジネスに飽きているという状況に遭遇します。一生懸命勉強するのに時間がかかる、またはスキルを向上させるために何を学べばよいのかわかりませんでした。 Android 開発者にとって、Android の完全な知識フレームワークをできるだけ早く確立し、大手メーカーで頻繁に現れる共通テストの知識ポイントを理解し、面接スキルを習得することが非常に重要です。
昨年、一流工場に入り、よりやりがいのある仕事をして、より高い給料を得るために、半年前から準備を進め、体系的に質の高い面接質問集を作成し、 「2年間刀を研ぎました」半年間、継続的に取材を続け、合計で取材をさせていただきました。 20 ~ 30 社の面接のたびに、対応する面接の質問と詳細な回答を体系的にまとめ、面接プロジェクトに反映しました。現在、各モジュールの下に、超高周波および高周波に関するよくある質問が注意深くまとめられています。 。知識ポイント。
この 1 年間、私は大企業との実践的な面接をレビューする中で、元のコンテンツを徐々に最適化し、多くの新しいコンテンツを追加してきました。一流ネット企業の面接の要点をまとめた内容とも言え、履歴書の書き方や面接対策などの内容も含まれており、面接準備の時間と労力を大幅に節約できます。良い仕事を見つけることの難しさを軽減します。
このインタビュー プロジェクトは、私の Github: https://github.com/JsonChao/Awesome-Android-Interview の Awesome-Android-Interview インタビュー プロジェクトとは異なります。Awesome-Android-Interview は 2 年前に廃止されました (2020 年 10 月の更新)。内容がやや古く、厳密に表現されていない点が多く、全体的に金の含有量が低いです。今日共有したい面接質問バンクは、私が過去 2 年間にわたって継続的に要約し、洗練し、蓄積してきた体系的で質の高い面接質問です。その中の核となる質問の多くは、プレッシャーの下で繰り返し修正されてきました。昇華、金の含有量が非常に高い。
共有する前に注意すべき点は、情報を漏らさないことです。よく考えてみると次のことがわかります。
1. あなたが暴露され、それを手に入れる人々があなたよりも早くそれを理解し、より早く大きな工場に入り、高い給料を得るなら、大きな工場に入る可能性は小さくなります結局のところ、良いことは限られています。今では、すべてのニンジンが落とし穴になります。
2. 2 年前に私が公開した Awesome-Android-Interview 面接質問バンクの簡易バージョンは、今でもさまざまな研修機関で排水材料として使用されており、これが現在の Android の関与を増大させています。 。
したがって、これは覚えておく必要があります。
入手方法:下記のQRコードを読み取ってください。
これは私が過去 7 年間研究してきた命題です。私は小さな町の出身で、反撃を繰り返しながら深センでの地位を確立したので、まず自分自身でリサーチをしていました。生まれが普通の人であればあるほど、体系的かつ包括的な改善を行うにはより多くの忍耐が必要になります。この点に関して、私には非常に豊富な実践経験と方法論があります。そこで、皆さんと一緒に体系的な変革を完了したいと考え、「JsonChao」成長コミュニティを立ち上げました。
今後の Android 開発に必要なナレッジ システムの構築に重点を置いたパブリック アカウントJsonChao
開設しました。毎日知識を増やすことができるように、質の高い記事を毎日お届けします。最新の記事や更新情報をできるだけ早く入手したい場合は、スキャンしてフォローしてください〜
著作権 2018 JsonChao
Apache License バージョン 2.0 (「ライセンス」) に基づいてライセンスされており、ライセンスに準拠する場合を除き、このファイルを使用することはできません。
http://www.apache.org/licenses/LICENSE-2.0
適用される法律で義務付けられている場合、または書面による同意がない限り、ライセンスに基づいて配布されるソフトウェアは、明示的か黙示的かを問わず、いかなる種類の保証や条件もなく、「現状のまま」で配布されます。許可と制限を規定する特定の言語については、ライセンスを参照してください。ライセンスに基づいて。