vendredi 9 décembre 2022

Android studio notification unable to display

package com.example.twapp.Observer;

import android.app.Notification;
import android.app.NotificationChannel;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.os.Build;
import android.widget.Button;

import androidx.annotation.RequiresApi;
import androidx.appcompat.app.AppCompatActivity;

import com.example.twapp.Notify;
import com.example.twapp.R;
import com.example.twapp.testReceiver;

public class ConcreteObserverA extends AppCompatActivity implements Observer {
    NotificationManager notificationManager;
    NotificationChannel channel;
    Context context = this;
    private String observerState;

    private ConcreteSubject concreteSubject; // 持有指向 ConcreteSubject 物件的 reference

    public ConcreteObserverA(ConcreteSubject concreteSubject) {
        this.concreteSubject = concreteSubject;
    }

    @RequiresApi(api = Build.VERSION_CODES.O)
    @Override
    public void update() {

        setContentView(R.layout.activity_notify);
        notificationManager = (NotificationManager) this.getSystemService(NOTIFICATION_SERVICE);
        channel=new NotificationChannel("ID","com.example.twapp",NotificationManager.IMPORTANCE_HIGH);
        notificationManager.createNotificationChannel(channel);
        Intent intent = new Intent(context,testReceiver.class);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP);
        PendingIntent pendingIntent = PendingIntent.getBroadcast(context,1,intent,PendingIntent.FLAG_UPDATE_CURRENT);

        Notification.Builder builder = new Notification.Builder(context);
        builder.setSmallIcon(R.mipmap.ic_launcher)
                .setContentTitle("訊息")
                .setContentText("跌倒啦~")
                .setChannelId("ID");

        Notification notification=builder.build();
        notificationManager.notify(1,notification);


    }
}

I use the Observer pattern to implement notifications, but I have problems when my concreateObserver wants to print notifications.

When I delete this method. Simple print is feasible.Because I can't think of a way. So come to ask everyone android studio master.

Aucun commentaire:

Enregistrer un commentaire