iOS 极光推送的集成以及一些集成后的狗血

时间:2022-05-09 05:31:15

1.首先进入极光文档下载激光推送的SDk---传送门http://docs.jiguang.cn/jpush/client/iOS/ios_sdk/   将解压后的lib子文件夹(包含JPUSHService.h、jpush-ios-x.x.x.a,jcore-ios-x.x.x.a)添加到你的工程目录中。

2.然后创建应用并上传推送证书。

iOS 极光推送的集成以及一些集成后的狗血

3.进入项目添加相关的依赖库

iOS 极光推送的集成以及一些集成后的狗血

4.根据域名在info.plist配置---添加一个Key:NSAppTransportSecurity,类型为字典类型,把需要的支持的域添加給NSExceptionDomains。其中jpush.cn作为Key,类型为字典类型。每个域下面需要设置2个属性:NSIncludesSubdomains、NSExceptionAllowsInsecureHTTPLoads。 两个属性均为Boolean类型,值分别为YES、YES。

iOS 极光推送的集成以及一些集成后的狗血

5.将以下代码添加到 AppDelegate.m 引用头文件的// 引入JPush功能所需#import "JPUSHService.h"

// iOS10注册APNs所需头文件 #ifdef NSFoundationVersionNumber_iOS_9_x_Max #import <UserNotifications/UserNotifications.h> #endif // 如果需要使用idfa功能所需要引入的头文件(可选) #import <AdSupport/AdSupport.h>
并添加代理协议
<JPUSHRegisterDelegate>
将以下代码添加到-(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

// Optional

// 获取IDFA

// 如需使用IDFA功能请添加此代码并在初始化方法的advertisingIdentifier参数中填写对应值

NSString *advertisingId = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];

// Required

// init Push

// notice: 2.1.5版本的SDK新增的注册方法,改成可上报IDFA,如果没有使用IDFA直接传nil

// 如需继续使用pushConfig.plist文件声明appKey等配置内容,请依旧使用[JPUSHService setupWithOption:launchOptions]方式初始化。

[JPUSHService setupWithOption:launchOptions appKey:appKey
channel:channel
apsForProduction:isProduction
advertisingIdentifier:advertisingId];

6.在AppDelegate.m实现该回调方法并添加回调方法

    上传DeviceToekn

iOS 极光推送的集成以及一些集成后的狗血

    注册推送失败回调

iOS 极光推送的集成以及一些集成后的狗血

    处理推送通知的回调方法

iOS 极光推送的集成以及一些集成后的狗血

    打开推送设置

iOS 极光推送的集成以及一些集成后的狗血

    成功后出现

iOS 极光推送的集成以及一些集成后的狗血

万恶的推送,成功后但是没有声音。原来是丧心病狂的后台没有给我传声音参数、安卓推送不需要传声音参数就会生成默认声音。还有就是要指定用户推送就需要给用户设置别名iOS 极光推送的集成以及一些集成后的狗血

好了这样推送算是彻底完成了,希望对各位撸友有帮助