تابستون داره تموم میشه ها، فرصت‌ها محدودن کلی آفر جذاب در کمپین تابستون🔥👇
۰ ثانیه
۰ دقیقه
۰ ساعت
۲ ابوالفضل
علت ست نشدن لارج ایکون
جامعه جاوا (اندروید) ایجاد شده در ۲۲ اردیبهشت ۱۴۰۰

سلام خسته نباشید

ببخشید من میخوام روی نوتیفیکشن ایکون برنامه رو ست کنم به بیت مپ هم تبدیلش میکنم ولی موقع اجرا نشون داده نمیشه!

 

View view1 = findViewById(R.id.Btn);
        view1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity.this,MainActivity.class);
                intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_CLEAR_TASK);
                PendingIntent pendingIntent = PendingIntent.getActivity(MainActivity.this,0,intent,0);
                NotificationCompat.Builder builder = new NotificationCompat.Builder(MainActivity.this,"myapp")
                        .setSmallIcon(R.drawable.ic_baseline_sports_football_24)
                        .setLargeIcon(BitmapFactory.decodeResource(getResources(),R.drawable.ic_vvvv))
                        .setContentTitle(getString(R.string.app_name))
                        .setContentIntent(pendingIntent)
                        .setContentText("This is a Test Noti");
                NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
                notificationManager.notify(new Random().nextInt(),builder.build());
            }
        });

 

اینم کده ولی ایکونی که دارم نمایش داده نمیشه

سلام وقت بخیر ابولفضل 

مشکلی در کد ندیدم .

موردی که هست نوتیف نشون داده نمیشه یا فقط ایکون؟

اگر ایکون بررسی کن ic_vvvv  از نوع v۲۴ نباشه .

پوریا شفیعی ۲۲ اردیبهشت ۱۴۰۰، ۱۷:۲۹

سلام مشکل ست نشدن لارج آیکون به صورت زیر حل میشه

ابتدا برای تبدیل وکتور به بیت مپ یک متد به شکل زیر تعریف کنید 

public static Bitmap getBitmapFromVectorDrawable(Context context, int drawableId) {
    Drawable drawable = ContextCompat.getDrawable(context, drawableId);
    Bitmap bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(),
            drawable.getIntrinsicHeight(), Bitmap.Config.ARGB_8888);
    Canvas canvas = new Canvas(bitmap);
    drawable.setBounds(0, 0, canvas.getWidth(), canvas.getHeight());
    drawable.draw(canvas);
    return bitmap;
}

و  س‍‍‍پس این متد را در کلاس بیلدر خود معرفی کنید
 

.setLargeIcon(getBitmapFromVectorDrawable(this, R.drawable.ic_music_player))

 

arash parsa ۱۱ شهریور ۱۴۰۰، ۱۲:۵۳