索尼的Xperia Home也可以做到这一点。我已经在这里写过博客,但是下面是重要的部分。Sony设备使用名为的类BadgeReciever。
com.sonyericsson.home.permission.BROADCAST_BADGE在清单文件中声明权限:
广播一Intent到BadgeReceiver:
Intent intent = new Intent();
intent.setAction("com.sonyericsson.home.action.UPDATE_BADGE");
intent.putExtra("com.sonyericsson.home.intent.extra.badge.ACTIVITY_NAME", "com.yourdomain.yourapp.MainActivity");
intent.putExtra("com.sonyericsson.home.intent.extra.badge.SHOW_MESSAGE", true);
intent.putExtra("com.sonyericsson.home.intent.extra.badge.MESSAGE", "99");
intent.putExtra("com.sonyericsson.home.intent.extra.badge.PACKAGE_NAME", "com.yourdomain.yourapp");
sendBroadcast(intent);
做完了 一旦Intent在广播发射器应显示在您的应用程序图标徽章。
要再次删除徽章,只需发送新的广播,这次将其SHOW_MESSAGE设置为false:
intent.putExtra("com.sonyericsson.home.intent.extra.badge.SHOW_MESSAGE", false);
我已经排除了有关如何使答案简短的详细信息,但是在博客中都可以找到。可能对某人来说很有趣。
我还在此处发布了一个单独的SO问题,一旦获得允许,我将在此处添加完整答案(需要10个信誉才能在8小时内回答我自己的问题)。