通知分类操作:
NotificationSDK.classify(Query query, QueryCallback callback);
传入查询输入Query,以及通知分类异步回调接口 callback,分类结果以异步回调的方式返回。
Query构造方式:
- 从
StatusBarNotification对象构建StatusBarNotification sbn; Query query = new Query.NotificationBuilder().notification(sbn).build(); - 从JSON格式字符串构建
使用SDK提供的NotificationUtils.java工具类将StatusBarNotification转为JSON格式字符串再进行构建。JSONObject jsonObject = NotificationUtils.convertNotificationToJSONObject(context, notification); Query query = new Query.JsonBuilder().notificationInJson(json.toString());
QueryCallback返回数据:
- 回调返回分类结果
QueryCallback.onSuccess(QueryResult result); QueryResult.getCategory()为分类类别; QueryResult.getImportance()为重要程度 QueryResult.getId()为通知id
用户行为:
NotificationSDK.takeAction(String action, Long notificationId, Integer importance);
传入用户行为action,部分接口需要传入通知IDnotificationId (QueryResult中的ID),用户设置的重要度级别importance(0-4)。
用户行为具体包括以下情况:
显式操作:
a."set_app_category":
设置一个应用的一个分类的重要度,需要传入notificationId,importance参数)。
b."set_app":
设置一个应用的重要度,需要传入notificationId,importance参数。
c."set_notification":
设置一条通知的重要度,需要传入notificationId,importance参数。
d."reset_app_category":
移除一个应用的一个分类的重要度设置,需要传入notificationId参数。
e."reset_app":
移除一个应用的重要度设置,需要传入notificationId参数。
f."reset_all":
移除所有设置。隐式操作:
a."display":
展示一条通知,用户看到一条通知,需要传入notificationId参数。
b."click":
点击一条通知,需要传入notificationId参数。
c."remove"
删除一条通知,需要传入notificationId参数。
d."remove_all"
删除所有通知。