基于FA模型開發(fā)的應(yīng)用,其應(yīng)用程序包結(jié)構(gòu)如下圖應(yīng)用程序包結(jié)構(gòu)(FA模型)所示。開發(fā)者需要熟悉應(yīng)用程序包結(jié)構(gòu)相關(guān)的基本概念。
FA模型與Stage模型不同之處在于HAP內(nèi)部文件存放位置不同,F(xiàn)A模型將所有的資源文件、庫文件和代碼文件都放在assets文件夾中,在文件夾內(nèi)部進(jìn)一步區(qū)分。
config.json是應(yīng)用配置文件,IDE會(huì)自動(dòng)生成一部分模塊代碼,開發(fā)者按需修改其中的配置。詳細(xì)字段請參見應(yīng)用配置文件。
assets是HAP所有的資源文件、庫文件和代碼文件的集合,內(nèi)部可以分為entry和js文件夾。entry文件夾中存放的是resources目錄和resources.index文件。
resources目錄用于存放應(yīng)用的資源文件(字符串、圖片等),便于開發(fā)者使用和維護(hù),詳見資源分類與訪問。
resources.index是資源索引表,由IDE調(diào)用SDK工具生成。
js文件夾中存放的是編譯后的代碼文件。
pack.info是Bundle中用于描述每個(gè)HAP屬性的文件,例如app中的bundleName和versionCode信息、module中的name、type和abilities等信息,由IDE工具生成Bundle包時(shí)自動(dòng)生成。
圖1 應(yīng)用程序包結(jié)構(gòu)(FA模型)