رونمایی از پخته‌ترین و کاربردی‌ترین محصولات آموزشی سون‌لرن با کلی آفرهای ویژه🔥
۰ ثانیه
۰ دقیقه
۰ ساعت
۲ سعید امیراحمدی
کار نکردن نوتیفیکیشن
محسن موحد حل شده توسط محسن موحد

package com.sevenlearn.notification_tutorial2;

import android.app.Application;
import android.app.NotificationChannel;
import android.app.NotificationManager;

public class App extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        NotificationManager notificationManager= (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
        NotificationChannel notificationChannel= new NotificationChannel("myApp","defaultChannel",NotificationManager.IMPORTANCE_HIGH);
        notificationChannel.setDescription("test");
        if (notificationManager!=null)
            notificationManager.createNotificationChannel(notificationChannel);
    }
}
-----------

package com.sevenlearn.notification_tutorial2;

import androidx.appcompat.app.AppCompatActivity;
import androidx.core.app.NotificationCompat;
import androidx.viewpager.widget.ViewPager;

import android.app.Notification;
import android.app.NotificationManager;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity implements View.OnClickListener {
    private View v;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

    }

    @Override
    public void onClick(View v) {
        switch (v.getId()){
            case R.id.button2:
               // Toast.makeText(this, "test", Toast.LENGTH_SHORT).show();
                Notification notification= new NotificationCompat.Builder(this,"myapp")
                        .setSmallIcon(android.R.drawable.stat_notify_chat)
                        .setLargeIcon(BitmapFactory.decodeResource(getResources(),R.mipmap.ic_launcher))
                        .setContentTitle("My Notification")
                        .setContentText("this is my first notification ")
                        .build();
                NotificationManager notificationManager= (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
                notificationManager.notify(1001,notification);
                break;

        }

    }
}

----------

کد هارو به اینصورت نوشتم طبق ویدیو آموزشی ولی نوتیفیکشن نمایش داده نشد - توست هم گذاشتم که ببینم باتن عمل میکنه توست کار کرد

سلام،

نام کانال را در NotificationCompat.Builder بصورت myApp بنویسید.

بهترین پاسخ
محسن موحد ۱۷ دی ۱۴۰۲، ۰۵:۵۲

سلام من توسعه دهنده ی اندروید هستم. مشکل سورس کد شما در extends خود از کلاس اپلیکیشن وارث بری کردید، به همین دلیل نوتیفکیشن شما نمایش داده نمی‌شود. 

شما باید از کلاس  ارث بری کنیدAppcompatActivity وباید شما فایل xml را در ولاس خود با دستورات لازم شنارسایی کنید و باید این پروسه شنارسایی را انجام دهید

امیر حسین یعقوبی ۱۹ دی ۱۴۰۲، ۱۹:۱۱