开发者

Cannot find symbol NOTIFICATION_SERVICE?

开发者 https://www.devze.com 2023-03-23 00:38 出处:网络
package com.test.app; import android.app.Notification; import android.app.NotificationManager; import android.app.PendingIntent;
package com.test.app;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;

publ开发者_Go百科ic class runOnBoot extends BroadcastReceiver{

   @Override
   public void onReceive(Context context, Intent intent) {

          NotificationManager nm = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
   }
}

When I try to build the package, it says

compile:
    [javac] Compiling 2 source files to /home/mrburns/Desktop/myapp/bin/classes
    [javac] /home/mrburns/Desktop/myapp/src/com/test/app/runOnBoot.java:14: cannot find symbol
    [javac] symbol  : variable NOTIFICATION_SERVICE
    [javac] location: class runOnBoot
    [javac]           NotificationManager nm = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
    [javac]                                                                                           ^
    [javac] 1 error

BUILD FAILED


I found calling this way works:

NotificationManager nm = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);


This should be Context.NOTIFICATION_SERVICE:

NotificationManager nm = (NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);


For those using Kotlin, the following line performs the same functionality as the other answers here.

val nm = context?.getSystemService(NOTIFICATION_SERVICE) as NotificationManager


NotificationManager mNotifyMgr = (NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE);


You should better try this

 NotificationManager nm = (NotificationManager)getSystemService(getApplicationContext().NOTIFICATION_SERVICE);
0

精彩评论

暂无评论...
验证码 换一张
取 消