Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Unable to add window -- token null is not for an application from Service

I have read many questions like this but none of them seemed to address my problem.

The problem lies with:

 AlertScreen ad = new AlertScreen(SensorListenerService.this);

in my Service class:

public class SensorListener extends Service implements SensorEventListener {

public int onStartCommand(Intent intent, int flags, int startId) {
    startForeground(Process.myPid(), new Notification());

    AlertScreen ad = new AlertScreen(SensorListener.this); //problem
    ad.show();
    
    return START_STICKY;
}
...

It calls my AlertScreen class:

public class AlertScreen extends AlertDialog {

public AlertScreen(Context context) {
    super(context);
}
...

What LogCat has to say:

LocCat

Could anyone shed some light on the problem?

like image 776
C_B Avatar asked Mar 19 '23 16:03

C_B


1 Answers

You cannot show Dialogs from a Service context.

I suggest you to open an Activity that actually shows the dialog, or take a look at this answer to learn how to show system alerts.

https://stackoverflow.com/a/19269931/1725088

like image 64
kupsef Avatar answered Apr 09 '23 18:04

kupsef