你好我有android应用程序,我需要添加badger到app启动器我在互联网上搜索并找到了这个库
compile 'me.leolin:ShortcutBadger:1.1.4@aar'
正在运行,但不适用于我在三星和HTC上尝试过的所有设备,但它在夏威夷或索尼没有工作,我怎么能在每台Android设备上运行?
这是我的代码
int badgeCount = 0;
try {
badgeCount = Integer.parseInt(bundle.getString("badge"));
} catch (NumberFormatException e) {
e.printStackTrace();
}
try {
ShortcutBadger.applyCount(getApplicationContext(), badgeCount);
} catch (Exception e) {
e.printStackTrace();
Log.d("BADGE","BADGE");
}
然后我尝试添加这样的显示权限,也没有工作
<!--for Samsung-->
<uses-permission android:name="com.sec.android.provider.badge.permission.READ"/>
<uses-permission android:name="com.sec.android.provider.badge.permission.WRITE"/>
<!--for htc-->
<uses-permission android:name="com.htc.launcher.permission.READ_SETTINGS"/>
<uses-permission android:name="com.htc.launcher.permission.UPDATE_SHORTCUT"/>
<!--for sony-->
<uses-permission android:name="com.sonyericsson.home.permission.BROADCAST_BADGE"/>
<uses-permission android:name="com.sonymobile.home.permission.PROVIDER_INSERT_BADGE"/>
<!--for apex-->
<uses-permission android:name="com.anddoes.launcher.permission.UPDATE_COUNT"/>
<!--for solid-->
<uses-permission android:name="com.majeur.launcher.permission.UPDATE_BADGE"/>
<!--for huawei-->
<uses-permission android:name="com.huawei.android.launcher.permission.CHANGE_BADGE"/>
<uses-permission android:name="com.huawei.android.launcher.permission.READ_SETTINGS"/>
<uses-permission android:name="com.huawei.android.launcher.permission.WRITE_SETTINGS"/>
<!--for ZUK-->
<uses-permission android:name="android.permission.READ_APP_BADGE"/>
<!--for OPPO-->
<uses-permission android:name="com.oppo.launcher.permission.READ_SETTINGS"/>
<uses-permission android:name="com.oppo.launcher.permission.WRITE_SETTINGS"/>
<!--for EvMe-->
<uses-permission android:name="me.everything.badger.permission.BADGE_COUNT_READ"/>
<uses-permission android:name="me.everything.badger.permission.BADGE_COUNT_WRITE"/>
答案 0 :(得分:1)
我如何才能让每个Android设备都能正常工作?
你不能。
如何在主屏幕上显示内容的决定取决于主屏幕的开发者,而不是你。 Android有数百种不同的主屏幕实现,包括预安装和用户安装。没有必要为应用开发者提供任何类型的API来在启动器图标上设置徽章。
有些人会有这样的API并会记录下来。有些人会有这样的内部使用的API,像你试图使用的库的开发人员可能会尝试帮助你使用这些内部API。但是很多主屏幕都不会有这种API。
您的主要选择是:
停止尝试完全处理启动器图标徽章。
定制您的图书馆为您提供的服务。
编写您自己的主屏幕并尝试强制用户使用您的主屏幕,以便您可以使用启动器图标徽章。