सामग्री पर जाएं

एंड्रॉइड ऐप आइकन बदलें

नोटिफिकेशन सेंटर में सूचनाओं की संख्या के आधार पर एप्लिकेशन आइकन बदलने के लिए, नीचे दिए गए चरणों का पालन करें।

  1. अपने प्रोजेक्ट में ‘mipmap’ फ़ोल्डर में एक नया आइकन जोड़ें।
एंड्रॉइड स्टूडियो में mipmap फ़ोल्डर संरचना दिखाते हुए स्क्रीनशॉट जिसमें एक नई आइकन फ़ाइल जोड़ी गई है
  1. एक नई एक्टिविटी क्लास बनाएं।
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivityAlias extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
  1. आइकन बदलने के लॉजिक के साथ एक क्लास बनाएं।
import android.content.ComponentName;
import android.content.Context;
import android.content.pm.PackageManager;
public class MyPushReceiver {
public static void changeAppIcon(Context context, int count) {
PackageManager pm = context.getPackageManager();
if (count > 0) {
pm.setComponentEnabledSetting(
new ComponentName(context, "com.example.app.MainActivityAlias"),
PackageManager.COMPONENT_ENABLED_STATE_ENABLED,
PackageManager.DONT_KILL_APP
);
pm.setComponentEnabledSetting(
new ComponentName(context, "com.example.app.MainActivity"),
PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
PackageManager.DONT_KILL_APP
);
} else {
pm.setComponentEnabledSetting(
new ComponentName(context, "com.example.app.MainActivity"),
PackageManager.COMPONENT_ENABLED_STATE_ENABLED,
PackageManager.DONT_KILL_APP
);
pm.setComponentEnabledSetting(
new ComponentName(context, "com.example.app.MainActivityAlias"),
PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
PackageManager.DONT_KILL_APP
);
}
}
}
  1. अपनी NotificationServiceExtension क्लास में, पुश नोटिफिकेशन प्राप्त करने/हटाने के लिए ट्रैकिंग लागू करें।
@Override
public boolean onMessageReceived(final PushMessage message) {
super.onMessageReceived(message);
if (!message.isSilent()) {
/**
* इस उदाहरण में, सूचनाओं की एक यादृच्छिक संख्या बस इंगित की गई है।
* आपको सूचनाओं की गिनती के लिए लॉजिक स्वयं लागू करना होगा।
*/
int notificationCount = 1;
if (getApplicationContext() != null) {
MyPushReceiver.changeAppIcon(getApplicationContext(), notificationCount);
}
}
}
/**
* नोटिफिकेशन सेंटर से पुश नोटिफिकेशन हटाने को ट्रैक करने के लिए पुशवूश कॉलबैक।
*/
@Override
protected void onMessageCanceled(PushMessage message) {
super.onMessageCanceled(message);
if (!message.isSilent()) {
/**
* इस उदाहरण में, सूचनाओं की एक यादृच्छिक संख्या बस इंगित की गई है।
* आपको सूचनाओं की गिनती के लिए लॉजिक स्वयं लागू करना होगा।
*/
int notificationCount = 0;
if (getApplicationContext() != null) {
MyPushReceiver.changeAppIcon(getApplicationContext(), notificationCount);
}
}
}
  1. हो गया!

डिवाइस पर यह कैसा दिखता है इसका उदाहरण

Anchor link to