我有一個應用程序可以進行USSD調用,但是在USSD調用之後,我得到了一個包含結果的對話框給用戶。如何以編程方式關閉/取消/關閉系統對話框(Android)
我知道可以關閉這個對話框,因爲「USSD Checker」應用程序這樣做,他們從USSD獲得響應而不顯示用戶對話框。
具有的功能displayMMIComplete
是完成後的USSD通話,展現出TYPE_SYSTEM_DIALOG。在PhoneUtils.java他們所使用的對話框是這樣的:
AlertDialog newDialog = new AlertDialog.Builder(context)
.setMessage(text)
.setPositiveButton(R.string.ok, null)
.setCancelable(true)
.create();
newDialog.getWindow().setType(
WindowManager.LayoutParams.TYPE_SYSTEM_DIALOG);
newDialog.getWindow().addFlags(
WindowManager.LayoutParams.FLAG_DIM_BEHIND);
newDialog.show();
然後,我不能隨便發一些標誌予以駁回。而且我不能使用那個導入它的系統類。
而當我做X連續調用出現X對話框關閉用戶,我的應用程序將需要做連續調用,無論如何編程方式關閉此係統對話框?
順便說一句,這個代碼沒有按」即使我將android.permission.SYSTEM_ALERT_WINDOW添加到AndroidManifest.xml中,我仍然適用於我。 'android.view.WindowManager $ BadTokenException:無法添加窗口[email protected] - 此窗口類型的權限被拒絕 – 2013-09-27 12:23:18
http://stackoverflow.com/q/4344523/1065835。它的工作原理 – 2013-09-27 12:51:14