以小米介紹,來自小米文檔原話:
透傳消息是指當(dāng)小米推送服務(wù)客戶端SDK接收到消息之后,直接把消息通過回調(diào)方法發(fā)送給應(yīng)用,不做任何處理;
通知欄消息是指在設(shè)備接收到消息之后,首先由小米推送服務(wù)SDK彈出標(biāo)準(zhǔn)安卓通知欄通知,在用戶點(diǎn)擊通知欄之后,激活應(yīng)用。
在非MIUI系統(tǒng)中,由于維護(hù)小米推送服務(wù)長連接的service是寄生在App的運(yùn)行空間當(dāng)中的,因此透傳和通知欄方式在送達(dá)率上并沒有任何區(qū)別,都需要應(yīng)用駐留在后臺。即,如果一臺設(shè)備通知欄消息能夠接收到并彈出,那么其透傳消息也同樣能接收到。
在MIUI系統(tǒng)中,由于長連接是由MIUI系統(tǒng)服務(wù)建立并維護(hù)的,因此在接收消息的時候并不需要應(yīng)用駐留后臺。如果采用通知欄方式接收消息,由于通知欄也是MIUI系統(tǒng)服務(wù)彈出的,就可以做到不需要用戶后臺駐留或者可以自啟動消息就能送達(dá)。而如果采用透傳消息,由于需要直接執(zhí)行應(yīng)用的代碼,因此即使消息已經(jīng)到了系統(tǒng)服務(wù),如果應(yīng)用沒有駐留后臺或者能自啟動,消息依然不能送達(dá),需等下次用戶手動點(diǎn)擊激活應(yīng)用后,才能接收到消息。
綜上,在MIUI系統(tǒng)中,通知欄消息的送達(dá)率會遠(yuǎn)高于透傳方式;在非MIUI系統(tǒng)中,通知欄和透傳方式的送達(dá)率是一樣的。?????
具體介紹: 請參考??http://www.itdecent.cn/p/06aa66142834