使用Scheme进行指定页面跳转
iOS 客户端代码配置
请在需要跳转到的指定VC中实现以下代码,其中mlink://com.mob.mobpush.link为还原路径标识
#import <MobPush/MobPush.h>
#pragma mark ---场景还原---
//点击推送场景还原路径
+ (NSString *)MobPushPath
{
return @"mlink://com.mob.mobpush.link";
}
//点击推送场景还原页面参数
- (instancetype)initWithMobPushScene:(NSDictionary *)params
{
if (self = [super init])
{
//self.params = params;
}
return self;
}
Android 客户端代码配置
在AndroidMainfest中配置对应指定落地页的activity
<activity android:name="com.markliu.pushdemo.MainActivity2" android:exported="true" android:launchMode="singleTask">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data
android:host="com.mob.mobpush.link"
android:scheme="mlink" />
</intent-filter>
</activity>
MobPush后台推送配置
通过REST API![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/854b733bea2c37486007c393b7d4bcfe.png)
通过通知回调,处理对应参数进行跳转
iOS回调方法设置
//添加通知监听,监听后可通过对应方法获取到推送参数
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(didReceiveMessage:) name:MobPushDidReceiveMessageNotification object:nil];
Android 端回调(安卓端厂商消息,需要通过解析intent处理,可参考解析参数最佳实现)
此消息回调只能处理TCP消息,厂商消息需要解析intent
MobPushReceiver mobPushReceiver = new MobPushReceiver() {
@Override
public void onCustomMessageReceive(Context context, MobPushCustomMessage message) {
//接收到自定义消息(透传消息)
message.getMessageId();//获取任务ID
message.getContent();//获取推送内容
}
@Override
public void onNotifyMessageReceive(Context context, MobPushNotifyMessage message) {
//接收到通知消息
message.getMobNotifyId();//获取消息ID
message.getMessageId();//获取任务ID
message.getTitle();//获取推送标题
message.getContent();//获取推送内容
// Log.i(TAG, "onCreate: aaaa");
System.out.println("-------------JsonSchemeShouyeoncreate我收到了回调:"+"11111111");
// System.out.println("-------------markLiujsonOncrearte:"+ message.getContent());
}
@Override
public void onNotifyMessageOpenedReceive(Context context, MobPushNotifyMessage message) {
//通知被点击事件
message.getMobNotifyId();//获取消息ID
message.getMessageId();//获取任务ID
message.getTitle();//获取推送标题
message.getContent();//获取推送内容
System.out.println("-------------JsonSchemeShouyeoncreate打印查看:"+"11111111");
}
@Override
public void onTagsCallback(Context context, String[] tags, int operation, int errorCode) {
//标签操作回调
//tags: RegistrationId已添加的标签
//operation: 0获取标签 1设置标签 2删除标签
//errorCode: 0操作成功 非0操作失败
}
@Override
public void onAliasCallback(Context context, String alias, int operation, int errorCode) {
//别名操作回调
//alias: RegistrationId对应的别名
//operation: 0获取别名 1设置别名 2删除别名
//errorCode: 0操作成功 非0操作失败
}
};
MobPush.addPushReceiver(mobPushReceiver);
解析参数最佳实现