mit,da£a::::ordered,noauto da alloc^liscard 0 0 /dev/lik)ck/mmcbl.k()pS -'cache exi4 nv5n(>sukijiodev;noaiiirie,barrier==l, ioumai async commiudata^onlerec! 0 0 /dev^lock/mracbikOpB /efs ext4 rvv,nosuid,nodev,noaiime,barrier-'4 joiuiial_asyiK; commi.i.,daur---ordered 0 0 /sys/kemel/debtig /sp/kemel/debug debugfs nv.relati'me 0 f) /dev/fuse /mni/'sdcard fus Iier 0 0 /dev/bk)ck/voldi'l 79:17 /irmi/extSdcard \1ai
[0049] nv^irsyncaiosuidvaodevvnexecjisoai'ime.nodiratime.uid^iOOO^gid^iOSS.fmask^OOOS, dmask^0002,allow3tim?^020,c?depag?;^437ii?cto:rsei^ ;isQ8859-Ushorfliame^m ixed,utOi,enOrs::::remount-ro 0 0
[0050] S204,解析所述代碼文本中的各行代碼,篩選包含掛載目錄的至少一行行代碼。
[0051] 本步驟中,逐行解析所述代碼文本中的各行代碼,可從中篩選出包含掛載目錄的 至少一行行代碼。具體實現中,本步驟的解析過程具體可包括如下步驟A-C :
[0052] A、分別判斷所述代碼文本中的各行代碼是否滿足掛載條件。
[0053] 其中,所述掛載條件可包括:包含文件存儲格式的字符串,且包含掛載標識的字 符串,且未包含系統標識的字符串。所述文件存儲格式的字符串可用于表示支持該文件存 儲格式的掛載設備,例如:假設某Android終端掛載有SD卡,則所述代碼文本中存在包含 SD卡所支持的文件存儲格式的字符串的行代碼,其文件存儲格式的字符串可包括但不限于 "vfat"、"exfat"、"/mnt"、"fuse"。所述掛載標識的字符串可用于表示存在掛載設備,例如: 針對存在掛載設備的某Android終端,所述代碼文件中包含掛載標識的字符串,該掛載標 識的字符串可以為"/dev/block/voId"。系統標識的字符串為系統生成的字符串,通常用于 表示非掛載信息,例如:針對Android終端,該系統標識的字符串可以包括"/mnt/secure"、 "/mnt/asec"、"/mnt/obb"、"/dev/mapper"。按照本實施例的步驟S203所示例子,本步驟需 要分別判斷所述代碼文本中的各行代碼中是否滿足掛載條件,即判斷各行代碼是否包含諸 如 " vf at "、" exfat "、" /mnt "、" fuse " 的字符串,且包含 " /dev/b lock/vo I d " 字符串,且未包 含諸如 "/mnt/secure"、"/mnt/asec"、"/mnt/obb"、"/dev/mapper" 的字符串。
[0054] B、將滿足掛載條件的行代碼確定為包含掛載目錄的行代碼。
[0055] 步驟B中,將滿足掛載條件的行代碼確定為包含掛載目錄的行代碼。按照本實施 例的步驟S403所示例子,步驟B可確定兩行行代碼滿足掛載條件,分別為:
[0056] /dev/fuse /rant/sdcard &s n'yio i odev,M欲ime,:user一id::。^ her 0 0
[0057] 以及 /dev/block/vold/179; 17 /nint/exiScicard vfat rvv4ii^yiH"aiosuid,nodevviexecji〇3t3me,!iodiratime,uid::::1000,gid ::::1023JHiask'~0002. dmask::::0002,aiiow__utime:::0020,codepage ::::cp437Jochai*set.::::iso8859-ixed,utf8,enO.rs ::::remou.nt-ro 0 0
[0058] 步驟B可將上述兩行行代碼確定為包含掛載目錄的行代碼。
[0059] C、從所述代碼文本中篩選包含掛載目錄的至少一行行代碼。
[0060] 按照本實施例中的例子,步驟C可將步驟B所確定的兩行行代碼從所述代碼文本 中篩選出來。
[0061] S205,從所述包含掛載目錄的至少一行行代碼中提取所述終端的至少一個掛載目 錄。
[0062] 本步驟中,可按照字符串之間的分隔符,對包含掛載目錄的行代碼進行字符串劃 分處理,從中提取出掛載目錄。例如:按照本實施例中的例子,針對其中一行包含掛載目錄 的行代碼,如下:
[0063] /dev/fuse/mnt/sdcardfus rw, nosuid, nodev, relatime, user_id = 1023, group_ id = 1023, default_permissions, allow_ot herOO
[0064] 按照空格為分隔符,第二個字符串滿足SD卡的掛載目錄格式,則提取第二個字符 串為掛載目錄,即"/mnt/sdcard"。同理,針對另一行包含掛載目錄的行代碼,可提取的掛載 目錄為 "/mnt/extSdcard"。
[0065] 本實施例的步驟S203-步驟S205可以為圖1所示實施例的步驟S102的具體細化 步驟。
[0066] S206,調用所述終端的內置目錄獲取接口,獲取所述終端的內置目錄。
[0067] 其中,內置目錄獲取接口可用于獲取終端內置的存儲設備的掛載目錄。例如:針對 Android 終端,其內置目錄獲取接 口可為 "Environment. getExternalStorageDirectory () ,getAbsolutePath () ",本步驟調用此接口,可獲取所述終端的內置目錄為"/mnt/sdcard"。
[0068] S207,將所述至少一個掛載目錄中與所述內置目錄相同的掛載目錄,確定為內置 掛載目錄,將所述至少一個掛載目錄中除所述內置掛載目錄之外的掛載目錄,確定為外置 掛載目錄。
[0069] 按照本實施例中的例子,"/mnt/sdcard"為內置掛載目錄,"/mnt/extSdcard"為外 置掛載目錄。
[0070] S208,將所述內置掛載目錄對應的掛載設備的屬性信息設為內置存儲,將所述外 置掛載目錄對應的掛載設備的屬性信息設為外置存儲。
[0071] 本實施例中,所述掛載設備的屬性信息可以包括但不限于:內置存儲或外置存儲。 其中,屬性信息為內置存儲的掛載設備,表明該掛載設備為所述終端內置的存儲設備,即不 可插拔的存儲設備。按照本實施例中的例子,"/mnt/sdcard"對應的掛載設備的屬性信息 為內置存儲,"/mnt/extSdcard"對應的掛載設備的屬性信息為外置存儲。
[0072] 本實施例的步驟S206-步驟S208可以為圖1所示實施例的步驟S103的具體細化 步驟。
[0073] 本發明實施例通過解析終端的掛載目錄文件獲得終端的至少一個掛載目錄,并通 過對掛載目錄的分析檢測,獲得終端的至少一個掛載設備的屬性信息,從而可便于對終端 的掛載設備進行訪問和管理,提升終端的性能。
[0074] 請參見圖3,為本發明實施例提供的又一種終端信息的檢測方法的流程圖;該方 法可包括以下步驟S301-步驟S307。
[0075] S301,查找待檢測終端的系統目錄文件。
[0076] S302,從所述終端的系統目錄文件中讀取所述終端的掛載目錄文件。
[0077] S303,獲取所述掛載目錄文件的代碼文本。
[0078] S304,解析所述代碼文本中的各行代碼,篩選包含掛載目錄的至少一行行代碼。
[0079] S305,從所述包含掛載目錄的至少一行行代碼中提取所述終端的至少一個掛載目 錄。
[0080] 本實施例的步驟S301-步驟S305可參見圖2所示實施例的步驟S201-步驟S205, 在此不贅述。
[0081] S306,調用文件讀接口,對所述至少一個掛載目錄中各掛載目錄分別進行讀操作。
[0082] 文件讀接口為一通用接口,其可為"File. canRead",可用于判斷文件是否支持讀 操作。本步驟可調用文件讀接口,對所述至少一個掛載目錄中各掛載目錄分別進行讀操作。 按照圖2所示實施例中的例子,本步驟調用文件讀接口,對"/mnt/sdcard"進行讀操作為 File file = new File("/mnt/sdcard");以及對"/mnt/extSdcard" 進行讀操作為 File file = new File( "/mnt/extSdcard,')。
[0083] S307,將讀操作成功的掛載目錄對應的掛載設備的屬性信息設為可讀存儲,將讀 操作失敗的掛載目錄對應的掛載設備的屬性設為不可讀存儲。
[0084] 所述掛載設備的屬性信息可以包括:是否可讀存儲。其中,屬性信息為可讀存儲的 掛載設備,表明該掛載設備支持讀操作,可以讀取該掛載設備的媒體資源,包括但不限于圖 片、文檔、多媒體等資源。屬性信息為不可讀存儲的掛載設備,表明該掛載設備不支持讀操 作,無法讀取該掛載設備的媒體資源。
[0085] 本實施例的步驟S306-步驟S307可以為圖1所示實施例的步驟S103的具體細化 步驟。
[0086] 本發明實施例通過解析終端的掛載目錄文件獲得終端的至少一個掛載目錄,并通 過對掛載目錄的分析檢測,獲得終端的至少一個掛載設備的屬性信息,從而可便于對終端 的掛載設備進行訪問和管理,提升終端的性能。
[0087] 請參見圖4,為本發明實施例提供的又一種終端信息的檢測方法的流程圖;該方 法可包括以下步驟S401-步驟S407。
[0088] S401,查找待檢測終端的系統目錄文件。
[0089] S402,從所述終端的系統目錄文件中讀取所述終端的掛載目錄文件。
[0090] S403,獲取所述掛載目錄文件的代碼文本。
[0091 ] S404,解析所述代碼文本中的各行代碼,篩選包含掛載目錄的至少一行行代碼。
[0092] S405,從所述包含掛載目錄的至少一行行代碼中提取所述終端的至少一個掛載目 錄。
[0093] 本實施例的步驟S401-步驟S405可參見圖2所示實施例的步驟S201-步驟S205, 在此不贅述。
[0094] S406,調用文件寫接口,對所述至少一個掛載目錄