├── settings.gradle ├── app ├── src │ ├── main │ │ ├── res │ │ │ ├── values │ │ │ │ ├── video_strings.xml │ │ │ │ ├── biuVideoIds.xml │ │ │ │ └── theme_colors.xml │ │ │ ├── drawable │ │ │ │ ├── ic_rank.png │ │ │ │ ├── bili_user_level_0.png │ │ │ │ ├── bili_user_level_1.png │ │ │ │ ├── bili_user_level_2.png │ │ │ │ ├── bili_user_level_3.png │ │ │ │ ├── bili_user_level_4.png │ │ │ │ ├── bili_user_level_5.png │ │ │ │ ├── bili_user_level_6.png │ │ │ │ ├── user_default_face.jpg │ │ │ │ ├── user_default_banner.png │ │ │ │ ├── pointer.xml │ │ │ │ ├── round_corners6dp_bg.xml │ │ │ │ ├── bottom_sheet_background.xml │ │ │ │ ├── ripple_rectangle.xml │ │ │ │ ├── video_player_title_video_bg.xml │ │ │ │ ├── video_player_bottom_control_bg.xml │ │ │ │ ├── a_bottom_home.xml │ │ │ │ ├── a_bottom_user.xml │ │ │ │ ├── ic_coin_status.xml │ │ │ │ ├── ic_like_status.xml │ │ │ │ ├── audio_play_stat.xml │ │ │ │ ├── ic_favorite_status.xml │ │ │ │ ├── video_lock_status.xml │ │ │ │ ├── video_play_status.xml │ │ │ │ ├── a_bottom_discovery.xml │ │ │ │ ├── a_bottom_partition.xml │ │ │ │ ├── download_manager_select_stat.xml │ │ │ │ ├── video_follow_status.xml │ │ │ │ ├── ic_selected.xml │ │ │ │ ├── video_danmaku_status.xml │ │ │ │ ├── bangumi_info_order_state.xml │ │ │ │ ├── video_anthology_selected.xml │ │ │ │ ├── download_manager_download_stat.xml │ │ │ │ ├── ic_enter.xml │ │ │ │ ├── video_anthology_item_download_stat.xml │ │ │ │ ├── ic_back.xml │ │ │ │ ├── video_anthology_state.xml │ │ │ │ ├── ic_line.xml │ │ │ │ ├── ripple_round_corners6dp_no_padding_bg.xml │ │ │ │ ├── video_length_bg.xml │ │ │ │ ├── video_badge_bg.xml │ │ │ │ ├── video_pause.xml │ │ │ │ ├── ic_clear.xml │ │ │ │ ├── round_corners6dp_padding5dp_bg.xml │ │ │ │ ├── download_manager_unselected.xml │ │ │ │ ├── indicator.xml │ │ │ │ ├── ripple_white_wire_frame_bg.xml │ │ │ │ ├── audio_control_bg.xml │ │ │ │ ├── audio_play.xml │ │ │ │ ├── ic_check.xml │ │ │ │ ├── ic_location.xml │ │ │ │ ├── video_thumb.xml │ │ │ │ ├── video_anthology_unselected.xml │ │ │ │ ├── ic_refresh.xml │ │ │ │ ├── downloading_item_stat.xml │ │ │ │ ├── ripple_setting_item_bg.xml │ │ │ │ ├── ripple_round_corners6dp_bg.xml │ │ │ │ ├── ripple_round_corners6dp_partition_bg.xml │ │ │ │ ├── circle_ripple_bg.xml │ │ │ │ ├── a_bottom_discovery_unselected.xml │ │ │ │ ├── ic_view_time.xml │ │ │ │ ├── a_bottom_discovery_selected.xml │ │ │ │ ├── audio_thumb.xml │ │ │ │ ├── a_bottom_user_unselected.xml │ │ │ │ ├── audio_pause.xml │ │ │ │ ├── video_anthology_item_download.xml │ │ │ │ ├── video_play.xml │ │ │ │ ├── video_fast_forward.xml │ │ │ │ ├── a_bottom_user_selected.xml │ │ │ │ ├── history_platform_photo.xml │ │ │ │ ├── video_fast_retreat.xml │ │ │ │ ├── video_anthology_item_complete.xml │ │ │ │ ├── ic_comment.xml │ │ │ │ ├── download_manager_selected.xml │ │ │ │ ├── ic_close.xml │ │ │ │ ├── user_level_progress_layer.xml │ │ │ │ ├── ic_cancel.xml │ │ │ │ ├── a_bottom_home_selected.xml │ │ │ │ ├── ic_share.xml │ │ │ │ ├── video_progress_layer.xml │ │ │ │ ├── video_replay.xml │ │ │ │ ├── a_bottom_home_unselected.xml │ │ │ │ ├── ic_view.xml │ │ │ │ ├── ic_danmaku.xml │ │ │ │ ├── icon_error2.xml │ │ │ │ ├── ic_official_verify.xml │ │ │ │ ├── ic_video_play.xml │ │ │ │ ├── download_manager_pause_all.xml │ │ │ │ ├── ic_person_verify.xml │ │ │ │ ├── history_platform_pc.xml │ │ │ │ ├── ic_like.xml │ │ │ │ ├── ic_liked.xml │ │ │ │ ├── video_locked.xml │ │ │ │ ├── audio_play_video.xml │ │ │ │ ├── downloading_progress.xml │ │ │ │ ├── ic_search.xml │ │ │ │ ├── ic_favorite.xml │ │ │ │ ├── video_unlock.xml │ │ │ │ ├── history_platform_tv.xml │ │ │ │ ├── ic_favorited.xml │ │ │ │ ├── audio_download.xml │ │ │ │ ├── ic_audio_play.xml │ │ │ │ ├── video_full_screen.xml │ │ │ │ ├── about_app_gitee.xml │ │ │ │ ├── history_platform_pad.xml │ │ │ │ ├── partition_game.xml │ │ │ │ ├── video_followed.xml │ │ │ │ ├── icon_download.xml │ │ │ │ ├── weather_few_clouds.xml │ │ │ │ ├── video_follow.xml │ │ │ │ ├── donation_amount_wechatpay.xml │ │ │ │ ├── search_result_menu_status.xml │ │ │ │ ├── video_progress_bar.xml │ │ │ │ ├── ic_heart_2.xml │ │ │ │ ├── ic_biu_video_foreground.xml │ │ │ │ ├── ic_coin_b.xml │ │ │ │ ├── ic_danmaku_font_style.xml │ │ │ │ ├── ic_coin_a.xml │ │ │ │ ├── ic_b_coin.xml │ │ │ │ ├── audio_progress_bar.xml │ │ │ │ ├── ic_quotation_marks.xml │ │ │ │ ├── bili_user_level.xml │ │ │ │ ├── download_manager_play_all.xml │ │ │ │ ├── bili_user_follow_status.xml │ │ │ │ ├── partition_dance.xml │ │ │ │ ├── weather_unknown.xml │ │ │ │ ├── bili_user_gender_man.xml │ │ │ │ ├── a_bottom_partition_unselected.xml │ │ │ │ ├── a_bottom_partition_selected.xml │ │ │ │ ├── bili_user_gender_woman.xml │ │ │ │ ├── download_remove.xml │ │ │ │ ├── audio_link.xml │ │ │ │ ├── ic_vip_mark.xml │ │ │ │ ├── partition_article.xml │ │ │ │ ├── ic_write_comment.xml │ │ │ │ ├── partition_guochuang.xml │ │ │ │ ├── ic_my_downloadeds.xml │ │ │ │ ├── download_manager_edit.xml │ │ │ │ ├── ic_single_column.xml │ │ │ │ ├── ic_up_user.xml │ │ │ │ ├── partition_life.xml │ │ │ │ └── weather_sleet.xml │ │ │ ├── raw │ │ │ │ └── we_chat_pay_qrcode.png │ │ │ ├── mipmap-hdpi │ │ │ │ ├── ic_biu_video.png │ │ │ │ └── ic_biu_video_round.png │ │ │ ├── mipmap-mdpi │ │ │ │ ├── ic_biu_video.png │ │ │ │ └── ic_biu_video_round.png │ │ │ ├── mipmap-xhdpi │ │ │ │ ├── ic_biu_video.png │ │ │ │ └── ic_biu_video_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ │ ├── ic_biu_video.png │ │ │ │ └── ic_biu_video_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ │ ├── ic_biu_video.png │ │ │ │ └── ic_biu_video_round.png │ │ │ ├── anim │ │ │ │ ├── recycler_view_fall_down.xml │ │ │ │ ├── translate_right_exit.xml │ │ │ │ ├── translate_right_enter.xml │ │ │ │ ├── simple_snackbar_anim_enter.xml │ │ │ │ ├── simple_snackbar_anim_exit.xml │ │ │ │ ├── picture_viewer_enter.xml │ │ │ │ ├── picture_viewer_exit.xml │ │ │ │ └── item_fall_down.xml │ │ │ ├── layout │ │ │ │ ├── activity_main.xml │ │ │ │ ├── tab_layout_title.xml │ │ │ │ ├── popular_top_list_sub_fragment.xml │ │ │ │ ├── comment_level2_item.xml │ │ │ │ ├── search_ressult_bangumi_fragment.xml │ │ │ │ ├── bili_user_pictures_fragment.xml │ │ │ │ ├── bangumi_series_item.xml │ │ │ │ ├── search_result_menu_popup_window.xml │ │ │ │ ├── video_loading_recycler_view_dialog.xml │ │ │ │ ├── video_comment_fragment.xml │ │ │ │ ├── search_result_menu_item.xml │ │ │ │ ├── downloaded_detail_fragment.xml │ │ │ │ ├── picture_list_item.xml │ │ │ │ ├── history_fragment.xml │ │ │ │ ├── popular_precious.xml │ │ │ │ ├── popular_fragment.xml │ │ │ │ ├── follows_fragment.xml │ │ │ │ ├── recommend_fragment.xml │ │ │ │ ├── followers_fragment.xml │ │ │ │ ├── watch_later_fragment.xml │ │ │ │ ├── nav_fragment.xml │ │ │ │ ├── settings_quality_list.xml │ │ │ │ ├── video_series_bottom_sheet_dialog.xml │ │ │ │ ├── video_anthology_bottom_sheet_dialog.xml │ │ │ │ ├── settings_choice_address_item.xml │ │ │ │ ├── video_player_complate_view.xml │ │ │ │ ├── video_player_controller.xml │ │ │ │ ├── popular_weekly_before_series_bottom_sheet.xml │ │ │ │ ├── video_quality_item.xml │ │ │ │ ├── video_player_error_view.xml │ │ │ │ ├── history_item.xml │ │ │ │ ├── popular_weekly_before_series_item.xml │ │ │ │ ├── order_fragment.xml │ │ │ │ ├── popular_top_list.xml │ │ │ │ ├── bangumi_section_container_item.xml │ │ │ │ └── favorites_fragment.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ │ ├── ic_biu_video.xml │ │ │ │ └── ic_biu_video_round.xml │ │ │ └── menu │ │ │ │ └── home_activity_menu.xml │ │ ├── ic_biu_video-playstore.png │ │ └── java │ │ │ └── com │ │ │ └── leon │ │ │ └── biuvideo │ │ │ ├── beans │ │ │ ├── userBeans │ │ │ │ ├── Follow.java │ │ │ │ ├── Follower.java │ │ │ │ └── HistoryType.java │ │ │ ├── discoverBeans │ │ │ │ └── HotSearch.java │ │ │ ├── homeBeans │ │ │ │ ├── popularBeans │ │ │ │ │ ├── PopularWeeklySeries.java │ │ │ │ │ ├── PopularVideo.java │ │ │ │ │ └── PopularTopList.java │ │ │ │ ├── favoriteBeans │ │ │ │ │ ├── FavoriteVideoFolder.java │ │ │ │ │ ├── FavoriteArticle.java │ │ │ │ │ └── FavoriteVideoFolderDetail.java │ │ │ │ ├── PartitionVideo.java │ │ │ │ └── WatchLater.java │ │ │ ├── resourcesBeans │ │ │ │ ├── Audio.java │ │ │ │ ├── bangumiBeans │ │ │ │ │ ├── BangumiSeason.java │ │ │ │ │ ├── BangumiAnthologyStat.java │ │ │ │ │ ├── BangumiAnthology.java │ │ │ │ │ ├── BangumiSection.java │ │ │ │ │ └── Bangumi.java │ │ │ │ ├── BangumiRecommend.java │ │ │ │ ├── ArticleInfo.java │ │ │ │ ├── BiliUserInfo.java │ │ │ │ ├── VideoRecommend.java │ │ │ │ ├── PictureDetail.java │ │ │ │ ├── videoBeans │ │ │ │ │ └── VideoWithFlv.java │ │ │ │ └── Danmaku.java │ │ │ ├── District.java │ │ │ ├── Partition.java │ │ │ ├── biliUserResourcesBeans │ │ │ │ ├── BiliUserPicture.java │ │ │ │ ├── BiliUserAudio.java │ │ │ │ ├── BiliUserArticle.java │ │ │ │ └── BiliUserVideo.java │ │ │ ├── searchResultBeans │ │ │ │ ├── SearchResultArticle.java │ │ │ │ ├── SearchResultVideo.java │ │ │ │ ├── SearchResultBiliUser.java │ │ │ │ └── SearchResultBangumi.java │ │ │ ├── DownloadedRecord.java │ │ │ └── orderBeans │ │ │ │ └── Order.java │ │ │ ├── ui │ │ │ ├── resourcesFragment │ │ │ │ └── video │ │ │ │ │ ├── OnBottomSheetWithItemListener.java │ │ │ │ │ ├── videoControlComonents │ │ │ │ │ └── OnDanmakuListener.java │ │ │ │ │ └── OnVideoAnthologyListener.java │ │ │ ├── views │ │ │ │ └── MAPPGlideModule.java │ │ │ ├── mainFragments │ │ │ │ └── homeModels │ │ │ │ │ └── HomeModelInterface.java │ │ │ ├── layoutManager │ │ │ │ └── PictureGridLayoutManager.java │ │ │ ├── baseSupportFragment │ │ │ │ └── BaseLazySupportFragment.java │ │ │ └── home │ │ │ │ ├── favoriteFragments │ │ │ │ ├── FavoriteArticleFragment.java │ │ │ │ └── favoriteVideo │ │ │ │ │ └── FavoriteVideoFolderFragment.java │ │ │ │ └── orderFragments │ │ │ │ └── OrderDataFragment.java │ │ │ ├── utils │ │ │ ├── Fuck.java │ │ │ ├── parseDataUtils │ │ │ │ └── ParserInterface.java │ │ │ └── SimpleSingleThreadPool.java │ │ │ ├── values │ │ │ ├── FeaturesName.java │ │ │ ├── Role.java │ │ │ ├── OrderType.java │ │ │ ├── DanmakuType.java │ │ │ ├── HistoryPlatformType.java │ │ │ ├── ImagePixelSize.java │ │ │ ├── FragmentType.java │ │ │ ├── Actions.java │ │ │ └── Qualitys.java │ │ │ ├── wraps │ │ │ ├── VideoQualityWrap.java │ │ │ └── DanmakuWrap.java │ │ │ ├── greendao │ │ │ ├── daoutils │ │ │ │ ├── SearchHistoryUtils.java │ │ │ │ ├── DownloadHistoryUtils.java │ │ │ │ └── DownloadLevelOneUtils.java │ │ │ └── dao │ │ │ │ └── SearchHistory.java │ │ │ └── adapters │ │ │ └── otherAdapters │ │ │ └── ViewPager2Adapter.java │ ├── test │ │ └── java │ │ │ └── com │ │ │ └── leon │ │ │ └── biuvideo │ │ │ └── ExampleUnitTest.java │ └── androidTest │ │ └── java │ │ └── com │ │ └── leon │ │ └── biuvideo │ │ └── ExampleInstrumentedTest.java ├── .gitignore └── proguard-rules.pro ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── .gitignore ├── gradle.properties └── LICENSE /settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | rootProject.name = "BiuVideo" -------------------------------------------------------------------------------- /app/src/main/res/values/video_strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_rank.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/res/drawable/ic_rank.png -------------------------------------------------------------------------------- /app/src/main/ic_biu_video-playstore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/ic_biu_video-playstore.png -------------------------------------------------------------------------------- /app/src/main/res/raw/we_chat_pay_qrcode.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/res/raw/we_chat_pay_qrcode.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_biu_video.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/res/mipmap-hdpi/ic_biu_video.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_biu_video.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/res/mipmap-mdpi/ic_biu_video.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/bili_user_level_0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/res/drawable/bili_user_level_0.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/bili_user_level_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/res/drawable/bili_user_level_1.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/bili_user_level_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/res/drawable/bili_user_level_2.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/bili_user_level_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/res/drawable/bili_user_level_3.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/bili_user_level_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/res/drawable/bili_user_level_4.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/bili_user_level_5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/res/drawable/bili_user_level_5.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/bili_user_level_6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/res/drawable/bili_user_level_6.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/user_default_face.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/res/drawable/user_default_face.jpg -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_biu_video.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/res/mipmap-xhdpi/ic_biu_video.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_biu_video.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/res/mipmap-xxhdpi/ic_biu_video.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_biu_video.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_biu_video.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/user_default_banner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/res/drawable/user_default_banner.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_biu_video_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/res/mipmap-hdpi/ic_biu_video_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_biu_video_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/res/mipmap-mdpi/ic_biu_video_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_biu_video_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/res/mipmap-xhdpi/ic_biu_video_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_biu_video_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/res/mipmap-xxhdpi/ic_biu_video_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_biu_video_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LeonNOV/BiuVideo/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_biu_video_round.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea 5 | .DS_Store 6 | /build 7 | /captures 8 | .externalNativeBuild 9 | .cxx 10 | /dkplayer-ijk 11 | /dkplayer-java 12 | /dkplayer-ui 13 | /constants.gradle -------------------------------------------------------------------------------- /app/src/main/res/drawable/pointer.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/round_corners6dp_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/anim/recycler_view_fall_down.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/res/anim/translate_right_exit.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/anim/translate_right_enter.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/bottom_sheet_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Fri Oct 16 11:04:56 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.1.1-all.zip 7 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/userBeans/Follow.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.userBeans; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2020/10/25 6 | * @Desc 关注数据,由于该类的数据结构和{@link Follower}相同,所以这里直接继承Follower类 7 | */ 8 | public class Follow extends Follower { 9 | } 10 | -------------------------------------------------------------------------------- /app/src/main/res/layout/tab_layout_title.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/res/values/biuVideoIds.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ripple_rectangle.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_player_title_video_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/ui/resourcesFragment/video/OnBottomSheetWithItemListener.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.ui.resourcesFragment.video; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/4/26 6 | * @Desc 7 | */ 8 | public interface OnBottomSheetWithItemListener { 9 | void onItem (int position); 10 | } 11 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_player_bottom_control_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_biu_video.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/a_bottom_home.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/a_bottom_user.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_coin_status.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_like_status.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_biu_video_round.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | /release 3 | /src/main/java/com/leon/biuvideo/values/apis/AmapKey.java 4 | /src/main/java/com/leon/biuvideo/ui/resourcesFragment/BiuVideoPlayerWithAudio.java 5 | /src/main/java/com/leon/biuvideo/ui/resourcesFragment/BiuVideoPlayerFactory.java 6 | /src/main/java/com/leon/biuvideo/ui/resourcesFragment/VideoPlayerView.java -------------------------------------------------------------------------------- /app/src/main/res/drawable/audio_play_stat.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_favorite_status.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_lock_status.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_play_status.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/layout/popular_top_list_sub_fragment.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/a_bottom_discovery.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/a_bottom_partition.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/download_manager_select_stat.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_follow_status.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_selected.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/discoverBeans/HotSearch.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.discoverBeans; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/3/14 6 | * @Desc 热搜实体类 7 | */ 8 | public class HotSearch { 9 | public int position; 10 | public String keyword; 11 | public String showName; 12 | public String icon; 13 | } 14 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_danmaku_status.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/homeBeans/popularBeans/PopularWeeklySeries.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.homeBeans.popularBeans; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/3/24 6 | * @Desc 往期回顾数据 7 | */ 8 | public class PopularWeeklySeries { 9 | public int number; 10 | public String name; 11 | public String subject; 12 | } 13 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/bangumi_info_order_state.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/layout/comment_level2_item.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/res/anim/simple_snackbar_anim_enter.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 7 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/anim/simple_snackbar_anim_exit.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 7 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_anthology_selected.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 9 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/download_manager_download_stat.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/homeBeans/favoriteBeans/FavoriteVideoFolder.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.homeBeans.favoriteBeans; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/3/19 6 | * @Desc 用户收藏夹数据 7 | */ 8 | public class FavoriteVideoFolder { 9 | public long id; 10 | public int count; 11 | public long mid; 12 | public String title; 13 | } 14 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_enter.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_anthology_item_download_stat.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/layout/search_ressult_bangumi_fragment.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_back.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_anthology_state.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/anim/picture_viewer_enter.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 11 | -------------------------------------------------------------------------------- /app/src/main/res/anim/picture_viewer_exit.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 11 | -------------------------------------------------------------------------------- /app/src/test/java/com/leon/biuvideo/ExampleUnitTest.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo; 2 | 3 | import org.junit.Test; 4 | 5 | /** 6 | * Example local unit test, which will execute on the development machine (host). 7 | * 8 | * @see Testing documentation 9 | */ 10 | public class ExampleUnitTest { 11 | 12 | @Test 13 | public void test() { 14 | } 15 | } -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_line.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/homeBeans/PartitionVideo.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.homeBeans; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/3/23 6 | * @Desc 子分区结果 7 | */ 8 | public class PartitionVideo { 9 | public String title; 10 | public String bvid; 11 | public String pic; 12 | 13 | public int play; 14 | public int danmaku; 15 | 16 | public String duration; 17 | } 18 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/resourcesBeans/Audio.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.resourcesBeans; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/4/14 6 | * @Desc 音频数据 7 | */ 8 | public class Audio { 9 | public String title; 10 | public String author; 11 | public String cover; 12 | 13 | public int duration; 14 | public String bvid; 15 | 16 | public String streamUrl; 17 | } 18 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ripple_round_corners6dp_no_padding_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_length_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 11 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/District.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/3/8 6 | * @Desc 用于存放地址信息 7 | */ 8 | public class District { 9 | public String citycode; 10 | public String adcode; 11 | public String name; 12 | public double longitude; 13 | public double latitude; 14 | public String level; 15 | public String[] address; 16 | } 17 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/ui/views/MAPPGlideModule.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.ui.views; 2 | 3 | import com.bumptech.glide.annotation.GlideModule; 4 | import com.bumptech.glide.module.AppGlideModule; 5 | 6 | /** 7 | * @Author Leon 8 | * @Time 2021/3/19 9 | * @Desc W/Glide: Failed to find GeneratedAppGlideModule.解决问题方案 10 | */ 11 | @GlideModule 12 | public class MAPPGlideModule extends AppGlideModule { 13 | } 14 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_badge_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 11 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_pause.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_clear.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/round_corners6dp_padding5dp_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 11 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/Partition.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans; 2 | 3 | import java.util.List; 4 | 5 | /** 6 | * @Author Leon 7 | * @Time 2021/3/23 8 | * @Desc 分区数据 9 | */ 10 | public class Partition { 11 | public String title; 12 | public String id; 13 | 14 | public List tags; 15 | public static class Tag { 16 | public String title; 17 | public String id; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/resourcesBeans/bangumiBeans/BangumiSeason.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.resourcesBeans.bangumiBeans; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/3/21 6 | * @Desc 番剧单季数据 7 | */ 8 | public class BangumiSeason { 9 | public String badge; 10 | public String cover; 11 | 12 | public String mediaId; 13 | public String seasonId; 14 | 15 | public String seasonTitle; 16 | } 17 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/biliUserResourcesBeans/BiliUserPicture.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.biliUserResourcesBeans; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/4/10 6 | * @Desc B站用户相簿数据 7 | */ 8 | public class BiliUserPicture { 9 | public String id; 10 | 11 | public String desc; 12 | public String cover; 13 | public int count; 14 | 15 | public String view; 16 | public String like; 17 | } 18 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/download_manager_unselected.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/biliUserResourcesBeans/BiliUserAudio.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.biliUserResourcesBeans; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/4/10 6 | * @Desc B站用户音频数据 7 | */ 8 | public class BiliUserAudio { 9 | public String id; 10 | 11 | public String title; 12 | public String cover; 13 | public String duration; 14 | 15 | public String pubTime; 16 | public String play; 17 | } 18 | -------------------------------------------------------------------------------- /app/src/main/res/values/theme_colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | #2196f3 12 | 13 | 14 | 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/ui/resourcesFragment/video/videoControlComonents/OnDanmakuListener.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.ui.resourcesFragment.video.videoControlComonents; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/4/18 6 | * @Desc 控制弹幕监听 7 | */ 8 | public interface OnDanmakuListener { 9 | /** 10 | * 停止拖动进度条/停止滑动屏幕调整进度 11 | * 12 | * @param position 当前视频进度(毫秒值) 13 | */ 14 | void onSeekTo(long position); 15 | } 16 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/indicator.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ripple_white_wire_frame_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/ui/resourcesFragment/video/OnVideoAnthologyListener.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.ui.resourcesFragment.video; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/4/23 6 | * @Desc 7 | */ 8 | public interface OnVideoAnthologyListener { 9 | 10 | /** 11 | * 切换选集 12 | * 13 | * @param cid 选集ICD 14 | * @param title 选集标题 15 | */ 16 | void onAnthology(String cid, String title, boolean isMovie); 17 | } 18 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/utils/Fuck.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.utils; 2 | 3 | import android.util.Log; 4 | 5 | /** 6 | * @Author Leon 7 | * @Time 2020/11/8 8 | * @Desc Fuck!!! 9 | */ 10 | public class Fuck { 11 | public static final String TAG = "Fuck"; 12 | 13 | public static void red(String msg) { 14 | Log.w(TAG, msg); 15 | } 16 | public static void blue(String msg) { 17 | Log.d(TAG, msg); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/audio_control_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/biliUserResourcesBeans/BiliUserArticle.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.biliUserResourcesBeans; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/4/10 6 | * @Desc B站用户专栏数据 7 | */ 8 | public class BiliUserArticle { 9 | public String id; 10 | 11 | public String title; 12 | public String cover; 13 | public String summary; 14 | 15 | public String view; 16 | public String like; 17 | public String comment; 18 | } 19 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/values/FeaturesName.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.values; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/3/3 6 | * @Desc 设置界面 功能名称 7 | */ 8 | public enum FeaturesName { 9 | /** 10 | * 原图模式 11 | */ 12 | IMG_ORIGINAL_MODEL(0), 13 | 14 | /** 15 | * 天气模块 16 | */ 17 | WEATHER_MODEL(1); 18 | 19 | public int value; 20 | 21 | FeaturesName(int value) { 22 | this.value = value; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/searchResultBeans/SearchResultArticle.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.searchResultBeans; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/3/30 6 | * @Desc 专栏搜索结果 7 | */ 8 | public class SearchResultArticle { 9 | public String articleId; 10 | 11 | public String title; 12 | public String[] images; 13 | 14 | public String userName; 15 | public String view; 16 | public String like; 17 | public String comment; 18 | } 19 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/wraps/VideoQualityWrap.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.wraps; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/4/19 6 | * @Desc 切换视频画质事件 7 | */ 8 | public class VideoQualityWrap { 9 | public final int qualityId; 10 | 11 | public static VideoQualityWrap getInstance(int qualityId) { 12 | return new VideoQualityWrap(qualityId); 13 | } 14 | 15 | public VideoQualityWrap(int qualityId) { 16 | this.qualityId = qualityId; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /app/src/main/res/layout/bili_user_pictures_fragment.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/values/Role.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.values; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/3/16 6 | * @Desc 用户类型 7 | */ 8 | public enum Role { 9 | /** 10 | * 未认证 11 | */ 12 | NONE(0), 13 | 14 | /** 15 | * 个人认证 16 | */ 17 | PERSON(1), 18 | 19 | /** 20 | * 机构/官方认证 21 | */ 22 | OFFICIAL(2); 23 | 24 | public int value; 25 | 26 | Role(int value) { 27 | this.value = value; 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/audio_play.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_check.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/values/OrderType.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.values; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2020/11/22 6 | * @Desc 订阅类型 7 | */ 8 | public enum OrderType { 9 | /** 10 | * 番剧 11 | */ 12 | BANGUMI(1), 13 | 14 | /** 15 | * 剧集 16 | */ 17 | SERIES(2), 18 | 19 | /** 20 | * 标签 21 | */ 22 | TAG(3); 23 | 24 | public int value; 25 | 26 | OrderType(int value) { 27 | this.value = value; 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_location.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/biliUserResourcesBeans/BiliUserVideo.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.biliUserResourcesBeans; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/4/10 6 | * @Desc B站用户视频投稿数据 7 | */ 8 | public class BiliUserVideo { 9 | public String bvid; 10 | public String avid; 11 | 12 | public String cover; 13 | public String title; 14 | public String duration; 15 | public String pubTime; 16 | 17 | public String play; 18 | public String danmaku; 19 | } 20 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/resourcesBeans/bangumiBeans/BangumiAnthologyStat.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.resourcesBeans.bangumiBeans; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/4/23 6 | * @Desc 番剧状态 7 | */ 8 | public class BangumiAnthologyStat { 9 | public int coin; 10 | public int danmaku; 11 | public int like; 12 | public int view; 13 | public int reply; 14 | 15 | public boolean isCoin; 16 | public boolean isLike; 17 | public boolean isFavorite; 18 | } 19 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/searchResultBeans/SearchResultVideo.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.searchResultBeans; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/3/30 6 | * @Desc 视频搜索结果数据 7 | */ 8 | public class SearchResultVideo { 9 | public String aid; 10 | public String bvid; 11 | 12 | public String duration; 13 | public String cover; 14 | public String title; 15 | 16 | public String userName; 17 | 18 | public String play; 19 | public String danmaku; 20 | } 21 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/wraps/DanmakuWrap.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.wraps; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/4/18 6 | * @Desc 弹幕事件,主要管理弹幕的开关状态 7 | */ 8 | public class DanmakuWrap { 9 | public final boolean danmakuState; 10 | 11 | public static DanmakuWrap getInstance(boolean danmakuState) { 12 | return new DanmakuWrap(danmakuState); 13 | } 14 | 15 | public DanmakuWrap(boolean danmakuState) { 16 | this.danmakuState = danmakuState; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_thumb.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_anthology_unselected.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/layout/bangumi_series_item.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/homeBeans/popularBeans/PopularVideo.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.homeBeans.popularBeans; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/3/23 6 | * @Desc Popular数据 7 | */ 8 | public class PopularVideo { 9 | public String title; 10 | public String pic; 11 | public String aid; 12 | public String bvid; 13 | 14 | public String userName; 15 | 16 | public int view; 17 | public int danmaku; 18 | 19 | public String duration; 20 | public String reason; 21 | } 22 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_refresh.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/resourcesBeans/BangumiRecommend.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.resourcesBeans; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/4/27 6 | * @Desc 推荐番剧数据 7 | */ 8 | public class BangumiRecommend { 9 | public String seasonId; 10 | 11 | public String title; 12 | public String cover; 13 | 14 | public String newEp; 15 | public String badge; 16 | 17 | public String ratingCount; 18 | public String ratingScore; 19 | 20 | public String play; 21 | public String follow; 22 | } 23 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/userBeans/Follower.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.userBeans; 2 | 3 | import com.leon.biuvideo.values.Role; 4 | 5 | /** 6 | * @Author Leon 7 | * @Time 2021/3/18 8 | * @Desc 粉丝数据 9 | */ 10 | public class Follower { 11 | public long followerMid; 12 | public String userName; 13 | public String userFace; 14 | public String sign; 15 | public Role role; 16 | 17 | /** 18 | * 关系状态;0:未关注,2:已关注,6:已互粉 19 | */ 20 | public int userStatus; 21 | public boolean vipStatus; 22 | } 23 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/searchResultBeans/SearchResultBiliUser.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.searchResultBeans; 2 | 3 | import com.leon.biuvideo.values.Role; 4 | 5 | /** 6 | * @Author Leon 7 | * @Time 2021/3/30 8 | * @Desc 用户搜索结果数据 9 | */ 10 | public class SearchResultBiliUser { 11 | public String mid; 12 | 13 | public String userName; 14 | public String userSign; 15 | public String userFace; 16 | 17 | public Role role; 18 | 19 | /** 20 | * 关系状态;0:未关注,2:已关注,6:已互粉 21 | */ 22 | public int userStatus; 23 | } 24 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/resourcesBeans/ArticleInfo.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.resourcesBeans; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/4/12 6 | * @Desc 专栏基本数据 7 | */ 8 | public class ArticleInfo { 9 | public String title; 10 | public String banner; 11 | 12 | public String mid; 13 | 14 | public boolean likeStatus; 15 | public boolean favoriteStatus; 16 | public boolean attentionStatus; 17 | 18 | public String view; 19 | public String favorite; 20 | public String like; 21 | public String comment; 22 | } 23 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/utils/parseDataUtils/ParserInterface.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.utils.parseDataUtils; 2 | 3 | import java.util.List; 4 | 5 | /** 6 | * @Author Leon 7 | * @Time 2021/3/10 8 | * @Desc 以集合形式返回的解析工具类都应实现该接口,用于解析请求到的JSON数据 9 | */ 10 | public abstract class ParserInterface { 11 | /** 12 | * 数据状态 13 | * true:未获取完,false:已全部获取完 14 | */ 15 | protected boolean dataStatus = true; 16 | 17 | /** 18 | * 解析数据 19 | * 20 | * @return 返回数据集 21 | */ 22 | protected abstract List parseData(); 23 | } 24 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/downloading_item_stat.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 11 | 15 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ripple_setting_item_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ripple_round_corners6dp_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /app/src/main/res/layout/search_result_menu_popup_window.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/res/layout/video_loading_recycler_view_dialog.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ripple_round_corners6dp_partition_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /app/src/main/res/layout/video_comment_fragment.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/circle_ripple_bg.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /app/src/main/res/layout/search_result_menu_item.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/values/DanmakuType.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.values; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/4/17 6 | * @Desc 弹幕类型,暂不支持高级弹幕、代码弹幕、BAS弹幕 7 | */ 8 | public enum DanmakuType { 9 | /** 10 | * 普通弹幕 11 | */ 12 | NORMAL_DANMAKU(0), 13 | 14 | /** 15 | * 底部弹幕 16 | */ 17 | BOTTOM_DANMAKU(1), 18 | 19 | /** 20 | * 顶部弹幕 21 | */ 22 | TOP_DANMAKU(2), 23 | 24 | /** 25 | * 逆向弹幕 26 | */ 27 | REVERSE_DANMAKU(3); 28 | 29 | public int value; 30 | 31 | DanmakuType(int value) { 32 | this.value = value; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/a_bottom_discovery_unselected.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_view_time.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/userBeans/HistoryType.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.userBeans; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2020/12/9 6 | * @Desc 历史记录类型 7 | */ 8 | public enum HistoryType { 9 | /** 10 | * 视频/稿件 11 | */ 12 | VIDEO("archive"), 13 | 14 | /** 15 | * 番剧/影视 16 | */ 17 | BANGUMI("bangumi"), 18 | 19 | /** 20 | * 文章/文集 21 | */ 22 | ARTICLE("article"), 23 | 24 | /** 25 | * 直播 26 | */ 27 | LIVE("live"); 28 | 29 | public String value; 30 | 31 | HistoryType(String value) { 32 | this.value = value; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/a_bottom_discovery_selected.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/audio_thumb.xml: -------------------------------------------------------------------------------- 1 | 6 | 11 | 14 | 15 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/values/HistoryPlatformType.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.values; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/3/28 6 | * @Desc 历史记录观看平台 7 | */ 8 | public enum HistoryPlatformType { 9 | /** 10 | * 手机端 11 | */ 12 | PHOTO(0), 13 | 14 | /** 15 | * PC/Web端 16 | */ 17 | PC(1), 18 | 19 | /** 20 | * Pad端 21 | */ 22 | PAD(2), 23 | 24 | /** 25 | * TV端 26 | */ 27 | TV(3), 28 | 29 | /** 30 | * 其他平台 31 | */ 32 | OTHER(4); 33 | 34 | public int value; 35 | 36 | HistoryPlatformType(int value) { 37 | this.value = value; 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/a_bottom_user_unselected.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/audio_pause.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_anthology_item_download.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_play.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/ui/mainFragments/homeModels/HomeModelInterface.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.ui.mainFragments.homeModels; 2 | 3 | import android.content.Context; 4 | import android.view.View; 5 | 6 | import java.io.Serializable; 7 | 8 | /** 9 | * @Author Leon 10 | * @Time 2021/3/3 11 | * @Desc 主页模块接口 12 | */ 13 | public interface HomeModelInterface { 14 | /** 15 | * 初始化模块 16 | */ 17 | void onInitialize(View view, Context context); 18 | 19 | /** 20 | * 刷新模块信息 21 | */ 22 | void onRefresh(Serializable serializable); 23 | 24 | /** 25 | * 设置模块为显示或隐藏 26 | */ 27 | void setDisplayState(boolean isDisplay); 28 | } 29 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_fast_forward.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/a_bottom_user_selected.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/history_platform_photo.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/DownloadedRecord.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans; 2 | 3 | import com.leon.biuvideo.greendao.dao.DownloadHistory; 4 | 5 | import java.util.List; 6 | 7 | /** 8 | * @Author Leon 9 | * @Time 2021/5/14 10 | * @Desc 已完成下载记录 11 | */ 12 | public class DownloadedRecord { 13 | public int count; 14 | 15 | public String cover; 16 | public String title; 17 | public String fileSize; 18 | 19 | /** 20 | * 如果LevelOnId的子记录只有一条,则该变量不为null 21 | */ 22 | public DownloadHistory downloadHistory; 23 | 24 | /** 25 | * 如果LevelOnId的子记录有多条,则该变量不为null 26 | */ 27 | public List downloadHistoryList; 28 | } 29 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/values/ImagePixelSize.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.values; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2020/11/14 6 | * @Desc 图片像素大小值 7 | */ 8 | public enum ImagePixelSize { 9 | //头像大小 10 | FACE("@68w_68h.webp"), 11 | 12 | //封面大小 13 | COVER("@160w_100h.webp"), 14 | 15 | //图片个数为3的倍数 16 | MORE("@375w_375h_1c.webp"), 17 | 18 | //图片个数为2的倍数 19 | DOUBLE("@564w_564h_1c.webp"), 20 | 21 | //只有一张图片 22 | SINGLE("@1125w_1125h_1e.webp"), 23 | 24 | //图片查看器 25 | VIEWER("@2000w_1e.webp"); 26 | 27 | public String value; 28 | 29 | ImagePixelSize(String value) { 30 | this.value = value; 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_fast_retreat.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_anthology_item_complete.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_comment.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/download_manager_selected.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_close.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/user_level_progress_layer.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_cancel.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/a_bottom_home_selected.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_share.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_progress_layer.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_replay.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/resourcesBeans/BiliUserInfo.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.resourcesBeans; 2 | 3 | import com.leon.biuvideo.values.Role; 4 | 5 | /** 6 | * @Author Leon 7 | * @Time 2020/10/21 8 | * @Desc B站用户信息数据 9 | */ 10 | public class BiliUserInfo { 11 | public String userMid; 12 | public String userName; 13 | public String userFace; 14 | 15 | public int level; 16 | public String sign; 17 | public String gender; 18 | public String topPhoto; 19 | 20 | /** 21 | * true:当前用户已关注,false:未关注 22 | */ 23 | public boolean attentionState; 24 | 25 | public Role role; 26 | public String verifyDesc; 27 | 28 | public boolean isVip; 29 | public String vipLabel; 30 | } 31 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/values/FragmentType.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.values; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/4/13 6 | * @Desc Fragment类型,用于启动,“公共”Fragment 7 | */ 8 | public enum FragmentType { 9 | /** 10 | * 用户页面 11 | */ 12 | BILI_USER(0), 13 | 14 | /** 15 | * 视频页面 16 | */ 17 | VIDEO(1), 18 | 19 | /** 20 | * 番剧页面 21 | */ 22 | BANGUMI(2), 23 | 24 | /** 25 | * 音频页面 26 | */ 27 | AUDIO(3), 28 | 29 | /** 30 | * 专栏页面 31 | */ 32 | ARTICLE(4), 33 | 34 | /** 35 | * 相簿页面 36 | */ 37 | PICTURE(5); 38 | 39 | public int value; 40 | 41 | FragmentType(int value) { 42 | this.value = value; 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/resourcesBeans/bangumiBeans/BangumiAnthology.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.resourcesBeans.bangumiBeans; 2 | 3 | import java.io.Serializable; 4 | 5 | /** 6 | * @Author Leon 7 | * @Time 2021/3/21 8 | * @Desc 番剧单集数据 9 | */ 10 | public class BangumiAnthology implements Serializable { 11 | public String seasonId; 12 | public String aid; 13 | public String bvid; 14 | public String cid; 15 | public String id; 16 | 17 | public String badge; 18 | public String cover; 19 | public String mainTitle; 20 | public String subTitle; 21 | 22 | public long pubTime; 23 | public String shortLink; 24 | 25 | public boolean isDownloading; 26 | public boolean isDownloaded; 27 | } 28 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/a_bottom_home_unselected.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/ui/layoutManager/PictureGridLayoutManager.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.ui.layoutManager; 2 | 3 | import android.content.Context; 4 | 5 | import androidx.recyclerview.widget.GridLayoutManager; 6 | 7 | /** 8 | * @Author Leon 9 | * @Time 2021/4/13 10 | * @Desc 相簿布局管理器 11 | */ 12 | public class PictureGridLayoutManager extends GridLayoutManager { 13 | public PictureGridLayoutManager(Context context, int spanCount) { 14 | super(context, spanCount); 15 | } 16 | 17 | /** 18 | * 设置GridLayoutManager为不可滑动 19 | * 由于官方设置的上传图片数量就为9张,所以这里可以直接设置为false 20 | * 21 | * @return 返回false 22 | */ 23 | @Override 24 | public boolean canScrollVertically() { 25 | return false; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_view.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_danmaku.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/icon_error2.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 15 | 16 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_official_verify.xml: -------------------------------------------------------------------------------- 1 | 6 | 11 | 14 | 15 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_video_play.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/resourcesBeans/bangumiBeans/BangumiSection.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.resourcesBeans.bangumiBeans; 2 | 3 | import java.util.List; 4 | 5 | /** 6 | * @Author Leon 7 | * @Time 2021/3/21 8 | * @Desc 番剧相关PV数据 9 | */ 10 | public class BangumiSection { 11 | public int id; 12 | public String title; 13 | public List episodeList; 14 | 15 | public static class Episode { 16 | public String aid; 17 | public String bvid; 18 | public String badge; 19 | public String cid; 20 | public String cover; 21 | 22 | public String title; 23 | public String longTitle; 24 | public long pubTime; 25 | public String shortLink; 26 | 27 | public String subTitle; 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/download_manager_pause_all.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_person_verify.xml: -------------------------------------------------------------------------------- 1 | 6 | 11 | 14 | 15 | -------------------------------------------------------------------------------- /app/src/main/res/anim/item_fall_down.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 8 | 12 | 13 | 21 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/history_platform_pc.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/homeBeans/WatchLater.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.homeBeans; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/3/14 6 | * @Desc 稍后观看 7 | */ 8 | public class WatchLater { 9 | public boolean isInvalid; 10 | 11 | public long aid; 12 | public String bvid; 13 | public int videos; 14 | public String cover; 15 | public String title; 16 | public String desc; 17 | public int duration; 18 | 19 | public String userMid; 20 | public String userName; 21 | public String userFace; 22 | 23 | public int progress; 24 | 25 | public int view; 26 | public int danmaku; 27 | public int reply; 28 | public int favorite; 29 | public int coin; 30 | public int share; 31 | public int like; 32 | 33 | public long addTime; 34 | } 35 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_like.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/values/Actions.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.values; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/3/4 6 | * @Desc 通过intentFilter添加Action时,使用该类中的常量进行添加 7 | */ 8 | public class Actions { 9 | /** 10 | * 天气模块 11 | */ 12 | public static final String WEATHER_MODEL = "WeatherModelInterface"; 13 | 14 | /** 15 | * 当前天气数据 16 | */ 17 | public static final String CURRENT_WEATHER = "CurrentWeather"; 18 | 19 | /** 20 | * 刷新推荐视图样式 21 | */ 22 | public static final String REFRESH_RECOMMEND_STYLE = "refreshRecommendStyle"; 23 | 24 | /** 25 | * 登陆成功 26 | */ 27 | public static final String LOGIN_SUCCESS = "loginSuccess"; 28 | 29 | /** 30 | * 退出当前账户 31 | */ 32 | public static final String USER_LOGOUT = "userLogout"; 33 | } 34 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_liked.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_locked.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/layout/downloaded_detail_fragment.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | 13 | 18 | 19 | -------------------------------------------------------------------------------- /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 -------------------------------------------------------------------------------- /app/src/main/res/drawable/audio_play_video.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/menu/home_activity_menu.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | 13 | 14 | 18 | 19 | 23 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/resourcesBeans/VideoRecommend.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.resourcesBeans; 2 | 3 | import com.leon.biuvideo.values.RecommendType; 4 | 5 | /** 6 | * @Author Leon 7 | * @Time 2021/3/10 8 | * @Desc 推荐内容 9 | */ 10 | public class VideoRecommend { 11 | public RecommendType recommendType; 12 | 13 | public long aid; 14 | public String bvid; 15 | public String cover; 16 | public String title; 17 | public String desc; 18 | public long pubdate; 19 | 20 | public String userName; 21 | public String userFace; 22 | public String userMid; 23 | 24 | public String duration; 25 | 26 | public int view; 27 | public int danmaku; 28 | public int reply; 29 | public int favorite; 30 | public int coin; 31 | public int share; 32 | public int like; 33 | } 34 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/downloading_progress.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_search.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/resourcesBeans/PictureDetail.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.resourcesBeans; 2 | 3 | import com.leon.biuvideo.values.Role; 4 | 5 | import java.util.Map; 6 | 7 | /** 8 | * @Author Leon 9 | * @Time 2021/4/12 10 | * @Desc 相簿数据 11 | */ 12 | public class PictureDetail { 13 | public String view; 14 | public String comment; 15 | public String like; 16 | 17 | public String pubTime; 18 | 19 | public String userName; 20 | public String userMid; 21 | public String userFace; 22 | public boolean isVip; 23 | public Role role; 24 | 25 | public String title; 26 | public String desc; 27 | 28 | public boolean isLiked; 29 | public boolean isFollow; 30 | 31 | /** 32 | * 索引, 图片链接,图片大小 33 | */ 34 | public Map pictures; 35 | public int picturesCount; 36 | } 37 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/ui/baseSupportFragment/BaseLazySupportFragment.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.ui.baseSupportFragment; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2021/3/26 6 | * @Desc 懒加载Fragment,需要配合ViewPager2使用 7 | */ 8 | public abstract class BaseLazySupportFragment extends BaseSupportFragment { 9 | /** 10 | * 数据读取标记 11 | */ 12 | protected boolean isLoaded = false; 13 | 14 | @Override 15 | public void onResume() { 16 | super.onResume(); 17 | if (!isLoaded) { 18 | onLazyLoad(); 19 | isLoaded = true; 20 | } 21 | } 22 | 23 | /** 24 | * 加载数据 25 | */ 26 | protected abstract void onLazyLoad (); 27 | 28 | public boolean isLoaded() { 29 | return isLoaded; 30 | } 31 | 32 | public void setLoaded(boolean loaded) { 33 | isLoaded = loaded; 34 | } 35 | } -------------------------------------------------------------------------------- /app/src/main/res/layout/picture_list_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 19 | 20 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/homeBeans/popularBeans/PopularTopList.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.homeBeans.popularBeans; 2 | 3 | import java.util.List; 4 | 5 | /** 6 | * @Author Leon 7 | * @Time 2021/3/25 8 | * @Desc 排行榜数据 9 | */ 10 | public class PopularTopList { 11 | public String aid; 12 | public String bvid; 13 | public String seasonId; 14 | 15 | public String title; 16 | public String cover; 17 | public String badge; 18 | public String extra1; 19 | public String extra2; 20 | 21 | public String duration; 22 | public String score; 23 | 24 | public List otherVideoList; 25 | 26 | /** 27 | * 同UP主上榜的视频 28 | */ 29 | public static class OtherVideo { 30 | public String aid; 31 | public String bvid; 32 | public String title; 33 | public String score; 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_favorite.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_unlock.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/history_platform_tv.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_favorited.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/homeBeans/favoriteBeans/FavoriteArticle.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.homeBeans.favoriteBeans; 2 | 3 | import java.io.Serializable; 4 | 5 | /** 6 | * @Author Leon 7 | * @Time 2020/11/8 8 | * @Desc 收藏的专栏数据 9 | */ 10 | public class FavoriteArticle implements Serializable { 11 | public long mid; 12 | public String face; 13 | public long articleId; 14 | public String title; 15 | public String summary; 16 | public String author; 17 | public String coverUrl; 18 | 19 | public String category; 20 | 21 | /** 22 | * 秒 23 | */ 24 | public long ctime; 25 | 26 | /** 27 | * 收藏时间(秒) 28 | */ 29 | public long favoriteTime; 30 | 31 | // public int coin; 32 | public int view; 33 | // public int share; 34 | // public int favorite; 35 | public int like; 36 | public int reply; 37 | } 38 | -------------------------------------------------------------------------------- /app/src/main/res/layout/history_fragment.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 14 | 15 | 20 | 21 | -------------------------------------------------------------------------------- /app/src/main/res/layout/popular_precious.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 13 | 14 | 19 | 20 | -------------------------------------------------------------------------------- /app/src/main/res/layout/popular_fragment.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 14 | 15 | 20 | 21 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/audio_download.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_audio_play.xml: -------------------------------------------------------------------------------- 1 | 6 | 11 | 12 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/searchResultBeans/SearchResultBangumi.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.searchResultBeans; 2 | 3 | import java.util.List; 4 | 5 | /** 6 | * @Author Leon 7 | * @Time 2021/3/30 8 | * @Desc 番剧搜索结果数据 9 | */ 10 | public class SearchResultBangumi { 11 | public String mediaId; 12 | public String seasonId; 13 | 14 | public String cover; 15 | public String badge; 16 | 17 | public String title; 18 | public String pubTime; 19 | public String areas; 20 | public String styles; 21 | 22 | public String score; 23 | public String userCount; 24 | 25 | public List searchResultBangumiEpList; 26 | 27 | public static class SearchResultBangumiEp { 28 | public String epId; 29 | public String title; 30 | public String longTitle; 31 | public String badge; 32 | public boolean isVip; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /app/src/main/res/layout/follows_fragment.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 14 | 15 | 20 | 21 | -------------------------------------------------------------------------------- /app/src/main/res/layout/recommend_fragment.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 14 | 15 | 20 | 21 | -------------------------------------------------------------------------------- /app/src/main/res/layout/followers_fragment.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 14 | 15 | 20 | 21 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_full_screen.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/about_app_gitee.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/history_platform_pad.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/partition_game.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 13 | 16 | 20 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_followed.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/layout/watch_later_fragment.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 14 | 15 | 20 | 21 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/icon_download.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/weather_few_clouds.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_follow.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/layout/nav_fragment.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 13 | 14 | 22 | 23 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/donation_amount_wechatpay.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/search_result_menu_status.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/video_progress_bar.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /app/src/main/res/layout/settings_quality_list.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 16 | 17 | 22 | 23 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_heart_2.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/layout/video_series_bottom_sheet_dialog.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 16 | 17 | 22 | 23 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/resourcesBeans/videoBeans/VideoWithFlv.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.resourcesBeans.videoBeans; 2 | 3 | import java.io.Serializable; 4 | import java.util.LinkedHashMap; 5 | import java.util.List; 6 | 7 | /** 8 | * @Author Leon 9 | * @Time 2021/4/5 10 | * @Desc 单视频数据(flv方式) 11 | */ 12 | public class VideoWithFlv implements Serializable { 13 | public boolean isMovie; 14 | public String referer; 15 | 16 | public String cid; 17 | public int currentQualityId; 18 | public LinkedHashMap qualityMap; 19 | 20 | /** 21 | * 分段视频信息 22 | */ 23 | public List videoStreamInfoList; 24 | 25 | public static class VideoStreamInfo { 26 | /** 27 | * 视频分段序号 28 | */ 29 | public int order; 30 | public String size; 31 | 32 | /** 33 | * 默认视频流 34 | */ 35 | public String url; 36 | 37 | /** 38 | * 备用视频流 39 | */ 40 | public String[] backupUrl; 41 | } 42 | 43 | } 44 | -------------------------------------------------------------------------------- /app/src/androidTest/java/com/leon/biuvideo/ExampleInstrumentedTest.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo; 2 | 3 | import android.content.Context; 4 | import android.os.Handler; 5 | import android.os.Looper; 6 | 7 | import androidx.test.platform.app.InstrumentationRegistry; 8 | import androidx.test.ext.junit.runners.AndroidJUnit4; 9 | 10 | import com.leon.biuvideo.utils.Fuck; 11 | 12 | import org.junit.Test; 13 | import org.junit.runner.RunWith; 14 | 15 | import java.util.Timer; 16 | import java.util.TimerTask; 17 | import java.util.concurrent.ScheduledExecutorService; 18 | import java.util.concurrent.ScheduledThreadPoolExecutor; 19 | import java.util.concurrent.ThreadFactory; 20 | import java.util.concurrent.TimeUnit; 21 | 22 | import static org.junit.Assert.*; 23 | 24 | /** 25 | * Instrumented test, which will execute on an Android device. 26 | * 27 | * @see Testing documentation 28 | */ 29 | @RunWith(AndroidJUnit4.class) 30 | public class ExampleInstrumentedTest { 31 | @Test 32 | public void useAppContext() { 33 | } 34 | } -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/greendao/daoutils/SearchHistoryUtils.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.greendao.daoutils; 2 | 3 | import android.content.Context; 4 | 5 | import com.leon.biuvideo.greendao.dao.DaoBaseUtils; 6 | import com.leon.biuvideo.greendao.dao.DaoManager; 7 | import com.leon.biuvideo.greendao.dao.SearchHistory; 8 | import com.leon.biuvideo.greendao.dao.SearchHistoryDao; 9 | 10 | /** 11 | * @Author Leon 12 | * @Time 2021/4/1 13 | * @Desc 搜索历史数据工具类 14 | */ 15 | public class SearchHistoryUtils { 16 | private final DaoBaseUtils searchHistoryDaoUtils; 17 | 18 | public SearchHistoryUtils(Context context) { 19 | DaoManager daoManager = new DaoManager(context); 20 | SearchHistoryDao searchHistoryDao = daoManager.getDaoSession().getSearchHistoryDao(); 21 | searchHistoryDaoUtils = new DaoBaseUtils<>(SearchHistory.class, searchHistoryDao, daoManager.getDaoSession()); 22 | } 23 | 24 | public DaoBaseUtils getSearchHistoryDaoUtils () { 25 | return searchHistoryDaoUtils; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /app/src/main/res/layout/video_anthology_bottom_sheet_dialog.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 16 | 17 | 22 | 23 | -------------------------------------------------------------------------------- /app/src/main/res/layout/settings_choice_address_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 16 | 17 | 25 | 26 | -------------------------------------------------------------------------------- /app/src/main/res/layout/video_player_complate_view.xml: -------------------------------------------------------------------------------- 1 | 2 | 9 | 10 | 17 | 18 | 25 | 26 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_biu_video_foreground.xml: -------------------------------------------------------------------------------- 1 | 6 | 10 | 13 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_coin_b.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_danmaku_font_style.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_coin_a.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_b_coin.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/greendao/daoutils/DownloadHistoryUtils.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.greendao.daoutils; 2 | 3 | import android.content.Context; 4 | 5 | import com.leon.biuvideo.greendao.dao.DaoBaseUtils; 6 | import com.leon.biuvideo.greendao.dao.DaoManager; 7 | import com.leon.biuvideo.greendao.dao.DownloadHistory; 8 | import com.leon.biuvideo.greendao.dao.DownloadHistoryDao; 9 | 10 | /** 11 | * @Author Leon 12 | * @Time 2021/4/1 13 | * @Desc 下载历史数据工具类 14 | */ 15 | public class DownloadHistoryUtils { 16 | private final DaoBaseUtils downloadHistoryDaoUtils; 17 | 18 | public DownloadHistoryUtils(Context context) { 19 | DaoManager daoManager = new DaoManager(context); 20 | DownloadHistoryDao downloadHistoryDao = daoManager.getDaoSession().getDownloadHistoryDao(); 21 | downloadHistoryDaoUtils = new DaoBaseUtils<>(DownloadHistory.class, downloadHistoryDao, daoManager.getDaoSession()); 22 | } 23 | 24 | public DaoBaseUtils getDownloadHistoryDaoUtils() { 25 | return downloadHistoryDaoUtils; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /app/src/main/res/layout/video_player_controller.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 17 | 18 | 24 | 25 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/greendao/daoutils/DownloadLevelOneUtils.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.greendao.daoutils; 2 | 3 | import android.content.Context; 4 | 5 | import com.leon.biuvideo.greendao.dao.DaoBaseUtils; 6 | import com.leon.biuvideo.greendao.dao.DaoManager; 7 | import com.leon.biuvideo.greendao.dao.DownloadLevelOne; 8 | import com.leon.biuvideo.greendao.dao.DownloadLevelOneDao; 9 | 10 | /** 11 | * @Author Leon 12 | * @Time 2021/5/4 13 | * @Desc 一级下载记录工具类 14 | */ 15 | public class DownloadLevelOneUtils { 16 | private final DaoBaseUtils downloadLevelOneDaoBaseUtils; 17 | 18 | public DownloadLevelOneUtils(Context context) { 19 | DaoManager daoManager = new DaoManager(context); 20 | DownloadLevelOneDao downloadLevelOneDao = daoManager.getDaoSession().getDownloadLevelOneDao(); 21 | downloadLevelOneDaoBaseUtils = new DaoBaseUtils<>(DownloadLevelOne.class, downloadLevelOneDao, daoManager.getDaoSession()); 22 | } 23 | 24 | public DaoBaseUtils getDownloadLevelOneDaoBaseUtils() { 25 | return downloadLevelOneDaoBaseUtils; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /app/src/main/res/layout/popular_weekly_before_series_bottom_sheet.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 16 | 17 | 23 | 24 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/audio_progress_bar.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- 1 | # Project-wide Gradle settings. 2 | # IDE (e.g. Android Studio) users: 3 | # Gradle settings configured through the IDE *will override* 4 | # any settings specified in this file. 5 | # For more details on how to configure your build environment visit 6 | # http://www.gradle.org/docs/current/userguide/build_environment.html 7 | # Specifies the JVM arguments used for the daemon process. 8 | # The setting is particularly useful for tweaking memory settings. 9 | org.gradle.jvmargs=-Xmx2048m 10 | # When configured, Gradle will run in incubating parallel mode. 11 | # This option should only be used with decoupled projects. More details, visit 12 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects 13 | # org.gradle.parallel=true 14 | # AndroidX package structure to make it clearer which packages are bundled with the 15 | # Android operating system, and which are packaged with your app"s APK 16 | # https://developer.android.com/topic/libraries/support-library/androidx-rn 17 | android.useAndroidX=true 18 | # Automatically convert third-party libraries to use AndroidX 19 | android.enableJetifier=true -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 Leon 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/adapters/otherAdapters/ViewPager2Adapter.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.adapters.otherAdapters; 2 | 3 | import androidx.annotation.NonNull; 4 | import androidx.fragment.app.Fragment; 5 | import androidx.fragment.app.FragmentActivity; 6 | import androidx.fragment.app.FragmentStatePagerAdapter; 7 | import androidx.viewpager2.adapter.FragmentStateAdapter; 8 | 9 | import com.leon.biuvideo.ui.baseSupportFragment.BaseSupportFragment; 10 | 11 | import java.util.List; 12 | 13 | /** 14 | * @Author Leon 15 | * @Time 2021/3/20 16 | * @Desc ViewPager2适配器 17 | */ 18 | public class ViewPager2Adapter extends FragmentStateAdapter { 19 | private final List fragments; 20 | 21 | public ViewPager2Adapter(@NonNull Fragment fragment, List fragments) { 22 | super(fragment); 23 | 24 | this.fragments = fragments; 25 | } 26 | 27 | @NonNull 28 | @Override 29 | public Fragment createFragment(int position) { 30 | return fragments.get(position); 31 | } 32 | 33 | @Override 34 | public int getItemCount() { 35 | return fragments.size(); 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/homeBeans/favoriteBeans/FavoriteVideoFolderDetail.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.homeBeans.favoriteBeans; 2 | 3 | import java.util.List; 4 | 5 | /** 6 | * @Author Leon 7 | * @Time 2020/12/15 8 | * @Desc 用户收藏文件夹中的具体数据实体类 9 | */ 10 | public class FavoriteVideoFolderDetail { 11 | public long id; 12 | public long addTime; 13 | public int count; 14 | public String cover; 15 | public String title; 16 | 17 | public String userFace; 18 | public long userMid; 19 | public String userName; 20 | 21 | public List medias; 22 | 23 | public static class Media { 24 | public String bvid; 25 | public String cover; 26 | public long addTime; 27 | public int duration; 28 | public String title; 29 | public String desc; 30 | public String link; 31 | 32 | public int collect; 33 | public int danmaku; 34 | public int play; 35 | 36 | public long mid; 37 | public String name; 38 | 39 | /** 40 | * 是否已失效 41 | */ 42 | public boolean isFailed; 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_quotation_marks.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/utils/SimpleSingleThreadPool.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.utils; 2 | 3 | import androidx.annotation.NonNull; 4 | 5 | import java.util.concurrent.LinkedBlockingQueue; 6 | import java.util.concurrent.ThreadFactory; 7 | import java.util.concurrent.ThreadPoolExecutor; 8 | import java.util.concurrent.TimeUnit; 9 | 10 | /** 11 | * @Author Leon 12 | * @Time 2021/3/6 13 | * @Desc 一个贼简单的执行单线程池 14 | */ 15 | public class SimpleSingleThreadPool { 16 | private static final ThreadPoolExecutor SINGLE_THREAD_POOL_EXECUTOR; 17 | 18 | // 保证该类只有一个对象 19 | static { 20 | SINGLE_THREAD_POOL_EXECUTOR = new ThreadPoolExecutor(1, 1, 0, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<>(), new ThreadFactory() { 21 | @Override 22 | public Thread newThread(Runnable r) { 23 | return new Thread(r, "singleThread"); 24 | } 25 | }); 26 | } 27 | 28 | /** 29 | * 执行单个线程 30 | * 31 | * @param runnable 要执行的任务 32 | */ 33 | public static void executor(@NonNull Runnable runnable) { 34 | SINGLE_THREAD_POOL_EXECUTOR.execute(runnable); 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/bili_user_level.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 11 | 15 | 19 | 23 | 27 | 31 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/ui/home/favoriteFragments/FavoriteArticleFragment.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.ui.home.favoriteFragments; 2 | 3 | import com.leon.biuvideo.adapters.homeAdapters.favoriteAdapters.FavoriteArticleAdapter; 4 | import com.leon.biuvideo.beans.homeBeans.favoriteBeans.FavoriteArticle; 5 | import com.leon.biuvideo.ui.baseSupportFragment.BaseSupportFragmentWithSrr; 6 | import com.leon.biuvideo.utils.parseDataUtils.DataLoader; 7 | import com.leon.biuvideo.utils.parseDataUtils.userDataParsers.FavoriteArticleParser; 8 | 9 | /** 10 | * @Author Leon 11 | * @Time 2021/3/1 12 | * @Desc 收藏页面-专栏收藏 13 | */ 14 | public class FavoriteArticleFragment extends BaseSupportFragmentWithSrr { 15 | private DataLoader favoriteArticleDataLoader; 16 | 17 | @Override 18 | protected void onLazyLoad() { 19 | favoriteArticleDataLoader.insertData(true); 20 | } 21 | 22 | @Override 23 | protected void initView() { 24 | favoriteArticleDataLoader = new DataLoader<>(context, new FavoriteArticleParser(), 25 | new FavoriteArticleAdapter(getMainActivity(), context), this); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/download_manager_play_all.xml: -------------------------------------------------------------------------------- 1 | 6 | 13 | 16 | 17 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/bili_user_follow_status.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/ui/home/favoriteFragments/favoriteVideo/FavoriteVideoFolderFragment.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.ui.home.favoriteFragments.favoriteVideo; 2 | 3 | import com.leon.biuvideo.adapters.homeAdapters.favoriteAdapters.FavoriteVideoFolderAdapter; 4 | import com.leon.biuvideo.beans.homeBeans.favoriteBeans.FavoriteVideoFolder; 5 | import com.leon.biuvideo.ui.baseSupportFragment.BaseSupportFragmentWithSrr; 6 | import com.leon.biuvideo.utils.parseDataUtils.DataLoader; 7 | import com.leon.biuvideo.utils.parseDataUtils.userDataParsers.FavoriteVideoFolderParser; 8 | 9 | /** 10 | * @Author Leon 11 | * @Time 2021/3/1 12 | * @Desc 收藏页面-视频收藏 13 | */ 14 | public class FavoriteVideoFolderFragment extends BaseSupportFragmentWithSrr { 15 | 16 | private DataLoader dataLoader; 17 | 18 | @Override 19 | protected void onLazyLoad() { 20 | dataLoader.insertData(true); 21 | } 22 | 23 | @Override 24 | protected void initView() { 25 | dataLoader = new DataLoader<>(context, new FavoriteVideoFolderParser(), 26 | new FavoriteVideoFolderAdapter(getMainActivity(), context), this); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/resourcesBeans/Danmaku.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.resourcesBeans; 2 | 3 | import com.leon.biuvideo.values.DanmakuType; 4 | 5 | /** 6 | * @Author Leon 7 | * @Time 2021/4/17 8 | * @Desc 弹幕数据 9 | */ 10 | public class Danmaku { 11 | /** 12 | * 在视频中出现的位置 13 | */ 14 | public float showIndex; 15 | public String content; 16 | public DanmakuType danmakuType; 17 | public int danmakuSize; 18 | public int danmakuColor; 19 | public long danmakuTimestamp; 20 | 21 | /** 22 | * 弹幕池类型 23 | * 0:普通池 24 | * 1:字幕池 25 | * 2:特殊池(代码/BAS弹幕) 26 | */ 27 | public int danmakuPoolType; 28 | 29 | @Override 30 | public String toString() { 31 | return "Danmaku{" + 32 | "showIndex=" + showIndex + 33 | ", content='" + content + '\'' + 34 | ", danmakuType=" + danmakuType.value + 35 | ", danmakuSize=" + danmakuSize + 36 | ", danmakuColor=" + danmakuColor + 37 | ", danmakuTimestamp=" + danmakuTimestamp + 38 | ", danmakuPoolType=" + danmakuPoolType + 39 | '}'; 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/partition_dance.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 12 | 15 | 18 | 24 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/weather_unknown.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /app/src/main/res/layout/video_quality_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 9 | 10 | 17 | 18 | 29 | 30 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/bili_user_gender_man.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/a_bottom_partition_unselected.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/a_bottom_partition_selected.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/res/layout/video_player_error_view.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 16 | 17 | 28 | 29 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/ui/home/orderFragments/OrderDataFragment.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.ui.home.orderFragments; 2 | 3 | import com.leon.biuvideo.adapters.homeAdapters.OrderDataAdapter; 4 | import com.leon.biuvideo.beans.orderBeans.Order; 5 | import com.leon.biuvideo.ui.baseSupportFragment.BaseSupportFragmentWithSrr; 6 | import com.leon.biuvideo.utils.parseDataUtils.DataLoader; 7 | import com.leon.biuvideo.utils.parseDataUtils.homeParseUtils.OrderParser; 8 | import com.leon.biuvideo.values.OrderType; 9 | 10 | /** 11 | * @Author Leon 12 | * @Time 2021/3/1 13 | * @Desc 订阅页面-剧集订阅 14 | */ 15 | public class OrderDataFragment extends BaseSupportFragmentWithSrr { 16 | private final OrderType orderType; 17 | private DataLoader orderDataLoader; 18 | 19 | public OrderDataFragment(OrderType orderType) { 20 | this.orderType = orderType; 21 | } 22 | 23 | @Override 24 | protected void onLazyLoad() { 25 | orderDataLoader.insertData(true); 26 | } 27 | 28 | @Override 29 | protected void initView() { 30 | orderDataLoader = new DataLoader<>(context, new OrderParser(orderType), 31 | new OrderDataAdapter(getMainActivity(), context), this); 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/bili_user_gender_woman.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/download_remove.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 15 | 16 | -------------------------------------------------------------------------------- /app/src/main/res/layout/history_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 9 | 10 | 20 | 21 | 29 | 30 | -------------------------------------------------------------------------------- /app/src/main/res/layout/popular_weekly_before_series_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 20 | 21 | 28 | 29 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/orderBeans/Order.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.orderBeans; 2 | 3 | /** 4 | * @Author Leon 5 | * @Time 2020/12/14 6 | * @Desc 订阅信息实体类 7 | */ 8 | public class Order { 9 | public String title; 10 | public String desc; 11 | public String cover; 12 | 13 | /** 14 | * 地区 15 | */ 16 | public String[] areas; 17 | 18 | /** 19 | * 独家、出品、会员专享、限时免费 20 | */ 21 | public String badgeType; 22 | 23 | /** 24 | * 番剧ID 25 | */ 26 | public long seasonId; 27 | public long mediaId; 28 | 29 | /** 30 | * 订阅类型(番剧、国创、纪录片、电视剧) 31 | */ 32 | public String seasonType; 33 | 34 | /** 35 | * 短链 36 | */ 37 | public String shortUrl; 38 | public String url; 39 | 40 | /** 41 | * 跟随状态,0:全部、1:想看、2:在看、3:看过 42 | */ 43 | public int followStatus; 44 | 45 | /** 46 | * 季数 47 | */ 48 | public int seasonCount; 49 | public String seasonTitle; 50 | public String total; 51 | 52 | public String progress; 53 | 54 | public int coin; 55 | public int danmaku; 56 | public int follow; 57 | public int likes; 58 | public int reply; 59 | public int seriesFollow; 60 | public int seriesView; 61 | public int view; 62 | } 63 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/audio_link.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 13 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/greendao/dao/SearchHistory.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.greendao.dao; 2 | 3 | import org.greenrobot.greendao.annotation.Entity; 4 | import org.greenrobot.greendao.annotation.Generated; 5 | import org.greenrobot.greendao.annotation.Id; 6 | 7 | /** 8 | * @Author Leon 9 | * @Time 2021/4/1 10 | * @Desc 搜索历史数据 11 | */ 12 | @Entity 13 | public class SearchHistory { 14 | @Id(autoincrement = true) 15 | private Long id; 16 | 17 | private Long hashCode; 18 | private String keyword; 19 | @Generated(hash = 100897936) 20 | public SearchHistory(Long id, Long hashCode, String keyword) { 21 | this.id = id; 22 | this.hashCode = hashCode; 23 | this.keyword = keyword; 24 | } 25 | @Generated(hash = 1905904755) 26 | public SearchHistory() { 27 | } 28 | public Long getId() { 29 | return this.id; 30 | } 31 | public void setId(Long id) { 32 | this.id = id; 33 | } 34 | public Long getHashCode() { 35 | return this.hashCode; 36 | } 37 | public void setHashCode(Long hashCode) { 38 | this.hashCode = hashCode; 39 | } 40 | public String getKeyword() { 41 | return this.keyword; 42 | } 43 | public void setKeyword(String keyword) { 44 | this.keyword = keyword; 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_vip_mark.xml: -------------------------------------------------------------------------------- 1 | 6 | 11 | 14 | 15 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/partition_article.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 15 | 18 | 21 | 22 | -------------------------------------------------------------------------------- /app/src/main/res/layout/order_fragment.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 14 | 15 | 24 | 25 | 29 | 30 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/values/Qualitys.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.values; 2 | 3 | import java.util.ArrayList; 4 | import java.util.List; 5 | 6 | /** 7 | * @Author Leon 8 | * @Time 2021/5/5 9 | * @Desc 10 | */ 11 | public class Qualitys { 12 | private static final List QUALITY_CODES = new ArrayList<>(); 13 | private static final List QUALITY_STR = new ArrayList<>(); 14 | 15 | static { 16 | QUALITY_CODES.add(6); 17 | QUALITY_CODES.add(16); 18 | QUALITY_CODES.add(32); 19 | QUALITY_CODES.add(64); 20 | QUALITY_CODES.add(74); 21 | QUALITY_CODES.add(80); 22 | QUALITY_CODES.add(112); 23 | QUALITY_CODES.add(116); 24 | QUALITY_CODES.add(120); 25 | 26 | QUALITY_STR.add("240P 极速"); 27 | QUALITY_STR.add("360P 流畅"); 28 | QUALITY_STR.add("480P 清晰"); 29 | QUALITY_STR.add("720P 高清"); 30 | QUALITY_STR.add("720P60 高清"); 31 | QUALITY_STR.add("1080P 高清"); 32 | QUALITY_STR.add("1080P+ 高清"); 33 | QUALITY_STR.add( "1080P60 高清"); 34 | QUALITY_STR.add( "4K 超清"); 35 | } 36 | 37 | public static List getQualityCodes() { 38 | return QUALITY_CODES; 39 | } 40 | 41 | public static List getQualityStr() { 42 | return QUALITY_STR; 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_write_comment.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 15 | 18 | 19 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/partition_guochuang.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 14 | 20 | 24 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_my_downloadeds.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 15 | 18 | 21 | 24 | 27 | 28 | -------------------------------------------------------------------------------- /app/src/main/res/layout/popular_top_list.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 13 | 14 | 24 | 25 | 29 | 30 | -------------------------------------------------------------------------------- /app/src/main/res/layout/bangumi_section_container_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 9 | 10 | 19 | 20 | 29 | 30 | -------------------------------------------------------------------------------- /app/src/main/res/layout/favorites_fragment.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 14 | 15 | 24 | 25 | 29 | 30 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/download_manager_edit.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 15 | 16 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_single_column.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 15 | 18 | 21 | 22 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_up_user.xml: -------------------------------------------------------------------------------- 1 | 6 | 9 | 12 | 15 | 16 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/partition_life.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 20 | 25 | -------------------------------------------------------------------------------- /app/src/main/res/drawable/weather_sleet.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /app/src/main/java/com/leon/biuvideo/beans/resourcesBeans/bangumiBeans/Bangumi.java: -------------------------------------------------------------------------------- 1 | package com.leon.biuvideo.beans.resourcesBeans.bangumiBeans; 2 | 3 | import java.util.List; 4 | 5 | /** 6 | * @Author Leon 7 | * @Time 2021/3/21 8 | * @Desc 番剧数据 9 | */ 10 | public class Bangumi { 11 | public String mediaId; 12 | public String seasonId; 13 | public String seasonTitle; 14 | public String cover; 15 | public String desc; 16 | 17 | public String newEpDesc; 18 | 19 | public String pubTime; 20 | public String pubTimeShow; 21 | 22 | public int ratingCount; 23 | public double ratingScore; 24 | 25 | /** 26 | * 单集信息 27 | */ 28 | public List bangumiAnthologyList; 29 | public int anthologyCount; 30 | 31 | /** 32 | * 其他季数 33 | */ 34 | public List bangumiSeasonList; 35 | 36 | /** 37 | * 番剧相关PV 38 | */ 39 | public List bangumiSectionList; 40 | 41 | public String seriesId; 42 | public String seriesTitle; 43 | 44 | public int coins; 45 | public int danmaku; 46 | public int favorites; 47 | public int likes; 48 | public int reply; 49 | public int share; 50 | public int views; 51 | 52 | public String subtitle; 53 | public String title; 54 | public String link; 55 | 56 | public boolean isFollow; 57 | } 58 | --------------------------------------------------------------------------------