全栈SDK系列产品,助力App开发与运营全面赋能
智能化推送服务
一秒验证手机号
短信与语音验证功能
移动场景还原解决方案
商业化智能协同网络,洞察挖掘数据价值
城市规划和地产应用的数据服务
挖掘和分析潜客线索,助力商机高效转化
关于我们
品牌动态
手机推送消息已经成为app必备的一项功能,通过app自带的手机推送消息可以轻松完成用户订单信息、app推广信息等消息的推送,是app运营必备的一项工具,也是增强用户黏性,提升app用户忠诚度的重要手段。如果app还没有接入消息推送功能,在此推荐一款免费的SDK产品——MobPushSDK,只需要将SDK植入app就能迅速集成消息推送功能,具体的接入流程如下:
一、获取AppKey
二、下载SDK
下载解压后,如下图:
目录结构
(1)Sample:演示Demo。
(2)SDK:集成项目时,只需导入此文件夹即可。具体说明在里面的2个文件夹:
Required:必要的依赖库(必要)。
MobPush:MobPush和MobPushServiceExtension的静态库。
三、导入SDK
(1)手动下载SDK导入
解压下载的ZIP包,将解压后的SDK添加到项目中。
注意:该步骤中添加时,请选择“Creategroupsforanyaddedfolders”单选按钮组。如果你选择“Createfolderreferencesforanyaddedfolders”,一个蓝色的文件夹引用将被添加到项目并且将无法找到它的资源。
(2)pod导入
1、首先cd至项目的根目录,执行podsetup;
2、按需在Podfile文件中添加命令:
3、如果之前没有安装过,第一次使用请先执行
安装库:podinstall
如果之前已经安装过,那只需要再执行
更新库:podupdate
四、添加项目依赖库
必须添加的依赖库如下:
libc++.tbd
CoreLocation.framework
五、MobPush的初始化配置和功能接口。
5.1配置AppKey和AppSecret
在项目的Info.plist中添加2个字段:MOBAppKey和MOBAppSecret,对应的值是在mob.com官方申请的应用的AppKey和AppSecret。
在Info.plist配置Privacy–LocationWhenInUseUsageDescription权限以及AppTransportSecuritySettings。
证书里需要开通apns功能,然后在项目里设置,如下:
5.2推送配置(以下代码具有通用性,可直接粘贴使用)
在-(BOOL)application:(UIApplication*)applicationdidFinishLaunchingWithOptions:(NSDictionary*)launchOptions中进行推送配置即可。
引入头文件:
#import
调用方法:
//设置推送环境
#ifdefDEBUG
[MobPushsetAPNsForProduction:NO];
#else
[MobPushsetAPNsForProduction:YES];
#endif
//MobPush推送设置(获得角标、声音、弹框提醒权限)
MPushNotificationConfiguration*configuration=[[MPushNotificationConfigurationalloc]init];
configuration.types=MPushAuthorizationOptionsBadge|MPushAuthorizationOptionsSound|MPushAuthorizationOptionsAlert;
[MobPushsetupNotification:configuration];
5.3功能接口调用
所有的功能接口都在MobPush.h中。
目前的MobPush的推送机制是:当应用在前台时,维持与推送服务器的长连接,实时接收推送消息;当应用在后台时,通过苹果APNs推送通知。
当应用处于前台,通过监听@“MobPushDidReceiveMessageNotification”服务,即可收到所有通知或者自定义消息的回调(应用处于后台不可接收该回调)。另外:点击通知栏消息也可以收到该回调。
先引入头文件:
再调用方法:
[[NSNotificationCenterdefaultCenter]addObserver:selfselector:@selector(didReceiveMessage:)name:MobPushDidReceiveMessageNotificationobject:nil];
收到的消息数据可能是:1、UDP自定义消息,2、APNs,3、本地通知,4、点击推送消息。根据不同的类型做相应显示即可,具体例子如下:
//收到通知回调
-(void)didReceiveMessage:(NSNotification*)notification
{
MPushMessage*message=notification.object;
switch(message.messageType)
caseMPushMessageTypeCustom:
{//自定义消息
}
break;
caseMPushMessageTypeAPNs:
{//APNs回调
if([UIApplicationsharedApplication].applicationState==UIApplicationStateActive)
{//前台
else
{//后台
caseMPushMessageTypeLocal:
{//本地通知回调
NSString*body=message.notification.body;
NSString*title=message.notification.title;
NSString*subtitle=message.notification.subTitle;
NSIntegerbadge=message.notification.badge;
NSString*sound=message.notification.sound;
NSLog(@"收到本地通知:{\nbody:%@,\ntitle:%@,\nsubtitle:%@,\nbadge:%ld,\nsound:%@,\n}",body,title,subtitle,badge,sound);
caseMPushMessageTypeClicked:
NSLog(@"clickthemessage!!!!!!!!!!!!");
default:
推送打开指定链接页面
如果开发者想要对通知消息进行点击跳转到H5页面的操作,可以在开发者管理后台配置url额外字段。
推送打开指定应用内指定页面
1.如果开发者想要对通知消息进行点击跳转到app内指定页面的操作,可以在开发者管理后台打开配置开关和参数设置。
Scheme地址:为开发者自定义的控制器路径。
传递参数:为跳转控制器的初始化参数。
引入头文件
#import
#pragmamark---实现分类的2个方法---
点击推送-场景还原路径,必须跟上面的Scheme地址保持一致
+(NSString*)MobPushPath
return@"path/xxxViewController";
点击推送-场景还原页面参数,params为开发者上面配置的参数
-(instancetype)initWithMobPushScene:(NSDictionary*)params