最近在做環(huán)信聊天荣刑,里面有幾種情況用到環(huán)信推送措嵌,具體就不詳細(xì)介紹步驟了与柑,因?yàn)楦魑磺拜吙偨Y(jié)的很好了谤辜,我就針對(duì)我的問(wèn)題來(lái)說(shuō)說(shuō)
1.用戶(hù)賬號(hào)在后臺(tái)掛起(也就是沒(méi)有殺死app)
2,用戶(hù)殺死app后
這里就說(shuō)明你完成了環(huán)信推送的注冊(cè)价捧,并推送也走通了丑念,我的問(wèn)題是推送證書(shū)都是可以的,也能收到推送消息结蟋,但就是當(dāng)用戶(hù)殺死app后也想將收到的消息內(nèi)容展示出來(lái)
我查了各種方法脯倚,網(wǎng)上有介紹在appdelegate幾個(gè)代理方法來(lái)設(shè)置的消息內(nèi)容的展示,我就跟著它們的方法來(lái)各種調(diào)試啊嵌屎,結(jié)果以失敗告終推正,我不知道它們是如何實(shí)現(xiàn)的
我收到的離線消息是“你有一條消息”,所以在推送成功的條件下宝惰,你只需要在環(huán)信的登錄方法內(nèi)部設(shè)置一下植榕,因?yàn)榄h(huán)信的離線消息的推送默認(rèn)是EMPushDisplayStyleSimpleBanner:你有一條消息
只要把他改過(guò)來(lái)即可,
EMError *error = [[EMClient sharedClient] loginWithUsername:self.Hxusername password:@"123456"];
if (!error) { //IM登錄成功
EMPushOptions *options = [[EMClient sharedClient] pushOptions];
options.displayStyle = EMPushDisplayStyleMessageSummary;
options.displayName=? [[EMClient sharedClient] pushOptions].displayName;
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
EMError*error=? [[EMClient sharedClient] updatePushOptionsToServer];
if (!error) {
NSLog(@"成功了啊");
}else
{
NSLog(@"失敗了");
}
});