├── .github ├── FUNDING.yml └── workflows │ └── android.yml ├── .gitignore ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── PULL_REQUEST_TEMPLATE.md ├── README.md ├── app ├── build.gradle ├── proguard-rules.pro └── src │ └── main │ ├── AndroidManifest.xml │ ├── assets │ └── doc │ │ └── privacy_policy.html │ ├── ic_launcher-playstore.png │ ├── java │ └── per │ │ └── goweii │ │ └── wanandroid │ │ ├── common │ │ ├── Config.java │ │ ├── Constant.java │ │ ├── InitTasks.kt │ │ └── WanApp.java │ │ ├── db │ │ ├── WanDb.kt │ │ ├── WanRoom.kt │ │ ├── dao │ │ │ ├── ReadLaterDao.kt │ │ │ └── ReadRecordDao.kt │ │ ├── executor │ │ │ ├── DbExecutor.kt │ │ │ ├── ReadLaterExecutor.kt │ │ │ └── ReadRecordExecutor.kt │ │ ├── migration │ │ │ └── Migrations.kt │ │ └── model │ │ │ ├── ReadLaterModel.kt │ │ │ └── ReadRecordModel.kt │ │ ├── event │ │ ├── ArticleDeleteEvent.java │ │ ├── ArticleShareEvent.java │ │ ├── BannerAutoSwitchEnableEvent.java │ │ ├── BaseEvent.java │ │ ├── CloseSecondFloorEvent.java │ │ ├── CollectionEvent.java │ │ ├── HomeActionBarEvent.java │ │ ├── LoginEvent.java │ │ ├── MessageCountEvent.java │ │ ├── MessageDeleteEvent.java │ │ ├── MessageUpdateEvent.java │ │ ├── ReadLaterEvent.java │ │ ├── ReadRecordAddedEvent.java │ │ ├── ReadRecordUpdateEvent.java │ │ ├── ScrollTopEvent.java │ │ ├── SettingChangeEvent.java │ │ └── UserInfoUpdateEvent.java │ │ ├── http │ │ ├── BaseRequest.java │ │ ├── CacheListener.java │ │ ├── GoweiiHostInterceptor.kt │ │ ├── NullCacheException.java │ │ ├── RequestCallback.java │ │ ├── RequestListener.java │ │ ├── RxHttpRequestSetting.java │ │ ├── WanApi.java │ │ ├── WanCache.java │ │ └── WanResponse.java │ │ ├── module │ │ ├── book │ │ │ ├── activity │ │ │ │ └── BookDetailsActivity.kt │ │ │ ├── adapter │ │ │ │ ├── BookAdapter.java │ │ │ │ └── BookChapterAdapter.java │ │ │ ├── contract │ │ │ │ ├── BookContract.kt │ │ │ │ └── BookDetailsContract.kt │ │ │ ├── fragment │ │ │ │ └── BookFragment.kt │ │ │ └── model │ │ │ │ ├── BookBean.kt │ │ │ │ ├── BookChapterBean.kt │ │ │ │ └── BookRequest.java │ │ ├── home │ │ │ ├── activity │ │ │ │ ├── SearchActivity.java │ │ │ │ └── UserPageActivity.java │ │ │ ├── fragment │ │ │ │ ├── HomeFragment.java │ │ │ │ ├── SearchHistoryFragment.java │ │ │ │ └── SearchResultFragment.java │ │ │ ├── model │ │ │ │ ├── BannerBean.java │ │ │ │ ├── HomeRequest.java │ │ │ │ ├── HotKeyBean.java │ │ │ │ └── ImageBean.kt │ │ │ ├── presenter │ │ │ │ ├── HomePresenter.java │ │ │ │ ├── SearchHistoryPresenter.java │ │ │ │ ├── SearchResultPresenter.java │ │ │ │ ├── UserPagePresenter.java │ │ │ │ └── WebDialogPresenter.java │ │ │ └── view │ │ │ │ ├── HomeView.java │ │ │ │ ├── SearchHistoryView.java │ │ │ │ ├── SearchResultView.java │ │ │ │ ├── UserPageView.java │ │ │ │ └── WebDialogView.java │ │ ├── knowledge │ │ │ ├── activity │ │ │ │ └── KnowledgeArticleActivity.java │ │ │ ├── adapter │ │ │ │ ├── KnowledgeAdapter.java │ │ │ │ └── KnowledgeArticleFragmentPagerAdapter.java │ │ │ ├── fragment │ │ │ │ ├── KnowledgeArticleFragment.java │ │ │ │ └── KnowledgeFragment.java │ │ │ ├── model │ │ │ │ └── KnowledgeRequest.java │ │ │ ├── presenter │ │ │ │ ├── KnowledgeArticlePresenter.java │ │ │ │ └── KnowledgePresenter.java │ │ │ └── view │ │ │ │ ├── KnowledgeArticleView.java │ │ │ │ └── KnowledgeView.java │ │ ├── login │ │ │ ├── activity │ │ │ │ ├── AuthActivity.java │ │ │ │ └── QuickLoginActivity.kt │ │ │ ├── fragment │ │ │ │ ├── LoginFragment.java │ │ │ │ └── RegisterFragment.java │ │ │ ├── model │ │ │ │ ├── LoginBean.java │ │ │ │ ├── LoginInfoEntity.java │ │ │ │ ├── LoginRequest.java │ │ │ │ └── UserEntity.kt │ │ │ ├── presenter │ │ │ │ ├── AuthPresenter.java │ │ │ │ ├── LoginPresenter.java │ │ │ │ ├── QuickLoginPresenter.kt │ │ │ │ └── RegisterPresenter.java │ │ │ └── view │ │ │ │ ├── AuthView.java │ │ │ │ ├── LoginView.java │ │ │ │ ├── QuickLoginView.kt │ │ │ │ └── RegisterView.java │ │ ├── main │ │ │ ├── activity │ │ │ │ ├── ArticleActivity.kt │ │ │ │ ├── ArticleListActivity.kt │ │ │ │ ├── BringToFrontActivity.java │ │ │ │ ├── CrashActivity.kt │ │ │ │ ├── InstallApkActivity.java │ │ │ │ ├── MainActivity.java │ │ │ │ ├── RouterActivity.java │ │ │ │ ├── ScanActivity.kt │ │ │ │ ├── ShareArticleActivity.java │ │ │ │ ├── SplashActivity.java │ │ │ │ ├── WebActivity.java │ │ │ │ └── theme │ │ │ │ │ └── MainActivities.kt │ │ │ ├── adapter │ │ │ │ ├── ArticleAdapter.java │ │ │ │ ├── BookmarkAdapter.java │ │ │ │ ├── MainTabAdapter.java │ │ │ │ └── WebDialogPagerAdapter.java │ │ │ ├── contract │ │ │ │ ├── ArticleListContract.kt │ │ │ │ └── BookmarkContract.kt │ │ │ ├── dialog │ │ │ │ ├── AdvertDialog.java │ │ │ │ ├── ArticleShareDialog.kt │ │ │ │ ├── CardShareDialog.kt │ │ │ │ ├── CopiedLinkDialog.java │ │ │ │ ├── DailyDialog.kt │ │ │ │ ├── DownloadDialog.java │ │ │ │ ├── ImageListPreviewDialog.kt │ │ │ │ ├── ImageMenuDialog.kt │ │ │ │ ├── ImagePreviewDialog.kt │ │ │ │ ├── PasswordDialog.java │ │ │ │ ├── PrivacyPolicyDialog.java │ │ │ │ ├── WebDialog.java │ │ │ │ ├── WebGuideDialog.java │ │ │ │ ├── WebMenuDialog.java │ │ │ │ ├── WebQuickDialog.java │ │ │ │ └── WebShareDialog.java │ │ │ ├── fragment │ │ │ │ ├── ArticleListFragment.kt │ │ │ │ ├── BookmarkFragment.kt │ │ │ │ ├── KnowledgeNavigationFragment.java │ │ │ │ ├── MainFragment.java │ │ │ │ └── UserArticleFragment.java │ │ │ ├── model │ │ │ │ ├── AdvertBean.java │ │ │ │ ├── ArticleBean.java │ │ │ │ ├── ArticleListBean.java │ │ │ │ ├── BetaUserBean.java │ │ │ │ ├── ChapterBean.java │ │ │ │ ├── CoinInfoBean.java │ │ │ │ ├── CollectArticleEntity.java │ │ │ │ ├── CollectionLinkBean.java │ │ │ │ ├── ConfigBean.java │ │ │ │ ├── DateRangeEntity.java │ │ │ │ ├── JinrishiciBean.java │ │ │ │ ├── ListBean.java │ │ │ │ ├── MainRequest.java │ │ │ │ ├── RecommendBean.java │ │ │ │ ├── TabEntity.java │ │ │ │ ├── UpdateBean.java │ │ │ │ ├── UsefulWebBean.java │ │ │ │ ├── UserPageBean.java │ │ │ │ └── WebArticleUrlRegexBean.java │ │ │ ├── presenter │ │ │ │ ├── ArticlePresenter.kt │ │ │ │ ├── MainPresenter.java │ │ │ │ ├── ScanPresenter.kt │ │ │ │ ├── ShareArticlePresenter.java │ │ │ │ ├── UserArticlePresenter.java │ │ │ │ └── WebPresenter.java │ │ │ ├── utils │ │ │ │ ├── BottomDrawerViewOutlineProvider.kt │ │ │ │ └── FloatIconTouchListener.kt │ │ │ └── view │ │ │ │ ├── ArticleView.kt │ │ │ │ ├── MainView.java │ │ │ │ ├── ScanView.kt │ │ │ │ ├── ShareArticleView.java │ │ │ │ ├── UserArticleView.java │ │ │ │ └── WebView.java │ │ ├── mine │ │ │ ├── activity │ │ │ │ ├── AboutActivity.java │ │ │ │ ├── AboutMeActivity.java │ │ │ │ ├── CoinActivity.java │ │ │ │ ├── CoinRankActivity.java │ │ │ │ ├── CollectionActivity.java │ │ │ │ ├── HostInterruptActivity.java │ │ │ │ ├── MessageActivity.kt │ │ │ │ ├── MineShareActivity.java │ │ │ │ ├── OpenActivity.java │ │ │ │ ├── ReadLaterActivity.java │ │ │ │ ├── ReadRecordActivity.java │ │ │ │ ├── SettingActivity.java │ │ │ │ └── UserInfoActivity.kt │ │ │ ├── adapter │ │ │ │ ├── CoinRankAdapter.java │ │ │ │ ├── CoinRecordAdapter.java │ │ │ │ ├── CollectionLinkAdapter.java │ │ │ │ ├── HostInterruptAdapter.java │ │ │ │ ├── MessageReadedAdapter.kt │ │ │ │ ├── MessageUnreadAdapter.kt │ │ │ │ ├── MineShareArticleAdapter.java │ │ │ │ ├── ReadLaterAdapter.java │ │ │ │ └── ReadRecordAdapter.java │ │ │ ├── contract │ │ │ │ └── UserInfoContract.kt │ │ │ ├── dialog │ │ │ │ ├── AddHostDialog.java │ │ │ │ ├── EditCollectLinkDialog.java │ │ │ │ └── InfoEditDialog.java │ │ │ ├── fragment │ │ │ │ ├── CollectionArticleFragment.java │ │ │ │ ├── CollectionLinkFragment.java │ │ │ │ ├── HostBlackFragment.java │ │ │ │ ├── HostWhiteFragment.java │ │ │ │ ├── MessageReadedFragment.kt │ │ │ │ ├── MessageUnreadFragment.kt │ │ │ │ └── MineFragment.java │ │ │ ├── model │ │ │ │ ├── AboutMeBean.java │ │ │ │ ├── CoinRankBean.java │ │ │ │ ├── CoinRecordBean.java │ │ │ │ ├── HostEntity.java │ │ │ │ ├── MessageBean.kt │ │ │ │ ├── MineRequest.java │ │ │ │ ├── NotificationBean.kt │ │ │ │ ├── OpenEntity.java │ │ │ │ └── UserInfoBean.java │ │ │ ├── presenter │ │ │ │ ├── AboutMePresenter.java │ │ │ │ ├── AboutPresenter.java │ │ │ │ ├── CoinPresenter.java │ │ │ │ ├── CoinRankPresenter.java │ │ │ │ ├── CollectionArticlePresenter.java │ │ │ │ ├── CollectionLinkPresenter.java │ │ │ │ ├── MessageReadedPresenter.kt │ │ │ │ ├── MessageUnreadPresenter.kt │ │ │ │ ├── MinePresenter.java │ │ │ │ ├── MineSharePresenter.java │ │ │ │ ├── ReadLaterPresenter.java │ │ │ │ ├── ReadRecordPresenter.java │ │ │ │ └── SettingPresenter.java │ │ │ └── view │ │ │ │ ├── AboutMeView.java │ │ │ │ ├── AboutView.java │ │ │ │ ├── CoinRankView.java │ │ │ │ ├── CoinView.java │ │ │ │ ├── CollectionArticleView.java │ │ │ │ ├── CollectionLinkView.java │ │ │ │ ├── MessageReadedView.kt │ │ │ │ ├── MessageUnreadView.kt │ │ │ │ ├── MineShareView.java │ │ │ │ ├── MineView.java │ │ │ │ ├── ReadLaterView.java │ │ │ │ ├── ReadRecordView.java │ │ │ │ └── SettingView.java │ │ ├── navigation │ │ │ ├── adapter │ │ │ │ └── NaviAdapter.java │ │ │ ├── fragment │ │ │ │ └── NaviFragment.java │ │ │ ├── model │ │ │ │ ├── NaviBean.java │ │ │ │ └── NaviRequest.java │ │ │ ├── presenter │ │ │ │ └── NaviPresenter.java │ │ │ └── view │ │ │ │ └── NaviView.java │ │ ├── project │ │ │ ├── fragment │ │ │ │ ├── ProjectArticleFragment.java │ │ │ │ └── ProjectFragment.java │ │ │ ├── model │ │ │ │ └── ProjectRequest.java │ │ │ ├── presenter │ │ │ │ ├── ProjectArticlePresenter.java │ │ │ │ └── ProjectPresenter.java │ │ │ └── view │ │ │ │ ├── ProjectArticleView.java │ │ │ │ └── ProjectView.java │ │ ├── question │ │ │ ├── fragment │ │ │ │ └── QuestionFragment.kt │ │ │ ├── model │ │ │ │ └── QuestionRequest.kt │ │ │ ├── presenter │ │ │ │ └── QuestionPresenter.kt │ │ │ └── view │ │ │ │ └── QuestionView.kt │ │ └── wxarticle │ │ │ ├── fragment │ │ │ ├── WxArticleFragment.java │ │ │ └── WxFragment.java │ │ │ ├── model │ │ │ └── WxRequest.java │ │ │ ├── presenter │ │ │ ├── WxArticlePresenter.java │ │ │ └── WxPresenter.java │ │ │ └── view │ │ │ ├── WxArticleView.java │ │ │ └── WxView.java │ │ ├── utils │ │ ├── ADUtils.java │ │ ├── ArticleDiffCallback.kt │ │ ├── ConfigUtils.java │ │ ├── CookieUtils.kt │ │ ├── CopiedTextProcessor.java │ │ ├── DarkModeUtils.java │ │ ├── GrayFilterHelper.kt │ │ ├── GuideSPUtils.java │ │ ├── ImageLoader.java │ │ ├── KeyboardHelper.java │ │ ├── MagicIndicatorUtils.java │ │ ├── MultiStateUtils.kt │ │ ├── NotificationHtmlParser.kt │ │ ├── PictureSelector.kt │ │ ├── PredefinedTaskQueen.kt │ │ ├── RecommendManager.java │ │ ├── RvConfigUtils.java │ │ ├── RvScrollTopUtils.java │ │ ├── SearchHistoryUtils.java │ │ ├── SettingUtils.java │ │ ├── TaskQueen.kt │ │ ├── ThemeUtils.java │ │ ├── UpdateUtils.java │ │ ├── UrlOpenUtils.kt │ │ ├── UserUtils.java │ │ ├── biometric │ │ │ ├── BiometricHelper.kt │ │ │ └── CipherUtils.kt │ │ ├── cdkey │ │ │ ├── CDKey.java │ │ │ └── CDKeyUtils.java │ │ ├── fingerprint │ │ │ └── FingerprintHelper.kt │ │ ├── router │ │ │ ├── Param.java │ │ │ ├── Router.java │ │ │ └── RouterMap.java │ │ ├── wanpwd │ │ │ ├── AboutMeWanPwd.java │ │ │ ├── CDKeyWanPwd.java │ │ │ ├── CreateCDKeyWanPwd.java │ │ │ ├── FestivalWanPwd.java │ │ │ ├── IWanPwd.java │ │ │ ├── QQWanPwd.java │ │ │ ├── UnknownWanPwd.java │ │ │ ├── UserPageWanPwd.java │ │ │ ├── WanPwdParser.java │ │ │ └── WebWanPwd.java │ │ └── web │ │ │ ├── HitResult.kt │ │ │ ├── HostInterceptUtils.java │ │ │ ├── WebHolder.java │ │ │ ├── WebInstance.java │ │ │ ├── WebScrollableUtils.kt │ │ │ ├── cache │ │ │ ├── HtmlCacheManager.kt │ │ │ ├── ImageCacheManager.kt │ │ │ ├── ReadingModeManager.kt │ │ │ └── ResCacheManager.kt │ │ │ ├── css │ │ │ └── CssStyleManager.kt │ │ │ ├── interceptor │ │ │ ├── BaseWebUrlInterceptor.kt │ │ │ ├── WebHttpClient.kt │ │ │ ├── WebReadingModeInterceptor.kt │ │ │ ├── WebResUrlInterceptor.kt │ │ │ └── WebUrlInterceptor.kt │ │ │ ├── js │ │ │ ├── BaseJsInterface.kt │ │ │ ├── ImageClickJsInterface.kt │ │ │ └── JsInjector.kt │ │ │ └── view │ │ │ ├── WebContainer.java │ │ │ └── X5WebView.java │ │ └── widget │ │ ├── AccountInputView.java │ │ ├── BravhLoadMoreView.java │ │ ├── CollectView.java │ │ ├── ColorCircleBackgroundView.java │ │ ├── EmailInputView.java │ │ ├── ImagePreviewContainer.kt │ │ ├── ImagePreviewView.kt │ │ ├── InputView.java │ │ ├── ListenableNestedScrollView.java │ │ ├── LogoAnimView.kt │ │ ├── NestedSwipeLayout.java │ │ ├── ParallaxStackLayout.kt │ │ ├── PasswordInputView.java │ │ ├── SubmitView.java │ │ ├── bottomdrawer │ │ ├── BottomDrawerLayout.kt │ │ ├── DragCompat.kt │ │ └── ScrollCompat.kt │ │ └── refresh │ │ ├── ShiciRefreshHeader.java │ │ ├── ShiciRefreshHolder.java │ │ └── SimpleOnMultiListener.java │ └── res │ ├── color-night │ ├── selector_text_color_article_author.xml │ ├── selector_text_color_article_chapter.xml │ └── selector_text_color_article_tag.xml │ ├── color │ ├── selector_text_color_article_author.xml │ ├── selector_text_color_article_chapter.xml │ └── selector_text_color_article_tag.xml │ ├── drawable-night │ ├── action_search_bg.xml │ ├── article_tag_bg.xml │ ├── article_tag_bg_pressed.xml │ ├── bg_crash_exit.xml │ ├── bg_crash_restart.xml │ ├── bg_notification.xml │ ├── bg_solid_color_heart_radius_max.xml │ ├── bg_white_circle.xml │ ├── coin_rank_progress_bar.xml │ ├── scrollbar.xml │ ├── selector_article_tag_bg.xml │ ├── selector_flush.xml │ ├── shadow_circle.xml │ ├── shape_image_perview_place_holder.xml │ ├── shape_image_place_holder.xml │ ├── splash_bg.xml │ ├── splash_bg_gold.xml │ ├── splash_bg_green.xml │ ├── splash_bg_pink.xml │ └── splash_bg_red.xml │ ├── drawable-xxhdpi │ ├── ic_about.png │ ├── ic_account_normal.png │ ├── ic_add.png │ ├── ic_album.png │ ├── ic_avatar_edit.png │ ├── ic_bottom_bar_home.png │ ├── ic_bottom_bar_mine.png │ ├── ic_bottom_bar_navi.png │ ├── ic_bottom_bar_ques.png │ ├── ic_browser.png │ ├── ic_capture.png │ ├── ic_coin.png │ ├── ic_collect.png │ ├── ic_copy_link.png │ ├── ic_delete.png │ ├── ic_email.png │ ├── ic_empty.png │ ├── ic_enter.png │ ├── ic_error.png │ ├── ic_exit.png │ ├── ic_eye_normal.png │ ├── ic_failure.png │ ├── ic_flush_close.png │ ├── ic_flush_open.png │ ├── ic_github.png │ ├── ic_go_left.png │ ├── ic_home.png │ ├── ic_http_interrupt.png │ ├── ic_icon.png │ ├── ic_into.png │ ├── ic_jianshu.png │ ├── ic_menu.png │ ├── ic_more.png │ ├── ic_next.png │ ├── ic_none.png │ ├── ic_notification.png │ ├── ic_password_normal.png │ ├── ic_qq.png │ ├── ic_qq_group.png │ ├── ic_qrcode.png │ ├── ic_rank.png │ ├── ic_rank_1.png │ ├── ic_rank_2.png │ ├── ic_rank_3.png │ ├── ic_read_later.png │ ├── ic_read_later_added.png │ ├── ic_read_record.png │ ├── ic_refresh.png │ ├── ic_remove.png │ ├── ic_rule.png │ ├── ic_scan.png │ ├── ic_search.png │ ├── ic_setting.png │ ├── ic_share.png │ ├── ic_share_article.png │ ├── ic_success.png │ ├── image_holder.png │ ├── logo.png │ └── logo_512.png │ ├── drawable │ ├── action_search_bg.xml │ ├── article_tag_bg.xml │ ├── article_tag_bg_pressed.xml │ ├── bg_crash_exit.xml │ ├── bg_crash_restart.xml │ ├── bg_notification.xml │ ├── bg_solid_color_heart_radius_max.xml │ ├── bg_white_circle.xml │ ├── coin_rank_progress_bar.xml │ ├── scrollbar.xml │ ├── selector_article_tag_bg.xml │ ├── selector_flush.xml │ ├── shadow_circle.xml │ ├── shape_dialog_card_share_btn_mask.xml │ ├── shape_image_perview_place_holder.xml │ ├── shape_image_place_holder.xml │ ├── splash_bg.xml │ ├── splash_bg_gold.xml │ ├── splash_bg_green.xml │ ├── splash_bg_pink.xml │ └── splash_bg_red.xml │ ├── layout │ ├── action_bar_fixed_magic_indicator.xml │ ├── action_bar_mine.xml │ ├── action_bar_multi_magic_indicator.xml │ ├── action_bar_search.xml │ ├── action_bar_web.xml │ ├── activity_about.xml │ ├── activity_about_me.xml │ ├── activity_article.xml │ ├── activity_article_float_btn.xml │ ├── activity_article_list.xml │ ├── activity_auth.xml │ ├── activity_book_details.xml │ ├── activity_coin.xml │ ├── activity_coin_rank.xml │ ├── activity_collection.xml │ ├── activity_crash.xml │ ├── activity_host_interrupt.xml │ ├── activity_knowledge_article.xml │ ├── activity_main.xml │ ├── activity_message.xml │ ├── activity_mine_share.xml │ ├── activity_open.xml │ ├── activity_read_later.xml │ ├── activity_read_record.xml │ ├── activity_scan.xml │ ├── activity_search.xml │ ├── activity_setting.xml │ ├── activity_share_article.xml │ ├── activity_splash.xml │ ├── activity_user_info.xml │ ├── activity_user_page.xml │ ├── activity_web.xml │ ├── dialog_add_host.xml │ ├── dialog_advert.xml │ ├── dialog_article_share.xml │ ├── dialog_card_share.xml │ ├── dialog_copied_link.xml │ ├── dialog_daily.xml │ ├── dialog_download.xml │ ├── dialog_edit_collect_link.xml │ ├── dialog_guide_btn.xml │ ├── dialog_guide_tip.xml │ ├── dialog_image_list_preview.xml │ ├── dialog_image_menu.xml │ ├── dialog_image_preview.xml │ ├── dialog_info_edit.xml │ ├── dialog_password.xml │ ├── dialog_privacy_policy.xml │ ├── dialog_read_later_notification.xml │ ├── dialog_web.xml │ ├── dialog_web_guide.xml │ ├── dialog_web_menu.xml │ ├── dialog_web_quick.xml │ ├── dialog_web_share.xml │ ├── dialog_web_vp_item.xml │ ├── fragment_article_list.xml │ ├── fragment_book.xml │ ├── fragment_bookmark.xml │ ├── fragment_collection_article.xml │ ├── fragment_collection_link.xml │ ├── fragment_home.xml │ ├── fragment_host_interrupt.xml │ ├── fragment_knowledge_article.xml │ ├── fragment_knowledge_navigation.xml │ ├── fragment_knowledge_navigation_child.xml │ ├── fragment_login.xml │ ├── fragment_main.xml │ ├── fragment_message_readed.xml │ ├── fragment_message_unread.xml │ ├── fragment_mine.xml │ ├── fragment_project.xml │ ├── fragment_project_article.xml │ ├── fragment_question.xml │ ├── fragment_register.xml │ ├── fragment_search_history.xml │ ├── fragment_search_result.xml │ ├── fragment_user_article.xml │ ├── fragment_wx.xml │ ├── fragment_wx_article.xml │ ├── layout_about_me_info.xml │ ├── layout_about_me_sponsor.xml │ ├── layout_app_qrcode_share.xml │ ├── layout_article_collect_view_checked.xml │ ├── layout_article_collect_view_unchecked.xml │ ├── layout_article_qrcode_share.xml │ ├── layout_brvah_load_more.xml │ ├── layout_collect_view_checked.xml │ ├── layout_collect_view_unchecked.xml │ ├── layout_shici_refresh_header.xml │ ├── layout_state_empty_center.xml │ ├── layout_state_empty_top.xml │ ├── layout_state_error_center.xml │ ├── layout_state_error_top.xml │ ├── layout_state_loading_center.xml │ ├── layout_state_loading_top.xml │ ├── layout_web_view.xml │ ├── rv_item_article.xml │ ├── rv_item_article_share_cover.xml │ ├── rv_item_book.xml │ ├── rv_item_book_chapter.xml │ ├── rv_item_bookmark.xml │ ├── rv_item_coin_rank.xml │ ├── rv_item_coin_record.xml │ ├── rv_item_collection_link.xml │ ├── rv_item_dialog_web_menu.xml │ ├── rv_item_host_interrupt.xml │ ├── rv_item_host_interrupt_footer.xml │ ├── rv_item_knowledge.xml │ ├── rv_item_knowledge_child.xml │ ├── rv_item_message_readed.xml │ ├── rv_item_message_unread.xml │ ├── rv_item_mine_share_article.xml │ ├── rv_item_open.xml │ ├── rv_item_read_later.xml │ ├── rv_item_read_record.xml │ ├── rv_item_search_history.xml │ ├── rv_item_search_hot.xml │ └── tab_item_main.xml │ ├── mipmap-anydpi-v26 │ ├── ic_launcher.xml │ ├── ic_launcher_gold.xml │ ├── ic_launcher_gold_round.xml │ ├── ic_launcher_green.xml │ ├── ic_launcher_green_round.xml │ ├── ic_launcher_pink.xml │ ├── ic_launcher_pink_round.xml │ ├── ic_launcher_red.xml │ ├── ic_launcher_red_round.xml │ └── ic_launcher_round.xml │ ├── mipmap-hdpi │ ├── ic_launcher.png │ ├── ic_launcher_foreground.png │ ├── ic_launcher_gold.png │ ├── ic_launcher_gold_foreground.png │ ├── ic_launcher_gold_round.png │ ├── ic_launcher_green.png │ ├── ic_launcher_green_foreground.png │ ├── ic_launcher_green_round.png │ ├── ic_launcher_pink.png │ ├── ic_launcher_pink_foreground.png │ ├── ic_launcher_pink_round.png │ ├── ic_launcher_red.png │ ├── ic_launcher_red_foreground.png │ ├── ic_launcher_red_round.png │ └── ic_launcher_round.png │ ├── mipmap-mdpi │ ├── ic_launcher.png │ ├── ic_launcher_foreground.png │ ├── ic_launcher_gold.png │ ├── ic_launcher_gold_foreground.png │ ├── ic_launcher_gold_round.png │ ├── ic_launcher_green.png │ ├── ic_launcher_green_foreground.png │ ├── ic_launcher_green_round.png │ ├── ic_launcher_pink.png │ ├── ic_launcher_pink_foreground.png │ ├── ic_launcher_pink_round.png │ ├── ic_launcher_red.png │ ├── ic_launcher_red_foreground.png │ ├── ic_launcher_red_round.png │ └── ic_launcher_round.png │ ├── mipmap-xhdpi │ ├── ic_launcher.png │ ├── ic_launcher_foreground.png │ ├── ic_launcher_gold.png │ ├── ic_launcher_gold_foreground.png │ ├── ic_launcher_gold_round.png │ ├── ic_launcher_green.png │ ├── ic_launcher_green_foreground.png │ ├── ic_launcher_green_round.png │ ├── ic_launcher_pink.png │ ├── ic_launcher_pink_foreground.png │ ├── ic_launcher_pink_round.png │ ├── ic_launcher_red.png │ ├── ic_launcher_red_foreground.png │ ├── ic_launcher_red_round.png │ └── ic_launcher_round.png │ ├── mipmap-xxhdpi │ ├── ic_launcher.png │ ├── ic_launcher_foreground.png │ ├── ic_launcher_gold.png │ ├── ic_launcher_gold_foreground.png │ ├── ic_launcher_gold_round.png │ ├── ic_launcher_green.png │ ├── ic_launcher_green_foreground.png │ ├── ic_launcher_green_round.png │ ├── ic_launcher_pink.png │ ├── ic_launcher_pink_foreground.png │ ├── ic_launcher_pink_round.png │ ├── ic_launcher_red.png │ ├── ic_launcher_red_foreground.png │ ├── ic_launcher_red_round.png │ └── ic_launcher_round.png │ ├── mipmap-xxxhdpi │ ├── ic_launcher.png │ ├── ic_launcher_foreground.png │ ├── ic_launcher_gold.png │ ├── ic_launcher_gold_foreground.png │ ├── ic_launcher_gold_round.png │ ├── ic_launcher_green.png │ ├── ic_launcher_green_foreground.png │ ├── ic_launcher_green_round.png │ ├── ic_launcher_pink.png │ ├── ic_launcher_pink_foreground.png │ ├── ic_launcher_pink_round.png │ ├── ic_launcher_red.png │ ├── ic_launcher_red_foreground.png │ ├── ic_launcher_red_round.png │ └── ic_launcher_round.png │ ├── values-night │ ├── themes.xml │ ├── themes_gold.xml │ ├── themes_green.xml │ ├── themes_pink.xml │ └── themes_red.xml │ ├── values │ ├── attrs.xml │ ├── attrs_theme.xml │ ├── strings.xml │ ├── styles.xml │ ├── themes.xml │ ├── themes_gold.xml │ ├── themes_green.xml │ ├── themes_pink.xml │ └── themes_red.xml │ └── xml │ ├── file_path.xml │ └── network_security_config.xml ├── basic_core ├── build.gradle ├── proguard-rules.pro └── src │ └── main │ ├── AndroidManifest.xml │ ├── java │ └── per │ │ └── goweii │ │ └── basic │ │ └── core │ │ ├── CoreInit.java │ │ ├── adapter │ │ ├── FixedFragmentPagerAdapter.java │ │ ├── MultiFragmentPagerAdapter.java │ │ └── TabFragmentPagerAdapter.java │ │ ├── base │ │ ├── App.java │ │ ├── AppLike.java │ │ ├── BaseActivity.java │ │ ├── BaseApp.java │ │ ├── BaseAppLike.java │ │ ├── BaseEntity.java │ │ ├── BaseFragment.java │ │ ├── BasePresenter.java │ │ └── BaseView.java │ │ ├── common │ │ ├── Config.java │ │ └── Constant.java │ │ ├── glide │ │ ├── GlideHelper.java │ │ ├── progress │ │ │ ├── OnProgressListener.java │ │ │ ├── ProgressAppGlideModule.java │ │ │ ├── ProgressInterceptor.java │ │ │ └── ProgressResponseBody.java │ │ └── transformation │ │ │ ├── BlurTransformation.java │ │ │ ├── RoundTransformation.java │ │ │ └── ScaleDownTransformation.java │ │ ├── mvp │ │ ├── CacheActivity.java │ │ ├── CacheFragment.java │ │ ├── MvpActivity.java │ │ ├── MvpFragment.java │ │ ├── MvpPresenter.java │ │ └── MvpView.java │ │ ├── permission │ │ └── PermissionUtils.java │ │ ├── receiver │ │ └── LoginReceiver.java │ │ ├── surface │ │ ├── activity │ │ │ └── SingleFragActivity.java │ │ └── fragment │ │ │ └── NotFoundFragment.java │ │ ├── utils │ │ ├── JsonFormatUtils.kt │ │ ├── LoadingBarManager.java │ │ └── SmartRefreshUtils.java │ │ └── widget │ │ └── GrayLayout.kt │ └── res │ ├── layout │ ├── basic_core_activity_single_frag.xml │ └── basic_core_fragment_not_found.xml │ └── values │ └── strings.xml ├── basic_res ├── build.gradle ├── proguard-rules.pro └── src │ └── main │ ├── AndroidManifest.xml │ └── res │ ├── anim │ ├── activity_no_anim.xml │ ├── zoom_small_in.xml │ └── zoom_small_out.xml │ ├── drawable-night-v21 │ ├── bg_press_color_background_radius_max.xml │ ├── bg_press_color_foreground.xml │ ├── bg_press_color_foreground_top_radius_max.xml │ ├── bg_press_color_main_radius_def.xml │ ├── bg_press_color_main_radius_max.xml │ ├── bg_press_color_surface.xml │ ├── bg_press_color_surface_radius_def.xml │ ├── bg_press_color_surface_radius_max.xml │ ├── bg_press_color_surface_radius_small.xml │ ├── bg_press_color_surface_top_radius_max.xml │ └── bg_press_color_transparent.xml │ ├── drawable-night │ ├── bg_circle_color_main.xml │ ├── bg_circle_color_surface.xml │ ├── bg_press_color_background_radius_max.xml │ ├── bg_press_color_foreground.xml │ ├── bg_press_color_foreground_top_radius_max.xml │ ├── bg_press_color_main_radius_def.xml │ ├── bg_press_color_main_radius_max.xml │ ├── bg_press_color_surface.xml │ ├── bg_press_color_surface_radius_def.xml │ ├── bg_press_color_surface_radius_max.xml │ ├── bg_press_color_surface_radius_small.xml │ ├── bg_press_color_surface_top_radius_max.xml │ ├── bg_press_color_transparent.xml │ ├── bg_solid_round_color_accent_radius_def.xml │ ├── bg_solid_round_color_accent_radius_max.xml │ ├── bg_solid_round_color_background_alpha_radius_max.xml │ ├── bg_solid_round_color_background_alpha_radius_top_def.xml │ ├── bg_solid_round_color_background_radius_def.xml │ ├── bg_solid_round_color_background_radius_max.xml │ ├── bg_solid_round_color_background_radius_small.xml │ ├── bg_solid_round_color_black_alpha_radius_max.xml │ ├── bg_solid_round_color_foreground_top_radius_max.xml │ ├── bg_solid_round_color_line_radius_max.xml │ ├── bg_solid_round_color_main_radius_def.xml │ ├── bg_solid_round_color_main_radius_max.xml │ ├── bg_solid_round_color_surface_mask_radius_def.xml │ ├── bg_solid_round_color_surface_radius_def.xml │ ├── bg_solid_round_color_surface_radius_max.xml │ ├── bg_solid_round_color_surface_radius_small.xml │ ├── bg_solid_round_color_surface_radius_top_def.xml │ ├── bg_solid_round_color_surface_top_alpha_radius_def.xml │ ├── bg_solid_round_color_surface_top_alpha_radius_max.xml │ ├── bg_solid_round_color_surface_top_radius_def.xml │ ├── bg_solid_round_color_surface_top_radius_max.xml │ ├── bg_solid_round_color_surface_top_radius_small.xml │ ├── bg_solid_round_color_white_radius_def.xml │ ├── bg_solid_round_color_white_radius_max.xml │ ├── bg_stroke_3dp_round_color_main_radius_def.xml │ ├── bg_stroke_round_color_main_radius_def.xml │ ├── bg_stroke_round_color_main_radius_max.xml │ ├── bg_stroke_round_color_surface_radius_def.xml │ ├── bg_stroke_round_color_surface_radius_max.xml │ └── bg_stroke_round_color_white_radius_max.xml │ ├── drawable-v21 │ ├── bg_press_color_background_radius_max.xml │ ├── bg_press_color_foreground.xml │ ├── bg_press_color_foreground_top_radius_max.xml │ ├── bg_press_color_main_radius_def.xml │ ├── bg_press_color_main_radius_max.xml │ ├── bg_press_color_surface.xml │ ├── bg_press_color_surface_radius_def.xml │ ├── bg_press_color_surface_radius_max.xml │ ├── bg_press_color_surface_radius_small.xml │ ├── bg_press_color_surface_top_radius_max.xml │ └── bg_press_color_transparent.xml │ ├── drawable-xxhdpi │ ├── ic_back.png │ └── ic_close.png │ ├── drawable │ ├── bg_circle_color_main.xml │ ├── bg_circle_color_surface.xml │ ├── bg_gradient_color_surface_to_transparent.xml │ ├── bg_press_color_background_radius_max.xml │ ├── bg_press_color_foreground.xml │ ├── bg_press_color_foreground_top_radius_max.xml │ ├── bg_press_color_main_radius_def.xml │ ├── bg_press_color_main_radius_max.xml │ ├── bg_press_color_surface.xml │ ├── bg_press_color_surface_radius_def.xml │ ├── bg_press_color_surface_radius_max.xml │ ├── bg_press_color_surface_radius_small.xml │ ├── bg_press_color_surface_top_radius_max.xml │ ├── bg_press_color_transparent.xml │ ├── bg_press_color_transparent_radius_def.xml │ ├── bg_solid_round_color_accent_radius_def.xml │ ├── bg_solid_round_color_accent_radius_max.xml │ ├── bg_solid_round_color_background_alpha_radius_max.xml │ ├── bg_solid_round_color_background_alpha_radius_top_def.xml │ ├── bg_solid_round_color_background_radius_def.xml │ ├── bg_solid_round_color_background_radius_max.xml │ ├── bg_solid_round_color_background_radius_small.xml │ ├── bg_solid_round_color_black_alpha_radius_max.xml │ ├── bg_solid_round_color_foreground_top_radius_max.xml │ ├── bg_solid_round_color_line_radius_max.xml │ ├── bg_solid_round_color_main_radius_def.xml │ ├── bg_solid_round_color_main_radius_max.xml │ ├── bg_solid_round_color_surface_mask_radius_def.xml │ ├── bg_solid_round_color_surface_radius_def.xml │ ├── bg_solid_round_color_surface_radius_max.xml │ ├── bg_solid_round_color_surface_radius_small.xml │ ├── bg_solid_round_color_surface_radius_top_def.xml │ ├── bg_solid_round_color_surface_top_alpha_radius_def.xml │ ├── bg_solid_round_color_surface_top_alpha_radius_max.xml │ ├── bg_solid_round_color_surface_top_radius_def.xml │ ├── bg_solid_round_color_surface_top_radius_max.xml │ ├── bg_solid_round_color_surface_top_radius_small.xml │ ├── bg_solid_round_color_white_radius_def.xml │ ├── bg_solid_round_color_white_radius_max.xml │ ├── bg_stroke_3dp_round_color_main_radius_def.xml │ ├── bg_stroke_round_color_main_radius_def.xml │ ├── bg_stroke_round_color_main_radius_max.xml │ ├── bg_stroke_round_color_surface_radius_def.xml │ ├── bg_stroke_round_color_surface_radius_max.xml │ └── bg_stroke_round_color_white_radius_max.xml │ ├── values-night │ └── themes.xml │ └── values │ ├── attrs_theme.xml │ ├── colors.xml │ ├── dimens.xml │ ├── integers.xml │ ├── strings.xml │ ├── styles.xml │ └── themes.xml ├── basic_ui ├── build.gradle ├── proguard-rules.pro └── src │ └── main │ ├── AndroidManifest.xml │ ├── java │ └── per │ │ └── goweii │ │ └── basic │ │ └── ui │ │ ├── actionbar │ │ └── ActionBarSimple.java │ │ ├── dialog │ │ ├── DownloadDialog.java │ │ ├── ListDialog.java │ │ ├── LoadingDialog.java │ │ ├── PermissionDialog.java │ │ ├── TipDialog.java │ │ └── UpdateDialog.java │ │ ├── indicator │ │ ├── MoveCircleNavigator.java │ │ └── ScaleCircleNavigator.java │ │ ├── toast │ │ └── ToastMaker.java │ │ └── widget │ │ ├── MultiTouchViewPager.java │ │ ├── NoScrollViewPager.java │ │ ├── SignatureEditText.java │ │ ├── StatusBarView.java │ │ └── UserNameEditText.java │ └── res │ ├── drawable-xhdpi │ ├── basic_ui_dialog_permission_calendar.png │ ├── basic_ui_dialog_permission_camera.png │ ├── basic_ui_dialog_permission_contacts.png │ ├── basic_ui_dialog_permission_location.png │ ├── basic_ui_dialog_permission_microphone.png │ ├── basic_ui_dialog_permission_phone.png │ ├── basic_ui_dialog_permission_sensors.png │ ├── basic_ui_dialog_permission_sms.png │ ├── basic_ui_dialog_permission_storage.png │ ├── basic_ui_dialog_permission_unknow.png │ └── basic_ui_dialog_update.png │ ├── drawable │ ├── basic_ui_dialog_download_progress_bg.xml │ ├── basic_ui_dialog_loading_bg.xml │ ├── basic_ui_progressbar.xml │ └── basic_ui_progressbar_circle.xml │ ├── layout │ ├── basic_ui_dialog_download.xml │ ├── basic_ui_dialog_list.xml │ ├── basic_ui_dialog_loading.xml │ ├── basic_ui_dialog_permission.xml │ ├── basic_ui_dialog_tip.xml │ ├── basic_ui_dialog_update.xml │ ├── basic_ui_loading_bar.xml │ ├── basic_ui_progress_bar.xml │ ├── basic_ui_rv_item_dialog_list.xml │ └── basic_ui_toast.xml │ └── values │ ├── attrs.xml │ ├── dimens.xml │ ├── strings.xml │ └── styles.xml ├── basic_utils ├── build.gradle ├── proguard-rules.pro └── src │ └── main │ ├── AndroidManifest.xml │ └── java │ └── per │ └── goweii │ └── basic │ └── utils │ ├── AnimatorUtils.java │ ├── AppInfoUtils.java │ ├── AppOpenUtils.java │ ├── Base64Utils.kt │ ├── CaptureUtils.java │ ├── ClickHelper.java │ ├── ColorUtils.java │ ├── CopyUtils.java │ ├── DebugUtils.java │ ├── DeviceIdUtils.java │ ├── DeviceUtils.java │ ├── DoubleBackUtils.java │ ├── DownloadUtils.java │ ├── EditTextUtils.java │ ├── IOUtils.java │ ├── InitTask.kt │ ├── InputMethodUtils.java │ ├── IntentUtils.java │ ├── LogUtils.java │ ├── NetUtils.java │ ├── ProcessUtils.kt │ ├── RandomUtils.java │ ├── RegexUtils.java │ ├── ResUtils.java │ ├── SPUtils.java │ ├── ShareUtils.java │ ├── SoftInputHelper.java │ ├── StringUtils.java │ ├── UriUtils.java │ ├── Utils.java │ ├── ViewUtils.java │ ├── bitmap │ ├── BitmapUtils.java │ ├── MosaicUtils.java │ └── WatermarkUtils.java │ ├── coder │ └── MD5Coder.java │ ├── display │ ├── DisplayInfoUtils.java │ └── NotchScreenUtils.java │ ├── ext │ └── ViewExt.kt │ ├── file │ ├── CacheUtils.java │ └── FileUtils.java │ ├── listener │ ├── AnimatorListenerWrapper.java │ ├── OnClickListener2.java │ ├── SimpleCallback.java │ ├── SimpleListener.java │ └── SimpleTextWatcher.java │ └── timer │ ├── BaseCountDownTimer.java │ ├── MillisCountDownTimer.java │ ├── SecondCountDownTimer.java │ ├── Timer.java │ └── ViewCountDownTimer.java ├── build.gradle ├── demo.jks ├── gradle.properties ├── gradle ├── basic.gradle ├── config.gradle ├── flavor.gradle ├── module.gradle ├── version.gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── proguard-rules.pro └── settings.gradle /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2] 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry 13 | custom: https://goweii.github.io/resource/payment_code/all_qrcode.jpg 14 | -------------------------------------------------------------------------------- /.github/workflows/android.yml: -------------------------------------------------------------------------------- 1 | name: Android CI 2 | 3 | on: 4 | push: 5 | branches: [ master ] 6 | pull_request: 7 | branches: [ master ] 8 | 9 | jobs: 10 | build: 11 | 12 | runs-on: ubuntu-latest 13 | 14 | steps: 15 | - uses: actions/checkout@v2 16 | - name: set up JDK 11 17 | uses: actions/setup-java@v2 18 | with: 19 | java-version: '11' 20 | distribution: 'temurin' 21 | cache: gradle 22 | 23 | - name: Grant execute permission for gradlew 24 | run: chmod +x gradlew 25 | - name: Build with Gradle 26 | run: ./gradlew build 27 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | 2 | # 如何参与 3 | 4 | ## 发现一个bug 5 | 6 | 你可以提交一个issues。格式可以像下面这样: 7 | 8 | > BUG描述:搜索的时候崩溃了 9 | > 10 | > 应用版本:2.1.0 11 | > 12 | > 报错信息: 13 | > java.lang.IndexOutOfBoundsException: Inconsistency detected. Invalid item position 17(offset:17).state:32 14 | > at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:4641) 15 | > at android.support.v7.widget. 16 | > ... 17 | 18 | ## 有一个优化点 19 | 20 | 你可以提交一个issues。 21 | 22 | ## Java或Kotlin分支语言翻译 23 | 24 | fork并提交pr 25 | -------------------------------------------------------------------------------- /PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | 待补充 2 | -------------------------------------------------------------------------------- /app/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # You can control the set of applied configuration files using the 3 | # proguardFiles setting in build.gradle. 4 | # 5 | # For more details, see 6 | # http://developer.android.com/guide/developing/tools/proguard.html 7 | 8 | # If your project uses WebView with JS, uncomment the following 9 | # and specify the fully qualified class name to the JavaScript interface 10 | # class: 11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 12 | # public *; 13 | #} 14 | 15 | # Uncomment this to preserve the line number information for 16 | # debugging stack traces. 17 | #-keepattributes SourceFile,LineNumberTable 18 | 19 | # If you keep the line number information, uncomment this to 20 | # hide the original source file name. 21 | #-renamesourcefileattribute SourceFile 22 | -------------------------------------------------------------------------------- /app/src/main/ic_launcher-playstore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/ic_launcher-playstore.png -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/common/Config.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.common; 2 | 3 | /** 4 | * @author CuiZhen 5 | * @date 2019/5/7 6 | * GitHub: https://github.com/goweii 7 | */ 8 | public class Config { 9 | /** 10 | * 返回列表顶部双击超时 11 | */ 12 | public static final long SCROLL_TOP_DOUBLE_CLICK_DELAY = 500L; 13 | /** 14 | * 阅读历史最大保存个数 15 | */ 16 | public static final int READ_RECORD_MAX_COUNT = 1000; 17 | /** 18 | * 消息通知最大显示个数,超过显示99+ 19 | */ 20 | public static final int NOTIFICATION_MAX_SHOW_COUNT = 99; 21 | } 22 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/common/Constant.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.common; 2 | 3 | /** 4 | * @author CuiZhen 5 | * @date 2020/11/29 6 | */ 7 | public class Constant { 8 | // public static final String PRIVACY_POLICY_URL = "https://goweii.gitee.io/wanandroidserver/doc/privacy_policy.html"; 9 | public static final String PRIVACY_POLICY_URL = "file:///android_asset/doc/privacy_policy.html"; 10 | 11 | public static final String BROWSER_UA = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.84 Safari/537.36"; 12 | } 13 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/db/executor/DbExecutor.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.db.executor 2 | 3 | import kotlinx.coroutines.* 4 | 5 | /** 6 | * @author CuiZhen 7 | * @date 2020/3/21 8 | */ 9 | open class DbExecutor : CoroutineScope by MainScope() { 10 | 11 | fun destroy() { 12 | cancel() 13 | } 14 | 15 | fun execute(runnable: suspend () -> T, success: ((t: T) -> Unit)? = null, error: ((e: Throwable) -> Unit)? = null) { 16 | launch(CoroutineExceptionHandler { _, _ -> }) { 17 | val result: T = withContext(Dispatchers.IO) { 18 | runnable.invoke() 19 | } 20 | success?.invoke(result) 21 | }.invokeOnCompletion { 22 | it?.let { 23 | error?.invoke(it) 24 | } 25 | } 26 | } 27 | } -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/db/migration/Migrations.kt: -------------------------------------------------------------------------------- 1 | @file:Suppress("ClassName") 2 | 3 | package per.goweii.wanandroid.db.migration 4 | 5 | import androidx.room.migration.Migration 6 | import androidx.sqlite.db.SupportSQLiteDatabase 7 | 8 | class Migration_1_2 : Migration(1, 2) { 9 | override fun migrate(database: SupportSQLiteDatabase) { 10 | database.beginTransaction() 11 | try { 12 | database.execSQL("ALTER TABLE ReadRecordModel ADD COLUMN percent INTEGER NOT NULL DEFAULT 0") 13 | database.execSQL("ALTER TABLE ReadRecordModel ADD COLUMN lastTime INTEGER NOT NULL DEFAULT 0") 14 | database.setTransactionSuccessful() 15 | } catch (e: Throwable) { 16 | e.printStackTrace() 17 | } finally { 18 | database.endTransaction() 19 | } 20 | } 21 | } -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/db/model/ReadLaterModel.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.db.model 2 | 3 | import androidx.room.Entity 4 | 5 | /** 6 | * @author CuiZhen 7 | * @date 2020/3/21 8 | */ 9 | @Entity(primaryKeys = ["link"]) 10 | data class ReadLaterModel( 11 | val link: String, 12 | val title: String, 13 | val time: Long 14 | ) -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/db/model/ReadRecordModel.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.db.model 2 | 3 | import androidx.annotation.FloatRange 4 | import androidx.annotation.IntRange 5 | import androidx.room.Entity 6 | 7 | /** 8 | * @author CuiZhen 9 | * @date 2020/3/21 10 | */ 11 | @Entity(primaryKeys = ["link"]) 12 | data class ReadRecordModel( 13 | val link: String, 14 | val title: String, 15 | val time: Long, 16 | val lastTime: Long, 17 | @IntRange(from = 0, to = 10000) val percent: Int, 18 | ) { 19 | companion object { 20 | const val MIN_PERCENT = 0 21 | const val MAX_PERCENT = 10000 22 | } 23 | 24 | val percentFloat: Float 25 | @FloatRange(from = 0.0, to = 1.0) 26 | get() = (percent.toFloat() / MAX_PERCENT.toFloat()).coerceIn(0f, 1f) 27 | } -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/event/ArticleDeleteEvent.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.event; 2 | 3 | /** 4 | * @author CuiZhen 5 | * @date 2019/5/17 6 | * GitHub: https://github.com/goweii 7 | */ 8 | public class ArticleDeleteEvent extends BaseEvent { 9 | 10 | private int articleId; 11 | 12 | public static void postWithArticleId(int articleId) { 13 | new ArticleDeleteEvent(articleId).post(); 14 | } 15 | 16 | private ArticleDeleteEvent(int articleId) { 17 | this.articleId = articleId; 18 | } 19 | 20 | public int getArticleId() { 21 | return articleId; 22 | } 23 | 24 | public void setArticleId(int articleId) { 25 | this.articleId = articleId; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/event/ArticleShareEvent.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.event; 2 | 3 | /** 4 | * @author CuiZhen 5 | * @date 2019/5/17 6 | * GitHub: https://github.com/goweii 7 | */ 8 | public class ArticleShareEvent extends BaseEvent { 9 | } 10 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/event/BannerAutoSwitchEnableEvent.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.event; 2 | 3 | /** 4 | * @author CuiZhen 5 | * @date 2019/5/17 6 | * GitHub: https://github.com/goweii 7 | */ 8 | public class BannerAutoSwitchEnableEvent extends BaseEvent { 9 | private final boolean enable; 10 | 11 | public BannerAutoSwitchEnableEvent(boolean enable) { 12 | this.enable = enable; 13 | } 14 | 15 | public boolean isEnable() { 16 | return enable; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/event/BaseEvent.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.event; 2 | 3 | import org.greenrobot.eventbus.EventBus; 4 | 5 | /** 6 | * @author CuiZhen 7 | * @date 2019/5/18 8 | * GitHub: https://github.com/goweii 9 | */ 10 | public class BaseEvent { 11 | 12 | public void post() { 13 | EventBus.getDefault().post(this); 14 | } 15 | 16 | public void postSticky() { 17 | EventBus.getDefault().postSticky(this); 18 | } 19 | 20 | public void removeSticky() { 21 | EventBus.getDefault().removeStickyEvent(this); 22 | } 23 | 24 | } 25 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/event/CloseSecondFloorEvent.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.event; 2 | 3 | /** 4 | * @author CuiZhen 5 | * @date 2019/5/17 6 | * GitHub: https://github.com/goweii 7 | */ 8 | public class CloseSecondFloorEvent extends BaseEvent { 9 | } 10 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/event/LoginEvent.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.event; 2 | 3 | /** 4 | * @author CuiZhen 5 | * @date 2019/5/17 6 | * GitHub: https://github.com/goweii 7 | */ 8 | public class LoginEvent extends BaseEvent { 9 | 10 | private boolean login; 11 | 12 | public LoginEvent(boolean login) { 13 | this.login = login; 14 | } 15 | 16 | public void setLogin(boolean login) { 17 | this.login = login; 18 | } 19 | 20 | public boolean isLogin() { 21 | return login; 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/event/MessageCountEvent.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.event; 2 | 3 | /** 4 | * @author CuiZhen 5 | * @date 2019/5/17 6 | * GitHub: https://github.com/goweii 7 | */ 8 | public class MessageCountEvent extends BaseEvent { 9 | 10 | private int count; 11 | 12 | public static void post(int count) { 13 | new MessageCountEvent(count).post(); 14 | } 15 | 16 | private MessageCountEvent(int count) { 17 | this.count = count; 18 | } 19 | 20 | public int getCount() { 21 | return count; 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/event/MessageDeleteEvent.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.event; 2 | 3 | import per.goweii.wanandroid.module.mine.model.MessageBean; 4 | 5 | /** 6 | * @author CuiZhen 7 | * @date 2019/5/17 8 | * GitHub: https://github.com/goweii 9 | */ 10 | public class MessageDeleteEvent extends BaseEvent { 11 | 12 | private MessageBean bean; 13 | 14 | public static void post(MessageBean bean) { 15 | new MessageDeleteEvent(bean).post(); 16 | } 17 | 18 | private MessageDeleteEvent(MessageBean bean) { 19 | this.bean = bean; 20 | } 21 | 22 | public MessageBean getMessageBean() { 23 | return bean; 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/event/MessageUpdateEvent.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.event; 2 | 3 | /** 4 | * @author CuiZhen 5 | * @date 2019/5/17 6 | * GitHub: https://github.com/goweii 7 | */ 8 | public class MessageUpdateEvent extends BaseEvent { 9 | } 10 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/event/ReadLaterEvent.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.event; 2 | 3 | /** 4 | * @author CuiZhen 5 | * @date 2019/5/17 6 | * GitHub: https://github.com/goweii 7 | */ 8 | public class ReadLaterEvent extends BaseEvent { 9 | } 10 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/event/ReadRecordAddedEvent.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.event; 2 | 3 | import io.reactivex.annotations.NonNull; 4 | import per.goweii.wanandroid.db.model.ReadRecordModel; 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2019/5/17 9 | * GitHub: https://github.com/goweii 10 | */ 11 | public class ReadRecordAddedEvent extends BaseEvent { 12 | private final ReadRecordModel readRecordModel; 13 | 14 | public ReadRecordAddedEvent(@NonNull ReadRecordModel readRecordModel) { 15 | this.readRecordModel = readRecordModel; 16 | } 17 | 18 | @NonNull 19 | public ReadRecordModel getReadRecordModel() { 20 | return readRecordModel; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/event/ScrollTopEvent.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.event; 2 | 3 | /** 4 | * @author CuiZhen 5 | * @date 2019/5/20 6 | * GitHub: https://github.com/goweii 7 | */ 8 | public class ScrollTopEvent extends BaseEvent { 9 | 10 | private Class clazz; 11 | private int position; 12 | 13 | public ScrollTopEvent(Class clazz, int position) { 14 | this.clazz = clazz; 15 | this.position = position; 16 | } 17 | 18 | public Class getClazz() { 19 | return clazz; 20 | } 21 | 22 | public void setClazz(Class clazz) { 23 | this.clazz = clazz; 24 | } 25 | 26 | public int getPosition() { 27 | return position; 28 | } 29 | 30 | public void setPosition(int position) { 31 | this.position = position; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/event/UserInfoUpdateEvent.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.event; 2 | 3 | /** 4 | * @author CuiZhen 5 | * @date 2019/5/17 6 | * GitHub: https://github.com/goweii 7 | */ 8 | public class UserInfoUpdateEvent extends BaseEvent { 9 | } 10 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/http/CacheListener.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.http; 2 | 3 | /** 4 | * @author CuiZhen 5 | * @date 2019/5/12 6 | * GitHub: https://github.com/goweii 7 | */ 8 | public interface CacheListener { 9 | void onSuccess(int code, E data); 10 | 11 | void onFailed(); 12 | } 13 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/http/NullCacheException.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.http; 2 | 3 | /** 4 | * @author CuiZhen 5 | * @date 2019/5/24 6 | * GitHub: https://github.com/goweii 7 | */ 8 | public class NullCacheException extends Exception { 9 | } 10 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/http/RequestCallback.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.http; 2 | 3 | import per.goweii.rxhttp.request.exception.ExceptionHandle; 4 | 5 | /** 6 | * @author CuiZhen 7 | * @date 2019/5/12 8 | * GitHub: https://github.com/goweii 9 | */ 10 | public abstract class RequestCallback implements RequestListener { 11 | @Override 12 | public void onStart() { 13 | } 14 | 15 | @Override 16 | public void onError(ExceptionHandle handle) { 17 | } 18 | 19 | @Override 20 | public void onFinish() { 21 | } 22 | } -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/http/RequestListener.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.http; 2 | 3 | import per.goweii.rxhttp.request.exception.ExceptionHandle; 4 | 5 | /** 6 | * @author CuiZhen 7 | * @date 2019/5/12 8 | * GitHub: https://github.com/goweii 9 | */ 10 | public interface RequestListener { 11 | void onStart(); 12 | 13 | void onSuccess(int code, E data); 14 | 15 | void onFailed(int code, String msg); 16 | 17 | void onError(ExceptionHandle handle); 18 | 19 | void onFinish(); 20 | } 21 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/book/adapter/BookAdapter.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.book.adapter; 2 | 3 | import androidx.annotation.NonNull; 4 | 5 | import com.chad.library.adapter.base.BaseQuickAdapter; 6 | import com.chad.library.adapter.base.BaseViewHolder; 7 | 8 | import per.goweii.wanandroid.R; 9 | import per.goweii.wanandroid.module.book.model.BookBean; 10 | import per.goweii.wanandroid.utils.ImageLoader; 11 | 12 | public class BookAdapter extends BaseQuickAdapter { 13 | public BookAdapter() { 14 | super(R.layout.rv_item_book); 15 | } 16 | 17 | @Override 18 | protected void convert(@NonNull BaseViewHolder helper, @NonNull BookBean item) { 19 | ImageLoader.image(helper.getView(R.id.piv_img), item.getCover()); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/book/model/BookBean.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.book.model 2 | 3 | import android.os.Parcelable 4 | import kotlinx.android.parcel.Parcelize 5 | import per.goweii.rxhttp.request.base.BaseBean 6 | 7 | @Parcelize 8 | data class BookBean( 9 | val id: Int, 10 | val courseId: Int, 11 | val cover: String, 12 | val author: String, 13 | val name: String, 14 | val desc: String, 15 | val lisense: String, 16 | val lisenseLink: String, 17 | val order: Int, 18 | val parentChapterId: Int, 19 | val userControlSetTop: Boolean, 20 | val visible: Int, 21 | ): BaseBean(), Parcelable 22 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/book/model/BookChapterBean.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.book.model 2 | 3 | import per.goweii.wanandroid.module.main.model.ArticleBean 4 | 5 | data class BookChapterBean( 6 | val articleBean: ArticleBean, 7 | var time: Long = 0L, 8 | var percent: Float = 0F, 9 | ) -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/home/model/ImageBean.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.home.model 2 | 3 | data class ImageBean( 4 | val url: String, 5 | val gravity: String, 6 | val width: Int, 7 | val height: Int, 8 | val marginLeft: Int, 9 | val marginRight: Int, 10 | val marginTop: Int, 11 | val marginBottom: Int, 12 | val deviationX: Int, 13 | val deviationY: Int, 14 | val rotationX: Int, 15 | val rotationY: Int, 16 | val rotationZ: Int, 17 | ) 18 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/home/view/SearchHistoryView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.home.view; 2 | 3 | import java.util.List; 4 | 5 | import per.goweii.basic.core.base.BaseView; 6 | import per.goweii.wanandroid.module.home.model.HotKeyBean; 7 | 8 | /** 9 | * @author CuiZhen 10 | * @date 2019/5/12 11 | * GitHub: https://github.com/goweii 12 | */ 13 | public interface SearchHistoryView extends BaseView { 14 | void getHotKeyListSuccess(int code, List data); 15 | 16 | void getHotKeyListFail(int code, String msg); 17 | } 18 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/home/view/SearchResultView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.home.view; 2 | 3 | import per.goweii.basic.core.base.BaseView; 4 | import per.goweii.wanandroid.module.main.model.ArticleListBean; 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2019/5/12 9 | * GitHub: https://github.com/goweii 10 | */ 11 | public interface SearchResultView extends BaseView { 12 | void searchSuccess(int code, ArticleListBean data); 13 | 14 | void searchFailed(int code, String msg); 15 | } 16 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/home/view/UserPageView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.home.view; 2 | 3 | import per.goweii.basic.core.base.BaseView; 4 | import per.goweii.wanandroid.module.main.model.UserPageBean; 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2019/10/3 9 | * GitHub: https://github.com/goweii 10 | */ 11 | public interface UserPageView extends BaseView { 12 | void getUserPageSuccess(int code, UserPageBean data); 13 | 14 | void getUserPageFailed(int code, String msg); 15 | } 16 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/home/view/WebDialogView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.home.view; 2 | 3 | import per.goweii.basic.core.base.BaseView; 4 | 5 | /** 6 | * @author CuiZhen 7 | * @date 2019/5/12 8 | * GitHub: https://github.com/goweii 9 | */ 10 | public interface WebDialogView extends BaseView { 11 | } 12 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/knowledge/view/KnowledgeArticleView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.knowledge.view; 2 | 3 | import per.goweii.basic.core.base.BaseView; 4 | import per.goweii.wanandroid.module.main.model.ArticleListBean; 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2019/5/12 9 | * GitHub: https://github.com/goweii 10 | */ 11 | public interface KnowledgeArticleView extends BaseView { 12 | void getKnowledgeArticleListSuccess(int code, ArticleListBean data); 13 | 14 | void getKnowledgeArticleListFail(int code, String msg); 15 | } 16 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/knowledge/view/KnowledgeView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.knowledge.view; 2 | 3 | import java.util.List; 4 | 5 | import per.goweii.basic.core.base.BaseView; 6 | import per.goweii.wanandroid.module.main.model.ChapterBean; 7 | 8 | /** 9 | * @author CuiZhen 10 | * @date 2019/5/12 11 | * GitHub: https://github.com/goweii 12 | */ 13 | public interface KnowledgeView extends BaseView { 14 | void getKnowledgeListSuccess(int code, List data); 15 | 16 | void getKnowledgeListFail(int code, String msg); 17 | } 18 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/login/model/UserEntity.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.login.model 2 | 3 | /** 4 | * @author CuiZhen 5 | * @date 2019/5/8 6 | * GitHub: https://github.com/goweii 7 | */ 8 | data class UserEntity( 9 | val email: String?, 10 | val username: String?, 11 | val wanid: Int, 12 | val sex: Int, 13 | val signature: String?, 14 | val avatar: String?, 15 | val cover: String? 16 | ) -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/login/presenter/AuthPresenter.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.login.presenter; 2 | 3 | import per.goweii.basic.core.base.BasePresenter; 4 | import per.goweii.wanandroid.module.login.view.AuthView; 5 | 6 | public class AuthPresenter extends BasePresenter { 7 | } 8 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/login/view/AuthView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.login.view; 2 | 3 | import per.goweii.basic.core.base.BaseView; 4 | 5 | /** 6 | * @author CuiZhen 7 | * @date 2019/5/15 8 | * GitHub: https://github.com/goweii 9 | */ 10 | public interface AuthView extends BaseView { 11 | } 12 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/login/view/LoginView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.login.view; 2 | 3 | import per.goweii.basic.core.base.BaseView; 4 | import per.goweii.wanandroid.module.login.model.UserEntity; 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2019/5/15 9 | * GitHub: https://github.com/goweii 10 | */ 11 | public interface LoginView extends BaseView { 12 | void loginSuccess(int code, UserEntity data, String username, String password, boolean isBiometric); 13 | 14 | void loginFailed(int code, String msg); 15 | } 16 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/login/view/QuickLoginView.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.login.view 2 | 3 | import per.goweii.basic.core.base.BaseView 4 | import per.goweii.wanandroid.module.login.model.UserEntity 5 | 6 | interface QuickLoginView : BaseView { 7 | fun loginSuccess(code: Int, data: UserEntity) 8 | fun loginFailed(code: Int, msg: String?) 9 | } -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/login/view/RegisterView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.login.view; 2 | 3 | import per.goweii.basic.core.base.BaseView; 4 | import per.goweii.wanandroid.module.login.model.UserEntity; 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2019/5/15 9 | * GitHub: https://github.com/goweii 10 | */ 11 | public interface RegisterView extends BaseView { 12 | void registerSuccess(int code, UserEntity data, String username, String password); 13 | 14 | void registerFailed(int code, String msg); 15 | } 16 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/main/activity/theme/MainActivities.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.main.activity.theme 2 | 3 | import per.goweii.wanandroid.module.main.activity.MainActivity 4 | 5 | class MainActivityRed : MainActivity() 6 | class MainActivityGold : MainActivity() 7 | class MainActivityPink : MainActivity() 8 | class MainActivityGreen : MainActivity() -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/main/contract/ArticleListContract.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.main.contract 2 | 3 | import per.goweii.basic.core.base.BasePresenter 4 | import per.goweii.basic.core.base.BaseView 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2020/3/22 9 | */ 10 | interface ArticleListView : BaseView { 11 | 12 | } 13 | 14 | class ArticleListPresenter : BasePresenter() { 15 | 16 | } -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/main/dialog/DailyDialog.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.main.dialog 2 | 3 | import android.content.Context 4 | import per.goweii.anylayer.dialog.DialogLayer 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2020/2/16 9 | * GitHub: https://github.com/goweii 10 | */ 11 | class DailyDialog(context: Context) : DialogLayer(context) { 12 | } -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/main/fragment/ArticleListFragment.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.main.fragment 2 | 3 | import per.goweii.basic.core.base.BaseFragment 4 | import per.goweii.wanandroid.R 5 | import per.goweii.wanandroid.module.main.contract.ArticleListPresenter 6 | import per.goweii.wanandroid.module.main.contract.ArticleListView 7 | 8 | /** 9 | * @author CuiZhen 10 | * @date 2020/3/22 11 | */ 12 | class ArticleListFragment : BaseFragment(), ArticleListView { 13 | 14 | override fun getLayoutRes(): Int = R.layout.fragment_article_list 15 | 16 | override fun initPresenter(): ArticleListPresenter = ArticleListPresenter() 17 | 18 | override fun initView() { 19 | } 20 | 21 | override fun loadData() { 22 | } 23 | } -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/main/model/ArticleListBean.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.main.model; 2 | 3 | /** 4 | * @author CuiZhen 5 | * @date 2019/5/12 6 | * GitHub: https://github.com/goweii 7 | */ 8 | public class ArticleListBean extends ListBean { 9 | } 10 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/main/model/BetaUserBean.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.main.model; 2 | 3 | import per.goweii.rxhttp.request.base.BaseBean; 4 | 5 | public class BetaUserBean extends BaseBean { 6 | private int userId; 7 | private String userName; 8 | 9 | public int getUserId() { 10 | return userId; 11 | } 12 | 13 | public void setUserId(int userId) { 14 | this.userId = userId; 15 | } 16 | 17 | public String getUserName() { 18 | return userName; 19 | } 20 | 21 | public void setUserName(String userName) { 22 | this.userName = userName; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/main/model/TabEntity.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.main.model; 2 | 3 | /** 4 | * @author CuiZhen 5 | * @date 2020/3/22 6 | */ 7 | public class TabEntity { 8 | private String tabName; 9 | private int tabIcon; 10 | private int msgCount; 11 | 12 | public TabEntity(String tabName, int tabIcon, int msgCount) { 13 | this.tabName = tabName; 14 | this.tabIcon = tabIcon; 15 | this.msgCount = msgCount; 16 | } 17 | 18 | public String getTabName() { 19 | return tabName; 20 | } 21 | 22 | public int getTabIcon() { 23 | return tabIcon; 24 | } 25 | 26 | public int getMsgCount() { 27 | return msgCount; 28 | } 29 | 30 | public void setMsgCount(int msgCount) { 31 | this.msgCount = msgCount; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/main/view/ArticleView.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.main.view 2 | 3 | import per.goweii.basic.core.base.BaseView 4 | 5 | /** 6 | * @author CuiZhen 7 | * @date 2020/2/20 8 | */ 9 | interface ArticleView : BaseView { 10 | fun collectSuccess() 11 | fun collectFailed(msg: String) 12 | fun uncollectSuccess() 13 | fun uncollectFailed(msg: String) 14 | fun addReadLaterSuccess() 15 | fun addReadLaterFailed() 16 | fun removeReadLaterSuccess() 17 | fun removeReadLaterFailed() 18 | } -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/main/view/ScanView.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.main.view 2 | 3 | import per.goweii.basic.core.base.BaseView 4 | 5 | /** 6 | * @author CuiZhen 7 | * @date 2020/2/26 8 | */ 9 | interface ScanView : BaseView { 10 | } -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/main/view/ShareArticleView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.main.view; 2 | 3 | import per.goweii.basic.core.base.BaseView; 4 | import per.goweii.rxhttp.request.base.BaseBean; 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2019/10/12 9 | * GitHub: https://github.com/goweii 10 | */ 11 | public interface ShareArticleView extends BaseView { 12 | void shareArticleSuccess(int code, BaseBean data); 13 | 14 | void shareArticleFailed(int code, String msg); 15 | } 16 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/main/view/UserArticleView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.main.view; 2 | 3 | import per.goweii.basic.core.base.BaseView; 4 | import per.goweii.wanandroid.module.main.model.ArticleListBean; 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2019/10/3 9 | * GitHub: https://github.com/goweii 10 | */ 11 | public interface UserArticleView extends BaseView { 12 | void getUserArticleListSuccess(int code, ArticleListBean data); 13 | 14 | void getUserArticleListFailed(int code, String msg); 15 | } 16 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/main/view/WebView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.main.view; 2 | 3 | import per.goweii.basic.core.base.BaseView; 4 | import per.goweii.wanandroid.db.model.ReadLaterModel; 5 | import per.goweii.wanandroid.module.main.model.CollectArticleEntity; 6 | 7 | /** 8 | * @author CuiZhen 9 | * @date 2019/5/20 10 | * GitHub: https://github.com/goweii 11 | */ 12 | public interface WebView extends BaseView { 13 | void collectSuccess(CollectArticleEntity entity); 14 | 15 | void collectFailed(String msg); 16 | 17 | void uncollectSuccess(CollectArticleEntity entity); 18 | 19 | void uncollectFailed(String msg); 20 | 21 | void isAddedReadLaterSuccess(ReadLaterModel data); 22 | } 23 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/mine/model/NotificationBean.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.mine.model 2 | 3 | /** 4 | * @author CuiZhen 5 | * @date 2020/5/16 6 | */ 7 | data class NotificationBean( 8 | val tags: List, 9 | val aniceDate: String, 10 | val fromUser: String, 11 | val articleContent: String, 12 | val content: String, 13 | val articleUrl: String, 14 | val deleteUrl: String 15 | ) -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/mine/view/AboutMeView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.mine.view; 2 | 3 | import per.goweii.basic.core.base.BaseView; 4 | import per.goweii.wanandroid.module.mine.model.AboutMeBean; 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2019/5/23 9 | * GitHub: https://github.com/goweii 10 | */ 11 | public interface AboutMeView extends BaseView { 12 | void getAboutMeSuccess(int code, AboutMeBean data); 13 | 14 | void getAboutMeFailed(int code, String msg); 15 | } 16 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/mine/view/AboutView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.mine.view; 2 | 3 | import per.goweii.basic.core.base.BaseView; 4 | import per.goweii.wanandroid.module.main.model.UpdateBean; 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2019/5/19 9 | * GitHub: https://github.com/goweii 10 | */ 11 | public interface AboutView extends BaseView { 12 | void updateSuccess(int code, UpdateBean data, int updateType); 13 | 14 | void updateFailed(int code, String msg, int updateType); 15 | 16 | void betaUpdateSuccess(int code, UpdateBean data, int updateType); 17 | 18 | void betaUpdateFailed(int code, String msg, int updateType); 19 | } 20 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/mine/view/CoinRankView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.mine.view; 2 | 3 | import per.goweii.basic.core.base.BaseView; 4 | import per.goweii.wanandroid.module.mine.model.CoinRankBean; 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2019/5/12 9 | * GitHub: https://github.com/goweii 10 | */ 11 | public interface CoinRankView extends BaseView { 12 | void getCoinRankListSuccess(int code, CoinRankBean data); 13 | 14 | void getCoinRankListFail(int code, String msg); 15 | } 16 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/mine/view/CoinView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.mine.view; 2 | 3 | import per.goweii.basic.core.base.BaseView; 4 | import per.goweii.wanandroid.module.mine.model.CoinRecordBean; 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2019/5/12 9 | * GitHub: https://github.com/goweii 10 | */ 11 | public interface CoinView extends BaseView { 12 | void getCoinSuccess(int code, int coin); 13 | 14 | void getCoinFail(int code, String msg); 15 | 16 | void getCoinRecordListSuccess(int code, CoinRecordBean data); 17 | 18 | void getCoinRecordListFail(int code, String msg); 19 | } 20 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/mine/view/CollectionArticleView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.mine.view; 2 | 3 | import per.goweii.basic.core.base.BaseView; 4 | import per.goweii.wanandroid.module.main.model.ArticleListBean; 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2019/5/17 9 | * GitHub: https://github.com/goweii 10 | */ 11 | public interface CollectionArticleView extends BaseView { 12 | void getCollectArticleListSuccess(int code, ArticleListBean data); 13 | 14 | void getCollectArticleListFailed(int code, String msg); 15 | } 16 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/mine/view/CollectionLinkView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.mine.view; 2 | 3 | import java.util.List; 4 | 5 | import per.goweii.basic.core.base.BaseView; 6 | import per.goweii.wanandroid.module.main.model.CollectionLinkBean; 7 | 8 | /** 9 | * @author CuiZhen 10 | * @date 2019/5/17 11 | * GitHub: https://github.com/goweii 12 | */ 13 | public interface CollectionLinkView extends BaseView { 14 | void getCollectLinkListSuccess(int code, List data); 15 | 16 | void getCollectLinkListFailed(int code, String msg); 17 | 18 | void updateCollectLinkSuccess(int code, CollectionLinkBean data); 19 | } 20 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/mine/view/MessageReadedView.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.mine.view 2 | 3 | import per.goweii.basic.core.base.BaseView 4 | import per.goweii.wanandroid.module.main.model.ListBean 5 | import per.goweii.wanandroid.module.mine.model.MessageBean 6 | 7 | /** 8 | * @author CuiZhen 9 | * @date 2019/5/17 10 | * GitHub: https://github.com/goweii 11 | */ 12 | interface MessageReadedView : BaseView { 13 | fun getMessageReadListSuccess(code: Int, data: ListBean) 14 | fun getMessageReadListFail(code: Int, msg: String) 15 | fun deleteMessageSuccess(code: Int, data: MessageBean) 16 | fun deleteMessageFail(code: Int, msg: String) 17 | } -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/mine/view/MessageUnreadView.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.mine.view 2 | 3 | import per.goweii.basic.core.base.BaseView 4 | import per.goweii.wanandroid.module.main.model.ListBean 5 | import per.goweii.wanandroid.module.mine.model.MessageBean 6 | 7 | /** 8 | * @author CuiZhen 9 | * @date 2019/5/17 10 | * GitHub: https://github.com/goweii 11 | */ 12 | interface MessageUnreadView : BaseView { 13 | fun getMessageUnreadListSuccess(code: Int, data: ListBean) 14 | fun getMessageUnreadListFail(code: Int, msg: String) 15 | } -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/mine/view/MineShareView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.mine.view; 2 | 3 | import per.goweii.basic.core.base.BaseView; 4 | import per.goweii.wanandroid.module.main.model.ArticleListBean; 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2019/5/17 9 | * GitHub: https://github.com/goweii 10 | */ 11 | public interface MineShareView extends BaseView { 12 | void getMineShareArticleListSuccess(int code, ArticleListBean data); 13 | 14 | void getMineShareArticleListFailed(int code, String msg); 15 | } 16 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/mine/view/MineView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.mine.view; 2 | 3 | import per.goweii.basic.core.base.BaseView; 4 | import per.goweii.wanandroid.module.mine.model.UserInfoBean; 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2019/5/12 9 | * GitHub: https://github.com/goweii 10 | */ 11 | public interface MineView extends BaseView { 12 | void getUserInfoSuccess(int code, UserInfoBean coin); 13 | 14 | void getUserInfoFail(int code, String msg); 15 | 16 | void getMessageUnreadCountSuccess(int count); 17 | } 18 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/mine/view/ReadLaterView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.mine.view; 2 | 3 | import java.util.List; 4 | 5 | import per.goweii.basic.core.base.BaseView; 6 | import per.goweii.wanandroid.db.model.ReadLaterModel; 7 | 8 | /** 9 | * @author CuiZhen 10 | * @date 2019/5/23 11 | * GitHub: https://github.com/goweii 12 | */ 13 | public interface ReadLaterView extends BaseView { 14 | void getReadLaterListSuccess(List list); 15 | 16 | void getReadLaterListFailed(); 17 | 18 | void removeReadLaterSuccess(String link); 19 | 20 | void removeReadLaterFailed(); 21 | 22 | void removeAllReadLaterSuccess(); 23 | 24 | void removeAllReadLaterFailed(); 25 | } 26 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/mine/view/ReadRecordView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.mine.view; 2 | 3 | import java.util.List; 4 | 5 | import per.goweii.basic.core.base.BaseView; 6 | import per.goweii.wanandroid.db.model.ReadRecordModel; 7 | 8 | /** 9 | * @author CuiZhen 10 | * @date 2019/5/23 11 | * GitHub: https://github.com/goweii 12 | */ 13 | public interface ReadRecordView extends BaseView { 14 | void getReadRecordListSuccess(List list); 15 | 16 | void getReadRecordListFailed(); 17 | 18 | void removeReadRecordSuccess(String link); 19 | 20 | void removeReadRecordFailed(); 21 | 22 | void removeAllReadRecordSuccess(); 23 | 24 | void removeAllReadRecordFailed(); 25 | } 26 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/mine/view/SettingView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.mine.view; 2 | 3 | import per.goweii.basic.core.base.BaseView; 4 | import per.goweii.rxhttp.request.base.BaseBean; 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2019/5/19 9 | * GitHub: https://github.com/goweii 10 | */ 11 | public interface SettingView extends BaseView { 12 | void logoutSuccess(int code, BaseBean data); 13 | 14 | void logoutFailed(int code, String msg); 15 | 16 | void getCacheSizeSuccess(String size); 17 | } 18 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/navigation/view/NaviView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.navigation.view; 2 | 3 | import java.util.List; 4 | 5 | import per.goweii.basic.core.base.BaseView; 6 | import per.goweii.wanandroid.module.navigation.model.NaviBean; 7 | 8 | /** 9 | * @author CuiZhen 10 | * @date 2019/5/12 11 | * GitHub: https://github.com/goweii 12 | */ 13 | public interface NaviView extends BaseView { 14 | void getNaviListSuccess(int code, List data); 15 | 16 | void getNaviListFail(int code, String msg); 17 | } 18 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/project/view/ProjectArticleView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.project.view; 2 | 3 | import per.goweii.basic.core.base.BaseView; 4 | import per.goweii.wanandroid.module.main.model.ArticleListBean; 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2019/5/12 9 | * GitHub: https://github.com/goweii 10 | */ 11 | public interface ProjectArticleView extends BaseView { 12 | void getProjectArticleListSuccess(int code, ArticleListBean data); 13 | 14 | void getProjectArticleListFailed(int code, String msg); 15 | } 16 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/project/view/ProjectView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.project.view; 2 | 3 | import java.util.List; 4 | 5 | import per.goweii.basic.core.base.BaseView; 6 | import per.goweii.wanandroid.module.main.model.ChapterBean; 7 | 8 | /** 9 | * @author CuiZhen 10 | * @date 2019/5/12 11 | * GitHub: https://github.com/goweii 12 | */ 13 | public interface ProjectView extends BaseView { 14 | void getProjectChaptersSuccess(int code, List data); 15 | 16 | void getProjectChaptersFailed(int code, String msg); 17 | } 18 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/question/view/QuestionView.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.question.view 2 | 3 | import per.goweii.basic.core.base.BaseView 4 | import per.goweii.wanandroid.module.main.model.ArticleListBean 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2020/3/25 9 | */ 10 | interface QuestionView : BaseView { 11 | fun getQuestionListSuccess(code: Int, data: ArticleListBean) 12 | fun getQuestionListFail(code: Int, msg: String) 13 | } -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/wxarticle/view/WxArticleView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.wxarticle.view; 2 | 3 | import per.goweii.basic.core.base.BaseView; 4 | import per.goweii.wanandroid.module.main.model.ArticleListBean; 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2019/5/12 9 | * GitHub: https://github.com/goweii 10 | */ 11 | public interface WxArticleView extends BaseView { 12 | void getWxArticleListSuccess(int code, ArticleListBean data); 13 | 14 | void getWxArticleListFailed(int code, String msg); 15 | 16 | void getWxArticleListSearchSuccess(int code, ArticleListBean data); 17 | 18 | void getWxArticleListSearchFailed(int code, String msg); 19 | } 20 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/module/wxarticle/view/WxView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.module.wxarticle.view; 2 | 3 | import java.util.List; 4 | 5 | import per.goweii.basic.core.base.BaseView; 6 | import per.goweii.wanandroid.module.main.model.ChapterBean; 7 | 8 | /** 9 | * @author CuiZhen 10 | * @date 2019/5/12 11 | * GitHub: https://github.com/goweii 12 | */ 13 | public interface WxView extends BaseView { 14 | void getWxArticleChaptersSuccess(int code, List data); 15 | 16 | void getWxArticleChaptersFailed(int code, String msg); 17 | } 18 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/utils/ArticleDiffCallback.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.utils 2 | 3 | import com.chad.library.adapter.base.diff.BaseQuickDiffCallback 4 | import com.google.gson.Gson 5 | import per.goweii.wanandroid.module.main.model.ArticleBean 6 | 7 | /** 8 | * @author CuiZhen 9 | * @date 2020/3/7 10 | */ 11 | class ArticleDiffCallback( 12 | newList: List? 13 | ) : BaseQuickDiffCallback(newList) { 14 | private val gson by lazy { Gson() } 15 | 16 | override fun areItemsTheSame(oldItem: ArticleBean, newItem: ArticleBean): Boolean { 17 | return oldItem.id == newItem.id 18 | } 19 | 20 | override fun areContentsTheSame(oldItem: ArticleBean, newItem: ArticleBean): Boolean { 21 | return gson.toJson(oldItem) == gson.toJson(newItem) 22 | } 23 | } -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/utils/cdkey/CDKey.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.utils.cdkey; 2 | 3 | import androidx.annotation.NonNull; 4 | 5 | /** 6 | * @author CuiZhen 7 | * @date 2020/1/1 8 | * GitHub: https://github.com/goweii 9 | */ 10 | public interface CDKey { 11 | @NonNull 12 | String create(@NonNull String userId); 13 | 14 | boolean check(@NonNull String userId, @NonNull String cdkey); 15 | } 16 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/utils/router/Param.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.utils.router; 2 | 3 | /** 4 | * @author CuiZhen 5 | * @date 2019/12/28 6 | * GitHub: https://github.com/goweii 7 | */ 8 | public class Param { 9 | public final String key; 10 | public final String value; 11 | 12 | public Param(String key, String value) { 13 | this.key = key; 14 | this.value = value; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/utils/wanpwd/IWanPwd.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.utils.wanpwd; 2 | 3 | import androidx.annotation.Nullable; 4 | 5 | /** 6 | * @author CuiZhen 7 | * @date 2019/12/28 8 | * GitHub: https://github.com/goweii 9 | */ 10 | public interface IWanPwd { 11 | @Nullable 12 | Runnable getRunnable(); 13 | 14 | String getShowText(); 15 | 16 | String getBtnText(); 17 | } 18 | -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/utils/web/interceptor/BaseWebUrlInterceptor.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.utils.web.interceptor 2 | 3 | import okhttp3.Call 4 | import per.goweii.wanandroid.utils.web.interceptor.WebHttpClient.stringRespBody 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2020/2/25 9 | */ 10 | abstract class BaseWebUrlInterceptor : WebUrlInterceptor { 11 | private val callList = arrayListOf() 12 | 13 | fun Call.resp(): String? { 14 | callList.add(this) 15 | val resp = stringRespBody() 16 | callList.remove(this) 17 | return resp 18 | } 19 | 20 | override fun cancel() { 21 | callList.forEach { it.cancel() } 22 | callList.clear() 23 | } 24 | } -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/utils/web/interceptor/WebUrlInterceptor.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.utils.web.interceptor 2 | 3 | import android.net.Uri 4 | import com.tencent.smtt.export.external.interfaces.WebResourceResponse 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2020/2/25 9 | */ 10 | interface WebUrlInterceptor { 11 | fun intercept(pageUri: Uri, 12 | uri: Uri, 13 | userAgent: String?, 14 | reqHeaders: Map?, 15 | reqMethod: String?): WebResourceResponse? 16 | 17 | fun cancel() 18 | } -------------------------------------------------------------------------------- /app/src/main/java/per/goweii/wanandroid/widget/BravhLoadMoreView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.wanandroid.widget; 2 | 3 | import com.chad.library.adapter.base.loadmore.LoadMoreView; 4 | 5 | import per.goweii.wanandroid.R; 6 | 7 | public final class BravhLoadMoreView extends LoadMoreView { 8 | 9 | @Override 10 | public int getLayoutId() { 11 | return R.layout.layout_brvah_load_more; 12 | } 13 | 14 | @Override 15 | protected int getLoadingViewId() { 16 | return R.id.load_more_loading_view; 17 | } 18 | 19 | @Override 20 | protected int getLoadFailViewId() { 21 | return R.id.load_more_load_fail_view; 22 | } 23 | 24 | @Override 25 | protected int getLoadEndViewId() { 26 | return R.id.load_more_load_end_view; 27 | } 28 | } -------------------------------------------------------------------------------- /app/src/main/res/color-night/selector_text_color_article_author.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/color-night/selector_text_color_article_chapter.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/color-night/selector_text_color_article_tag.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/color/selector_text_color_article_author.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/color/selector_text_color_article_chapter.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/color/selector_text_color_article_tag.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-night/action_search_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-night/article_tag_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-night/article_tag_bg_pressed.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-night/bg_crash_exit.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-night/bg_crash_restart.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-night/bg_notification.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-night/bg_solid_color_heart_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-night/bg_white_circle.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-night/coin_rank_progress_bar.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-night/scrollbar.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-night/selector_article_tag_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-night/selector_flush.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-night/shadow_circle.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 11 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-night/shape_image_perview_place_holder.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-night/shape_image_place_holder.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-night/splash_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-night/splash_bg_gold.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-night/splash_bg_green.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-night/splash_bg_pink.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-night/splash_bg_red.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_about.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_about.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_account_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_account_normal.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_add.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_add.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_album.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_album.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_avatar_edit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_avatar_edit.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_bottom_bar_home.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_bottom_bar_home.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_bottom_bar_mine.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_bottom_bar_mine.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_bottom_bar_navi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_bottom_bar_navi.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_bottom_bar_ques.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_bottom_bar_ques.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_browser.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_browser.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_capture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_capture.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_coin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_coin.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_collect.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_collect.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_copy_link.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_copy_link.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_delete.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_delete.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_email.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_email.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_empty.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_empty.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_enter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_enter.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_error.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_error.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_exit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_exit.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_eye_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_eye_normal.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_failure.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_failure.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_flush_close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_flush_close.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_flush_open.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_flush_open.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_github.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_github.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_go_left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_go_left.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_home.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_home.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_http_interrupt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_http_interrupt.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_icon.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_into.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_into.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_jianshu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_jianshu.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_menu.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_more.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_more.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_next.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_next.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_none.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_none.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_notification.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_notification.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_password_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_password_normal.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_qq.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_qq.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_qq_group.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_qq_group.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_qrcode.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_qrcode.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_rank.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_rank.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_rank_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_rank_1.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_rank_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_rank_2.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_rank_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_rank_3.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_read_later.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_read_later.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_read_later_added.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_read_later_added.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_read_record.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_read_record.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_refresh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_refresh.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_remove.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_remove.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_rule.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_rule.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_scan.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_scan.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_search.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_setting.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_setting.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_share.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_share.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_share_article.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_share_article.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/ic_success.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/ic_success.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/image_holder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/image_holder.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/logo.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xxhdpi/logo_512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/drawable-xxhdpi/logo_512.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/action_search_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/article_tag_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/article_tag_bg_pressed.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/bg_crash_exit.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/bg_crash_restart.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/bg_notification.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/bg_solid_color_heart_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/bg_white_circle.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/coin_rank_progress_bar.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/scrollbar.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/selector_article_tag_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/selector_flush.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/shadow_circle.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 11 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/shape_dialog_card_share_btn_mask.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/shape_image_perview_place_holder.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/shape_image_place_holder.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/splash_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/splash_bg_gold.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/splash_bg_green.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/splash_bg_pink.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/splash_bg_red.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /app/src/main/res/layout/action_bar_multi_magic_indicator.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_article_list.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 13 | 14 | 18 | 19 | -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_splash.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/layout/dialog_guide_tip.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 17 | 18 | -------------------------------------------------------------------------------- /app/src/main/res/layout/fragment_wx.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 13 | 14 | 20 | 21 | -------------------------------------------------------------------------------- /app/src/main/res/layout/layout_collect_view_checked.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/res/layout/layout_collect_view_unchecked.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/res/layout/layout_state_loading_center.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 13 | 14 | -------------------------------------------------------------------------------- /app/src/main/res/layout/layout_state_loading_top.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 14 | 15 | -------------------------------------------------------------------------------- /app/src/main/res/layout/layout_web_view.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/res/layout/rv_item_host_interrupt_footer.xml: -------------------------------------------------------------------------------- 1 | 2 | 9 | 10 | 19 | 20 | -------------------------------------------------------------------------------- /app/src/main/res/layout/rv_item_knowledge_child.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/res/layout/rv_item_search_hot.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher_gold.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher_gold_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher_green.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher_green_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher_pink.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher_pink_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher_red.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher_red_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_gold.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-hdpi/ic_launcher_gold.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_gold_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-hdpi/ic_launcher_gold_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_gold_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-hdpi/ic_launcher_gold_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_green.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-hdpi/ic_launcher_green.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_green_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-hdpi/ic_launcher_green_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_green_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-hdpi/ic_launcher_green_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_pink.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-hdpi/ic_launcher_pink.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_pink_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-hdpi/ic_launcher_pink_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_pink_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-hdpi/ic_launcher_pink_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-hdpi/ic_launcher_red.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_red_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-hdpi/ic_launcher_red_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_red_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-hdpi/ic_launcher_red_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_gold.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-mdpi/ic_launcher_gold.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_gold_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-mdpi/ic_launcher_gold_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_gold_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-mdpi/ic_launcher_gold_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_green.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-mdpi/ic_launcher_green.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_green_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-mdpi/ic_launcher_green_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_green_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-mdpi/ic_launcher_green_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_pink.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-mdpi/ic_launcher_pink.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_pink_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-mdpi/ic_launcher_pink_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_pink_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-mdpi/ic_launcher_pink_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-mdpi/ic_launcher_red.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_red_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-mdpi/ic_launcher_red_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_red_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-mdpi/ic_launcher_red_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_gold.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xhdpi/ic_launcher_gold.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_gold_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xhdpi/ic_launcher_gold_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_gold_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xhdpi/ic_launcher_gold_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_green.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xhdpi/ic_launcher_green.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_green_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xhdpi/ic_launcher_green_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_green_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xhdpi/ic_launcher_green_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_pink.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xhdpi/ic_launcher_pink.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_pink_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xhdpi/ic_launcher_pink_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_pink_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xhdpi/ic_launcher_pink_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xhdpi/ic_launcher_red.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_red_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xhdpi/ic_launcher_red_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_red_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xhdpi/ic_launcher_red_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_gold.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxhdpi/ic_launcher_gold.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_gold_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxhdpi/ic_launcher_gold_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_gold_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxhdpi/ic_launcher_gold_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_green.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxhdpi/ic_launcher_green.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_green_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxhdpi/ic_launcher_green_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_green_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxhdpi/ic_launcher_green_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_pink.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxhdpi/ic_launcher_pink.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_pink_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxhdpi/ic_launcher_pink_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_pink_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxhdpi/ic_launcher_pink_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxhdpi/ic_launcher_red.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_red_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxhdpi/ic_launcher_red_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_red_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxhdpi/ic_launcher_red_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_gold.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_gold.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_gold_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_gold_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_gold_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_gold_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_green.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_green.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_green_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_green_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_green_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_green_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_pink.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_pink.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_pink_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_pink_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_pink_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_pink_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_red.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_red.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_red_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_red_foreground.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_red_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_red_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/values/attrs_theme.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 玩安卓 3 | 《隐私政策》 4 | 感谢您使用玩安卓!\n我们依据最新的监管要求更新了《隐私政策》特向您说明如下:\n1. 为向您提供交易相关基本功能,我们会收集、使用必要的信息;\n2. 基于您的明示授权我们会获取存储权限,用于保存文章分享图,您有权拒绝或取消授权;\n3. 我们会采取安全措施保护您的信息安全;\n4. 未经您同意,我们不会从第三方处获取、共享或向其提供您的信息。 5 | 6 | -------------------------------------------------------------------------------- /app/src/main/res/xml/file_path.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 13 | 16 | -------------------------------------------------------------------------------- /app/src/main/res/xml/network_security_config.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /basic_core/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /basic_core/src/main/java/per/goweii/basic/core/base/AppLike.java: -------------------------------------------------------------------------------- 1 | package per.goweii.basic.core.base; 2 | 3 | import android.app.Application; 4 | import android.content.Context; 5 | import android.content.res.Configuration; 6 | 7 | /** 8 | * 描述: 9 | * 10 | * @author Cuizhen 11 | * @date 2019/3/13 12 | */ 13 | interface AppLike { 14 | void attachBaseContext(Context context); 15 | 16 | void onCreate(Application app); 17 | 18 | void onConfigurationChanged(Application app, Configuration newConfig); 19 | 20 | void onTerminate(Application app); 21 | 22 | void onLowMemory(Application app); 23 | 24 | void onTrimMemory(Application app, int level); 25 | } 26 | -------------------------------------------------------------------------------- /basic_core/src/main/java/per/goweii/basic/core/base/BaseEntity.java: -------------------------------------------------------------------------------- 1 | package per.goweii.basic.core.base; 2 | 3 | import java.io.Serializable; 4 | 5 | /** 6 | * 描述: 7 | * 8 | * @author Cuizhen 9 | * @date 2018/12/12 10 | */ 11 | public class BaseEntity implements Serializable { 12 | } 13 | -------------------------------------------------------------------------------- /basic_core/src/main/java/per/goweii/basic/core/base/BaseView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.basic.core.base; 2 | 3 | import per.goweii.basic.core.mvp.MvpView; 4 | 5 | /** 6 | * 描述: 7 | * 8 | * @author Cuizhen 9 | * @date 2019/3/29 10 | */ 11 | public interface BaseView extends MvpView { 12 | } 13 | -------------------------------------------------------------------------------- /basic_core/src/main/java/per/goweii/basic/core/common/Config.java: -------------------------------------------------------------------------------- 1 | package per.goweii.basic.core.common; 2 | 3 | /** 4 | * 可变的参数 5 | * 6 | * @author Cuizhen 7 | */ 8 | public final class Config { 9 | 10 | public static final long HTTP_TIMEOUT = 5000; 11 | } -------------------------------------------------------------------------------- /basic_core/src/main/java/per/goweii/basic/core/common/Constant.java: -------------------------------------------------------------------------------- 1 | package per.goweii.basic.core.common; 2 | 3 | /** 4 | * 描述: 5 | * 6 | * @author Cuizhen 7 | * @date 2019/3/15 8 | */ 9 | public final class Constant { 10 | 11 | } 12 | -------------------------------------------------------------------------------- /basic_core/src/main/java/per/goweii/basic/core/glide/progress/OnProgressListener.java: -------------------------------------------------------------------------------- 1 | package per.goweii.basic.core.glide.progress; 2 | 3 | import androidx.annotation.WorkerThread; 4 | 5 | /** 6 | * 描述: 7 | * 8 | * @author Cuizhen 9 | * @date 2018/9/17 10 | */ 11 | public interface OnProgressListener { 12 | @WorkerThread 13 | void onProgress(float progress); 14 | } 15 | -------------------------------------------------------------------------------- /basic_core/src/main/java/per/goweii/basic/core/mvp/MvpView.java: -------------------------------------------------------------------------------- 1 | package per.goweii.basic.core.mvp; 2 | 3 | import android.content.Context; 4 | 5 | /** 6 | * @author Cuizhen 7 | * @version v1.0.0 8 | * @date 2018/4/4-下午1:23 9 | */ 10 | public interface MvpView { 11 | Context getContext(); 12 | 13 | void showLoadingDialog(); 14 | 15 | void dismissLoadingDialog(); 16 | 17 | void showLoadingBar(); 18 | 19 | void dismissLoadingBar(); 20 | 21 | void clearLoading(); 22 | } 23 | -------------------------------------------------------------------------------- /basic_core/src/main/java/per/goweii/basic/core/utils/JsonFormatUtils.kt: -------------------------------------------------------------------------------- 1 | package per.goweii.basic.core.utils 2 | 3 | import com.google.gson.Gson 4 | import com.google.gson.GsonBuilder 5 | 6 | /** 7 | * @author CuiZhen 8 | * @date 2020/4/18 9 | */ 10 | object JsonFormatUtils { 11 | private val gson: Gson = GsonBuilder().setPrettyPrinting().create() 12 | 13 | fun toJson(any: Any?): String { 14 | return gson.toJson(any) 15 | } 16 | } -------------------------------------------------------------------------------- /basic_core/src/main/res/layout/basic_core_activity_single_frag.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | -------------------------------------------------------------------------------- /basic_core/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | BasicCore 3 | 4 | Fragment not found 5 | 6 | -------------------------------------------------------------------------------- /basic_res/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'com.android.library' 2 | apply from: "${rootDir.path}/gradle/basic.gradle" 3 | 4 | android { 5 | resourcePrefix "" 6 | } 7 | 8 | dependencies { 9 | api rootProject.ext.dependencies.androidxAppcompat 10 | } 11 | -------------------------------------------------------------------------------- /basic_res/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # You can control the set of applied configuration files using the 3 | # proguardFiles setting in build.gradle. 4 | # 5 | # For more details, see 6 | # http://developer.android.com/guide/developing/tools/proguard.html 7 | 8 | # If your project uses WebView with JS, uncomment the following 9 | # and specify the fully qualified class name to the JavaScript interface 10 | # class: 11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 12 | # public *; 13 | #} 14 | 15 | # Uncomment this to preserve the line number information for 16 | # debugging stack traces. 17 | #-keepattributes SourceFile,LineNumberTable 18 | 19 | # If you keep the line number information, uncomment this to 20 | # hide the original source file name. 21 | #-renamesourcefileattribute SourceFile 22 | -------------------------------------------------------------------------------- /basic_res/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /basic_res/src/main/res/anim/activity_no_anim.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /basic_res/src/main/res/anim/zoom_small_in.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 12 | -------------------------------------------------------------------------------- /basic_res/src/main/res/anim/zoom_small_out.xml: -------------------------------------------------------------------------------- 1 | 4 | 8 | 10 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night-v21/bg_press_color_background_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night-v21/bg_press_color_foreground.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night-v21/bg_press_color_foreground_top_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night-v21/bg_press_color_main_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night-v21/bg_press_color_main_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night-v21/bg_press_color_surface.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night-v21/bg_press_color_surface_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night-v21/bg_press_color_surface_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night-v21/bg_press_color_surface_radius_small.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night-v21/bg_press_color_surface_top_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night-v21/bg_press_color_transparent.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_circle_color_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_circle_color_surface.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_press_color_foreground.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_press_color_surface.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_press_color_transparent.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_accent_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_accent_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_background_alpha_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_background_alpha_radius_top_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_background_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_background_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_background_radius_small.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_black_alpha_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_foreground_top_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_line_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_main_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_main_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_surface_mask_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_surface_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_surface_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_surface_radius_small.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_surface_radius_top_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_surface_top_alpha_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_surface_top_alpha_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_surface_top_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_surface_top_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_surface_top_radius_small.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_white_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_solid_round_color_white_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_stroke_3dp_round_color_main_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_stroke_round_color_main_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_stroke_round_color_main_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_stroke_round_color_surface_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_stroke_round_color_surface_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-night/bg_stroke_round_color_white_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-v21/bg_press_color_background_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-v21/bg_press_color_foreground.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-v21/bg_press_color_foreground_top_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-v21/bg_press_color_main_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-v21/bg_press_color_main_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-v21/bg_press_color_surface.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-v21/bg_press_color_surface_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-v21/bg_press_color_surface_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-v21/bg_press_color_surface_radius_small.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-v21/bg_press_color_surface_top_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-v21/bg_press_color_transparent.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-xxhdpi/ic_back.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/basic_res/src/main/res/drawable-xxhdpi/ic_back.png -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable-xxhdpi/ic_close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/basic_res/src/main/res/drawable-xxhdpi/ic_close.png -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_circle_color_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_circle_color_surface.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_gradient_color_surface_to_transparent.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_press_color_foreground.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_press_color_surface.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_press_color_transparent.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_accent_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_accent_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_background_alpha_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_background_alpha_radius_top_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_background_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_background_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_background_radius_small.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_black_alpha_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_foreground_top_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_line_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_main_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_main_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_surface_mask_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_surface_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_surface_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_surface_radius_small.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_surface_radius_top_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 9 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_surface_top_alpha_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_surface_top_alpha_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_surface_top_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_surface_top_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_surface_top_radius_small.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_white_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_solid_round_color_white_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_stroke_3dp_round_color_main_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_stroke_round_color_main_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_stroke_round_color_main_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_stroke_round_color_surface_radius_def.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_stroke_round_color_surface_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | -------------------------------------------------------------------------------- /basic_res/src/main/res/drawable/bg_stroke_round_color_white_radius_max.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | 7 | -------------------------------------------------------------------------------- /basic_res/src/main/res/values/integers.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 350 4 | -------------------------------------------------------------------------------- /basic_res/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | BasicRes 3 | 4 | 网络连接失败,请检查网络设置 5 | 访问出错,请稍后重试 6 | 7 | -------------------------------------------------------------------------------- /basic_res/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 12 | 13 | -------------------------------------------------------------------------------- /basic_ui/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # You can control the set of applied configuration files using the 3 | # proguardFiles setting in build.gradle. 4 | # 5 | # For more details, see 6 | # http://developer.android.com/guide/developing/tools/proguard.html 7 | 8 | # If your project uses WebView with JS, uncomment the following 9 | # and specify the fully qualified class name to the JavaScript interface 10 | # class: 11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 12 | # public *; 13 | #} 14 | 15 | # Uncomment this to preserve the line number information for 16 | # debugging stack traces. 17 | #-keepattributes SourceFile,LineNumberTable 18 | 19 | # If you keep the line number information, uncomment this to 20 | # hide the original source file name. 21 | #-renamesourcefileattribute SourceFile 22 | -------------------------------------------------------------------------------- /basic_ui/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /basic_ui/src/main/java/per/goweii/basic/ui/actionbar/ActionBarSimple.java: -------------------------------------------------------------------------------- 1 | package per.goweii.basic.ui.actionbar; 2 | 3 | import android.content.Context; 4 | import android.util.AttributeSet; 5 | 6 | import androidx.annotation.Nullable; 7 | 8 | import per.goweii.actionbarex.ActionBarEx; 9 | 10 | /** 11 | * @author CuiZhen 12 | * @date 2019/5/15 13 | * GitHub: https://github.com/goweii 14 | */ 15 | public class ActionBarSimple extends ActionBarEx { 16 | 17 | public ActionBarSimple(Context context) { 18 | super(context); 19 | } 20 | 21 | public ActionBarSimple(Context context, @Nullable AttributeSet attrs) { 22 | super(context, attrs); 23 | } 24 | 25 | public ActionBarSimple(Context context, @Nullable AttributeSet attrs, int defStyleAttr) { 26 | super(context, attrs, defStyleAttr); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_permission_calendar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_permission_calendar.png -------------------------------------------------------------------------------- /basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_permission_camera.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_permission_camera.png -------------------------------------------------------------------------------- /basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_permission_contacts.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_permission_contacts.png -------------------------------------------------------------------------------- /basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_permission_location.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_permission_location.png -------------------------------------------------------------------------------- /basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_permission_microphone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_permission_microphone.png -------------------------------------------------------------------------------- /basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_permission_phone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_permission_phone.png -------------------------------------------------------------------------------- /basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_permission_sensors.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_permission_sensors.png -------------------------------------------------------------------------------- /basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_permission_sms.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_permission_sms.png -------------------------------------------------------------------------------- /basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_permission_storage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_permission_storage.png -------------------------------------------------------------------------------- /basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_permission_unknow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_permission_unknow.png -------------------------------------------------------------------------------- /basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_update.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/basic_ui/src/main/res/drawable-xhdpi/basic_ui_dialog_update.png -------------------------------------------------------------------------------- /basic_ui/src/main/res/drawable/basic_ui_dialog_loading_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /basic_ui/src/main/res/layout/basic_ui_dialog_loading.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 16 | 17 | -------------------------------------------------------------------------------- /basic_ui/src/main/res/layout/basic_ui_progress_bar.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /basic_ui/src/main/res/layout/basic_ui_rv_item_dialog_list.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 17 | 18 | -------------------------------------------------------------------------------- /basic_ui/src/main/res/values/attrs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /basic_ui/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 2dp 4 | 13dp 5 | 3dp 6 | -------------------------------------------------------------------------------- /basic_ui/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 12 | 13 | 15 | -------------------------------------------------------------------------------- /basic_utils/build.gradle: -------------------------------------------------------------------------------- 1 | apply plugin: 'com.android.library' 2 | apply from: "${rootDir.path}/gradle/basic.gradle" 3 | 4 | android { 5 | } 6 | 7 | dependencies { 8 | //debugImplementation rootProject.ext.dependencies.ponyo 9 | api rootProject.ext.dependencies.ponyoLog 10 | api rootProject.ext.dependencies.ponyoCrash 11 | } 12 | -------------------------------------------------------------------------------- /basic_utils/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # You can control the set of applied configuration files using the 3 | # proguardFiles setting in build.gradle. 4 | # 5 | # For more details, see 6 | # http://developer.android.com/guide/developing/tools/proguard.html 7 | 8 | # If your project uses WebView with JS, uncomment the following 9 | # and specify the fully qualified class name to the JavaScript interface 10 | # class: 11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 12 | # public *; 13 | #} 14 | 15 | # Uncomment this to preserve the line number information for 16 | # debugging stack traces. 17 | #-keepattributes SourceFile,LineNumberTable 18 | 19 | # If you keep the line number information, uncomment this to 20 | # hide the original source file name. 21 | #-renamesourcefileattribute SourceFile 22 | -------------------------------------------------------------------------------- /basic_utils/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /basic_utils/src/main/java/per/goweii/basic/utils/CopyUtils.java: -------------------------------------------------------------------------------- 1 | package per.goweii.basic.utils; 2 | 3 | import android.content.ClipboardManager; 4 | import android.content.Context; 5 | import android.widget.TextView; 6 | 7 | import androidx.annotation.NonNull; 8 | 9 | /** 10 | * 复制到剪贴板 11 | * 12 | * @author Cuizhen 13 | * @date 2018/8/28-下午6:58 14 | */ 15 | public class CopyUtils { 16 | 17 | public static void copyText(@NonNull String text) { 18 | ClipboardManager clipboardManager = (ClipboardManager) Utils.getAppContext().getSystemService(Context.CLIPBOARD_SERVICE); 19 | clipboardManager.setText(text); 20 | } 21 | 22 | public static void copyText(@NonNull TextView textView) { 23 | copyText(textView.getText().toString()); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /basic_utils/src/main/java/per/goweii/basic/utils/DebugUtils.java: -------------------------------------------------------------------------------- 1 | package per.goweii.basic.utils; 2 | 3 | import android.text.TextUtils; 4 | 5 | /** 6 | * @author CuiZhen 7 | * @date 2019/10/20 8 | * GitHub: https://github.com/goweii 9 | */ 10 | public class DebugUtils { 11 | 12 | private static final boolean DEBUG; 13 | 14 | static { 15 | DEBUG = BuildConfig.DEBUG && TextUtils.equals(BuildConfig.BUILD_TYPE, "debug"); 16 | } 17 | 18 | public static boolean isDebug() { 19 | return DEBUG; 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /basic_utils/src/main/java/per/goweii/basic/utils/DeviceUtils.java: -------------------------------------------------------------------------------- 1 | package per.goweii.basic.utils; 2 | 3 | import android.annotation.SuppressLint; 4 | import android.provider.Settings; 5 | 6 | /** 7 | * 获取设备号 8 | * 9 | * @author Cuizhen 10 | * @date 2018/6/30-上午10:30 11 | */ 12 | public class DeviceUtils { 13 | 14 | @SuppressLint("HardwareIds") 15 | public static String getAndroidId() { 16 | return Settings.Secure.getString(Utils.getAppContext().getContentResolver(), Settings.Secure.ANDROID_ID); 17 | } 18 | 19 | public static String getSerial() { 20 | return android.os.Build.SERIAL; 21 | } 22 | 23 | } 24 | -------------------------------------------------------------------------------- /basic_utils/src/main/java/per/goweii/basic/utils/RandomUtils.java: -------------------------------------------------------------------------------- 1 | package per.goweii.basic.utils; 2 | 3 | /** 4 | * @author CuiZhen 5 | * @date 2019/12/28 6 | * GitHub: https://github.com/goweii 7 | */ 8 | public class RandomUtils { 9 | 10 | public static String randomLetter(int length) { 11 | StringBuilder s = new StringBuilder(); 12 | for (int i = 0; i < length; i++) { 13 | int r = (int) (Math.random() * 26); 14 | char c = Math.random() > 0.5 ? 'a' : 'A'; 15 | s.append((char) (c + r)); 16 | } 17 | return s.toString(); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /basic_utils/src/main/java/per/goweii/basic/utils/UriUtils.java: -------------------------------------------------------------------------------- 1 | package per.goweii.basic.utils; 2 | 3 | import android.net.Uri; 4 | import android.os.Build; 5 | 6 | import androidx.core.content.FileProvider; 7 | 8 | import java.io.File; 9 | 10 | /** 11 | * @author CuiZhen 12 | * @date 2019/11/10 13 | * GitHub: https://github.com/goweii 14 | */ 15 | public class UriUtils { 16 | 17 | public static Uri getFileUri(File file) { 18 | if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { 19 | return FileProvider.getUriForFile(Utils.getAppContext(), Utils.getAppContext().getPackageName() + ".file.path.share", file); 20 | } 21 | return Uri.fromFile(file); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /basic_utils/src/main/java/per/goweii/basic/utils/Utils.java: -------------------------------------------------------------------------------- 1 | package per.goweii.basic.utils; 2 | 3 | import android.annotation.SuppressLint; 4 | import android.content.Context; 5 | 6 | /** 7 | * @author Cuizhen 8 | */ 9 | public class Utils { 10 | @SuppressLint("StaticFieldLeak") 11 | private static Context context = null; 12 | 13 | public static void init(Context context) { 14 | Utils.context = context; 15 | } 16 | 17 | public static Context getAppContext() { 18 | if (context == null) { 19 | throw new RuntimeException("Utils未在Application中初始化"); 20 | } 21 | return context; 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /basic_utils/src/main/java/per/goweii/basic/utils/listener/AnimatorListenerWrapper.java: -------------------------------------------------------------------------------- 1 | package per.goweii.basic.utils.listener; 2 | 3 | 4 | import android.animation.Animator; 5 | 6 | /** 7 | * @author Cuizhen 8 | * @date 2018/7/12-下午5:35 9 | */ 10 | public class AnimatorListenerWrapper implements Animator.AnimatorListener { 11 | 12 | @Override 13 | public void onAnimationStart(Animator animator) { 14 | } 15 | 16 | @Override 17 | public void onAnimationEnd(Animator animator) { 18 | } 19 | 20 | @Override 21 | public void onAnimationCancel(Animator animator) { 22 | } 23 | 24 | @Override 25 | public void onAnimationRepeat(Animator animator) { 26 | } 27 | } -------------------------------------------------------------------------------- /basic_utils/src/main/java/per/goweii/basic/utils/listener/OnClickListener2.java: -------------------------------------------------------------------------------- 1 | package per.goweii.basic.utils.listener; 2 | 3 | import android.view.View; 4 | 5 | import per.goweii.basic.utils.ClickHelper; 6 | 7 | /** 8 | * @author Cuizhen 9 | * @date 2018/5/7-下午4:40 10 | */ 11 | public abstract class OnClickListener2 implements View.OnClickListener { 12 | 13 | @Override 14 | public final void onClick(final View v) { 15 | ClickHelper.onlyFirstSameView(v, new ClickHelper.Callback() { 16 | @Override 17 | public void onClick(View view) { 18 | onClick2(view); 19 | } 20 | }); 21 | } 22 | 23 | public abstract void onClick2(View v); 24 | } 25 | -------------------------------------------------------------------------------- /basic_utils/src/main/java/per/goweii/basic/utils/listener/SimpleCallback.java: -------------------------------------------------------------------------------- 1 | package per.goweii.basic.utils.listener; 2 | 3 | /** 4 | * @author Cuizhen 5 | * @date 2018/6/21-上午10:32 6 | */ 7 | public interface SimpleCallback { 8 | void onResult(E data); 9 | } 10 | -------------------------------------------------------------------------------- /basic_utils/src/main/java/per/goweii/basic/utils/listener/SimpleListener.java: -------------------------------------------------------------------------------- 1 | package per.goweii.basic.utils.listener; 2 | 3 | /** 4 | * 描述: 5 | * 6 | * @author Cuizhen 7 | * @date 2018/11/1 8 | */ 9 | public interface SimpleListener { 10 | void onResult(); 11 | } 12 | -------------------------------------------------------------------------------- /basic_utils/src/main/java/per/goweii/basic/utils/listener/SimpleTextWatcher.java: -------------------------------------------------------------------------------- 1 | package per.goweii.basic.utils.listener; 2 | 3 | import android.text.TextWatcher; 4 | 5 | /** 6 | * @author Cuizhen 7 | * @date 2018/6/30-上午10:51 8 | */ 9 | public abstract class SimpleTextWatcher implements TextWatcher { 10 | 11 | @Override 12 | public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) { 13 | } 14 | 15 | @Override 16 | public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) { 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /demo.jks: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/demo.jks -------------------------------------------------------------------------------- /gradle/module.gradle: -------------------------------------------------------------------------------- 1 | apply from: "${rootDir.path}/gradle/basic.gradle" 2 | 3 | android { 4 | } 5 | 6 | dependencies { 7 | implementation project(':basic_core') 8 | } -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/goweii/WanAndroid/a56c0592bfc609bce774fdb5b3d458622e03db9b/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Fri Dec 25 22:09:45 CST 2020 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-all.zip 7 | -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app', ':basic_core', ':basic_utils', ':basic_ui', ':basic_res' 2 | --------------------------------------------------------------------------------