问:
//百度推送
PushManager.startWork(xxxxxxx.this,PushConstants.LOGIN_TYPE_API_KEY,BaseKey.BAIDU_APPKEY);
/**
* 调用PushManager.startWork后,sdk将对push
* server发起绑定请求,这个过程是异步的。绑定请求的结果通过onBind返回。 如果您需要用单播推送,需要把这里获取的channel
* id和user id上传到应用server中,再调用server接口用channel id和user id给单个手机或者用户推送。
* * @param context BroadcastReceiver的执行Context
* @param errorCode 绑定接口返回值,0 - 成功
* @param appid 应用id。errorCode非0时为null
* @param userId 应用user id。errorCode非0时为null
* @param channelId 应用channel id。errorCode非0时为null
* @param requestId 向服务端发起的请求id。在追查问题时有用;
* @return none
*/
@Override
public void onBind(Context context, int errorCode, String appid, String userId, String channelId, String requestId) {
L.v(MYTAG,"push->onBind"); SPTools.setString(context, BaseKey.REQUEST_CID,channelId);
}
如上,Android Studio的模拟器中,项目运行后,在onBind可以得到CID也就是channelId;
而在真机1+3t上测试无法获取;