腾讯小直播配置流程
1. 开通视频云解决方案,先申请若5天内未通过直接拨打客户电话会马上开通。
2. 进入视频直播控制台,在一键部署中开通各项服务,其中Bucket为自己创建的Bucket名称,AppId在自己的账号信息中可获得,SecretId和Key可前往COS控制台中的密钥管理中获得。
3. 下载好小直播demo并构建完成后,找到com.tencent.qcloud.xiaozhibo.common.utils文件夹下的TCConstants.java文件修改里面的配置。
修改的内容主要为IMSDK_ACCOUNT_TYPE、IMSDK_APPID、COS_BUCKET、COS_APPID、COS_REGION、SVR_POST_URL。
参数名称 | Android变量名 | IOS变量名 | 含义 |
SdkAppId | IMSDK_APPID | kTCIMSDKAppId | IM相关标识一个IM应用 |
AccountType | IMSDK_ACCOUNT_TYPE | kTCIMSDKAccountType | IM相关账号类型,小直播采用的是 托管模式,创建IM应用的时候 务必选择托管模式; 另一种是独立模式 主要用在需要和 自己已有的账号体系进行集成。 |
APPID | COS_APPID | kTCCOSAppId | 区分对象存储应用 |
Bucket名称 | COS_BUCKET | kTCCOSBucket | 指定对象存储,文件要存放的位置 |
区域代码 | COS_REGION | kTCCOSRegion | COS相关指定Bucket所在区域, COS实际所在机房,目前有华东(sh), 华北(tj),华南(gz)三个区域。 |
ServerAddr | SVR_POST_URL | kHttpServerAddr | 业务服务器后台请求地址: http://您的服务器地址或域名/ interface.php |
其中IMSDK_ACCOUNT_TYPE在云通信控制台中,会有之前自己创建的应用,进入操作中的应用配置,其中帐号体系集成中会有个自动生成的accountType其数字就是IMSDK_ACCOUNT_TYPE应该修改的内容。
IMSDK_APPID和IMSDK_ACCOUNT_TYPE在同一个页面,在应用信息中的SdkAppId。
COS_APPID在账号信息内。
COS_BUCKET为创建的BUCKET名称。
COS_REGION如是“华南”请填写COSEndPoint.COS_GZ,“华北”请填写COSEndPoint.COS_TJ,“华东”请填写COSEndPoint.COS_SH。
SVR_POST_URL中的您的服务器地址或域名一般为服务器的外网地址,在云服务器控制台可查看,一般为http://公网IP/interface.php。
//云通信服务相关配置
public static final int IMSDK_ACCOUNT_TYPE = ;
public static final int IMSDK_APPID = ;
//COS存储服务相关配置
public static final String COS_BUCKET = "";
public static final String COS_APPID = "";
//COS服务配置的机房区域,从COS的管理控制台https://console.qcloud.com/cos4/bucket进入Bucket列表后,选择您所创建的Bucket->基础配置->所属地区,查到所属地区后,根据如下
//对应关系填入,如是“华南”请填写COSEndPoint.COS_GZ,“华北”请填写COSEndPoint.COS_TJ,“华东”请填写COSEndPoint.COS_SH
public static final COSEndPoint COS_REGION = COSEndPoint.COS_SH;
//云API服务密钥,在https://console.qcloud.com/capi查看,用于UGC短视频上传并落地到点播系统。已经废弃,客户端不用填写。
public static final String CLOUD_API_SECRETID = "";
//业务Server的Http配置
public static final String SVR_POST_URL = "http://xxx/interface.php";
注:分享功能如果不用,需要将TCLivePlayerActivity.java中的initSharePara();注释掉,不然会导致无法观看直播,若需要分享功能,则需要修改下图中的配置,默认为空。
//直播分享页面的跳转地址,分享到微信、手Q后点击观看将会跳转到这个地址,请参考https://www.qcloud.com/document/product/454/8046 文档部署html5的代码后,替换成相应的页面地址
public static final String SVR_LivePlayShare_URL = "";
//设置第三方平台的appid和appsecrect,大部分平台进行分享操作需要在第三方平台创建应用并提交审核,通过后拿到appid和appsecrect并填入这里,具体申请方式请参考http://dev.umeng.com/social/android/operation
//有关友盟组件更多资料请参考这里:http://dev.umeng.com/social/android/quick-integration
public static final String WEIXIN_SHARE_ID = "";
public static final String WEIXIN_SHARE_SECRECT = "";
public static final String SINA_WEIBO_SHARE_ID = "";
public static final String SINA_WEIBO_SHARE_SECRECT = "";
public static final String SINA_WEIBO_SHARE_REDIRECT_URL = "http://sns.whalecloud.com/sina2/callback";
public static final String QQZONE_SHARE_ID = "";
public static final String QQZONE_SHARE_SECRECT = "";
更加详细的配置内容位置可参考
https://cloud.tencent.com/document/product/454/7999
https://cloud.tencent.com/document/product/454/7953#3.3-im-sdk-.E8.B4.A6.E5.8F.B7.E7.B1.BB.E5.9E.8B
4. 纯音频推送功能的实现:
在apidoc文档中找到了如下的函数可以实现这功能
需要在TCLivePushlisherActivity.java中startPulish()
加入mTXPushConfig.enablePureAudioPush(true);
由于在推流启动前设置有效,所以需要放在setConfig之前。