leolin310148 / ShortcutBadger

An Android library supports badge notification like iOS in Samsung, LG, Sony and HTC launchers.
Other
7.35k stars 1.34k forks source link

Badge in Android not working React Native #387

Open solomen5555 opened 5 months ago

solomen5555 commented 5 months ago

My code.

package com.linkgroup;

import android.content.ComponentName; import android.content.Context; import android.content.Intent; import android.content.pm.PackageManager; import me.leolin.shortcutbadger.Badger; import me.leolin.shortcutbadger.ShortcutBadger; import com.facebook.react.bridge.ReactApplicationContext; import com.facebook.react.bridge.ReactContextBaseJavaModule; import com.facebook.react.bridge.ReactMethod; import android.util.Log;

public class BadgeModule extends ReactContextBaseJavaModule {

private final ReactApplicationContext reactContext;
private Boolean applyAutomaticBadger;
private ComponentName componentName;
private static final String LOG_TAG = "BadgeAndroid";

public BadgeModule(ReactApplicationContext reactContext) {
    super(reactContext);
    this.reactContext = reactContext;
}

@Override
public String getName() {
    return "BadgeAndroid";
}

@ReactMethod
public void setBadge(int number) {
     Log.d(LOG_TAG, "setting count: " + number);
     Context context = getReactApplicationContext();
    if (null == componentName) {
        componentName = context.getPackageManager().getLaunchIntentForPackage(context.getPackageName()).getComponent();
    }
    ShortcutBadger.applyCount(context, number);
    Log.d(LOG_TAG, "setting count666: " + number);
}

}

Can you give me a solution ?