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

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

1.  अपने प्रोजेक्ट में 'mipmap' फ़ोल्डर में एक नया आइकन जोड़ें।

<img src="/android-notification-customisation-change-android-app-icon-1.webp" alt="एंड्रॉइड स्टूडियो में mipmap फ़ोल्डर संरचना दिखाते हुए स्क्रीनशॉट जिसमें एक नई आइकन फ़ाइल जोड़ी गई है"/>

2. एक नई एक्टिविटी क्लास बनाएं।

```java
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);

    }
}
```

3. **आइकन बदलने के लॉजिक के साथ एक क्लास बनाएं।**

```java
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
            );
        }
    }
}
```

4. **अपनी NotificationServiceExtension क्लास में, पुश नोटिफिकेशन प्राप्त करने/हटाने के लिए ट्रैकिंग लागू करें।**

```java
@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);
		}
	}
}
```

5. **हो गया!**

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

<video src="/android-notification-customisation-change-android-app-icon-2.webm" title="एनिमेटेड प्रदर्शन जो दिखाता है कि सूचनाएं प्राप्त होने या हटाए जाने पर ऐप आइकन गतिशील रूप से बदलता है" autoplay loop muted playsinline />