今天花費(fèi)了一天時(shí)間去解決iOS10.3.3系統(tǒng)收不到消息推送的問題,時(shí)間花的長(zhǎng),在找問題的同時(shí),也學(xué)習(xí)到了一些知識(shí),在此記錄下來,有遇到相同問題的同仁,可以看看。
解決方案
我們可以看到友盟新的SDK里面增加了
- (void)startWithAppkey:(NSString * __nonnull)appKey launchOptions:(NSDictionary * __nullable)launchOptions httpsEnable:(BOOL)value
這個(gè)方法,根據(jù)文檔注釋,httpsEnable是開啟友盟內(nèi)部協(xié)議使用https的開關(guān),默認(rèn)是關(guān)閉,因此要適配iOS10.3.3的時(shí)候,需要將它打開,配置友盟推送的時(shí)候,使用
//設(shè)置 AppKey 及 LaunchOptions
[UMessage startWithAppkey:UMENG_APPKEY launchOptions:launchOptions httpsEnable:YES];
就可以解決了
另外附上友盟線上測(cè)試推送方案
友盟線上測(cè)試推送方案
一:一個(gè)是友盟官方推薦的方法,以Ad Hoc方式打包應(yīng)用,使用Xcode將應(yīng)用程序以Ad Hoc方式打包,導(dǎo)出ipa文件,然后用iTunes工具將應(yīng)用程序安裝到設(shè)備上,(windows電腦上可以使用愛思助手安裝),注意:這種方式的Profile文件主要是Ad Hoc類型,并且包含制定的設(shè)備信息。導(dǎo)出的ipa也只能安裝到制定的設(shè)備中。具體操作還是參考友盟官方文檔
二:在這里我是想介紹另一種方法,這個(gè)方案也是我在跟友盟技術(shù)人員溝通的時(shí)候,他們告訴我的,我在此分享出來。這個(gè)是通過Charles抓包得到deviceToken數(shù)據(jù),然后在友盟后臺(tái)進(jìn)行單播推送測(cè)試的,由于我的項(xiàng)目中使用了https,所以抓包得安裝相應(yīng)的證書才能抓到數(shù)據(jù),附上https抓包的詳細(xì)步驟http://www.itdecent.cn/p/a9ad840e8f9a,附上我抓包得到的圖片數(shù)據(jù):

BC68CF00-23A3-42CB-93EC-B7F6DE899EA7.png
,在這里注意下,這個(gè)數(shù)據(jù)得是首次安裝App,彈出允許推送彈框的時(shí)候才顯示的數(shù)據(jù),因此大家做測(cè)試的時(shí)候,得重新安裝App彈出允許消息推送彈框才可以抓到哦,我們拿到token值就可以在友盟后臺(tái)進(jìn)行單播測(cè)試了,就可以知道線上的測(cè)試是否成功了,有問題請(qǐng)留言哦~