Android正在启动的提示框相关代码,屏蔽掉就不会有了:

frameworks/base/services/core/java/com/android/server/am/UserController.java

final class UserController {

} else {

quiet = false;

}

-                    mInjector.sendPreBootBroadcast(userId, quiet,

-                            () -> finishUserUnlockedCompleted(uss));

+                 //  mInjector.sendPreBootBroadcast(userId, quiet,

+                 //           () -> finishUserUnlockedCompleted(uss));

} else {

finishUserUnlockedCompleted(uss);

}

./frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java

@Override

public void showBootMessage(final CharSequence msg, final boolean always) {

Log.v(TAG, "Tim_Boot showBootMessage Android is starting...");

mHandler.post(new Runnable() {

@Override public void run() {

if (mBootMsgDialog == null) {

int theme;

if (mContext.getPackageManager().hasSystemFeature(FEATURE_TELEVISION)) {

theme = com.android.internal.R.style.Theme_Leanback_Dialog_Alert;

} else {

theme = 0;

}

mBootMsgDialog = new ProgressDialog(mContext, theme) {

// This dialog will consume all events coming in to

// it, to avoid it trying to do things too early in boot.

@Override public boolean dispatchKeyEvent(KeyEvent event) {

return true;

}

@Override public boolean dispatchKeyShortcutEvent(KeyEvent event) {

return true;

}

@Override public boolean dispatchTouchEvent(MotionEvent ev) {

return true;

}

@Override public boolean dispatchTrackballEvent(MotionEvent ev) {

return true;

}

@Override public boolean dispatchGenericMotionEvent(MotionEvent ev) {

return true;

}

@Override public boolean dispatchPopulateAccessibilityEvent(

AccessibilityEvent event) {

return true;

}

};

if (mContext.getPackageManager().isUpgrade()) {

mBootMsgDialog.setTitle(R.string.android_upgrading_title);

} else {

mBootMsgDialog.setTitle(R.string.android_start_title);

}

mBootMsgDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);

mBootMsgDialog.setIndeterminate(true);

mBootMsgDialog.getWindow().setType(

WindowManager.LayoutParams.TYPE_BOOT_PROGRESS);

mBootMsgDialog.getWindow().addFlags(

WindowManager.LayoutParams.FLAG_DIM_BEHIND

| WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN);

mBootMsgDialog.getWindow().setDimAmount(1);

WindowManager.LayoutParams lp = mBootMsgDialog.getWindow().getAttributes();

lp.screenOrientation = ActivityInfo.SCREEN_ORIENTATION_NOSENSOR;

mBootMsgDialog.getWindow().setAttributes(lp);

mBootMsgDialog.setCancelable(false);

mBootMsgDialog.show();

}

mBootMsgDialog.setMessage(msg);

}

});

}

更多推荐