Skip to content
This repository has been archived by the owner on Apr 30, 2023. It is now read-only.

LeonNOV/BiuVideo

Repository files navigation

BiuVideo

📢公告

  • 该项目已停止维护,如要了解最新进度,请看BiliHub

📄项目简介

通过BiliBili接口获取数据,对视频、音频、图片等资源在线观看、收听、缓存等

⚠注意事项

  • 由于V3版本会用到高德提供的API和百度统计API,故因此需要请求服务权限标识
  • 如果已经有了Key,请在app/src/main/java/com/leon/biuvideo/values/apis包下,创建一个名为ApiKeys的Java文件,并将Key作为常量进行存放
    • 示例
        package com.leon.biuvideo.values.apis;
    
        public class ApiKeys {
            public static final String AMAP_KEY = "AMAP_KEY";
            public static final String BAIDU_KEY = "BAIDU_KEY";
        }
  • 该版本中所有弃用的文件均已删除
    • 被删除的大部分都是上一版本留下的文件

📘开发日志

2021/08/17

  • 修复了由NPE引起的闪退
    • 登陆闪退问题现已修复
  • 修改了版本名称的获取方式

2021/05/21

  • 将'V3'合并到了主分支上
  • 该项目现已同步至GitHub

2021/05/20

  • 对已知的BUG进行了修复
    • 完善了部分功能
  • 对项目的文件进行了清理
    • 'V3'版本的第一个公测版本已完成

2021/05/19

  • 优化了番剧搜索结果
    • 对登录功能进行了修改
  • 修复了评论详细页面不能上拉加载的问题
    • 对视频播放页面进行了修改,与番剧播放页面进行了统一
    • 评论详细页面还需进一步修改

2021/05/18

  • 修复了已知的BUG
    • 优化了部分功能
    • 优化了捐赠功能代码

2021/05/17

  • 优化了部分代码
    • 修复了部分已知的BUG
    • 电视剧和电影类型等资源会出现异常,还需要进行修复

2021/05/16

  • 加入了和APP相关的弹窗

2021/05/15

  • 优化了部分代码和功能
    • 由于在前期开发时未发现单Activity框架'Fragmentation'存在'白屏/黑屏'的情况,导致了后期APP的整体交互逻辑进行重构的难度比较大,所以也只能暂时这样下去了😫
    • 如果出现'白屏/黑屏(打开的新页面没有任何内容)'的情况,可将应用切换至后台再切回前台即可解决'黑白屏'的问题
    • 加入了'感谢列表'

2021/05/14

  • 完善了下载管理页面
    • 由于该版本在下载视频时并没有同时下载弹幕文件,所以暂使用设备已有的播放器进行播放视频

2021/05/13

  • 对'SimpleSnackBar'进行了优化
  • 加入了'无网络判断'
    • 由于在前期开发中未预料到'电影'类型的视频是在番剧界面播放的,所以电影是在视频界面播放的,后期会对这一问题进行修复

2021/05/12

  • 加入了百度统计
  • 优化了列表数据的加载方式
    • 主要针对'DataLoader'进行了优化,由于所有上拉加载功能都属于代码冗余,所以该类是针对'SmartRefreshRecyclerView'而创建的

2021/05/11

  • 加入了音频下载功能
    • 修改了音频播放界面
    • 优化了列表数据加载功能

2021/05/10

  • 优化了部分代码
    • 解决了'403'的问题

2021/05/09

  • 由于个人原因GitHub暂不更新
  • 在番剧界面加入了下载功能
    • 下载时403很容易出现的问题需要解决

2021/05/08

  • 下载中任务的下载进度、已下载大小等参数已可以动态更新
    • 部分功能还需进一步优化

2021/05/07

  • 完善了上一次提交留下的问题
    • 'Aria'注解不生效的问题还未解决

2021/05/06

  • 修复了前期开发时留下的坑
  • 完善了下载功能
    • 选择的画质不存在,自动获取最高画质的情况还需修复

2021/05/05

  • 完善了下载界面的交互部分
    • 部分 界面/功能 还需进一步完善

2021/05/04

2021/04/30

  • 加入了下载工具
    • 在对项目进行Rebuild Project的时候可能会出现下面的错误,暂时还未找到解决办法
    • ~~Execution failed for task ':app:compileDebugJavaWithJavac'.
      > java.lang.IndexOutOfBoundsException: Index: 0, Size: 0~~
      

2021/04/29

  • 完善了大部分的交互功能

2021/04/28

  • 完善了番剧页面

2021/04/27

  • 完善了部分交互功能

2021/04/26

  • 修复了切换番剧选集,播放界面出现控件位移的问题

2021/04/24

  • 番剧播放页面的部分功能已完善
    • 评论页面还存在问题未解决

2021/04/23

  • 加入了番剧播放界面,其功能还未实现
    • 对视频播放页面的大部分代码进行了修改

2021/04/22

  • 修复了切换清晰度时,选集错乱的问题

2021/04/20

  • 加入了倍速功能
    • 低倍速情况下出现弹幕闪烁的问题还未解决
  • 完善了视频选集功能
    • 弹幕的切换还未完成
  • 弹幕切换已完成

2021/04/19

  • 修复了部分已知的BUG
    • 视频播放界面的弹幕开关还需要优化
  • 优化的了弹幕的开/关功能
    • 并优化了其他部分功能
  • 加入了画质选择弹窗,其功能还未实现

2021/04/18

  • 删除了弹幕数据解析类,并实现了弹幕功能
    • 使用CV大法完成了弹幕功能,弹幕功能还需要进一步的优化

2021/04/17

  • 加入了弹幕数据解析类、弹幕视图类
    • 弹幕解析类还存在问题未解决
    • Fragment的跳转会存在新创建的Fragment出现黑灰屏的情况,该问题还未解决

2021/04/15

  • 音乐播放界面的功能已基本完成
    • 部分功能还未完善

2021/04/14

  • 加入了音乐数据解析类,播放器的部分功能还未实现

2021/04/13

  • 播放界面的大部分交互已完成
    • 加入了音乐播放界面,具体功能还未实现

2021/04/12

  • 加入了专栏界面,具体功能还未实现
  • 专栏界面的部分功能还未添加
  • 专栏界面的功能已基本完善
    • 加入了相册界面
  • 相册页面的部分功能已完成

2021/04/11

  • 对项目中的文件进行了清理
  • 修复了已知的BUG

2021/04/10

  • 用户页面中加入了投稿视频和音频页面
    • 本次提交还未进行测试
  • 用户页面中四个子页面的数据加载已完成

2021/04/09

  • 加入了B站用户页面

2021/04/08

  • 加入了视频评论页面
    • 每条评论的二级评论还存在问题
    • 介绍页面的推荐视频item背景还存在问题
  • 修复了部分已知BUG
  • 加入了评论详细页面,可查看一级评论下所有的二级评论
    • 建议在调试时尽量使用真机调试,在模拟上运行很有可能会出现闪退情况,可能是虚拟机内存太小的原因
    • 本次提交的版本通过IDE打开(真机环境),可能会在第二次进入VideoCommentDetailFragmentVideoFragment出现黑屏的情况,如果不通过IDE打开则不会出现这样的情况

2021/04/07

  • 视频介绍部分已基本完成

2021/04/06

  • 删除了现版本用不到的文件
  • 加入了视频介绍页面
  • 对视频介绍页面进行了部分完善

2021/04/05

  • 播放器已基本完成,该版本的视频播放器还存在问题
    • 该版本在调整了视频的位置后会出现音画不同步的问题
  • 加入了VideoWithFlvParser
    • 由于实在找不到音画同步播放的方法,所以该版本放弃了使用dash的方式获取数据流
    • 由于未使用dash的方式获取数据流,所以该版本在不登陆的情况下最高只能获取480p画质的视频

2021/04/04

  • 该项目现已上传至GitHub

2021/04/03

  • 加入了播放器需要用到的各种View
    • 加入的各View还未进行测试
  • 修复了视频播放器已知的部分问题

2021/04/02

  • 修改了主页的底部导航栏
  • 加入了DKVideoPlayer依赖,作为本APP的视频播放器框架

2021/04/01

  • 对搜索功能进行了更改
    • 搜索功能部分代码还未进行清理
  • 修改了部分代码
    • 主页的底部导航栏还需要进行更改

2021/03/31

  • 各搜索结果页面的适配器均已加入,各页面的部分代码还需要进行完善
  • 搜索结果页面已基本完善

2021/03/30

  • 搜索结果界面的布局已完成,数据的加载还未完成
  • 搜索功能所需要的解析类已完成
  • 完善了搜索功能中的部分小功能

2021/03/29

  • 完善了历史记录页面
    • 由于沉浸式与返回操作配合有问题,所以,本次去除了沉浸式,使用全屏显示
  • 加入了搜索结果界面,该页面的部分功能还需要完善

2021/03/28

  • 加入了历史记录解析类
    • 修改了历史记录item布局
    • 添加了部分注释

2021/03/27

  • 加入了页面沉浸式功能

2021/03/26

  • 修改了部分代码,本次提交的版本存在未修改完成的代码
    • PopularTopListFragmentPopularTopListSubFragmentPopularTopListParser还未修改完成
  • 热门主页已基本完成
    • 排行榜中显示该UP主所有上榜视频功能还存在问题未解决
    • 突然发现开发日志中日期的年份还未修改为2021年,可能我还活在2020年吧~( ̄▽ ̄)~*
  • 加入了BaseLazySupportFragment,该类用以执行懒加载数据,需要配合ViewPager2使用
    • 部分需要用到BaseLazySupportFragment的页面还未进行替换

2021/03/25

  • 修改了PopularFragment的布局
    • PopularFragment页面的popular_hot_list的item还需要进行更改
  • 全站排行榜解析类已完成

2021/03/24

  • 加入了每周必看页面,部分功能还需要进行完善
    • 修复了已知的BUG
  • 修复了部分小问题
    • 目前ViewPager2控件的灵敏度太过于灵敏,很容易在下滑过程中,滑到旁边的页面,后面会对ViewPager2部分对应功能进行重写
    • 重写个大爷!,ViewPager2是个太监,淦!!!
  • ViewUtils.initTabLayoutAndViewPager2()进行了修改,并修复了ViewPager2滑动灵敏的问题
  • 每次调用需要获取Activity,并返回一个MainActivity.OnTouchListener对象,使用示例
  •   public class XXXFragment {
          private MainActivity.OnTouchListener onTouchListener;
          
          @Override
          protected void initView() {
              SimpleTopBar topBar = view.findViewById(R.id.topBar);
              topBar.setOnSimpleTopBarListener(new SimpleTopBar.OnSimpleTopBarListener() {
                  @Override
                  public void onLeft() {
                      backPressed();
                  }
      
                  @Override
                  public void onRight() {
      
                  }
              });
      
              TabLayout tabLayout = view.findViewById(R.id.tabLayout);
              ViewPager2 viewPager = view.findViewById(R.id.viewPager);
              
              // Do something...
      
              // 初始化ViewPager2和TabLayout
              onTouchListener = ViewUtils.initTabLayoutAndViewPager2(getActivity(), tabLayout, viewPager, new String[]{"title1", "title2"}, 1);
          }
      
          // 一定要重写onDestroyView
          @Override
          public void onDestroyView() {
              // 取消注册Touch事件
              ((MainActivity) getActivity()).unregisterTouchEvenListener(onTouchListener);
      
              super.onDestroyView();
          }
      }
    • 加入了入站必刷页面

2021/03/23

  • 完善了分区数据,除专栏分区频道外,其他分区均已完成其UI
  • 分区数据的获取已完成,但会有小概率出现NPE异常
    • 分区数据的接口暂使用当前的接口
  • 加入了综合热门页面,加载数据部分需要进行优化,后期可能对刷新加载控件(SmartRefreshLayout)进行替换

2021/03/22

  • 加入了PartitionFragment(分区页面)
  • 增加了partition.json资源文件,该文件存放了部分分区子分区的title及ID
    • 子分区的标签会在后期慢慢加入
  • 追加了子分区的标签,由于种种原因,部分的分区会在后期完善

2021/03/21

  • 完善了FavoriteArticleFragment
  • 现所有用到的ViewPager均已替换为ViewPager2
    • 初始化TabLayoutViewPager2可使用ViewUtils.initTabLayoutAndViewPager2(TabLayout tabLayout, ViewPager2 viewPager2, String[] titles, int firstShowItemPosition)进行初始化
  • 修复了部分已知BUG
  • 加入了BangumiDetailParser,用来获取番剧具体数据
  • 新添加的番剧页面还未完善

2021/03/19

  • FollowsFragmentFollowersFragment的上拉加载数据功能已完成
    • UserFragment的用户数据获取方式还需要进行更改
    • 删除了不必要的代码
  • FavoriteVideoFolderFragment及相关功能已完成
    • 收藏夹中的视频点击事件还未完成

2021/03/18

  • 修复了UserFragment顶部图显示不正常的问题
  • 删除了BaseLazySupportFragment
    • 还有部分问题需要修复
  • UserFragment的各项功能均已完成
    • 部分控件的数值还需要进行统一
  • 对部分dimenColor数值进行了统一
    • 修复部分已知的BUG
  • 完善了FollowFragment
    • 在设置Adapter前需要使用XXXAdapter.setHasStableIds(true),用来防止数据错乱的问题,部分未修改的将在后期整理代码的时候修改

2021/03/17

  • 完善了UserFragment,但顶部图的显示还存在问题

2021/03/16

  • 修改了大部分解析类的部分代码
  • 获取用户数据的解析器改为使用多线程获取
    • UserInfoParser还未完善
  • 完善了UserInfoParser

2021/03/15

  • 完善了稍后观看功能
  • 完善了其他部分代码
  • 加入了标签页面和其数据解析器

2021/03/14

  • 发现页面暂不使用动态数据,暂时用热搜榜替代
    • 修改了加载页面数据的方式
  • 加入了稍后观看功能
    • item的布局还需要进行更改

2021/03/13

  • 加入了获取动态数据接口
    • 由于动态的类型过多,所以需要一定的时间来进行分析

2021/03/12

  • 现主页推荐视图可进行动态切换视图样式
  • 完善了RecommendFragment
  • 在退出OrderFragment后会出现NPE异常,问题根源还未知

2021/03/11

  • 修复了经纬度错乱的问题
    • 调用LocationUtil.geoLocation(Context context, double latitude, double longitude)时,是纬度在前经度在后
  • 重构了设置推荐视图样式的界面

2021/03/10

  • 主页的推荐数据功能已完成
    • 进入到RecommendFragment时会出现BUG
  • 加入了设置推荐视图样式功能,可将推荐样式设置成单列双列
    • 该功能的还没有进行完善
  • 推荐视图样式的更改已完成

2021/03/09

  • 完善了天气模块
    • 可选择不授权定位服务,这样就只能通过设置位置来手动设置天气预报位置
    • 选择授权定位服务,则会自动设置天气预报位置,且能根据位置的变动来设置天气预报位置
  • SettingsFragment的代码还需进行清理
  • 修复了几个很小的BUG
  • 修复了天气模块的部分BUG
  • 加入了BaseLazySupportFragmentBaseLazySupportFragmentWithSrr两个抽象类
    • BaseLazySupportFragment自带懒加载功能,在需要自定义比布局时继承该类
    • BaseLazySupportFragmentWithSrr该类不需要指定XML布局文件,适合需要加载数据的数据列表页面,只需重写initView()即可
    • 以上两个类还处于试验阶段其代码还未进行过优化

2021/03/08

  • 完善了设置页面的设置位置功能

2021/03/07

  • 加入了DownloadManagerFragment,下载管理页面;加入了LoginFragment,登录页面
  • 修改了部分代码
  • 修改了SimpleTopBar
  • 加入了LoginFragment登录页面
  • 完善了部分类的注释,并完善了其他代码

2021/03/06

  • 优化了部分代码,还有部分未优化完成
  • 完善了其他部分代码
  • 加入了DownloadedFragment,该Fragment还未完善

2021/03/05

  • 重构了FavoriteUserAdapter,增加了Item侧滑菜单功能
    • FavoriteUserAdapter已更名为MyFollowsAdapter
  • 重构了HistoryFragment,增加了动态根据资源类型创建Item的功能
  • 未解决问题
    • 目前PopularFragmentOrderFragmentFavoritesFragment都存在第二次打开 后,出现TabLayout滑动距离变长,且所含的子Fragment不显示,以上问题都是在TabLayoutViewPager配合使用中出现的
  • 解决了TabLayout滑动距离变长的问题

2021/03/04

  • 完善了获取/设置adcode的功能,和其它一些功能
  • 加入了SimpleThread,该类只是用来执行单个线程,不能同时执行多个,示例:
    • SimpleThread.executor(new Runnable() {
          @Override
          public void run() {
              // Do someting...
          }
      });
  • 新加入的WeatherService是留存在后台获取天气数据使用的,每半小时获取一次,获取数据的方式还待定
  • 完善了WeatherService,该服务每半小时获取一次天气信息,并通过广播发送天气数据
  • 加入了Actions类,该类用来存放所有使用intentFilter添加的action
    • 部分action还未添加,在后期会一一进行添加

2021/03/03

  • 完善了设置界面天气模块的开启和主页面天气模块的显示
  • 加入获取adcode的功能,但还未进行完善

2021/03/02

  • 加入了天气模块的开关功能
  • 加入了定位功能
  • 完善了定位功能,LocationUtil只需实例化一次,获取位置信息调用getAddress()方法
    • 返回值
      • {province(省份), city(城市), district(区县), street(街道)}

2021/03/01

  • V2分支已停止更新,后续更新将在该分支上进行更新
  • 合并了测试版本的代码
  • 项目整体需要进行大规模清理
  • 对主页的天气功能进行了修改
    • 在移动网络下,获取的公网IP不能进行定位
    • 可使用手机自带的定位功能来获取其位置

横线部分内的为测试版本开发日志


2021/03/01

  • 每次启动APP都会获取一次公网IP,并会根据公网IP获取到所在省市信息(不会存在滥用行为,只会在天气预报定位用到这些信息)
  • 加入了公网IP定位功能,和更加准确的县/直辖市信息获取
  • 由于SDK21(Android 5.0)有部分限制,所以将minSdkVersion升到了24(Android 7.0)
  • 测试版本已停止更新,后续将会在V3分支中进行更新

2021/02/28

  • 在设置页面加入了选择位置功能,该功能用于设置天气预报的位置
  • 各天气已测试完成

2021/02/27

  • 天气获取部分已完成
  • 各种天气还未进行测试

2021/02/26

  • 主页面的名言名句替换为了天气预报
  • 天气预报布局已完成,且获取天气数据部分也已完成
  • 由于天气种类过多,后面需要对其进行分类

2021/02/25

  • 加入了推荐页面
  • 热门排行移至了主页

2021/02/24

  • 加入了收藏夹界面
  • 加入了多个Fragment,用于ViewPager

2021/02/23

  • 对部分自定义控件进行了修改
  • 加入了设置界面
  • 修改了TabLayout控件指示条的颜色

2021/02/21

  • 在用户页面加入了下拉放大图片效果
  • TagView的部分问题还未解决
  • 完善了TagViewSimpleTopBar
  • 加入了CardTitle自定义控件

2021/02/20

  • 使用了单Activity的模式
  • 发现页面已基本完成
  • 加入了SimpleTopBar,该自定义控件可实现顶部栏,后期会对该控件进行优化
  • 完善了用户页面,并对自定义控件的代码进行了完善

2021/02/19

  • 加入了发现
  • 加入了搜索界面

2021/02/23

  • 修复了部分BUG
  • 由于现在制作新的版本UI,所以会停止更新一段时间
  • 本次更新加入了备份功能,这是由于本地数据的问题,在下个版本中会加入很多新功能

2021/02/17

  • 加入了new_home_layout.xml,该文件为替换的主页布局
  • 由于要对APP的整体主题进行更新,所以暂时不会发布新版本,只提交代码至gitee

2021/02/15

  • 对dialog的布局文件进行了重命名
  • 修复了订阅页面-视频,列表数据出现重复的问题
  • 删除了开源许可弹窗,点击开源许可,将会跳转到项目gitee页面的LISCENSE文件页面
  • 修改了部分页面的布局

2021/02/14

  • 删除了SimpleSnackBar中带有监听事件参数的make方法
    • 设置监听统一使用setAction进行设置
  • 删除了simple_snackbar_with_action_layout.xml
  • 所有的SnackBar均已替换成自定义layout的SnackBar
  • 修改了部分代码
  • 更新了ThanksList

2021/02/13

  • 加入了自定义layoutSnackbar,分为不带监听事件和带有监听事件两种:
    • 不带监听事件
          SimpleSnackBar.make(view, "显示文本", SimpleSnackBar.LENGTH_SHORT/LENGTH_LONG).show();
    - 带有监听事件
        SimpleSnackBar.make(view, "显示文本", "被点击文本", new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                // Do something...
            }
        }, SimpleSnackBar.LENGTH_SHORT).show();
  • 后面会对所有的SnackBar进行替换

2021/02/10

  • 主题切换的核心部分已完成
    • 由于主题切换功能涉及到很多地方,所以需要在后期慢慢完善全部
    • 使用格式
          // 初始化本地广播接收器
          ThemeColorChangeBroadcastReceiver themeColorChangeBroadcastReceiver = new ThemeColorChangeBroadcastReceiver();
          themeColorChangeBroadcastReceiver.initBroadcast(getApplicationContext());
          themeColorChangeBroadcastReceiver.setChangeThemeColorListener(new ThemeColorChangeBroadcastReceiver.ChangeThemeColorListener() {
              @Override
              public void changThemeColor(int position) {
                  // 修改当前布局主题
              }
          });
  • 在设置界面加入了原图模式,核心部分还未编写

2021/02/06

  • 创建了V2.1分支,该分支将着重于UI的修改,该分支不会对功能性代码进行大幅度改动
  • 加入了主题颜色,并修改了部分颜色命名

2021/01/31

  • 修复了使用短信或账号密码登录成功后,不会跳转到主界面的问题

2021/01/30

  • 修改了视频的合并方式
    • 使用了FFmpeg第三方Android库进行音视频合并操作,由于so库过大,所以导致APK大小增加了5M左右
    • 由于是公测版本,所以该版本只支持arm64-v8a架构
  • 修复了下载页面图片不显示的问题
  • 修复了部分已知BUG

2021/01/28

  • 修复了不能下载VIP资源的问题
  • 修复了部分列表数据选择错误的问题
  • 修改了视频的下载方式
    • 先对视频、音频进行下载
    • 然后在对其合并,合并完成后删除源文件
    • 下载的文件统一存放在Temp文件夹中
    • 注意:第一次启动会删除Temp中的所有文件

2021/01/26

  • 修复了已知的BUG
  • 修复了二次搜索背景出现无数据提示的问题

2021/01/23

  • 修复了从设置界面导入用户,但在关注界面不显示的BUG
  • 修改了版本码

2021/01/22

  • 能用到多线程懒加载的地方均已替换完成
  • 修改了favoriteUp
    • 在关注界面中导入的数据和从设置界面导入的数据都视为用户数据,在使用清除用户数据功能时,会将其删除掉
  • 修改了关注功能的部分代码
  • 感觉SQLiteHelpFactory有点鸡肋,所以后面会将其清除掉
  • 对代码进行了清理
  • 修改了版本号
    • 2.5.8-beta
  • 修复了已知的小问题
  • 在视频和番剧播放界面加入了查看下载列表功能
  • 修改了部分布局文件
  • 加入了缓存选集帮助链接

2021/01/21

  • 部分数据的加载方式更换为了多线程进行加载,部分Fragment采用了懒加载的方式
  • 搜索功能也均替换成了多线程加载
    • 由于对多线程不是很了解,所以不清楚线程是否需要进行回收,但在搜索功能中使用了SimpleThreadPool中的cancelTask方法来取消已使用过的线程
    • 还有部分功能未替换成多线程的方式加载,且部分Fragment未替换成懒加载的方式

2021/01/20

  • 修复了已知的BUG

2021/01/19

  • 所有的layout资源已整理完成
  • 删除了未引用的drawable文件
  • 对部分Java代码进行了整理
  • 所有的Toast均已替换成Snackbar
    • 仍由一小部分未替换,且部分显示的还有问题
  • 代码整理阶段已基本结束,剩下的就剩排除BUG了

2021/01/18

  • localOrders表进行的修改
    • mainId:用于Video的bvid、Bangumi的mediaId、Music的sid、Article的articleId
    • subId:用于Bangumi的seasonId、Music的bvid、article的mid
    • json:用于存放跳转到对应Activity时用到的数据,或进行显示的数据
  • 本地订阅功能已基本完成
  • 该项目的整体代码和文件还需要进行大规模清理
  • 对部分代码进行了整理
    • 颜色和字符资源还需要进行统一
  • V2版本已进入最后整理阶段

2021/01/17

  • 完善了VideoActivityBangumiActivityArticleActivity中的部分代码
    • 删除了article表,将由LocalOrders代替,涉及到的其他代码还未进行清理
    • LocalOrders表中加入了cover字段,涉及到代码还未完成修改

2021/01/16

  • 删除了videoPlayListmusicPlayList两个表
    • 以上两个表将由localVideoFolderslocalOrders代替
    • VideoActivity中点亮红心时,会弹出一个选择要添加进的收藏夹弹窗,第一次启动APP会默认添加一个默认收藏夹
    • 修改了MusicActivity中的部分代码
    • 播放列表更名为本地订阅,这样做是为了能够将喜欢的视频、音频及专栏保存在本地,下一个版本会加入同步(已保存的数据将会根据自已的意愿选择是否进行和B站账户数据同步),该功能并不是为了同步,而是尽可能的保持离线化
  • 增加了两个SQLite表格
    • localVideoFolders
    • localOrders
  • 该版本的视频、音频、专栏的收藏将采用本地存储的形式,同步版本会在下一个版本中加入

2021/01/15

  • 修复了e7d4aa8c中的第三个问题
  • 修改了获取接口数据的流程,大部分的接口数据都需要通过Cookie获取,所有获取接口数据的Parser类都需要通过构造方法来创建
    • Cookie的获取统一通过ParserUtils-getInterfaceRequestHeader (Context context)来获取

2021/01/14

  • 修复了一个很SD的BUG
  • 加入了番剧下载功能
  • 未解决问题
    • 媒体资源下载完成后,发送的本地广播未接收成功(只在下载记录的主界面出现该问题,可以不用解决)
    • 部分视频下载不了(具体原因还未知)
    • 如果视频下载过,再将其删除,再下载的话,则该视频不会出现在缓存管理页面中

2021/01/12-13

  • 由于个人原因这两天为进行更新

2021/01/11

  • 修改了番剧详情的查看方式

2021/01/10

  • BangumiActivity进行了完善
  • 本次提交运行会出现NPE异常,我也不知道为啥有毛病还要提交,可能是为了不让连续提交断掉吧( ̄▽ ̄)"

2021/01/09

  • 加入了BangumiActivity
  • 由于B站未提供在线播放番剧接口,所以V2版本并没有在线播放功能,在下一个版本中会添加该功能

2021/01/08

  • 番剧搜索功能已基本完成
  • 对代码进行了表面整理

2021/01/07

  • 加入了搜索番剧的相关工具类
  • 修复了搜索界面中的条目标题出现HTML代码的情况
  • 修改了部分代码

2021/01/06

  • 无进度

2021/01/05

  • 加入了用户的退出或登录会影响OrderFragmentHistoryFragment的数据
  • 修改了LoginActivity的布局代码

2021/01/04

  • 修改了获取/设置下载失败资源列表的方式
    • MainActivity中设置下载失败的资源,在DownloadFailListFragment中获取下载失败的资源
    • 更改了部分代码
  • 修改了MainActivity中的代码,如果在已打开OrderFragment的情况下,进行登录,会出现订阅数据不更新的情况
  • 修复了部分已知BUG

2021/01/03

  • 更改了VideoActivity的代码

2021/01/02

  • 加入了选集缓存对话框,如果选集个数大于1,则会弹出该对话框,否则只弹出画质选择对话框
  • 单个选集情况下的界面还需要进行修改
  • 选集选择下载功能已完成
    • 注意:默认的画质为1080P,如果选择的画质为大会员才能下载的画质,且没有登录大会员账号,将默认下载非大会员的最高画质;如果没有已选择的画质,则默认按照能下载的最高画质进行下载
  • 本次提交可能会在VideoActivity出现闪退
  • 明天会对VideoActivity进行修改,BUG一个接一个的出现真是太难了

2021/01/01

  • 本次提交的版本需要在2GB运行内存的机器上才能完整运行,否则会在UserActivity界面中出现闪退
  • 更改了视频/音频的下载方式

2020/12/31

  • downloadDetailsForMedia中加入了resourceMark字段,该字段为UNIQUE,用来标识已下载过的媒体资源
  • resourceMark字段格式:
    • 视频:subId + "-" + qualityId
    • 音频:mainId

2020/12/30

  • 加入了缓存失败列表,并加入了重新下载功能
  • 神了!DEBUG不了???
  • 重新下载功能已完成,并在VideoActivity的清晰度选择中加入了已下载提醒
  • 数据获取部分还需要进行优化,否则很容易出现NetworkOnMainThreadException

2020/12/29

  • 离线缓存功能已完成
  • 修改了部分布局代码

2020/12/28

  • 修复了离线缓存的部分问题
  • 离线缓存功能,已基本完成,通过Broadcast动态加载还未完成
  • 修复了打开已下载音频,出现闪退的情况

2020/12/27

  • 原本想实现下载任务界面的,奈何本人太菜,只能弃坑了
  • 离线缓存功能已基本完成,视频的清晰度分别还需要修改
  • 资源文件下载完成后的动态加载到离线缓存列表的功能还未实现
  • 收藏功能和在专栏界面点击用户头像,莫名其妙的出现了BUG,还需要进行修改

2020/12/26

  • 填坑

2020/12/25

  • 挖坑

2020/12/24

  • OrderFragment中的VideoListFragment已完成

2020/12/23

  • UserFragments中的Fragment已全部继承BaseFragment
  • 其他的Fragment将会在以后都继承BaseFragment

2020/12/15 - 22

  • 由于学业原因,这几天暂时没有进行更新

2020/12/14

  • 加入了OrderFragment,可获取用户订阅的内容
    • 使用该功能时,需要确保‘隐私设置’的追番追剧设置为公开,否则需要通过登录账号来获取
  • 本次提交还有问题未解决,正在查明问题中
  • 5b7d840d的提交的问题已解决

2020/12/13

  • 无进度

2020/12/12

  • HistoryFragment已基本完成,暂没发现BUG
  • 由于数据获取的问题,进入历史记录-专栏中某一条目,在ArticleActivity中不显示文章标签和专栏发表时间
  • 由于采用的是一次性加载所有页面,进入时需要等待,所以数据加载的问题还需要进行优化
  • 注意:
    • 创建历史记录中的Fragment和Adapter是根据HistoryType的值创建的
  • 观看直播功能还未进行,直播功能会在第三版时添加

2020/12/11

  • 只加入了视频观看记录的查询,代码还需要进行优化

2020/12/10

  • 添加了VideoHistoryFragment,该Fragment的各项功能都未完成
  • 明天再说,2077太香了

2020/12/09

  • 加入了BaseFragment,继承该类可更好的创建和使用Fragment
  • 修复了HomeFragmentonHiddenChanged()方法不起作用的情况
  • 对主页面中4个Fragment进行了重构
  • 加入了获取历史记录的接口
    • 在主页加入了HistoryFragment
    • HistoryFragmentViewPager的数据展示还未完成

2020/12/08

  • 加入了LoginActivity,该Activity用来用户登录的操作
  • 用户登陆、登出部分已基本完成,还未进行优化
  • 对侧边栏进行了更改
    • 取消了MainActivity顶部栏右边的选项(还未删除),移动到了侧边栏中
  • 还未将PreferenceActivity转换为Fragment

2020/12/07

  • V2版本,在1.1.3-beta版本的基础上进行更新
  • 在该版本完成之前master分支将不会进行更新,只会上传到V2分支上
  • 该版本将会加入以下主要内容:
    • 用户登录、登出
    • 在线观看番剧和缓存
    • 下载界面
  • 更改了侧边栏的样式

2020/12/06

  • 无进度

2020/12/05

  • 忘记加项目地址了[😓]
  • GitHub链接现暂不提供,后期可能会进行提供(其实是连接到GitHub实在太慢,懒的折腾了)

2020/12/04

  • [修复]进入未关注的用户界面时出现应用闪退的情况
  • 更改了应用版本号
    • 直到第一个发行版发布后,build.gradle的versionCode才进行递增
    • 版本更新后需要对build.gradleversion.xml中的versionCode和versionName进行更改,其两文件的值需要一一对应相同
  • 加入了帮助链接
  • 修复了MusicActivity切换歌曲的问题
  • 版本号修改为1.1.2-beta
  • 修复了部分漏洞
  • 修复了下载视频时,清晰度错乱的情况
  • 解决了由腾讯云检测出的高、中危漏洞
    • 有些漏洞为第三方组件产生的,且都为低级别,所以未进行修复
    • 不会真有人闲的利用这来搞事情吧
    • AndroidManifest.xml中的allowBackup属性,现已改为false,后期会根据反馈情况来决定是否开启
  • 版本号修改为1.1.3-beta

2020/12/03

  • PreferenceActivity加入了关于本APPDialog
  • V1.0 Dev正式发布
  • 本项目第一版本已进入尾声,该版本完成度接近100%
  • 该项目源代码已设置为开源状态
  • 在帮助文档完成后会上架到部分应用平台
  • 现帮助文档进度还未达到100%

2020/12/02

  • 修复了部分BUG
  • 由于获取数据都是在主线程完成的,该缺点现阶段不进行更改,但会在以后根据情况进行更改
  • 关注列表的导入顺序和获取本地数据的顺序还未解决
  • PreferenceActivity中加入了将关注列表的顺序设置为"按照访问量"排序功能
  • 按照访问量排序该功能已完成
  • 修复了ImportStateDialog不显示的问题

2020/12/01

  • 对部分代码进行了更改
  • 加入了感谢名单
    • 后续加入只需对values包下的ThanksList类中三个数组进行追加即可
  • 对开源许可弹窗进行了修改

2020/11/30

  • 清理了parseDataUtils包中的部分代码
  • 重命名了部分名称
  • PreferenceActivity中加入了设置Hero的功能
  • PreferenceActivity中的设置Hero功能已完成
    • 后期添加Hero的话需要在HeroImages.heroImages中加入其资源ID
    • 然后在preference_strings.xml中的heroNames数组中加入其名称即可
    • 资源ID和heroNames的顺序必须保持一致,否则会出现资源顺序错乱的情况
  • activity_useractivity_search_result中使用了CoordinatorLayout控件,已实现折叠悬浮效果
  • 对logo进行了更改
    • 侧边栏上的icon还未进行更换

2020/11/29

  • 添加了RoundPopupWindow类,该类用于创建一个带有圆角的popupWindow
  • 使用步骤:
    • 创建该类对象,构造参数需要传入Context,和Anchor(锚点,即显示在那一控件的旁边的那个对象)对象
    • 使用setContentView(int layoutId)来设置视图内容
    • setOnClickListener (int viewId, View.OnClickListener onClickListener)用来设置控件的监听
    • setLocation(int location)根据需要进行设置
    • 最后使用create来创建RoundPopupWindow
  • 更具体的说明可看对应方法的注释
  • 现所有的more弹窗都已使用RoundPopupWindow进行创建
  • 添加了无网络提示,不过使用有点麻烦,后期会根据需要进行优化
    • 调用InternetUtils中的静态方法checkNetwork()
    • false为无网络,true为有网络
    • 更改提示语句的话只需更改string.xml中的network_sign即可
  • 修改了用户界面中四个Fragment中数据获取的方式,需要先获取总数,再获取具体数据
  • 未解决问题:
    • Fragment子类还存在代码冗余,parseDataUtils包中的各解析工具类也存在大量代码冗余
    • 在用户界面中浏览数据的话,如果滑动的速度过快,很容易使应用出现闪退情况

2020/11/28

  • 修改了popupWindow的弹出位置
  • 添加了RoundPopupWindow抽象类,该类可以创建一个带有圆角样式的popupWindow
    • 但显示位置暂时还没有调整完成

2020/11/27

  • 对大部分界面布局代码,和Java代码进行了修改
  • 舍弃了音乐播放界面中的收听数量、评论数等,只保留了加入播放列表、音乐对应的视频、跳转至原网站和缓存,和顶部的打开播放列表
    • 同时对音乐播放界面的歌曲名和作者名称的显示位置进行了更改
    • 点击作者名称还可以跳转到作者主页面
  • 本次修改使用的大量的圆角样式
  • 所有菜单弹窗的显示位置还需要进行调整

2020/11/26

  • 冗余问题由于技术原因,暂清除不了
  • 修改了搜索界面的部分代码
  • ArticleActivity中加入了作者头像、名称的控件
  • 加入了metas接口链接

2020/11/25

  • 二次搜索无数据问题已基本解决,如果二次搜索的Adapter没有创建的话,则数据还是显示不了
  • 更改了VideoResultFragment的部分代码,还未进行过调试
  • 搜索功能已全部完善,暂未遇到BUG的出现
    • 搜索部分的Fragment还存在代码冗余,需要进行清理

2020/11/24

  • 修改了部分界面,SearchResultActivity还存在输入关键字搜索不了的情况
  • 修改了SearchResultActivity的部分代码
  • 对部分代码进行了更改,二次搜索,fragment数据的加载还存在问题,切换fragment时存在fragment频繁创建的问题
  • 淦,执行二次搜索,fragment数据的加载还是存在问题
  • 不过,倒是在SearchResultActivity中加入了setOffscreenPageLimit()方法,解决了切换fragment时不在加载范围内的fragment会被销毁的问题(总感觉使用这个方法会有点不妥的感觉)

2020/11/23

  • 进行到了VideoResultFragment
  • VideoResultFragment中添加了加载更多功能
  • 搜索相关的功能已完成,但代码还存在大部分冗余
  • HomeFragment中的spinner的样式进行了修改

2020/11/22

  • HomeFragment进行了修改,将其中的搜索视频&用户更改为了综合搜索,搜索结果有视频、专栏和用户
  • 添加了SearchResultActivity,该Activity的作用为搜索结果页面
  • SearchResultActivity的界面设计还未完成
  • SearchResultActivity中添加了控件初始化代码

2020/11/21

  • 无进度

2020/11/20

  • 添加了LICENSE
  • 加入了LicenseDialog
  • PreferenceActivity的所有功能已完成
    • 暂未对反馈信息进行处理
  • 修改了部分icon的大小
  • 修改了部分布局代码
  • 删除了无用的icon

2020/11/19

  • 修改了AboutDialog的界面代码
  • 在PreferenceActivity中加入了导入外部数据功能
  • ImportFollowDialog已完成

2020/11/18

  • 更改了MainActivity中popupWindow中的item,加入了PreferenceActivity
  • 加入了清除缓存功能
  • ImportFollowDialog进行到了一半。。。太困了。。。

2020/11/17

  • 无进度

2020/11/16

  • BUG还未修复,需要将sids的类型更换为List集合
  • UpSongActivity的BUG已修复,所有关于RecyclerView的Adapter的代码已经进行优化
  • 更改了utils中的部分目录结构

2020/11/15

  • 所有的Adapter的冗余已基本重写完成
  • 注意:
    • 创建Adapter时按照以下的格式创建
    •     public class Adapter extends BaseAdapter<MusicPlayList> {
      
              @Override
              public int getLayout(int viewType) {
                  return itemID;
              }
              
              @Override
              public void onBindViewHolder(@NonNull BaseViewHolder holder, int position) {
                  //调用holder中对应的方法,具体说明可看代码注释
              }
              
              //其他方法
          }
    • MusicPlayListAdapter相关的适配还未完成,切换歌曲时position会出现未重置成功的情况

2020/11/14

  • 对获取接口响应数据的方式进行了更改

    • 获取接口数据的方法

      1. 对请求头(Header)有特殊要求的
          public HttpUtils(String url, Headers headers, Map<String, String> params) {
          	this.url = url;
          	this.headers = headers;
          	this.params = params;
          }
      1. 对请求头没有要求的
          public HttpUtils(String url, Map<String, String> params) {
          	this.url = url;
          	this.params = params;
          	this.headers = Headers.of(getHeaders());
          }
  • 对连接SQLite的方式进行了更改

    • 创建数据连接时必须通过创建SQLiteHelperFactory类,构造方法参数只用传入Context和对应的Tables,调用getInstance()方法来获取对象,需要进行强制转换
    • 使用完数据库之后只需在对应的Destroy中调用其close()方法即可,使用完数据库必须要调用该方法
  • 各适配器(Adapter)的代码还未进行冗余清除

2020/11/13

  • 以下两项暂定
    • 添加了Logo
    • 更换了侧滑栏头部显示的图片
  • 修复了关注用户、收藏视频或歌曲后,关注列表、播放列表的数据没有及时更新的情况
  • 修复了第一次进入,关注用户、收藏视频或歌曲后,关注列表、播放列表的数据没有及时更新的情况

2020/11/12

  • PictureViewer已完成
    • 该控件的进入和退出动画还未添加
  • PictureViewer的进入/退出动画已完成
  • 更改了UpMasterActivity中的控件
    • 其他的ViewPage顶部的指示栏还未进行相同的更改
  • 对其他指示栏进行了更改,对部分控件添加了ripple效果

2020/11/11

  • 又到了一年一度的光棍节!!!
  • 加入了PictureActivity
  • 添加了PictureActivity的初始化代码
  • 修改了PictureActivity的部分代码
  • PictureActivity部分的代码已大部分完成
    • 图片查看器还在着手准备中
  • PictureViewer已添加,但还有些许问题需要进行修复

2020/11/10

  • 主界面的弹窗问题已解决
  • 对部分按钮加入的ripple效果
  • 对大部分控件添加了ripple效果
    • RecyclerView的item的ripple效果尚未添加成功
    • 减少了部分冗余代码
  • 修复了musicPlayList的video图标显示的问题
  • 修复了videoPlayList的cover圆角显示的问题
  • 所有itemripple效果都已添加
  • 修复了所有数据已加载完,但刷新控件还在开启的情况
  • 修复了一部分的问题
  • 查看picture界面还未添加

2020/11/09

  • 修改了VideoActivity的样式和视频清晰度选择的方式
  • 修复了下载视频时选择清晰度不全或多余的情况
  • 修复了关注页面的用户名和用户说明显示的问题
  • 修改了VideoActivity中响应体的获取方式
  • 主页面"more"中的popupMenu需要进行更改
  • 主页面的popupMenu已更改,但就是有点'丑'
  • 注意,如果AndroidManifest中的MainActivity的Theme使用more_menu_style的话,则输入框旁边的spinner的样式会失效

2020/11/08

  • 文章以长图的方式进行保存的功能已完成
  • 修复了VideoActivity底部颜色不全的问题
  • VideoActivity的界面还需要进行改进

2020/11/07

  • 添加了文章Activity
  • 在用户界面中增加了文章列表
  • 文章列表和文章Activity还未完善

2020/11/06

  • 网页读取测试

2020/11/05

  • 无进展

2020/11/04

  • 添加了针对"专栏"界面进行删除网页元素的JS脚本文件
  • 删除专栏div元素未能解决

2020/11/03

  • 添加了专栏页面Activity,用户页面内还没有加入对应的Fragment
  • 网页读取测试

2020/11/02

  • fragment的重影问题已解决
  • 修复了一些小问题,列表中的viewPage没有添加监听事件
  • 权限的获取还有待改进,重影问题还未解决
  • 权限获取已完成
  • 对代码进行了清理,但还存在代码冗余
    • MediaUtils类中的getHeaders()方法属于冗余部分,该方法待清理
    • 从“收藏”转到“播放列表”后播放列表上面会出现重影
    • 播放列表中Video的图标颜色不一样
    • 不搞了,晚上再搞。。。
  • 增加了图片缓存功能,对代码进行了清理
  • 每次缓存都会调用FileUtils中的verifyPermissions方法来获取权限,回调方法在每个对应的Activity中

2020/11/01

  • 无进度

2020/10/31

  • 在侧滑栏中添加了播放列表功能
    • 播放列表中添加了一个两个界面
      • 视频播放列表
      • 音乐播放列表
  • 侧边栏还存在fragment重影情况
  • 视频列表歌和音乐列表中的“无数据”提示控件未能完美隐藏掉

2020/10/30

  • 音乐切换功能已完成,播放列表Fragment待添加
  • 可能在其他机型上面还存在问题,如果出现歌曲已播放完,动画和控制按钮可能会保持不变,可通过修改MusicService中的differenceRange变量的值来解决问题
  • 修复了第一次进入,播放完一整首歌,再退出进入时出现歌曲不能播放的问题

2020/10/29

  • 播放列表的更新已解决
  • 歌曲的切换和切换为播放列表里面的歌曲已完成
  • 切换其他歌曲后,再点击添加到“播放列表”,再切换到其他歌曲后“红心”依然存在
  • 歌曲切换后的播放按钮的状态和动画在实体机上面还存在问题,动画为暂停状态,播放按钮也为暂停状态

2020/10/28

  • 添加了服务,但服务的注册一直搞不定!!!
  • 服务已搞定,可进行播放音乐,但离开播放音乐界面,音乐也就停了;音乐的保存还尚有问题没有解决
  • 音乐播放已没问题,添加到播放列表后,播放列表不能及时更新暂未解决
  • 播放上一曲、下一曲和显示歌词还未动工

2020/10/27

  • Favorite的表控件需要更改为RecyclerView(到现在为止所有的表控件都为RecyclerView)
  • 修改的话明天再说,ListView太垃圾了
  • 修改了Favorite的表控件
  • 添加了播放列表页面,对Dialog添加了动画
  • 修改了一些控件的圆角样式
  • 添加了服务,但服务的注册一直搞不定!!!
  • 音频界面及数据的获取已完成,FavoriteFragment的监听事件还未修改完
  • "终于"想起来加入了README了:)

2020/10/26

  • 缓存视频功能已完成,所有的hero都已更换为Vector类型文件

2020/10/25

  • 使用侧滑栏切换Fragment的重叠已修复,增加了bvid和mid的获取方式,增加了网络状态的获取,对一些细节进行了优化
  • 缓存视频功能已完成,所有的hero都已更换为Vector类型文件

2020/10/24

  • 无进度

2020/10/23

  • 上拉加载更多数据功能已完成,加入了无数据提示页面,但代码冗余度较高,三个模块的fragment和适配器部分代码需要减少冗余

2020/10/22

  • 基本信息、视频、音频和相簿的解析都已完成,相簿的解析还有待完善,这IDE有毒。。。
  • IDE是真的有毒!!!文件不可写了!!!

2020/10/21

  • 增加了用户搜索功能,可查看所有已发布的视频、音频、相簿,以上三个功能接口响应体的解析还未进行
  • 获取UP主所有视频接口的响应体解析已完成

2020/10/20

  • 打开方式更改为了Fragment的形式
  • 在ToolBar中添加了选项菜单

2020/10/19

  • 修改了选集列表的控件为RecyclerView,适配器能添加成功,但item显示不了
  • 添加了切换选集功能

2020/10/18

  • 对项目进行了初始化

🙎‍♂️参与人员

  • 个人开发