这篇文章主要介绍“android怎么实现系统信息推送”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“android怎么实现系统信息推送”文章能帮助大家解决问题。
1、判断是否是启动App,而非刷新界面执行该方法
if (!window.name) {
window.name = 'test';
InfoPush(data.data.length)
}
2、系统信息推送主要代码,设置所要显示的内容、图标等信息,在华为手机上测试有效,其它手机并不清楚效果如何
//系统信息推送
function InfoPush(len) {
if (plus.os.name == 'Android') {
//当前版本号
var SystemVersion = plus.os.version;
var Context = plus.android.importClass("android.content.Context");
var main = plus.android.runtimeMainActivity();
var NotificationManager = plus.android.importClass("android.app.NotificationManager");
var nm = main.getSystemService(Context.NOTIFICATION_SERVICE)
// Notification build 要android api16以上才能使用(4.1.2以上)
var Notification = null;
if (compareVersion('4.1.1', SystemVersion) == true) {
Notification = plus.android.importClass("android.app.Notification");
} else {
Notification = plus.android.importClass("android.support.v4.app.NotificationCompat");
}
if (Notification) {
var NotifyID = 1;
var mNotification = new Notification.Builder(main);
var Intent = plus.android.importClass("android.content.Intent");
var PendingIntent = plus.android.importClass("android.app.PendingIntent");
var intent = new Intent(main, main.getClass());
var pendingIntent = PendingIntent.getActivity(main, 0, intent, PendingIntent.FLAG_CANCEL_CURRENT);
var r = plus.android.importClass("android.R");
// mNotification.setOngoing(true); //是否固定
mNotification.setContentTitle("ZZApp")
mNotification.setContentText("你有" + len + "新信息")
mNotification.setSmallIcon(r.drawable.ic_notification_overlay)
mNotification.setTicker("ZZApp")
mNotification.setContentIntent(pendingIntent); //点击后转跳
mNotification.setAutoCancel(true)//点击后删除
var mNb = mNotification.build()
nm.notify(NotifyID, mNb);
}
}
}
3、比较按照手机的版本大小,通过plus.android.importClass(name)方法导入相关的类对象,并无太大的作用
/**
* 比较两个版本大小
* 比较版本大小,如果新版本nowVersion大于旧版本OldResourceVersion则返回true,否则返回false
*/
function compareVersion(OldVersion, nowVersion) {
if (!OldVersion || !nowVersion || OldVersion == '' || nowVersion == '') {
return false;
}
//第二份参数 是 数组的最大长度
var OldVersionA = OldVersion.split(".", 4);
var nowVersionA = nowVersion.split(".", 4);
for (var i = 0; i < OldVersionA.length && i < nowVersionA.length; i++) {
var strOld = OldVersionA[i];
var numOld = parseInt(strOld);
var strNow = nowVersionA[i];
var numNow = parseInt(strNow);
//小版本到高版本
if (numNow > numOld
//||strNow.length>strOld.length
) {
return true;
} else if (numNow < numOld) {
return false;
}
}
//如果是版本 如 1.6 - 1.6.1
if (nowVersionA.length > OldVersionA.length && 0 == nowVersion.indexOf(OldVersion)) {
return true;
}
};
效果图:

关于“android怎么实现系统信息推送”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注天达云行业资讯频道,小编每天都会为大家更新不同的知识点。