接入说明
TikCDN 解决方案,充分利用终端闲置带宽资源,与传统CDN形成互补,构建出高性价比的新一代内容分发网络。开发者可通过 SDK 中简洁的接口快速同自有应用集成,实现 Android 设备上的 P2P 加速功能。
前提条件
- Android SDK API Level ≥ 19
- 如果你的 App 以 Android 9 及以上为目标平台,请关注 Android 隐私权变更。
- Android Studio 3.0 或以上版本。
- 有效的 TikCDN 开发者账号。
Demo运行指南
1、下载demo
2、配置开发者信息
Prj-Android/app/src/main/java/org/anyrtc/tiktracker/Config.kt
在上述类中输入您申请的appId即可
object Config {
val appId = "your appId"
}
3、修改包名,确保跟创建应用的时候填写的值一致,否则将使用不了加速服务(如果应用发布,确保SHA1跟创建应用时一致,否则也使用不了加速服务)
4、跑通后,还需在另外一台机器上跑通示例查看P2P加速效果
集成SDK
通过 MavenCenter 集成
在项目的 /app/build.gradle 文件中,添加如下行:
...
dependencies {
...
// a.b.c.d 请填写具体版本号,如:4.2.2.6
// 可通过 SDK 发版说明取得最新版本号
implementation 'xxxxxxx'
}
请点击查看发版说明获取最新版本号。
手动集成
1、拷贝xxxxx.aar拷贝到你的项目路径下。
2、路径如下:
文件或文件夹 | 项目路径 |
---|---|
rtc-release 文件 | /app/libs/ |
3、在Mould目录下的build.gradle文件增加如下代码
implementation fileTree(dir: 'libs', include: ['*.aar'])
实现步骤
初始化引擎
val engine = X2TikTrackerEngine(context, "your_app_id")
注册监听事件
engine.registerListener(object : X2HlsShareEngineEventHandler {
override fun onShareResult(code: TKT_CODE?) {
println("Share result: $code")
}
// 实现其他回调方法...
})
开始播放并加速
val result = engine.startPlay("http://example.com/video.m3u8", true)
获取 p2p 加速URL 地址
var exUrl = engine.getExUrl()
播放加速URL
val dataSourceFactory: DataSource.Factory = DefaultHttpDataSource.Factory()
val hlsMediaSource =
HlsMediaSource.Factory(dataSourceFactory).createMediaSource(MediaItem.fromUri(Uri.parse(exUrl)))
停止加速
engine.stopShare()
释放引擎
engine.release()