বিষয়বস্তুতে যান

অ্যান্ড্রয়েড অ্যাপ আইকন পরিবর্তন করুন

নোটিফিকেশন সেন্টারে নোটিফিকেশনের সংখ্যার উপর ভিত্তি করে অ্যাপ্লিকেশন আইকন পরিবর্তন করতে, নীচের পদক্ষেপগুলি অনুসরণ করুন।

  1. আপনার প্রজেক্টের ‘mipmap’ ফোল্ডারে একটি নতুন আইকন যোগ করুন।
অ্যান্ড্রয়েড স্টুডিওতে একটি নতুন আইকন ফাইলসহ mipmap ফোল্ডারের গঠন দেখানো স্ক্রিনশট
  1. একটি নতুন Activity ক্লাস তৈরি করুন।
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);
}
}
}
/**
* নোটিফিকেশন সেন্টার থেকে পুশ নোটিফিকেশন অপসারণ ট্র্যাক করার জন্য Pushwoosh কলব্যাক।
*/
@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