信鸽 ios tag推送 php,信鸽推送集成

信鸽推送集成

UDID是设备唯一设备识别符,移动广告运营商和游戏网络运营商可以通过这个udid识别玩家用户并对用户活动进行跟踪,苹果可能是因为安全原因拒绝。

device token是苹果返回给我们的NSData数据。通过Bundle Identifier 区分 deviceToken

iOS远端推送原理

服务端把要发送的消息和目标iOS设备的DeviceToken打包,发送给APNS;DeviceToken不是一成不变的

APNS在自身的已注册Push服务的IOS设备列表中,根据DeviceToken查找对应iOS设备,并将消息发送到IOS设备

iOS设备把发送的消息传递给对应的应用程序。

iOS推送证书设置

再需要设置信鸽推送的Demo上,先用开发者账号去运行,将Demo在模拟机上运行一遍。这样可以在apple developer -> acconut 中直接查找到项目的App ID.

7f3c33d9437e

运行过后刷新apple developer -> account -> Certificates...

7f3c33d9437e

找到后,由于未添加push notification 所以选项都为disable 点击edit进行更改。

7f3c33d9437e

创建推送证书,接下来会需要导入Certificate Signing Request。

7f3c33d9437e

生成 .certSigningRequest文件,然后导入到 4 中。

7f3c33d9437e

5 中上传完成的后的效果图。

7f3c33d9437e

推送证书生成完毕,点击下载。

7f3c33d9437e

下载后如图所示,双击进行安装

7f3c33d9437e

推送证书安装完毕后的效果。

7f3c33d9437e

Provisioning Profiles (配置概要文件)

如图所示,添加新profile

7f3c33d9437e

选中ios App Developer

Development(开发状态下) Distribution(生产状态下)

7f3c33d9437e

选择需要进行推送的应用的Bundle id

7f3c33d9437e

按照图示进行选中。

7f3c33d9437e

选中需要推送的设备

7f3c33d9437e

给描述文件命名。

7f3c33d9437e

下载用于推送的描述文件。

7f3c33d9437e

腾讯信鸽平台设置

登录信鸽平台。选中接入推送应用

7f3c33d9437e

填写需要设置推送的应用的信息

7f3c33d9437e

进行该应用的信鸽平台的配置

7f3c33d9437e

需要进行设置的2项:开发证书和测试设备

7f3c33d9437e

再次打开钥匙串。选中Push证书导出,选中一行。导出的格式为p12。

7f3c33d9437e

打开终端,进入到p12文件所在执行以下命令

openssl pkcs12 -in Name.p12 -out Name.pem -nodes

7f3c33d9437e

将生成的CertificateName.pem证书,上传到信鸽配置信息 -> iOS证书配置 -> 开发证书。 进行 pem 证书上传验证。

7f3c33d9437e

Xcode设置

双击 .mobileprovision 文件,进行安装。

7f3c33d9437e

设置Provisioning Profile

7f3c33d9437e

代码实现

在信鸽平台下载Demo后,将XGSetting.h 和 XGPush.h 和 libXG-SDK.a添加到Xcode工程

添加对以下libraries的引用。包括CFNetwork.framework , SystemConfiguration.framework , CoreTelephony.framework , libz.dylib , libXG-SDK.a,Security.framework。

初始化push信息

7f3c33d9437e

注册用户

// 设置账号

[XGPush setAccount:@"zhoujian"];

获取deviceToken,拷贝至信鸽平台 接入配置 -> 测试设备 -> 新增设备

- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken{

[XGPush registerDevice:deviceToken];//信鸽获取Token

NSLog(@"远程推送能力注册成功,deviceToken:%@",deviceToken);

}

信鸽平台 -> 创建通知

注意:推送环境和用户范围设置好,注意是当前应用设置的是开发环境还是生产环境。

输入测试内容,点击确认推送,手机端就可以收到推送的信息。

设置点击推送栏跳转至指定页面

点击通知操作使用自定义参数

7f3c33d9437e

收到远程推送消息时调用

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo{

//推送

NSLog(@"推送内容是:%@",userInfo);

}

得到userInfo字典

推送内容是:{

aps = {

alert = "\U6d4b\U8bd5";

sound = default;

};

info = 333;

xg = {

bid = 0;

ts = 1472197503;

};

}

故可以设置通知,当 info 有值时候,发送通知给指定页面,执行相应的跳转事件。

设置APP 通知未读角标

信鸽平台 -> 创建通知

7f3c33d9437e

在 useInfo 中

//设置APP的bageValue

NSString *bageValue = [[userInfo objectForKey:@"aps"] objectForKey:@"bageValue"];

int i = [bageValue intValue];

[UIApplication sharedApplication].applicationIconBadgeNumber = i;

判断应用处于前台 or 后台

//处于前台

[UIApplication sharedApplication].applicationState == UIApplicationStateActive

//处于后台

[UIApplication sharedApplication].applicationState == UIApplicationStateBackground

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值