xcode8公升級後極光推送適配iOS10的相關問題

2021-07-23 05:48:55 字數 2504 閱讀 4573

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啟動,卻沒有問題,實際原因是上面的輸出日誌中最後一行就是 告訴你訪問了隱...