1. 概述
i.MX8 Android Automotive12 BSP 默認設備上電初始化過程中會檢測 U 盤設備並初始化 U 盤,創建 Alarms、Download、Audiobooks、Pictures、Movies 和 Podcasts 等一些文件夾。這對於不需要這些文件的用戶來說,是比較煩惱的。故此本篇文章介紹如何去掉 i.MX8 Android Automotive12 BSP 的默認 U 盤初始化。
2. 默認現象
準備一個空的 U 盤,在 Windows 上打開,顯示如下所示:
插入設備,設備上電啟動後,使用 ls 命令可以看到 U 盤下多了一些文件夾,如下所示:
3. 代碼修改
i.MX8 Android Automotive12 BSP 默認設備上電初始化過程中會檢測 U 盤設備並初始化 U 盤,創建 Alarms、Download、Audiobooks、Pictures、Movies 和 Podcasts 等一些文件夾。這對於不需要這些文件的用戶來說,是比較煩惱的。故此本篇文章介紹如何去掉 i.MX8 Android Automotive12 BSP 的默認 U 盤初始化。
2. 默認現象
準備一個空的 U 盤,在 Windows 上打開,顯示如下所示:
插入設備,設備上電啟動後,使用 ls 命令可以看到 U 盤下多了一些文件夾,如下所示:
3. 代碼修改
跟蹤 U 盤掛載過程代碼,找到 MediaProvider.java 里包含了 U 盤文件初始化代碼,去掉相關代碼,如下所示:
packages/providers/MediaProvider/src/com/android/providers/media/MediaProvider.java 文件,如下所示:
diff --git a/src/com/android/providers/media/MediaProvider.java b/src/com/android/providers/media/MediaProvider.java
index 6a4eede..4c62001 100644
--- a/src/com/android/providers/media/MediaProvider.java
+++ b/src/com/android/providers/media/MediaProvider.java
@@ -9338,8 +9338,8 @@ public class MediaProvider extends ContentProvider {
ForegroundThread.getExecutor().execute(() -> {
mExternalDatabase.runWithTransaction((db) -> {
- ensureDefaultFolders(volume, db);
- ensureThumbnailsValid(volume, db);
+ // ensureDefaultFolders(volume, db);
+ // ensureThumbnailsValid(volume, db);
return null;
});
4. 測試驗證
先把原 U 盤文件清空,設備代碼編譯燒錄後,把 U 盤插入設備,上電啟動成功後,使用 ls 命令查看,沒有其它文件夾生成,功能實現,如下所示:
至此完成 i.MX8 Android Automotive12 去掉系統啟動默認初始化 U 盤文件功能!
參考文獻:《Android_User's_Guide.pdf》
先把原 U 盤文件清空,設備代碼編譯燒錄後,把 U 盤插入設備,上電啟動成功後,使用 ls 命令查看,沒有其它文件夾生成,功能實現,如下所示:
至此完成 i.MX8 Android Automotive12 去掉系統啟動默認初始化 U 盤文件功能!
參考文獻:《Android_User's_Guide.pdf》
《Android_Quick_Start_Guide.pdf》
評論