ApiCloud開(kāi)發(fā)的注意事項(xiàng)

  1. 引擎或模塊問(wèn)題:遇到應(yīng)用層無(wú)法解決的問(wèn)題,如果能確定需要引擎和模塊支持的牌捷,不要自己想辦法繞過(guò)去好啰,要第一時(shí)間在開(kāi)發(fā)者社區(qū)提交問(wèn)題,或找APICloud項(xiàng)目經(jīng)理提出疑务。
    !!!注意!!!: 在開(kāi)發(fā)者社區(qū)中沾凄,會(huì)有版主和APICloud技術(shù)支持對(duì)您的問(wèn)題進(jìn)行驗(yàn)證和解答梗醇。

!!!注意!!!: 定制平臺(tái)項(xiàng)目問(wèn)題提出后2天之內(nèi)沒(méi)有解決的,可以直接找APICloud項(xiàng)目總監(jiān)投訴撒蟀。

  1. 開(kāi)發(fā)工具:推薦使用Sublime Text+APICloud插件叙谨,調(diào)試工具使用自定義Loader,真機(jī)同步使用WiFi真機(jī)同步保屯,日志輸出使用WiFi日志輸出手负。
    推薦視頻:Sublime使用教程Window&Mac

推薦文檔:Sublime插件使用說(shuō)明

  1. 前端框架:盡量不要使用jQuery、AngularJS姑尺、BootStrap等重型的框架虫溜,擺脫對(duì)$的依賴(lài),培養(yǎng)自己動(dòng)手的習(xí)慣股缸,但是可以根據(jù)功能需求在特定頁(yè)面中使用功能獨(dú)立的Mobile First框架
    默認(rèn)樣式設(shè)置衡楞、DOM操作和字符串處理推薦使用APICloud前端框架(api.js和api.css)

移動(dòng)端UI框架推薦使用AUI

  1. 屏幕適配:要正確設(shè)置viewport,建議使用720*1280尺寸的UI圖敦姻,優(yōu)先考慮絕對(duì)計(jì)量類(lèi)的單位 px瘾境,應(yīng)先在UI效果圖中(如720x1280尺寸圖)量出元素的寬或高對(duì)應(yīng)的 px 值,再除以屏幕倍率(如分辨率為720x1280設(shè)備的屏幕倍率通常為 2) 來(lái)得到書(shū)寫(xiě)樣式時(shí)的確切數(shù)值镰惦。
    !!!注意!!!: APICloud項(xiàng)目驗(yàn)收時(shí)會(huì)根據(jù)設(shè)計(jì)提供的UI圖尺寸(如720x1280)迷守,在對(duì)應(yīng)屏幕分辨率的手機(jī)設(shè)備(如720x1280)中安裝運(yùn)行,將運(yùn)行后的頁(yè)面與UI效果圖一一進(jìn)行對(duì)比旺入。

!!!注意!!!: H5界面的實(shí)現(xiàn)要與UI設(shè)計(jì)完全一致兑凿,精細(xì)到0.5px。

!!!注意!!!: openFrame/FrameGroup等時(shí)茵瘾,應(yīng)使用auto結(jié)合margin布局礼华,以動(dòng)態(tài)適應(yīng)變化無(wú)常的android設(shè)備屏幕。

推薦文檔:屏幕適配原理及實(shí)現(xiàn)

  1. UI布局:要求使用APICloud五大組件(Widget拗秘、Layout圣絮、Window、Frame雕旨、UIModules)進(jìn)行APP的UI架構(gòu)設(shè)計(jì)扮匠。
    !!!注意!!!: SPA的模式不適合APP開(kāi)發(fā),DIV+JS的窗口切換影響用戶(hù)體驗(yàn)凡涩。APICloud的UI結(jié)構(gòu)設(shè)計(jì)可以從整體上解決H5在Interaction棒搜、Animation和Render方面的性能問(wèn)題。

推薦文檔:培訓(xùn)講義:APICloud界面布局和APP架構(gòu)設(shè)計(jì)

  1. 窗口切換:避免出現(xiàn)任何卡頓活箕、閃屏力麸、白屏等情況;動(dòng)畫(huà)效果流暢,不能出現(xiàn)丟幀的情況末盔。
    !!!注意!!!: 要理解并控制窗口好切與界面渲染之間的關(guān)系筑舅,要適時(shí)更新UI,如果Window或Frame中所加載的靜態(tài)頁(yè)面內(nèi)容過(guò)多陨舱,建議等動(dòng)畫(huà)執(zhí)行完畢再進(jìn)行頁(yè)面的加載和渲染翠拣。無(wú)論是Android還是iOS系統(tǒng),在進(jìn)行窗口切換的時(shí)候游盲,如果窗體本身正在進(jìn)行渲染(Window或Frame所加載的網(wǎng)頁(yè)沒(méi)有渲染完畢)误墓,則會(huì)影響切換動(dòng)畫(huà)運(yùn)行的流暢性,出現(xiàn)卡頓或丟幀的情況益缎。

!!!注意!!!: 建議在打開(kāi)Window或Frame的時(shí)候谜慌,如果所加載的靜態(tài)網(wǎng)頁(yè)不能過(guò)大,內(nèi)容不要太多莺奔,不能快速的渲染完畢欣范。為了不影響窗體切換動(dòng)畫(huà)的執(zhí)行,可以在切換動(dòng)畫(huà)執(zhí)行完畢后再進(jìn)行動(dòng)態(tài)數(shù)據(jù)的加載和界面的刷新令哟。

  1. 窗口切換動(dòng)畫(huà):如果沒(méi)有特別要求盡量使用平臺(tái)默認(rèn)的動(dòng)畫(huà)效果恼琼,即api.openWin時(shí)不指定動(dòng)畫(huà)類(lèi)型,使用默認(rèn)值屏富。
    !!!注意!!!: 無(wú)論是在Android還是iOS上晴竞,APICloud引擎會(huì)從整體上保證默認(rèn)的窗口動(dòng)畫(huà)類(lèi)型是性能最好的。

!!!注意!!!: 三星狠半、小米等大屏Android6.0及以上手機(jī)噩死,可以嘗試在云編譯的時(shí)候選擇使用Android引擎渲染優(yōu)化版本

!!!注意!!!: 如果窗體所加載的靜態(tài)網(wǎng)頁(yè)內(nèi)容比較多(如:初始的Dom樹(shù)很大或圖片很多),在Android平臺(tái)上openWindow的時(shí)候可以嘗試使用movein或fade的動(dòng)畫(huà)類(lèi)型

  1. 窗口關(guān)閉處理:開(kāi)發(fā)過(guò)程中根據(jù)需要處理Android的keyback事件和iOS的回滑手勢(shì)神年。
    !!!注意!!!:Android上要在Window中才能監(jiān)聽(tīng)到keyback事件已维,F(xiàn)rame中無(wú)法監(jiān)聽(tīng)到keyback事件;在iOS7以上的系統(tǒng)上可以在openWin的時(shí)候通過(guò)設(shè)置slidBackEnabled參數(shù)來(lái)實(shí)現(xiàn)是否支持回滑手勢(shì)關(guān)閉窗口的功能瘤袖。

!!!注意!!!:在后臺(tái)關(guān)閉頁(yè)面時(shí)衣摩,應(yīng)注意在關(guān)閉方法中添加animation:{type:"none"},來(lái)防止切換動(dòng)畫(huà)的出現(xiàn)影響用戶(hù)體驗(yàn)捂敌;

  1. 窗體背景圖片:避免使用H5來(lái)實(shí)現(xiàn)body級(jí)別的背景圖片,可以使用Window或Frame的bgColor參數(shù)以原生的方式來(lái)高效實(shí)現(xiàn)
    !!!注意!!!: 不建議通過(guò)給body元素指定background的方式來(lái)實(shí)現(xiàn)body級(jí)別的背景圖片既琴,特別是高清的大背景圖片用H5方式實(shí)現(xiàn)會(huì)嚴(yán)重影響渲染性能占婉。

  2. 導(dǎo)航切換:切換底部導(dǎo)航或頂部分類(lèi)菜單的時(shí)候,要求切換體驗(yàn)平滑甫恩,切換過(guò)程不能出現(xiàn)白屏逆济、閃屏等現(xiàn)象
    !!!注意!!!:建議使用FrameGroup來(lái)實(shí)現(xiàn)Frame的切換,要按需合理配置預(yù)加載的Frame數(shù)量,每個(gè)Frame要有明顯的刷新機(jī)制奖慌,不能每次切換都進(jìn)行刷新和重繪抛虫。

!!!注意!!!:如果使用模塊來(lái)實(shí)現(xiàn)底部導(dǎo)航欄推薦使用NVTabBar模塊。

  1. 列表滾動(dòng):滾動(dòng)效果要平滑流暢简僧,不能使用iscroll等JS的方式來(lái)實(shí)現(xiàn)滾動(dòng)
    !!!注意!!!:建議使用Window+Frame的UI結(jié)構(gòu)建椰,以Native的方式來(lái)實(shí)現(xiàn)列表頁(yè)面的滾動(dòng)。

!!!注意!!!:在iOS上要支持點(diǎn)擊狀態(tài)欄能自動(dòng)回到頂部的效果岛马,可以通過(guò)在openWin或openFrame的時(shí)候配置scrollToTop參數(shù)來(lái)實(shí)現(xiàn)棉姐;此效果在FrameGroup中使用的時(shí)候要注意確保只有當(dāng)前顯示的Frame的scrollToTop屬性為true,其它Frame的scrollToTop屬性為false啦逆。

  1. 界面之間參數(shù)傳遞:可以使用pageParam來(lái)實(shí)現(xiàn)伞矩,但要避免使用過(guò)大的pageParam
    !!!注意!!!: 界面切換的時(shí)候如果pageParam過(guò)大,則JSON解析就會(huì)比較耗時(shí)夏志,影響界面切換的執(zhí)行和動(dòng)畫(huà)運(yùn)行體驗(yàn)乃坤。

!!!注意!!!: 不要使用使用URL+?的形式進(jìn)行參數(shù)的傳遞,此方式在Android上存在兼容問(wèn)題沟蔑。

  1. 交互響應(yīng):點(diǎn)擊事件必須處理click事件的300ms延遲問(wèn)題湿诊,優(yōu)化點(diǎn)擊響應(yīng)速度,建議通過(guò)為可點(diǎn)擊的元素增加tapmode屬性來(lái)優(yōu)化點(diǎn)擊速度溉贿。
    !!!注意!!!:引擎對(duì)具有tapmode屬性的元素點(diǎn)擊事件的優(yōu)化處理會(huì)在apiready事件觸發(fā)之前枫吧,根據(jù)當(dāng)前的dom樹(shù)自動(dòng)進(jìn)行優(yōu)化。在apiready之后加載的數(shù)據(jù)使用要顯式的調(diào)用api.parseTapmode方法來(lái)進(jìn)行主動(dòng)的tapmode處理宇色,例如在上拉加載更多數(shù)據(jù)后九杂,要調(diào)用一下api.parseTapmode方法.

!!!注意!!!:要按UE設(shè)計(jì)確定可點(diǎn)擊區(qū)域的大小,可以適當(dāng)擴(kuò)大點(diǎn)擊區(qū)域來(lái)保障點(diǎn)擊反應(yīng)的靈敏宣蠕。

!!!注意!!!:api.parseTapmode調(diào)用會(huì)有性能成本例隆,不需要的情況下不要隨便調(diào)用。

!!!注意!!!:要按照需求明確所有按鈕點(diǎn)擊時(shí)的交互效果抢蚀,為tapmode屬性設(shè)置正確的樣式值镀层,對(duì)于沒(méi)有交互效果的點(diǎn)擊實(shí)現(xiàn),可以不為tapmode屬性指定任何樣式皿曲,但是為了優(yōu)化點(diǎn)擊速度唱逢,必須要給元素增加tapmode屬性。

  1. 下拉刷新效果:建議不要使用APICloud默認(rèn)的下拉刷新效果(灰色箭頭)屋休,要使用模塊來(lái)實(shí)現(xiàn)UE/UI所設(shè)計(jì)的下拉刷新效果坞古。
    !!!注意!!!:如果UE/UI所設(shè)計(jì)的下拉刷新效果,使用目前APICloud平臺(tái)模塊無(wú)法實(shí)現(xiàn)劫樟,要第一時(shí)間跟項(xiàng)目經(jīng)理提出痪枫,由APICloud進(jìn)行模塊封裝來(lái)實(shí)現(xiàn)织堂。

  2. 網(wǎng)絡(luò)通信方式:必須使用api.ajax,并且設(shè)置合適的超時(shí)時(shí)間奶陈,并進(jìn)行超時(shí)和請(qǐng)求失敗的異常情況易阳。
    !!!注意!!!:JQuery的ajax在開(kāi)啟全包加密的時(shí)候會(huì)有問(wèn)題,不建議使用吃粒。

  3. 網(wǎng)絡(luò)請(qǐng)求狀態(tài)處理:APP要判斷當(dāng)前的網(wǎng)絡(luò)狀態(tài)潦俺,請(qǐng)求過(guò)程要按UI設(shè)計(jì)有明顯的狀態(tài)提示;網(wǎng)絡(luò)超時(shí)或網(wǎng)絡(luò)請(qǐng)求失敗的時(shí)候要進(jìn)行相關(guān)處理并有錯(cuò)誤提示声搁。
    api對(duì)象dialogBox模塊下面封裝了常用的提示對(duì)話框方法黑竞。

  4. 數(shù)據(jù)緩存:要對(duì)GET請(qǐng)求進(jìn)行數(shù)據(jù)的緩存處理,在用戶(hù)沒(méi)用網(wǎng)絡(luò)的情況下疏旨,仍然能夠看到APP的靜態(tài)界面布局以及上次已經(jīng)緩存的服務(wù)器端數(shù)據(jù)很魂。
    !!!注意!!!:可以在api.ajax方法中設(shè)置cache參數(shù)為true來(lái)開(kāi)啟緩存;也可以使用api.writeFile和api.readFile方法檐涝,在獲取數(shù)據(jù)后自己實(shí)現(xiàn)簡(jiǎn)單的數(shù)據(jù)緩存遏匆,或使用fs和db模塊來(lái)緩存數(shù)據(jù)。

  5. 圖片緩存:必須手動(dòng)進(jìn)行圖片的緩存處理谁榜,需要調(diào)用api.imageCache方法實(shí)現(xiàn)幅聘。
    !!!注意!!!:Webview默認(rèn)的緩存機(jī)制存在缺陷,在跨窗口時(shí)表現(xiàn)不好窃植,并且存在對(duì)所緩存圖片的尺寸限制等問(wèn)題帝蒿,所有APICloud應(yīng)用的圖片緩存不能依賴(lài)Webview默認(rèn)的緩存機(jī)制,必須手動(dòng)實(shí)現(xiàn)巷怜。

  6. 圖片處理:要減少由圖片造成的內(nèi)存占用葛超,減少圖片縮放等耗性能的操作,服務(wù)器端要根據(jù)產(chǎn)品設(shè)計(jì)提供合適尺寸的大圖延塑、小圖绣张、縮略圖等
    !!!注意!!!:APICloud應(yīng)用所占用的內(nèi)存大小由所加載的網(wǎng)頁(yè)大小決定,通常圖片過(guò)多過(guò)大會(huì)造成整個(gè)應(yīng)用的內(nèi)存占用過(guò)大关带,另外在瀏覽器中進(jìn)行圖片的縮放處理成本也很高侥涵。

!!!注意!!!:列表中的頭像等縮略圖,寬高應(yīng)控制在250-300px之間宋雏,小于這個(gè)范圍大屏手機(jī)容易失真芜飘,大于這個(gè)范圍消耗更多內(nèi)存和性能。

  1. 狀態(tài)欄效果:Android和iOS上都要求實(shí)現(xiàn)沉浸式狀態(tài)欄效果的適配
    !!!注意!!!:可以通過(guò)在config.xml中開(kāi)啟沉浸式效果]配置項(xiàng)磨总,然后在Window或Frame的apiready事件后燃箭,調(diào)用$api.fixStatusBar()方法來(lái)實(shí)現(xiàn)。如果由于各種原因造成apiready執(zhí)行太晚舍败,當(dāng)Header高度變化時(shí)會(huì)產(chǎn)生頁(yè)面跳動(dòng)的現(xiàn)象,也可以根據(jù)需求自己來(lái)實(shí)現(xiàn),在合適的時(shí)機(jī)(如onload事件中)判斷平臺(tái)類(lèi)型后邻薯,手動(dòng)調(diào)整Header的高度裙戏,Android的狀態(tài)欄高度是25px,iOS是20px厕诡。

!!!注意!!!:要根據(jù)當(dāng)前界面的背景顏色累榜,通過(guò)調(diào)用api.setStatusBarStyle方法來(lái)設(shè)置當(dāng)前狀態(tài)欄的風(fēng)格或背景色。

  1. 鍵盤(pán)處理:在打開(kāi)帶有輸入框的Window或Frame的是灵嫌,默認(rèn)要自動(dòng)讓輸入框自動(dòng)獲得焦點(diǎn)壹罚。
    !!!注意!!!:在config.xml中有關(guān)于鍵盤(pán)顯示方式,彈出方式和第三方鍵盤(pán)使用的各種配置寿羞,要根據(jù)需要正確配置猖凛。

!!!注意!!!:由于在Android上input元素的focus事件存在兼容性問(wèn)題,要完成輸入框自動(dòng)獲取焦點(diǎn)的功能绪穆,建議使用擴(kuò)展模塊UIInput模塊辨泳。

!!!注意!!!:在打開(kāi)Window的時(shí)候,如果自動(dòng)彈出鍵盤(pán)玖院,彈出鍵盤(pán)的行為影響切換動(dòng)畫(huà)執(zhí)行的流暢性菠红,出現(xiàn)卡頓或丟幀的情況。建議可以對(duì)鍵盤(pán)彈出的行為設(shè)置適當(dāng)?shù)难舆t难菌,例如在apiready中設(shè)置延遲200ms后再讓UIInut元素獲得焦點(diǎn)试溯。

!!!注意!!!:可以在同一個(gè)界面中(如登陸界面)創(chuàng)建多個(gè)UIInput模塊的實(shí)例,來(lái)實(shí)現(xiàn)多個(gè)輸入框郊酒。

!!!注意!!!:輸入框位于設(shè)備屏幕下半部份的應(yīng)用場(chǎng)景遇绞,config.xml中的的鍵盤(pán)彈出模式參數(shù)softInputMode務(wù)必設(shè)置為resize模式,或者使用UIInput相關(guān)模塊猎塞。

!!!注意!!!:為了讓?xiě)?yīng)用看起來(lái)更接近原生试读,盡量配置config.xml中的softInputBarEnabled參數(shù)來(lái)隱藏iOS鍵盤(pán)上面的工具條。也可以在openWin或openFrame的時(shí)候通過(guò)softInputBarEnabled參數(shù)來(lái)單獨(dú)指定荠耽。

  1. 配置外部字體:可以根據(jù)項(xiàng)目的需要引入外部字體钩骇,但是要控制外部字體文件的大小,字體文件不宜過(guò)大铝量。
    !!!注意!!!:Android上默認(rèn)有3種字體:sans, serif, monospace倘屹,在開(kāi)發(fā)人員不指定的情況下,默認(rèn)為sans慢叨,這3種字體在開(kāi)發(fā)過(guò)程中都是通過(guò)字體名進(jìn)行引用纽匙,系統(tǒng)會(huì)自動(dòng)對(duì)應(yīng)到內(nèi)置字體文件。但是拍谐,對(duì)于外部的字體文件烛缔,Android上無(wú)法實(shí)現(xiàn)通過(guò)引擎配置后成為內(nèi)置的字體文件馏段,只能通過(guò)@font-face的方式在每個(gè)頁(yè)面中重復(fù)加載,每一個(gè)要使用外部字體的Window或Frame都要引入一遍践瓷,如果字體體積過(guò)大會(huì)占用大量?jī)?nèi)存院喜,并且影響頁(yè)面的加載速度。

!!!注意!!!:iOS可以在config.xml文件中進(jìn)行外部字體文件的配置晕翠,配置完成后就可以像系統(tǒng)內(nèi)置字體一樣在頁(yè)面中指定了喷舀,無(wú)需在每個(gè)Window或Frame中通過(guò)@font-face的方式引入。

  1. JavaScript模版:建議使用doT模版等輕量級(jí)的模版淋肾。
    !!!注意!!!:要優(yōu)先選擇使用Mobile First的模版硫麻,體量小,生成的文本效率高樊卓。

doT模版文檔

  1. 支付業(yè)務(wù):支付寶拿愧,微信等密鑰必須存放在服務(wù)器端,不應(yīng)暴露在APP代碼中简识。
    !!!注意!!!:支付訂單金額應(yīng)由服務(wù)器產(chǎn)生赶掖,服務(wù)器一定要對(duì)支付寶、微信服務(wù)器回調(diào)的支付結(jié)果做最終校驗(yàn)七扰。

!!!注意!!!:alipay模塊要調(diào)用payOrder方法來(lái)進(jìn)行支付奢赂,自己處理訂單信息以及簽名過(guò)程;不要使用config接口和pay接口把訂單信息以及簽名過(guò)程交予模塊內(nèi)部處理(官方提供此種支付方式只是為了方便開(kāi)發(fā)者調(diào)試)颈走。

  1. 對(duì)于文件膳灶、數(shù)據(jù)庫(kù)、偏好設(shè)置等操作推薦使用同步接口(方法名增加Sync后綴)來(lái)簡(jiǎn)化代碼的實(shí)現(xiàn)立由,解決異步callback層次過(guò)深的問(wèn)題轧钓。
    fs對(duì)象的同步方法

db對(duì)象的同步方法

偏好設(shè)置操作的同步方法

對(duì)于異步callback嵌套的問(wèn)題,也可以通過(guò)調(diào)用api.sendEvent方法來(lái)解耦锐膜,通過(guò)事件機(jī)制來(lái)實(shí)現(xiàn)毕箍。

  1. 網(wǎng)頁(yè)代碼組織:盡量將同一個(gè)界面的HTML、CSS和JS代碼寫(xiě)在一個(gè)html文件中道盏,提高頁(yè)面加載速度而柑;公用的CSS、JS盡量少和小荷逞,不要在html頁(yè)面中隨意加載無(wú)用的CSS或JS文件媒咳;盡量減少頁(yè)面中的link或script標(biāo)簽的使用
    !!!注意!!!: 在瀏覽器中,外部文件的引入和加載過(guò)程是同步操作种远,影響整個(gè)頁(yè)面的執(zhí)行效率涩澡。

  2. 應(yīng)用代碼組成:要遵循APICloud Widget包結(jié)構(gòu),結(jié)構(gòu)清晰規(guī)范坠敷。
    推薦文檔:APICloud Widget包結(jié)構(gòu)

28.文件命名規(guī)范:要有統(tǒng)一規(guī)范妙同,如首頁(yè)Windowhome文件命名為home.html翅溺,首頁(yè)Frame文件命名為home_frame.html互广,所有文件名(網(wǎng)頁(yè)和資源文件)避免使用中文命名朴下、也不要包含大寫(xiě)字母侥蒙。
!!!注意!!!:原生系統(tǒng)內(nèi)部資源文件管理不支持中文名和大寫(xiě)字母鹃愤,使用中文或大寫(xiě)的資源文件在真實(shí)設(shè)備運(yùn)行中會(huì)出現(xiàn)各種問(wèn)題氮昧。

!!!注意!!!:例如在自定義Loader中運(yùn)行沒(méi)有問(wèn)題叫挟,但云編譯的包就有問(wèn)題峡扩,出現(xiàn)頁(yè)面無(wú)法加載或資源找不到等問(wèn)題掂恕,通常就是使用了中文或大寫(xiě)的文件命名拖陆。因?yàn)楣俜絃oader或自定義Loader的Widget是存放在SDCard中,而云編譯后的安裝包Widget是存在應(yīng)用的沙箱中懊亡,沙箱中是要采用的原生系統(tǒng)的內(nèi)部資源文件管理機(jī)制依啰。

  1. 安全機(jī)制:要從代碼、數(shù)據(jù)存儲(chǔ)店枣、網(wǎng)絡(luò)通信等方面保證APP的內(nèi)容和數(shù)據(jù)的安全速警。
    !!!注意!!!:開(kāi)發(fā)過(guò)程中每次云編譯的無(wú)論測(cè)試包還是正式包都建議選擇全包加密,因?yàn)樵贏PICloud定制平臺(tái)上鸯两,客戶(hù)可以全程監(jiān)控項(xiàng)目的實(shí)施過(guò)程闷旧,可以查看代碼提交紀(jì)錄,但是沒(méi)有獲取代碼的權(quán)限钧唐;客戶(hù)可以查看云編譯紀(jì)錄忙灼,如果編譯的安裝包沒(méi)有使用全包加密則客戶(hù)可能通過(guò)解壓安裝包輕松獲取APP的H5源碼,從而影響后續(xù)項(xiàng)目款的按時(shí)支付钝侠。

!!!注意!!!: config.xml中的access配置項(xiàng)可以配置在哪些類(lèi)型的頁(yè)面里面可以訪問(wèn)APICloud的擴(kuò)展API方法该园,可訪問(wèn)域的設(shè)置以及越獄限制等。

!!!注意!!!: config.xml中的checkSslTrusted配置項(xiàng)配置是否檢查https證書(shū)是受信任的帅韧。

!!!注意!!!: config.xml中的appCertificateVerify配置項(xiàng)配置是否校驗(yàn)應(yīng)用證書(shū)里初。若配置為true,應(yīng)用被重簽名后將無(wú)法再使用忽舟。

!!!注意!!!: 對(duì)重要參數(shù)變量進(jìn)行必要的加密處理双妨,對(duì)重要的常量數(shù)據(jù)應(yīng)放入key.xml中,使用api.loadSecureValue方法進(jìn)行數(shù)據(jù)讀认艚搿斥难;

  1. 安裝包大小:云編譯生成的安裝包的大小由4部分內(nèi)容組成:引擎帘饶、模塊哑诊、網(wǎng)頁(yè)文件和資源文件。引擎的大小是固定的(Android約為400K及刻,iOS約為1.2M)镀裤,應(yīng)該控制減少模塊竞阐、網(wǎng)頁(yè)文件和資源文件的大小,刪除無(wú)用的模塊和文件暑劝。
    !!!注意!!!:編譯正式版本的時(shí)候骆莹,要檢查一下控制臺(tái)選定的模塊是否都在實(shí)際代碼中使用到了。一些開(kāi)發(fā)者在開(kāi)發(fā)過(guò)程中會(huì)不斷引入一些“預(yù)計(jì)使用”或"測(cè)試使用"的模塊担猛,但是在最終的代碼中沒(méi)有使用幕垦,這部分模塊要云編譯的時(shí)候去掉,無(wú)用的模塊不僅僅會(huì)增大安裝包的體積傅联,還有可能引起于其它模塊的沖突或編譯選項(xiàng)先改,造成編譯失敗。

!!!注意!!!:在config.xml文件中配置的模塊蒸走,在控制臺(tái)無(wú)法刪除仇奶,因?yàn)閏onfig中feature配置項(xiàng)的forceBind屬性默認(rèn)true,是強(qiáng)制綁定的比驻,可以通過(guò)在配置forceBind屬性來(lái)修過(guò)该溯。

!!!注意!!!:在編譯正式版本的時(shí)候,要?jiǎng)h除Widget包中的icon和launch目錄下的圖片以減小安裝包體積别惦。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末狈茉,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子步咪,更是在濱河造成了極大的恐慌论皆,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,265評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件猾漫,死亡現(xiàn)場(chǎng)離奇詭異点晴,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)悯周,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,078評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門(mén)粒督,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人禽翼,你說(shuō)我怎么就攤上這事屠橄。” “怎么了闰挡?”我有些...
    開(kāi)封第一講書(shū)人閱讀 156,852評(píng)論 0 347
  • 文/不壞的土叔 我叫張陵锐墙,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我长酗,道長(zhǎng)溪北,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,408評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮之拨,結(jié)果婚禮上茉继,老公的妹妹穿的比我還像新娘。我一直安慰自己蚀乔,他們只是感情好烁竭,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,445評(píng)論 5 384
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著吉挣,像睡著了一般派撕。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上听想,一...
    開(kāi)封第一講書(shū)人閱讀 49,772評(píng)論 1 290
  • 那天腥刹,我揣著相機(jī)與錄音,去河邊找鬼汉买。 笑死,一個(gè)胖子當(dāng)著我的面吹牛佩脊,可吹牛的內(nèi)容都是我干的蛙粘。 我是一名探鬼主播,決...
    沈念sama閱讀 38,921評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼威彰,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼出牧!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起歇盼,我...
    開(kāi)封第一講書(shū)人閱讀 37,688評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤舔痕,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后豹缀,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體伯复,經(jīng)...
    沈念sama閱讀 44,130評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,467評(píng)論 2 325
  • 正文 我和宋清朗相戀三年邢笙,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了啸如。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,617評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡氮惯,死狀恐怖叮雳,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情妇汗,我是刑警寧澤帘不,帶...
    沈念sama閱讀 34,276評(píng)論 4 329
  • 正文 年R本政府宣布,位于F島的核電站杨箭,受9級(jí)特大地震影響寞焙,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,882評(píng)論 3 312
  • 文/蒙蒙 一棺弊、第九天 我趴在偏房一處隱蔽的房頂上張望晶密。 院中可真熱鬧,春花似錦模她、人聲如沸稻艰。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,740評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)尊勿。三九已至,卻和暖如春畜侦,著一層夾襖步出監(jiān)牢的瞬間元扔,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,967評(píng)論 1 265
  • 我被黑心中介騙來(lái)泰國(guó)打工旋膳, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留澎语,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,315評(píng)論 2 360
  • 正文 我出身青樓验懊,卻偏偏與公主長(zhǎng)得像擅羞,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子义图,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,486評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理减俏,服務(wù)發(fā)現(xiàn),斷路器碱工,智...
    卡卡羅2017閱讀 134,629評(píng)論 18 139
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫(kù)娃承、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 12,059評(píng)論 4 62
  • Swift版本點(diǎn)擊這里歡迎加入QQ群交流: 594119878最新更新日期:18-09-17 About A cu...
    ylgwhyh閱讀 25,324評(píng)論 7 249
  • 春天有雨 雨水 鳥(niǎo)兒只會(huì)從 我眼前的樹(shù)葉上掉落 街道上有風(fēng) 我有一把破梳子 上面刻著一條小魚(yú) 當(dāng)年游得歡快 一場(chǎng)大...
    蘇蘇諾閱讀 76評(píng)論 0 2
  • 郭相麟 人生的痛苦有時(shí)是自己弄不清楚那些是自己能要蹂析、該要的舔示;那些是自己不能要,不該要的电抚! 對(duì)自己能要惕稻、該要的沒(méi)...
    郭相麟閱讀 166評(píng)論 0 0