我无法在我的Android工作室开发的应用程序上放置徽章。
实际上,我想添加徽章数量,这些数量等于我从Google Cloud Messaging服务获得的通知数量,并且在阅读通知后,徽章计数应该从应用图标中消失。
所以为了实现它,经过长时间的冲浪后,我从git hub登陆了一个名为ShortcutBadger的库,它将提供在app图标上手动显示徽章计数的功能。所以我在我的项目中尝试了它,代码如下所示: -
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
答案 0 :(得分:1)
我得到了解决方案实际上我没有允许獾阅读或写入我的手机,这是索尼爱立信所以你需要在manifest.xml中粘贴以下权限并解决问题宾果游戏......
<uses-permission android:name="com.sonyericsson.home.permission.BROADCAST_BADGE" />