badge  یا علامت برجسته که در اندروید بروی آیکان نمایش داده می شود .معمولا کاربردی که این علامت برجسته داره این که نرم افزار های چت از اون برای نمایش دادن تعداد پیام های خوانده نشده استفاده می شه. من با کمی گوگل کردن فهمیدم که این خاصیت در برند های مختلف شیوه و مجوز خاص خودشو داره

مثلا برای دستگاه های سونی به صورت :


1 : نخست این مجوز داخل Manifest اضافه کنید  :

    <!--for sony-->
    <uses-permission android:name="com.sonyericsson.home.permission.BROADCAST_BADGE"/>
    <uses-permission android:name="com.sonymobile.home.permission.PROVIDER_INSERT_BADGE"/>

 2 : اینتنت (Intent) برودکست به BadgerReceiver را بسازید :

    Intent intent = new Intent();

    intent.setAction("com.sonyericsson.home.action.UPDATE_BADGE");
    intent.putExtra("com.sonyericsson.home.intent.extra.badge.ACTIVITY_NAME", "com.yourdomain.yourapp.MainActivity");
    intent.putExtra("com.sonyericsson.home.intent.extra.badge.SHOW_MESSAGE", true);
    intent.putExtra("com.sonyericsson.home.intent.extra.badge.MESSAGE", "99");
    intent.putExtra("com.sonyericsson.home.intent.extra.badge.PACKAGE_NAME", "com.yourdomain.yourapp");

    sendBroadcast(intent);

 3 : انجام شد ، به همین راحتی علامت برجسته ما ساخته شد .

 4:  و برای پاک کردنش کافیه  این برودکست دوباره ارسال کنید :

 
     intent.putExtra("com.sonyericsson.home.intent.extra.badge.SHOW_MESSAGE", false); 

خب چیزی الان باید متوجه شده باشین، این که  من الان فقط برای دیوایس های سونی گفتم ، برای htc و samsung و .. مجوز ها متفاوت است. شما برای هر دیواس باید این برودکست جداگونه بسازید  و قاعدتا وقت گیر . من یک لایبری پیدا کرده که کار مارو خیلی راحت میکنه .
در این لینک » https://github.com/leolin310148/ShortcutBadger  که همین این کار در 2 خط کد انجام داده  :

 نخست کتاب خونه   ShortcutBadger به پروژتون اضافه کنید

     
    dependencies {
        compile "me.leolin:ShortcutBadger:1.1.16@aar"
    } 

سپس برای نمایش badge کافه این متد فراخوانی کنید :

     
  int badgeCount = 1; // عددی که بروی آیکان نمایش خواهد داده شد
  ShortcutBadger.applyCount(context, badgeCount);  

و برای پاک کردن کافیه این متد فراخوانی کنید :

 
   ShortcutBadger.removeCount(context);

و تمام به همین راحتی !!