在service中彈出dialog:
Builder builder=new Builder(getApplicationContext());
builder.setTitle("Title");
builder.setMessage("This is message");
builder.setNegativeButton("確認", null);
Dialog dialog=builder.create();
dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
dialog.show();
dialog的顯示是需要依附於一個activity,如果需要在servcie中顯示需要把dialog設置成一個系統的dialog,即全局 性質的提示框,所以只要手機處於開機狀態,無論它現在處於何種界面之下,只要調用dialog.show(),就會彈出提示框來。需要在show() 調用之前添加以下代碼:
dialog.getWindow().setType((WindowManager.LayoutParams.TYPE_SYSTEM_ALERT));
注意:使用系統的Dialog需要在清單文件中添加權限,否則不會顯示出來
android.permission.SYSTEM_ALERT_WINDOW