我无法对通过 android studio 开发的应用程序进行徽章计数。
实际上,我想添加徽章计数,该数量等于我从 Google Cloud Messaging 服务收到的通知数量,并且在阅读通知后,徽章计数应该从应用程序图标中消失。
为了实现这一目标,经过长时间的冲浪,我从 git hub 登陆到一个名为 ShortcutBadger 的库,它将提供手动在应用程序图标上显示徽章计数的功能。所以我在我的项目中尝试了它,代码如下所示:-
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
try {
int badgeCount = 4;
ShortcutBadger.setBadge(getApplicationContext(), badgeCount);
System.out.println("setbadge");
} catch (ShortcutBadgeException e) {
Toast.makeText(getApplicationContext(), e.getMessage(), Toast.LENGTH_SHORT).show();
}
}
}
可以在这里找到 Shortcut Badger jar 文件:- its from github click me
现在,在运行该项目时,我没有遇到任何异常,它在我的索尼 xperia 上运行得很好,但我没有在我的应用程序图标上看到任何徽章计数为 4。
我的终端消息显示如下:-
04-11 11:40:37.353 19207-19207/com.badger.badge D/dalvikvm﹕ Late-enabling CheckJNI
04-11 11:40:38.503 19207-19207/com.badger.badge I/System.out﹕ setbadge
04-11 11:40:38.543 19207-19207/com.badger.badge D/libEGL﹕ loaded /system/lib/egl/libGLES_android.so
04-11 11:40:38.553 19207-19207/com.badger.badge D/libEGL﹕ loaded /system/lib/egl/libEGL_adreno200.so
04-11 11:40:38.563 19207-19207/com.badger.badge D/libEGL﹕ loaded /system/lib/egl/libGLESv1_CM_adreno200.so
04-11 11:40:38.563 19207-19207/com.badger.badge D/libEGL﹕ loaded /system/lib/egl/libGLESv2_adreno200.so
04-11 11:40:38.623 19207-19207/com.badger.badge I/Adreno200-EGLSUB﹕ <ConfigWindowMatch:2078>: Format RGBA_8888.
04-11 11:40:38.643 19207-19207/com.badger.badge D/memalloc﹕ /dev/pmem: Mapped buffer base:0x5c830000 size:26263552 offset:22495232 fd:64
04-11 11:40:38.643 19207-19207/com.badger.badge E/﹕ Can't open file for reading
04-11 11:40:38.643 19207-19207/com.badger.badge E/﹕ Can't open file for reading
04-11 11:40:38.653 19207-19207/com.badger.badge D/OpenGLRenderer﹕ Enabling debug mode 0
04-11 11:40:38.733 19207-19207/com.badger.badge D/memalloc﹕ /dev/pmem: Mapped buffer base:0x5e34a000 size:37519360 offset:33751040 fd:67
最佳答案
我得到了解决方案,实际上我没有授予獾读取或写入我的索尼爱立信手机的权限,因此您需要将以下权限粘贴到您的manifest.xml中并解决问题宾果...
<uses-permission android:name="com.sonyericsson.home.permission.BROADCAST_BADGE" />
关于java - 快捷方式 Badger 库不会在 Android Studio 中的应用程序图标上显示徽章计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29574793/