目录
概述:
badge插件作用是在APP图标上显示数字标签,提醒用户有新信息或代办事项。Android系统和IOS系统的实现方式是不同的,IOS允许直接更改APP图标的数字标签而Android只能发通知(在通知栏显示)。
JS调用方法
1、导入插件require(“cordova!de.appplant.cordova.plugin.badge”)。
2、插件提供了五个方法:hasPermission(检查是否具备更改APP数字标签的权限,仅限IOS)、registerPermission(注册更改APP数字标签的权限,仅限IOS)、set(设置数字标签的数目或者通知的数目)、get(获取数字标签或者通知的数目)、clear(清除数字标签或者通知)。
以下是详细的JS代码,调用都是在按钮的点击事件完成的,开发时根据需要修改调整。包括成功回调、失败回调也要替换成自己需要的处理。
define(function(require){ var $ = require("jquery"); require("cordova!de.appplant.cordova.plugin.badge"); var Model = function(){ this.callParent(); }; var myapp = {}; myapp.callback = function(result) { alert(result); }; function callback(message) { setTimeout(function() { alert(message); }); }; Model.prototype.hasPermissionClick = function(event){ cordova.plugins.notification.badge.hasPermission(myapp.callback,myapp); }; Model.prototype.registerPermissionClick = function(event){ cordova.plugins.notification.badge.registerPermission(myapp.callback,myapp); }; Model.prototype.setBadgeClick = function(event){ cordova.plugins.notification.badge.set(10,myapp.callback,myapp); }; Model.prototype.getBadgeClick = function(event){ cordova.plugins.notification.badge.get(myapp.callback,myapp); }; Model.prototype.clearBadgeClick = function(event){ cordova.plugins.notification.badge.clear(myapp.callback,myapp); }; Model.prototype.chageTitleClick = function(event){ var title = "新消息"; cordova.plugins.notification.badge.configure({ title: title }); callback('设置标题为 \n"' + title + '"'); }; return Model; });
注意事项
1、开发跨平台的应用,要注意IOS和Android不同的响应形式,更改图标的数字标签和通知栏的通知区别较大。
2、数字标签和通知栏的通知都需要在合适的位置写处理(调用clear方法)让其消失,否则角标或者通知会一直存在。
评一波