1.首先你需要在專案裡開啟推送的開關,如下圖
ios9不開啟也能收到推送,但是ios10必須要開啟
3.在專案裡適配
#ifdef nsfoundationversionnumber_ios_9_x_max
#import
#import
#endif
同時註冊協議
@inte***ce
在方法裡註冊推送
nsstring *advertisingid = [[[asidentifiermanager sharedmanager] advertisingidentifier] uuidstring];
//這裡判斷系統版本
if ([[uidevice currentdevice].systemversion floatvalue] >= 10.0) else
if ([[uidevice currentdevice].systemversion floatvalue] >= 8.0) else
// 讀取pushconfig plist檔案,載入極光推送相關資訊
nsstring *plistpath = [[nsbundle mainbundle] pathforresource:@"pushconfig" oftype:@"plist"];
nsdictionary *dic = [[nsdictionary alloc] initwithcontentsoffile:plistpath];
//如不需要使用idfa,advertisingidentifier 可為nil
channel:dic[@"channel"]
apsforproduction:[dic[@"aps_for_production"] boolvalue]
advertisingidentifier:advertisingid];
版本新增獲取registration id block介面。
[jpushservice registrationidcompletionhandler:^(int rescode, nsstring *registrationid)
else
}];}
#pragma mark- jpushregisterdelegate
//前台收到通知呼叫此方法
- (void)jpushnotificationcenter:(unusernotificationcenter *)center willpresentnotification:(unnotification *)notification withcompletionhandler:(void (^)(nsinteger))completionhandler
//這裡是你要寫的操作。比如彈出提示框,設定角標等
/* [mglogintools managepush:userinfo];
*/completionhandler(unnotificationpresentationoptionalert); // badge sound alert
}//前台後台收到通知呼叫此方法
- (void)jpushnotificationcenter:(unusernotificationcenter *)center didreceivenotificationresponse:(unnotificationresponse *)response withcompletionhandler:(void (^)())completionhandler
//這裡是你要寫的操作。比如頁面跳轉之類的
nsdictionary *apsdic = [userinfo objectforkey:@"aps"];
nsstring *strobj = [apsdic objectforkey:@"objectid"];
nsstring *titlename = [apsdic objectforkey:@"alert"];
nsstring *badge = [apsdic objectforkey:@"badge"];
if (strobj == nil)
nsdictionary *mesdic = @;
//這裡發通知進行頁面跳轉操作,可自定義
[mnotificationcenter postnotificationname:knotificationsystempush object:nil userinfo:mesdic];
completionhandler(); //
}
這樣就更新成功了,ios10的推送還有更多功能等待發 相容iOS 10 公升級xcode8 適配 二
直接使用xcode8beta開啟工程後,你會發現你的provisonfile配置出了問題,這是由於在xcode8中對工程配置有了一些小的改動。在xcode8工程配置的general選項卡中,使用更詳細signing選項替換了原有的team選項。選中 project target general xc...
Xcode10公升級後遇到的坑
主要是3個 c 的庫 現在換標準了 之前需要c 的庫還是要放進去 手動拖進去 對應的路徑是 xcode10 對重複檔案檢驗之前 重複檔案不會報錯 現在會報錯乾掉重複的就行 如果都不能刪除改bulid xcode file workspace settings build system legacy ...
公升級Xcode8後需要新增的一些許可權
從xcode7公升級到xcode8 蘋果對很多隱私進行了控制 所以需要在infoplist裡進行一些設定 要不然會出現crash的現象 這裡先將關於隱私權限的東西記錄一下 後續再總結乙份其他的xcode8中的坑 使用xcode7啟動,卻沒有問題,實際原因是上面的輸出日誌中最後一行就是 告訴你訪問了隱...