在 Android 7 之前,我的来电储物柜应用程序运行良好,我隐藏了来电对话框,但在 Android 8 来电对话框中始终显示在上面的 Activity 中。
int LAYOUT_FLAG;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
LAYOUT_FLAG = WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY;
} else {
LAYOUT_FLAG = WindowManager.LayoutParams.TYPE_SYSTEM_ERROR;
}
WindowManager.LayoutParams params = new WindowManager.LayoutParams(WindowManager.LayoutParams.MATCH_PARENT,
WindowManager.LayoutParams.MATCH_PARENT, LAYOUT_FLAG, 263464,
WindowManager.LayoutParams.WRAP_CONTENT);
mPrefs = PreferenceManager.getDefaultSharedPreferences(this);
winMangr = (WindowManager) getApplicationContext().getSystemService(Context.WINDOW_SERVICE);
getWindow().setAttributes(params);
wraprView = new RelativeLayout(getBaseContext());
View.inflate(this, mLayout, wraprView);
winMangr.addView(wraprView, params);
这里有一些截图
安卓 7
安卓 8