1.一種搜索文件生成方法,其特征在于,所述方法包括:
獲取操作系統(tǒng)中的設(shè)置功能的第一級(jí)頁(yè)面的項(xiàng)目信息,所述項(xiàng)目信息包含對(duì)應(yīng)頁(yè)面中的各個(gè)設(shè)置項(xiàng)的搜索資源,所述搜索資源至少包括跳轉(zhuǎn)信息和路徑,所述跳轉(zhuǎn)信息中包含對(duì)應(yīng)的源文件的類名;
確定操作系統(tǒng)中的各個(gè)資源文件;
根據(jù)所述第一級(jí)頁(yè)面中的各個(gè)設(shè)置項(xiàng)的跳轉(zhuǎn)信息和路徑,以及所述各個(gè)資源文件,逐級(jí)確定所述設(shè)置功能中各級(jí)頁(yè)面的項(xiàng)目信息;
根據(jù)所述各級(jí)頁(yè)面的項(xiàng)目信息生成所述設(shè)置功能的搜索文件。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述第一級(jí)頁(yè)面中的各個(gè)設(shè)置項(xiàng)的跳轉(zhuǎn)信息和路徑,以及所述各個(gè)資源文件,逐級(jí)確定所述設(shè)置功能中各級(jí)頁(yè)面的項(xiàng)目信息,包括:
以所述第一級(jí)頁(yè)面中的各個(gè)設(shè)置項(xiàng)的搜索資源為初始的已確定資源,循環(huán)遍歷所述各個(gè)資源文件中的每一個(gè)資源文件,獲取所述資源文件的跳轉(zhuǎn)信息;
當(dāng)所述已確定資源中包含所述資源文件中的各個(gè)設(shè)置項(xiàng)對(duì)應(yīng)在所述設(shè)置功能中的上一級(jí)設(shè)置項(xiàng)的搜索資源時(shí),根據(jù)所述上一級(jí)設(shè)置項(xiàng)的路徑生成所述資源文件中的各個(gè)設(shè)置項(xiàng)的路徑;
根據(jù)所述資源文件中的各個(gè)設(shè)置項(xiàng)的路徑以及所述資源文件的跳轉(zhuǎn)信息,生成所述資源文件中的各個(gè)設(shè)置項(xiàng)的搜索資源;
將所述資源文件中的各個(gè)設(shè)置項(xiàng)的搜索資源添加入所述已確定資源。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述獲取所述資源文件的跳轉(zhuǎn)信息,包括:
判斷所述資源文件中是否包含所述資源文件的跳轉(zhuǎn)信息;
若判斷結(jié)果為所述資源文件中包含所述資源文件的跳轉(zhuǎn)信息,則從所述資源文件中獲取所述資源文件的跳轉(zhuǎn)信息;
若判斷結(jié)果為所述資源文件中不包含所述資源文件的跳轉(zhuǎn)信息,則查詢引用所述資源文件的目標(biāo)源文件,根據(jù)所述目標(biāo)源文件的繼承關(guān)系,確定所述目標(biāo)源文件的類名,根據(jù)所述目標(biāo)源文件的類名確定所述資源文件的跳轉(zhuǎn)信息。
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述根據(jù)所述上一級(jí)設(shè)置項(xiàng)的路徑生成所述資源文件中的各個(gè)設(shè)置項(xiàng)的路徑之前,還包括:
確定引用所述資源文件的目標(biāo)源文件的類名;
當(dāng)所述已確定資源中包含所述目標(biāo)源文件的類名時(shí),將所述已確定資源中包含所述目標(biāo)源文件的類名的搜索資源,確定為所述資源文件中的各個(gè)設(shè)置項(xiàng)對(duì)應(yīng)在所述設(shè)置功能中的上一級(jí)設(shè)置項(xiàng)的搜索資源。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述方法還包括:
當(dāng)所述已確定資源中不包含所述目標(biāo)源文件的類名時(shí),查詢所述目標(biāo)源文件的子類的類名;
當(dāng)所述已確定資源中包含所述子類的類名時(shí),將所述已確定資源中包含所述子類的類名的搜索資源,確定為所述資源文件中的各個(gè)設(shè)置項(xiàng)對(duì)應(yīng)在所述設(shè)置功能中的上一級(jí)設(shè)置項(xiàng)的搜索資源。
6.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述方法還包括:
當(dāng)所述已確定資源中不包含所述目標(biāo)源文件的類名,且所述目標(biāo)源文件的類名為Activity類的類名時(shí),分析所述目標(biāo)源文件的代碼,確定所述目標(biāo)源文件的新的類名,所述新的類名是所述Activity類下引用所述資源文件的Fragment類的類名;
當(dāng)所述已確定資源中包含所述新的類名時(shí),將所述已確定資源中包含所述新的類名的搜索資源,確定為所述資源文件中的各個(gè)設(shè)置項(xiàng)對(duì)應(yīng)在所述設(shè)置功能中的上一級(jí)設(shè)置項(xiàng)的搜索資源。
7.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述方法還包括:
當(dāng)所述已確定資源中不包含所述目標(biāo)源文件的類名,且所述目標(biāo)源文件的類名為intent類的類名時(shí),查詢所述intent類對(duì)應(yīng)的源文件的類名;
當(dāng)所述已確定資源中包含所述intent類對(duì)應(yīng)的源文件的類名時(shí),將所述已確定資源中包含所述intent類對(duì)應(yīng)的源文件的類名的搜索資源,確定為所述資源文件中的各個(gè)設(shè)置項(xiàng)對(duì)應(yīng)在所述設(shè)置功能中的上一級(jí)設(shè)置項(xiàng)的搜索資源。
8.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括:
獲取所述設(shè)置功能的各級(jí)頁(yè)面中的每個(gè)設(shè)置項(xiàng)對(duì)應(yīng)的配置信息,所述配置信息用于指示對(duì)應(yīng)的設(shè)置項(xiàng)在指定機(jī)型和/或指定場(chǎng)景中是否顯示;
根據(jù)所述配置信息,在所述設(shè)置項(xiàng)的搜索資源中設(shè)置對(duì)應(yīng)的配置參數(shù)。
9.一種搜索文件生成裝置,其特征在于,所述裝置包括:
信息獲取模塊,用于獲取操作系統(tǒng)中的設(shè)置功能的第一級(jí)頁(yè)面的項(xiàng)目信息,所述項(xiàng)目信息包含對(duì)應(yīng)頁(yè)面中的各個(gè)設(shè)置項(xiàng)的搜索資源,所述搜索資源至少包括跳轉(zhuǎn)信息和路徑,所述跳轉(zhuǎn)信息中包含對(duì)應(yīng)的源文件的類名;
文件確定模塊,用于確定操作系統(tǒng)中的各個(gè)資源文件;
信息生成模塊,用于根據(jù)所述第一級(jí)頁(yè)面中的各個(gè)設(shè)置項(xiàng)的跳轉(zhuǎn)信息和路徑,以及所述各個(gè)資源文件,逐級(jí)確定所述設(shè)置功能中各級(jí)頁(yè)面的項(xiàng)目信息;
文件生成模塊,用于根據(jù)所述各級(jí)頁(yè)面的項(xiàng)目信息生成所述設(shè)置功能的搜索文件。
10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述信息生成模塊,包括:
信息獲取子模塊,用于以所述第一級(jí)頁(yè)面中的各個(gè)設(shè)置項(xiàng)的搜索資源為初始的已確定資源,循環(huán)遍歷所述各個(gè)資源文件中的每一個(gè)資源文件,獲取所述資源文件的跳轉(zhuǎn)信息;
路徑生成子模塊,用于當(dāng)所述已確定資源中包含所述資源文件中的各個(gè)設(shè)置項(xiàng)對(duì)應(yīng)在所述設(shè)置功能中的上一級(jí)設(shè)置項(xiàng)的搜索資源時(shí),根據(jù)所述上一級(jí)設(shè)置項(xiàng)的路徑生成所述資源文件中的各個(gè)設(shè)置項(xiàng)的路徑;
資源生成子模塊,用于根據(jù)所述資源文件中的各個(gè)設(shè)置項(xiàng)的路徑以及所述資源文件的跳轉(zhuǎn)信息,生成所述資源文件中的各個(gè)設(shè)置項(xiàng)的搜索資源;
添加子模塊,用于將所述資源文件中的各個(gè)設(shè)置項(xiàng)的搜索資源添加入所述已確定資源。
11.根據(jù)權(quán)利要求10所述的裝置,其特征在于,所述信息獲取子模塊,包括:
判斷子模塊,用于判斷所述資源文件中是否包含所述資源文件的跳轉(zhuǎn)信息;
第一獲取子模塊,用于若判斷結(jié)果為所述資源文件中包含所述資源文件的跳轉(zhuǎn)信息,則從所述資源文件中獲取所述資源文件的跳轉(zhuǎn)信息;
第二獲取子模塊,用于若判斷結(jié)果為所述資源文件中不包含所述資源文件的跳轉(zhuǎn)信息,則查詢引用所述資源文件的目標(biāo)源文件,根據(jù)所述目標(biāo)源文件的繼承關(guān)系,確定所述目標(biāo)源文件的類名,根據(jù)所述目標(biāo)源文件的類名確定所述資源文件的跳轉(zhuǎn)信息。
12.根據(jù)權(quán)利要求10所述的裝置,其特征在于,所述信息生成模塊,還包括:
第一類名確定子模塊,用于在所述路徑生成子模塊根據(jù)所述上一級(jí)設(shè)置項(xiàng)的路徑生成所述資源文件中的各個(gè)設(shè)置項(xiàng)的路徑之前,確定引用所述資源文件的目標(biāo)源文件的類名;
第一資源確定子模塊,用于當(dāng)所述已確定資源中包含所述目標(biāo)源文件的類名時(shí),將所述已確定資源中包含所述目標(biāo)源文件的類名的搜索資源,確定為所述資源文件中的各個(gè)設(shè)置項(xiàng)對(duì)應(yīng)在所述設(shè)置功能中的上一級(jí)設(shè)置項(xiàng)的搜索資源。
13.根據(jù)權(quán)利要求12所述的裝置,其特征在于,所述信息生成模塊還包括:
第一類名查詢子模塊,用于當(dāng)所述已確定資源中不包含所述目標(biāo)源文件的類名時(shí),查詢所述目標(biāo)源文件的子類的類名;
第二資源確定子模塊,用于當(dāng)所述已確定資源中包含所述子類的類名時(shí),將所述已確定資源中包含所述子類的類名的搜索資源,確定為所述資源文件中的各個(gè)設(shè)置項(xiàng)對(duì)應(yīng)在所述設(shè)置功能中的上一級(jí)設(shè)置項(xiàng)的搜索資源。
14.根據(jù)權(quán)利要求12所述的裝置,其特征在于,所述信息生成模塊還包括:
第二類名確定子模塊,用于當(dāng)所述已確定資源中不包含所述目標(biāo)源文件的類名,且所述目標(biāo)源文件的類名為Activity類的類名時(shí),分析所述目標(biāo)源文件的代碼,確定所述目標(biāo)源文件的新的類名,所述新的類名是所述Activity類下引用所述資源文件的Fragment類的類名;
第三資源確定子模塊,用于當(dāng)所述已確定資源中包含所述新的類名時(shí),將所述已確定資源中包含所述新的類名的搜索資源,確定為所述資源文件中的各個(gè)設(shè)置項(xiàng)對(duì)應(yīng)在所述設(shè)置功能中的上一級(jí)設(shè)置項(xiàng)的搜索資源。
15.根據(jù)權(quán)利要求12所述的裝置,其特征在于,所述信息生成模塊還包括:
第二類名查詢子模塊,用于當(dāng)所述已確定資源中不包含所述目標(biāo)源文件的類名,且所述目標(biāo)源文件的類名為intent類的類名時(shí),查詢所述intent類對(duì)應(yīng)的源文件的類名;
第四資源確定子模塊,用于當(dāng)所述已確定資源中包含所述intent類對(duì)應(yīng)的源文件的類名時(shí),將所述已確定資源中包含所述intent類對(duì)應(yīng)的源文件的類名的搜索資源,確定為所述資源文件中的各個(gè)設(shè)置項(xiàng)對(duì)應(yīng)在所述設(shè)置功能中的上一級(jí)設(shè)置項(xiàng)的搜索資源。
16.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述裝置還包括:
配置獲取模塊,用于獲取所述設(shè)置功能的各級(jí)頁(yè)面中的每個(gè)設(shè)置項(xiàng)對(duì)應(yīng)的配置信息,所述配置信息用于指示對(duì)應(yīng)的設(shè)置項(xiàng)在指定機(jī)型和/或指定場(chǎng)景中是否顯示;
參數(shù)設(shè)置模塊,用于根據(jù)所述配置信息,在所述設(shè)置項(xiàng)的搜索資源中設(shè)置對(duì)應(yīng)的配置參數(shù)。
17.一種搜索文件生成裝置,其特征在于,所述裝置包括:
處理器;
用于存儲(chǔ)所述處理器的可執(zhí)行指令的存儲(chǔ)器;
其中,所述處理器被配置為:
獲取操作系統(tǒng)中的設(shè)置功能的第一級(jí)頁(yè)面的項(xiàng)目信息,所述項(xiàng)目信息包含對(duì)應(yīng)頁(yè)面中的各個(gè)設(shè)置項(xiàng)的搜索資源,所述搜索資源至少包括跳轉(zhuǎn)信息和路徑,所述跳轉(zhuǎn)信息中包含對(duì)應(yīng)的源文件的類名;
確定操作系統(tǒng)中的各個(gè)資源文件;
根據(jù)所述第一級(jí)頁(yè)面中的各個(gè)設(shè)置項(xiàng)的跳轉(zhuǎn)信息和路徑,以及所述各個(gè)資源文件,逐級(jí)確定所述設(shè)置功能中各級(jí)頁(yè)面的項(xiàng)目信息;
根據(jù)所述各級(jí)頁(yè)面的項(xiàng)目信息生成所述設(shè)置功能的搜索文件。