1. 程式人生 > >Android不顯示開機向導和開機氣泡

Android不顯示開機向導和開機氣泡

[] dismiss save 記錄 this bee 指正 move rem

修改好的代碼下載地址:
https://github.com/Vico-H/Launcher

  • 不顯示開機向導


    修改Launcher2.java的代碼
    (文件位置: /alps/packages/apps/Launcher2/src/com/android/launcher2/Launcher.java)
    網站查看源碼:
    https://www.androidos.net.cn/android/6.0.1_r16/xref/packages/apps/Launcher2/src/com/android/launcher2/Launcher.java

Launcher2.java部分源碼如下:

······
public void showFirstRunWorkspaceCling() {
        // Enable the clings only if they have not been dismissed before
        if (isClingsEnabled() &&
                !mSharedPrefs.getBoolean(Cling.WORKSPACE_CLING_DISMISSED_KEY, false) &&//此處false改為true
                !skipCustomClingIfNoAccounts() ) {
            // If we're not using the default workspace layout, replace workspace cling
            // with a custom workspace cling (usually specified in an overlay)
            // For now, only do this on tablets
            if (mSharedPrefs.getInt(LauncherProvider.DEFAULT_WORKSPACE_RESOURCE_ID, 0) != 0 &&
                    getResources().getBoolean(R.bool.config_useCustomClings)) {
                // Use a custom cling
                View cling = findViewById(R.id.workspace_cling);
                ViewGroup clingParent = (ViewGroup) cling.getParent();
                int clingIndex = clingParent.indexOfChild(cling);
                clingParent.removeViewAt(clingIndex);
                View customCling = mInflater.inflate(R.layout.custom_workspace_cling, clingParent, false);
                clingParent.addView(customCling, clingIndex);
                customCling.setId(R.id.workspace_cling);
            }
            initCling(R.id.workspace_cling, null, false, 0);
        } else {
            removeCling(R.id.workspace_cling);
        }
    }
    public void showFirstRunAllAppsCling(int[] position) {
        // Enable the clings only if they have not been dismissed before
        if (isClingsEnabled() &&
                !mSharedPrefs.getBoolean(Cling.ALLAPPS_CLING_DISMISSED_KEY, false)) {//此處false改為true
            initCling(R.id.all_apps_cling, position, true, 0);
        } else {
            removeCling(R.id.all_apps_cling);
        }
    }
    public Cling showFirstRunFoldersCling() {
        // Enable the clings only if they have not been dismissed before
        if (isClingsEnabled() &&
                !mSharedPrefs.getBoolean(Cling.FOLDER_CLING_DISMISSED_KEY, false)) {//此處false改為true
            return initCling(R.id.folder_cling, null, true, 0);
        } else {
            removeCling(R.id.folder_cling);
            return null;
        }
    }
······

修改如下:

-   !mSharedPrefs.getBoolean(Cling.WORKSPACE_CLING_DISMISSED_KEY, false) &&
+   !mSharedPrefs.getBoolean(Cling.WORKSPACE_CLING_DISMISSED_KEY, true) &&
-   !mSharedPrefs.getBoolean(Cling.ALLAPPS_CLING_DISMISSED_KEY, false)) 
+   !mSharedPrefs.getBoolean(Cling.ALLAPPS_CLING_DISMISSED_KEY, true)) 
-   !mSharedPrefs.getBoolean(Cling.FOLDER_CLING_DISMISSED_KEY, false)) 
+   !mSharedPrefs.getBoolean(Cling.FOLDER_CLING_DISMISSED_KEY, true)) 
  • 不顯示開機氣泡


    有個需求是開機不要下面這個圖片所示的氣泡
    技術分享圖片

修改Launcher3.java的代碼
(文件位置: /alps/packages/apps/Launcher3/src/com/android/launcher3/Launcher.java)
網站查看源碼:
https://www.androidos.net.cn/android/6.0.1_r16/xref/packages/apps/Launcher3/src/com/android/launcher3/Launcher.java

Launcher3.java部分源碼如下:

······
protected void onCreate(Bundle savedInstanceState) {
        ······
        if (shouldShowIntroScreen()) {
                    showIntroScreen();
                } else {
                    showFirstRunActivity();
                    showFirstRunClings();//註釋此行即可
                }
}
······

將下面的直接的這行註釋掉就不會有開機氣泡了

-    showFirstRunClings();
+    //showFirstRunClings();


本人還是初涉Android,文章用於記錄,如有錯誤望指正!!!


Android不顯示開機向導和開機氣泡