Java Android-无法在服务屏幕上显示警报对话框

Java Android-无法在服务屏幕上显示警报对话框,java,android,android-alertdialog,Java,Android,Android Alertdialog,我想提醒对话框,可以只打开手机时,手机锁定,并出现在设备上。 这是我的密码: Service.java: public static void popupDialog() { Handler h = new Handler(context.getMainLooper()); h.post(new Runnable() { @Override public void run() { if (CustomMainActivity

我想提醒对话框,可以只打开手机时,手机锁定,并出现在设备上。 这是我的密码:

Service.java:

public static void popupDialog()
{
    Handler h = new Handler(context.getMainLooper());
    h.post(new Runnable() {
        @Override
        public void run() {
            if (CustomMainActivity.mWindow != null)
            {
                     CustomMainActivity.mWindow.addFlags(WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON
                    | WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED
                    | WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON
                    | WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
            }
            final View view = View.inflate(context.getApplicationContext(),R.layout.popup, null);
            final AlertDialog.Builder builder1 = new AlertDialog.Builder(context)
                .setCancelable(true)
                .setView(view);
            final AlertDialog alertDialog = builder1.create();
            final ImageButton Imageback = (ImageButton) view.findViewById(R.id.Imageback);
            Imageback.setOnClickListener( new OnClickListener() {
                @Override
                public void onClick(View v) {
                        alertDialog.dismiss();
                }
            });
            alertDialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ERROR);
            alertDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
            alertDialog.show();
        }
    });
}
@Override
public void onCreate(Bundle savedInstanceState)
{
        mWindow = getWindow();
.
.
.
}
CustomMainActivity.java:

public static void popupDialog()
{
    Handler h = new Handler(context.getMainLooper());
    h.post(new Runnable() {
        @Override
        public void run() {
            if (CustomMainActivity.mWindow != null)
            {
                     CustomMainActivity.mWindow.addFlags(WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON
                    | WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED
                    | WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON
                    | WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
            }
            final View view = View.inflate(context.getApplicationContext(),R.layout.popup, null);
            final AlertDialog.Builder builder1 = new AlertDialog.Builder(context)
                .setCancelable(true)
                .setView(view);
            final AlertDialog alertDialog = builder1.create();
            final ImageButton Imageback = (ImageButton) view.findViewById(R.id.Imageback);
            Imageback.setOnClickListener( new OnClickListener() {
                @Override
                public void onClick(View v) {
                        alertDialog.dismiss();
                }
            });
            alertDialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ERROR);
            alertDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
            alertDialog.show();
        }
    });
}
@Override
public void onCreate(Bundle savedInstanceState)
{
        mWindow = getWindow();
.
.
.
}

现在,虽然它可以在手机上显示,但仍然无法将设备唤醒。有什么建议吗?

你的问题不清楚。你到底想要实现什么???请清理房间scenario@ZahanSafallwa我编辑了我的问题。