W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
模塊包的最外層目錄必須為該模塊的模塊名,如moduleDemo,然后使用zip壓縮工具將該目錄壓縮成zip格式文件。如下圖:
【**】如果模塊包不符合該規(guī)范,將導(dǎo)致該模塊不被編譯。
iOS模塊包內(nèi)部最多只能包含以下幾項(xiàng),其中target和module.json為必需的,res、framework、localization目錄可選,大致如圖:
該目錄為必需目錄。
1)、該目錄存放模塊庫(也可以是如.swift這種源文件)及模塊用到的其它第三方.a靜態(tài)庫、靜態(tài)framework庫,以及資源文件等。要檢查靜態(tài)framework和bundle文件里面是否有\(zhòng)Info.plist**文件,如果有,需要?jiǎng)h掉**,否則將導(dǎo)致應(yīng)用上傳不了AppStore。
2)、該目錄允許包含子目錄,但不能包含\widget、uz、UZEngine、UZModules**等目錄,也不能包含en.lproj、zh-Hans.lproj等多語言包目錄**。多語言包可以放置在localization目錄下。
3)、該目錄下不能包含引擎庫\libUZEngine.a*和*Info.plist**文件。**
該目錄為可選目錄,該目錄命名規(guī)范必須為“res_”開頭,后面跟模塊名。例如“res_moduleDemo”。
該目錄為可選目錄,該目錄下存放動(dòng)態(tài)類型的framework庫,注意動(dòng)態(tài)類型的framework庫里面的Info.plist文件不能刪掉,并且framework庫不能包含模擬器架構(gòu)。
所有的.a靜態(tài)庫和framework庫必須包含armv7、arm64架構(gòu),否則將導(dǎo)致編譯失敗或無法正常使用。對(duì)于比較大的庫,不能包含模擬器i386、x86_64架構(gòu),armv7s架構(gòu)由于在云編譯時(shí)使用不到也需要移除,否則庫文件過大,會(huì)影響編譯效率。
可以在mac終端里面使用lipo -info test.a的方式查看庫包含哪些架構(gòu)。
該文件的結(jié)構(gòu)為一個(gè)或者多個(gè)JSON對(duì)象,每個(gè)對(duì)象代表一個(gè)模塊(平臺(tái)允許一個(gè)模塊包中同時(shí)存放多個(gè)模塊的),如: 一個(gè)對(duì)象時(shí)的module.json配置:
{
"name":"moduleDemo",
"class":"UZModuleDemo",
"methods":["method1", "method2"]
}
多個(gè)對(duì)象時(shí)的module.json配置,對(duì)象與對(duì)象之間以逗號(hào)隔開:
{
"name":"moduleDemo1",
"class":"UZModuleDemo1",
"methods":["method1", "method2"]
},
{
"name":"moduleDemo2",
"class":"UZModuleDemo2",
"methods":["method1", "method2"]
}
同時(shí)需要檢查一下module.json配置中,所有的字符是否均是半角的字符。
凡是不符合以上格式的,均須開發(fā)者做更改。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: