Android 桌面小图标消息通知
针对华为手机,新开发的app不会在桌面显示未读消息条数,除了在主配置文件中声明相关权限外,还应在新消息来时调用下面的方法,当num为0时,不显示未读数量。
/**
* 设置角标
*/
public void setBadgeNum(int num,Context context) {
try {
Bundle bunlde = new Bundle();
String manufacturer = Build.MANUFACTURER;
//这个字符串可以自己定义,例如判断华为就填写huawei,魅族就填写meizu
//package,代表项目包名
//class,代表项目启动activity
//num,代码未读消息条数
if ("huawei".equalsIgnoreCase(manufacturer)) {
bunlde.putString("package", "cn.magicwindow.shipping");
bunlde.putString("class", "cn.magicwindow.shipping.activity.SplashActivity");
bunlde.putInt("badgenumber", num);
context.getContentResolver().call(Uri.parse("content://com.huawei.android.launcher.settings/badge/"), "change_badge", null, bunlde);
}
} catch (Exception e) {
Log.e("setBadgeNum","Exception: "+e);
}
}