Android开发经验谈Android技术知识

音视频会员实现

2017-08-01  本文已影响0人  汤增雷

全中国赚钱最容易的男歌手,舞台表演跑下去吃个夜宵都没人会发现,yoyo yoyo,这就是凤凰传奇组合里的玲花和曾毅~~重温的吐槽经典,看一遍笑一遍的大会:

《吐槽大会》凤凰传奇


好吧,今天偶然看到了一幅好玩的搞笑组图,于是把视频找了出来有空的朋友可以看看欧~~开始今天的主题吧:最近在调研一些关于音视频会员方面的内容,相信你一定很好奇天天都被使用到的播放软件的会员是怎么实现的吧~~下面就让我们一起来探索这个问题吧!

为了在软件中实现付费观看的音视频播放,团队成员们都在各自收集自己的方法以在会议上进行进一步的讨论。通过一番Google和调研和实现,对音视频的设计也有了些粗浅的看法,在这里用本文进行记录:

  1. 录制过程中对音视频文件内容进行加密,播放过程中对加密文件进行解密;
  2. 控制访问权限:

方案一可以对安全性进行比较好的控制,但是开发的成本相对来说要大一些;方案二中对视频访问链接进行加密,增加防盗链以及设置专有资源接口可以控制用户直接获取资源,但是可以通过获取播放器访问资源时对请求从而获取资源的访问地址,并且无法杜绝后期做下载功能时用户有可能窃取视频资源。

注:防盗链技术中所需的字段:「Referer」在 Android 系统 4.0~6.0 中已被移除 参考链接,也就是不能使用系统原生播放器,可替代使用 ijkPlayer 但是由于此库中 .so 库所占空间较大可能使 app 体积大幅增加所以要斟酌使用。网上也有种说法用 User-Agent 字段代替 Referer 实现防盗链,如果希望采取此技术的筒子们可以详细尝试下~~

实际上从技术的角度很难去杜绝资源被窃取,我们只能去争取尽可能妥当的方案;还有一点需要考虑的是可以从法律的角度去保护隐秘资源的权益,这里就要使用我们的 DRM 技术啦,常用的就是给咋们的视频打上水印,打个水印还得防止别人给认为去除喽,使用 Google 爸爸的软件「Watermark Master」可以解决打水印的问题~~水印效果如下:


java加密解密

图中可以看到:

具体代码实现请参见:BlankJ Encrypt

上一篇 下一篇

猜你喜欢

热点阅读