Merge pull request #92 from jaassoon/master
add support for Huawei Launchers.
This commit is contained in:
commit
a09f15b396
|
|
@ -27,5 +27,11 @@
|
|||
|
||||
<!--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" />
|
||||
|
||||
|
||||
</manifest>
|
||||
|
|
|
|||
|
|
@ -32,6 +32,7 @@ public final class ShortcutBadger {
|
|||
BADGERS.add(SonyHomeBadger.class);
|
||||
BADGERS.add(XiaomiHomeBadger.class);
|
||||
BADGERS.add(AsusHomeLauncher.class);
|
||||
BADGERS.add(HuaweiHomeBadger.class);
|
||||
// BADGERS.add(LGHomeBadger.class);
|
||||
// BADGERS.add(SamsungHomeBadger.class);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,42 @@
|
|||
package me.leolin.shortcutbadger.impl;
|
||||
|
||||
import android.content.ComponentName;
|
||||
import android.content.Context;
|
||||
import android.net.Uri;
|
||||
import android.os.Bundle;
|
||||
import android.util.Log;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import me.leolin.shortcutbadger.Badger;
|
||||
import me.leolin.shortcutbadger.ShortcutBadgeException;
|
||||
|
||||
/**
|
||||
* @author Jason Ling
|
||||
*/
|
||||
public class HuaweiHomeBadger implements Badger {
|
||||
|
||||
private static final String LOG_TAG = HuaweiHomeBadger.class.getSimpleName();
|
||||
|
||||
@Override
|
||||
public void executeBadge(Context context, ComponentName componentName, int badgeCount) throws ShortcutBadgeException {
|
||||
String launcherClassName = componentName.getClassName();
|
||||
if (launcherClassName == null) {
|
||||
Log.d(LOG_TAG, "Main activity is null");
|
||||
return;
|
||||
}
|
||||
Bundle localBundle = new Bundle();
|
||||
localBundle.putString("package", context.getPackageName());
|
||||
localBundle.putString("class", launcherClassName);
|
||||
localBundle.putInt("badgenumber", badgeCount);
|
||||
context.getContentResolver().call(Uri.parse("content://com.huawei.android.launcher.settings/badge/"), "change_badge", null, localBundle);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> getSupportLaunchers() {
|
||||
return Arrays.asList(
|
||||
"com.huawei.android.launcher"
|
||||
);
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue