miserydx / FakeBiliBili

仿B站Android端项目

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

推荐使用拦截器来添加固定参数

czp3009 opened this issue · comments

commented

B站的移动端 API 中包含很多固定参数, 例如 _device, mobi_app, platform, build, version 等.

我看到在本项目的代码中, Retrofit 的 Service 中, 每个方法都重复写了这些固定参数, 实际上这是不必要的. 我们可以用 OkHttpClient 的 Interceptor 来完成这件事. 从而简化调用方式, 同时也能更好的控制未来可能的固定参数的更新.

我看到本项目中使用了我以前写的一个 bilibili-live-api 的代码. 我当时使用的是 Web API, 与 APP API 有所不同. 首先, 弹幕推送服务器的端口就不一样, 然后, 一些数据包的数据结构也是不一样的. 我现在所维护的 bilibili-api 用的是移动端的 API, 是跟手机上一模一样的. 推荐使用这个项目作为弹幕的获取.

(我的这个项目在 Android 上好像会导致 dex 文件合并失败(直接引入 jar 包, 不是拷贝代码), 由于我对 Android 研究颇少, 具体原因不明, 如果方便的话, 能否帮忙看一下这是为什么)