Skip to content
This repository has been archived by the owner on Sep 18, 2021. It is now read-only.

Commit

Permalink
update md
Browse files Browse the repository at this point in the history
  • Loading branch information
Richasy committed Sep 7, 2020
1 parent 55c26a0 commit b2d4c78
Show file tree
Hide file tree
Showing 3 changed files with 39 additions and 18 deletions.
2 changes: 1 addition & 1 deletion BiliBili-UWP/BiliBili-UWP.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
<AppxPackageDir>E:\Package\BiliBili\</AppxPackageDir>
<GenerateTestArtifacts>False</GenerateTestArtifacts>
<AppxBundle>Always</AppxBundle>
<AppxBundlePlatforms>arm64</AppxBundlePlatforms>
<AppxBundlePlatforms>x86|x64|arm|arm64</AppxBundlePlatforms>
<HoursBetweenUpdateChecks>0</HoursBetweenUpdateChecks>
<AppxSymbolPackageEnabled>True</AppxSymbolPackageEnabled>
<PackageCertificateThumbprint>19DE3251AB16B9B0D867892B047B3BB7FF135FF9</PackageCertificateThumbprint>
Expand Down
2 changes: 1 addition & 1 deletion BiliBili-UWP/Package.appxmanifest
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
<Identity
Name="60520B029E250.4264454043325"
Publisher="CN=9EFA2047-A580-400B-A5B2-0C7ABB0DB5C0"
Version="1.3.9.0" />
Version="1.3.10.0" />

<mp:PhoneIdentity PhoneProductId="f3e42c1a-303e-47c7-8e3d-d37473c0ec73" PhonePublisherId="00000000-0000-0000-0000-000000000000"/>

Expand Down
53 changes: 37 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,30 @@
![applogo](https://i.loli.net/2020/08/30/sn8ov9cYDCGeWPk.png)
<p align="center">
<img src="https://i.loli.net/2020/08/30/sn8ov9cYDCGeWPk.png"/>
</p>

# 哔哩
<div align="center">

***该项目由于一些不可抗力,已经停止开发。不再主动尝试修复bug(除非我自己遇到),也不再开发新的功能,目前已经在Microsoft Store中下架***
# 哔哩

> 严肃说明:本应用出于学习的目的进行开发,不进行任何商业相关的行为。同时尽管应用能显示4K清晰度选项,但如果你不是大会员,则片源也不会是4K
![GitHub release (latest by date)](https://img.shields.io/github/v/release/Richasy/BiliBili-UWP)![GitHub Release Date](https://img.shields.io/github/release-date/Richasy/BiliBili-UWP)![GitHub All Releases](https://img.shields.io/github/downloads/Richasy/BiliBili-UWP/total)![GitHub stars](https://img.shields.io/github/stars/Richasy/BiliBili-UWP?style=flat)![GitHub forks](https://img.shields.io/github/forks/Richasy/BiliBili-UWP)

> 尽管是原生UWP,但应用在ARM设备,比如Surface Pro X上可能无法运行,我也不知道具体原因,可能要等有相关设备了才能测试(我穷,所以没戏了)
`哔哩`是一款设计精美的第三方UWP应用

## 简介
</div>

我做这个应用一方面是出于对B站的喜爱(消退了消退了),另一方面是对自己的一个挑战。我想尝试将一款移动应用解构并移植到桌面上,这能让我对移动交互与桌面交互有更深的理解。
## 项目声明

哔哩是第三方UWP应用,可用于观看BiliBili的视频,查看动态,进行一键三连等基本操作。
> 我做这个应用一方面是出于对B站的喜爱,另一方面是对自己的一个挑战。我想尝试将一款移动应用解构并移植到桌面上,这能让我对移动交互与桌面交互有更深的理解。
>
> 但该项目由于一些不可抗力,已经停止开发。不再主动尝试修复bug(除非我自己遇到),也不再开发新的功能,目前已经在 **Microsoft Store** 中下架。
>
> 本应用出于学习的目的进行开发,不进行任何商业相关的行为。同时尽管应用能显示4K清晰度选项,但如果你不是大会员,则片源也不会是 4K。
>
> 尽管是原生 UWP ,但应用在 ARM 设备,比如` Surface Pro X` 上可能无法运行,我也不知道具体原因,可能要等有相关设备了才能测试。
>
> 应用不提供观看直播及视频下载的功能,原因固然是多方面的,但主要原因还是我没这需求。
应用不提供观看直播及视频下载的功能,原因固然是多方面的,但主要原因还是我没这需求。
## 简介

应用提供了两种显示模式:`桌面模式``平板模式`,截图如下:

Expand All @@ -38,13 +48,22 @@
|最低版本|Windows10 1809|
|目标版本|Windows10 2004|

## 常见问题

<https://www.richasy.cn/document/bilibili/qa.html>

## 如何使用及安装

如果你想自己编译,我想这难不倒你,克隆项目,在VS2019中打开,修改package.appxmanifest中的打包证书(VS2019不再自动生成测试证书了),然后重新生成项目并部署就完事。
1. 克隆项目到本地
2. 使用 Visual Studio 2019 打开项目
3.`package.appxmanifest` 中的 `Package` 选项卡下,重新生成一个测试证书
4. 重新生成项目并部署

---

如果你要安装,请在旁边[Release](https://github.com/Richasy/BiliBili-UWP/releases)中下载对应你系统的压缩包,解压后右键`install.ps1`,根据提示进行安装。

如果出现需要手动安装证书的情况,请双击包内的证书,将其导入到本地计算机->受信任的根证书目录中,然后再走一遍应用安装流程就完事。
*如果出现需要手动安装证书的情况,请双击包内的证书,将其导入到本地计算机->受信任的根证书目录中,然后再走一遍应用安装流程即可。*

## 设计思路

Expand All @@ -68,16 +87,18 @@ BiliBili是以移动应用为主的,在尝试将BiliBili移植到桌面端或

都是摸着石头过河,我的代码结构可能显得有些凌乱,注释也并不多,但总体结构如下:

- BiliBili-Controls:这里存放的是一些比较特殊的控件,要么是协作者开发的,要么是我从其他地方移植过来的,当时还考虑到后续的扩展性,还单独创建了一个类库(现在嘛……杞人忧天了)
- BiliBili-Lib:这里放着一些公共类、枚举定义以及哔哩哔哩的核心服务(在`Service`文件夹中)
- BiliBili-Notification:这是一个运行时组件,用于创建后台任务,进行动态的通知提醒。原本还打算做消息通知的,出了那档子事儿就没再做了
- BiliBili-UWP:应用主程序。主程序通过`AppViewModel`作为应用内的运行时状态管理器,`BiliViewModel`作为与BiliBili服务挂钩的处理模块来连接控件、改变状态以及管理数据。与UI有关的数据类、接口以及枚举定义等,我都放在了主项目中,而不是Lib类库里,主要还是为了调用方便以及分开来方便管理。应用创建了大量的自定义控件以及控件样式模板,这些被分别放在了`Components``Template`文件夹中,主题定义在`Theme`文件夹内。由于哔哩是一款中文应用,上面的视频基本都是中文的,所以不提供多语言配置
- **BiliBili-Controls**:这里存放的是一些比较特殊的控件,要么是协作者开发的,要么是我从其他地方移植过来的,当时还考虑到后续的扩展性,还单独创建了一个类库(现在嘛……杞人忧天了)
- **BiliBili-Lib**:这里放着一些公共类、枚举定义以及哔哩哔哩的核心服务(在`Service`文件夹中)
- **BiliBili-Notification**:这是一个运行时组件,用于创建后台任务,进行动态的通知提醒。原本还打算做消息通知的,出了那档子事儿就没再做了
- **BiliBili-UWP**:应用主程序。主程序通过`AppViewModel`作为应用内的运行时状态管理器,`BiliViewModel`作为与BiliBili服务挂钩的处理模块来连接控件、改变状态以及管理数据。与UI有关的数据类、接口以及枚举定义等,我都放在了主项目中,而不是Lib类库里,主要还是为了调用方便以及分开来方便管理。应用创建了大量的自定义控件以及控件样式模板,这些被分别放在了`Components``Template`文件夹中,主题定义在`Theme`文件夹内。由于哔哩是一款中文应用,上面的视频基本都是中文的,所以不提供多语言配置

应用的核心播放器被命名为`VideoPlayer`,放在`Components -> Controls`文件夹中,魔改的MediaTransportControls在`Models -> UI -> Others`文件夹中,MTC的样式定义在`Template -> Media.xaml`资源字典内。

其它的基本没啥好说的了,项目文件比较多,结构也稍微复杂一些,全写到说明文件里不太现实。好在我写代码的时候喜欢用有意义的名字命名(尽管名字有时候会比较长),通过阅读代码,你应该也可以找到你想要的。

哦,对了,API定义在[这里](https://github.com/Richasy/BiliBili-UWP/blob/master/BiliBili-Lib/Models/Others/Api.cs)
## API 定义

[Api.cs](https://github.com/Richasy/BiliBili-UWP/blob/master/BiliBili-Lib/Models/Others/Api.cs)

## 鸣谢

Expand Down

0 comments on commit b2d4c78

Please sign in to comment.