资讯中心 / MobPush免费的手机推送消息SDK接入指南

MobPush免费的手机推送消息SDK接入指南

手机推送消息
2018-11-30

手机推送消息已经成为app必备的一项功能,通过app自带的手机推送消息可以轻松完成用户订单信息、app推广信息等消息的推送,是app运营必备的一项工具,也是增强用户黏性,提升app用户忠诚度的重要手段。如果app还没有接入消息推送功能,在此推荐一款免费的SDK产品——MobPush SDK,只需要将SDK植入app就能迅速集成消息推送功能,具体的接入流程如下:

 

一、获取AppKey

 

二、下载SDK

下载解压后,如下图:

目录结构

(1)Sample:演示Demo。

 

(2)SDK:集成项目时,只需导入此文件夹即可。具体说明在里面的2个文件夹:

 

Required:必要的依赖库(必要)。

 

MobPush:MobPush 和 MobPushServiceExtension的静态库。

 

三、导入SDK

(1)手动下载SDK导入

解压下载的ZIP包,将解压后的SDK添加到项目中。

注意:该步骤中添加时,请选择“Create groups for any added folders”单选按钮组。如果你选择“Create folder references for any added folders”,一个蓝色的文件夹引用将被添加到项目并且将无法找到它的资源。

(2)pod导入

1、首先 cd 至项目的根目录,执行 pod setup;

2、按需在 Podfile 文件中添加命令:

pod 'mob_pushsdk'

3、如果之前没有安装过,第一次使用请先执行

安装库:pod install

如果之前已经安装过,那只需要再执行

更新库:pod update

 

四、添加项目依赖库

必须添加的依赖库如下:

libc++.tbd

CoreLocation.framework

 

五、MobPush的初始化配置和功能接口。

5.1 配置AppKey和AppSecret

在项目的Info.plist中添加2个字段:MOBAppKey和MOBAppSecret,对应的值是在mob.com官方申请的应用的AppKey和AppSecret。

在Info.plist配置 Privacy – Location When In Use Usage Description 权限以及App Transport Security Settings。

证书里需要开通apns功能,然后在项目里设置,如下:

 

5.2 推送配置(以下代码具有通用性,可直接粘贴使用)

在- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions中进行推送配置即可。

引入头文件:

#import <MobPush/MobPush.h>

 

调用方法:

// 设置推送环境

#ifdef DEBUG

[MobPush setAPNsForProduction:NO];

#else

[MobPush setAPNsForProduction:YES];

#endif

 

//MobPush推送设置(获得角标、声音、弹框提醒权限)

MPushNotificationConfiguration *configuration = [[MPushNotificationConfiguration alloc] init];

configuration.types = MPushAuthorizationOptionsBadge | MPushAuthorizationOptionsSound | MPushAuthorizationOptionsAlert;

[MobPush setupNotification:configuration];

 

5.3 功能接口调用

所有的功能接口都在MobPush.h中。

目前的MobPush的推送机制是:当应用在前台时,维持与推送服务器的长连接,实时接收推送消息;当应用在后台时,通过苹果APNs推送通知。

当应用处于前台,通过监听@“MobPushDidReceiveMessageNotification”服务,即可收到所有通知或者自定义消息的回调(应用处于后台不可接收该回调)。另外:点击通知栏消息也可以收到该回调。

先引入头文件:

#import <MobPush/MobPush.h>

 

再调用方法:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(didReceiveMessage:) name:MobPushDidReceiveMessageNotification object:nil];

 

收到的消息数据可能是:1、UDP自定义消息,2、APNs,3、本地通知,4、点击推送消息。根据不同的类型做相应显示即可,具体例子如下:

// 收到通知回调

- (void)didReceiveMessage:(NSNotification *)notification

{

MPushMessage *message = notification.object;

 

switch (message.messageType)

{

case MPushMessageTypeCustom:

{// 自定义消息

 

}

break;

case MPushMessageTypeAPNs:

{// APNs 回调

 

if ([UIApplication sharedApplication].applicationState == UIApplicationStateActive)

{ // 前台

 

}

else

{ // 后台

 

}

}

break;

case MPushMessageTypeLocal:

{ // 本地通知回调

NSString *body = message.notification.body;

NSString *title = message.notification.title;

NSString *subtitle = message.notification.subTitle;

NSInteger badge = message.notification.badge;

NSString *sound = message.notification.sound;

 

NSLog(@"收到本地通知:{\nbody:%@,\ntitle:%@,\nsubtitle:%@,\nbadge:%ld,\nsound:%@,\n}",body, title, subtitle, badge, sound);

}

break;

case MPushMessageTypeClicked:

{

NSLog(@"click the message!!!!!!!!!!!!");

}

break;

default:

break;

}

}

 

推送打开指定链接页面

如果开发者想要对通知消息进行点击跳转到H5页面的操作,可以在开发者管理后台配置url额外字段。

当用户点击带有url链接的通知时,需要在回调中获取message.msgInfo[@“url”],进行业务相关的跳转,可参考demo。

推送打开指定应用内指定页面

1. 如果开发者想要对通知消息进行点击跳转到app内指定页面的操作,可以在开发者管理后台打开配置开关和参数设置。

Scheme地址:为开发者自定义的控制器路径。

传递参数:为跳转控制器的初始化参数。

2.开发者需要在自己的应用内对所跳转的控制器进行相关代码设置。如下:(可参照demo中PushViewController.m)

引入头文件

#import <MobPush/UIViewController+MobPush.h>

#pragma mark ---实现分类的2个方法---

点击推送-场景还原路径,必须跟上面的Scheme地址保持一致

+(NSString *)MobPushPath

{

return @"path/xxxViewController";

}

 

点击推送-场景还原页面参数,params为开发者上面配置的参数

-(instancetype)initWithMobPushScene:(NSDictionary *)params

{

if (self == [super init]) {

self.params = params;

self.value1 = self.params[@"key1"];

self.value2 = self.params[@"key2"];

return self;

}

 

以上为iOS系统的接入介绍,Android系统及更多相关业务服务欢迎前往Mob官网(http://www.mob.com/product/mobpush)查看。

上一篇 下一篇
SDK打包中 — 0%

SDK下载

正在根据您选择的SDK打包中,完成后自动下载
0%