App端用户收到的告警信息推送时,您可以自定义开发并设置指定的URL跳转地址,实现用户点击告警信息推送,即可跳转至报警信息的详情页。该功能仅在自有品牌项目下的自有App可以设置,且目前暂时仅支持安卓设备端。
配置跳转地址
- 登录生活物联网控制台。
- 进入产品的人机交互页面。
- 在左侧导航栏,单击设备告警。
- 单击新建告警规则。
- 在新建告警对话框中,填入开发好的url。说明 目前仅自有App支持告警信息推送指定跳转自定义地址,云智能App暂不支持。
目前只支持华为,小米,oppo和vivo手机,暂不支持三星和谷歌手机。
- 单击确定完成配置。
自有App开发
- Android App在点击推送通知时,可跳转到指定的
activity
;推送的扩展字段包含iotId
和openPath
字段。 - iOS App收到的推送扩展字段包含
iotId
和openPath
字段,iOS 开发可根据openPath
判断打开哪个页面。{ "iotId":"hb6E********B000000", "openPath":"com.aliyun.iot.NotifyTestFirstActivity" }
SDK升级
目前暂时仅支持安卓侧离线推送接收扩展字段依赖 App 端SDK升级。
推送SDK版本依赖:com.aliyun.iot.aep.sdk:push:1.0.6.8
离线跳转页面需要继承自BaseNotifyClickActivity,类名路径必须跟后台推送的类名一致。如后台传的类名是com.aliyun.iot.NotifyTestFirstActivity ,APP端全类名必须是com.aliyun.iot.NotifyTestFirstActivity,重新onMessage方法在onMessage方法中获取数据例子如下:
public class NotifyTestFirstActivity extends BaseNotifyClickActivity {
private static final String TAG = "NotifyTestFirstActivity";
private final static String PRE_NOTIFY = "NotifyTestFirstActivity容测试通知点击界面内: ";
public static TextView mTextView;
@Override
protected void onCreate(Bundle bundle) {
super.onCreate(bundle);
setContentView(R.layout.activity_notify_clicked);
mTextView = findViewById(R.id.text);
mTextView.setText(PRE_NOTIFY);
ILog.d(TAG, "onCreate isPushInit = " + PushInitStatus.getInstance().isInitPush);
}
@Override
public void onMessage(Intent intent) {
runOnUiThread(() -> {
if (intent != null) {
String body = intent.getStringExtra(AgooConstants.MESSAGE_BODY);//拿到三方通道托管弹窗消息内容
ILog.d(TAG, "onMessage : " + body);
mTextView.setText(PRE_NOTIFY + body);
}
});
}
}