分(fēn)享最實用(yòng)的技(jì )術,創造更大的價值

關于微信小(xiǎo)程序的那些事

    微信,對于大家來說,已經是很(hěn)普及的一個應用(yòng),幾乎大街(jiē)小(xiǎo)巷的人,手裏都會安(ān)裝(zhuāng)一個叫微信的app,他(tā)能(néng)記錄我們的日常,支付我們的消費......,幾乎無所不能(néng)。

    而一談到微信,我們就不得不說微信上的小(xiǎo)程序,微信小(xiǎo)程序是一種不用(yòng)下載,就可(kě)以使用(yòng)的應用(yòng),自從2017年1月9日,張小(xiǎo)龍在2017微信公(gōng)開課上發布正式上線(xiàn)以來,就得到廣泛應用(yòng),小(xiǎo)程序的應用(yòng)數量超過了一百萬,覆蓋200多(duō)個細分(fēn)領域,日活躍量達到兩個億以上。

     微信小(xiǎo)程序這麽強大功能(néng)的背後,到底都有(yǒu)些什麽呢(ne)?現在我們來聊聊微信小(xiǎo)程序的那些事兒。


小(xiǎo)程序開發


微信小(xiǎo)程序的運行機制是什麽

    微信小(xiǎo)程序把啓動分(fēn)為(wèi)兩種:冷啓動、熱啓動

    冷啓動就是第一次啓動小(xiǎo)程序,或是小(xiǎo)程序從被内存銷毀到再次啓動

    熱啓動就是用(yòng)戶打開過小(xiǎo)程序還沒有(yǒu)被銷毀,再打開小(xiǎo)程序就隻是把小(xiǎo)程序直接從後台切到前端顯示。而對于小(xiǎo)程序銷毀的時機是什麽時候呢(ne)?我們研究過:小(xiǎo)程序切到後台後,五分(fēn)鍾内就會被微信主動銷毀,而在iOS下如果五秒(miǎo)内超過1次的内存告警,就會被銷毀。

對于用(yòng)戶來說,如果手動在小(xiǎo)程序列表中(zhōng)删除小(xiǎo)程序,需要調用(yòng)App.js裏面的函數,包括的函數有(yǒu): 


onLaunch() ,小(xiǎo)程序初始化應用(yòng)對象時調用(yòng)一次,即每次冷啓動的時候會調用(yòng)一次,熱啓動不會被調用(yòng)

onShow(),小(xiǎo)程序從後台進入前台時調用(yòng)

onHide() ,小(xiǎo)程序從前台進入後台時調用(yòng) 

onError() ,小(xiǎo)程序發生腳本錯誤,或是調用(yòng)微信api失敗時觸發。

onPageNotFound() ,當訪問小(xiǎo)程序不存的頁(yè)面時,該頁(yè)面會被觸發,一般在裏面寫一些404跳轉頁(yè)面

每個頁(yè)面對象裏的生命周期回調函數及默認事件處理(lǐ)函數有(yǒu):

onPullDownRefresh() ,即當用(yòng)戶下拉時觸發,要在app.json的window選項中(zhōng)或頁(yè)面配置中(zhōng)開啓enablePullDownRefresh才有(yǒu)效哈

onReachBottom() ,監聽用(yòng)戶上拉觸底事件,可(kě)以在app.json的window選項中(zhōng)或頁(yè)面配置中(zhōng)設置觸發距離onReachBottomDistance

onPageScroll() ,監聽滑動頁(yè)面事件,切記切記别在此方法裏過于頻繁執行setData

onShareAppMessage() ,監聽用(yòng)戶點擊分(fēn)享時,自定義分(fēn)享的标題内容

onResize() ,小(xiǎo)程序屏幕旋轉時觸發。基礎庫 2.4.0 開始支持哈

onTabItemTap() ,點擊 tab(即底部菜單欄) 時觸發,基礎庫 1.9.0 開始支持

onLoad() ,面加載時觸發, 隻在頁(yè)面第一次加載時觸發

onShow() ,頁(yè)面從後台切入前台時觸發,頁(yè)面初始化時觸發

onReady(),頁(yè)面初次渲染完成時觸發,隻觸發一次

onHide(),頁(yè)面從前台切入後台時觸發

onUnload(),頁(yè)面卸載時觸發,即redirectTo或navigateBack到其他(tā)頁(yè)面時觸發

以上是APP.js中(zhōng)關于小(xiǎo)程序的接口函數,如果微信小(xiǎo)程序要跳轉H5,必須現在微信小(xiǎo)程序中(zhōng)嵌入一個web-view的組件。而且必須是已經打開了的WebView,不可(kě)以跳轉到外部的H5頁(yè)。目前 H5 頁(yè)不可(kě)跳小(xiǎo)程序,隻有(yǒu)在小(xiǎo)程序以 web-view 組件打開的 H5 裏才可(kě)以跳回到小(xiǎo)程序,并後H5的地址,還必須在小(xiǎo)程序的管理(lǐ)後台,手動添加到白名(míng)單。而且這個白名(míng)單地址可(kě)以是任意可(kě)訪問的地址。 


App 可(kě)以跳轉到小(xiǎo)程序,小(xiǎo)程序隻能(néng)被動跳轉到 App,不可(kě)主動跳轉到 App。被動是指隻有(yǒu)當 App 主動跳入小(xiǎo)程序,小(xiǎo)程序才可(kě)以跳回到 App。


微信小(xiǎo)程序的渲染方式為(wèi) WebView,而非原生渲染,隻有(yǒu) <canvas/>、<video/>、<map/>、<textarea/>、<input>、<live-pusher>、<live-player> 幾個組件才是原生渲染。


微信小(xiǎo)程序目前統一使用(yòng) rpx 單位來隔離機器之間屏幕大小(xiǎo)的差異,以達到适配,讓開發者更加專注業務(wù)。


目前一個小(xiǎo)程序不可(kě)超過 2M,如果小(xiǎo)程序做了分(fēn)包,則所有(yǒu)包加起來不可(kě)超過 8M,每個包不可(kě)超過 2M。


微信開發者工(gōng)具(jù)下 JS 是跑在 Node-Webkit 内核,iOS 下是跑在 JSCore 内核,安(ān)卓下是跑在 X5 内核。


iOS 下大圖和長(cháng)列表圖都會導緻 WKWebView 被回收。


同一個微信用(yòng)戶,同一個小(xiǎo)程序 storage 上限為(wèi) 10MB,如果存儲空間不足,會自動清除掉最久沒使用(yòng)的數據;本地緩存文(wén)件和用(yòng)戶文(wén)件普通小(xiǎo)程序上限 10M,遊戲小(xiǎo)程序上限 50M。


wx.request、wx.uploadFile、wx.downloadFile 默認超時時間和最大超時時間都是 60s,最大并發限制是 10 個,網絡請求的 Referer header 不可(kě)設置。其格式固定為(wèi) https://servicewechat.com/{appid}/{version}/page-frame.html,其中(zhōng) {appid} 為(wèi)微信小(xiǎo)程序的 AppID,{version} 為(wèi)小(xiǎo)程序的版本号。版本号為(wèi) 0 表示為(wèi)開發版、體(tǐ)驗版及審核版本,版本号為(wèi) devtools 表示為(wèi)開發者工(gōng)具(jù),其餘為(wèi)正式版本。


在寫頁(yè)面的時候,如果頁(yè)面上有(yǒu)倒計時功能(néng),在微信小(xiǎo)程序 onHide 後沒有(yǒu)停掉倒計時,在 iPhone 下就會觸發内存不夠,微信小(xiǎo)程序被回收;而再把微信小(xiǎo)程序切回到前台界面上,微信小(xiǎo)程序又(yòu)沒有(yǒu)重新(xīn)渲染,從而導緻白屏。建議在 onHide 裏及時結束倒計時,onShow 裏再重新(xīn)啓動。

小(xiǎo)程序運行的流程

    成都微信小(xiǎo)程序開發團隊認為(wèi),在當今,微信小(xiǎo)程序開發的技(jì )能(néng),是需要我們開發人員掌握的基本技(jì )能(néng),掌握了該基本技(jì )能(néng),才能(néng)适應市場的需求。而微信小(xiǎo)程序的開發,對于開發人員來說,這項技(jì )能(néng)掌握起來也是十分(fēn)快速的。


聯系
QQ
電(diàn)話
咨詢電(diàn)話:189-8199-7898
TOP
樱花影院电视剧免费 黄金网站APP在线观看大全免费视频 和漂亮老师做爰6 午夜精品久久久久久久久久久久 我的好朋友的闺蜜 好姑娘6影视剧在线观看国语 成人A片产无码免费视频奶头鸭度 国产熟妇搡BBBB搡BBBB 三年成全免费高清大全 星空影院在线观看全集免费高清视频 校花被房东C得合不拢腿H男男 樱花影院高清电影好看的电视剧 少妇真人直播APP 大地资源中文第二页在线观看完整版 青青河边草免费观看字幕 日本猛少妇色XXXXX猛叫 母亲动漫1~6全集动漫免费观看 三妻四妾免费观看完整版 樱花动漫 官方入门网站 久久精品一区二区免费播放 成长的秘密免费观看 意大利电影巜丰满的欲妇 丰满老熟妇BBBBB搡BBB 涂了春药被一群人伦爽99势 变成黑皮辣妹后和朋友做了的梦 狗和人胶配方20分钟 国产精品99 蜜桃网站 星星影院在线观看免费版电视剧 人乱AN乱ALV老人乱 交换娇妻1-36部分1 巜出轨上司的人妻3 乱系列140肉艳1一12 成人片黄网站A片免费 换人妻好紧4P 无码国产精品一区二区色情男同 校草被LJ到喷水沦为宿舍视频 和风男做的顺丰快递小哥 妻子的背叛完整版视频 年轻的妺妺3按摩 两个乳头被咬的又硬又翘 宝贝腿开大点我添添公交车 女人脱了裤衩让男人捅 片多多电影电视剧影视剧三年 成全在线观看高清完整版免费动漫 国产日韩欧美 办公室高潮秘书2 一边添奶一边添P好爽视频 国产操逼视频 免费观看成人毛片A片直播千姿 小芳被肉干高H潮文不断 小娇妻H开荤粗肉H文1V1 深灬深灬深灬深灬一点 强壮的公次次弄得我高潮A片日本 健身的女孩们2满天星 少妇精品无码一区二区免费视频 每天都在主动求汆君臣 苏酥的被CAO日常NP 麻花传媒沈芯语老师家访 日本维修工的绝遇2 我们高清在线观看免费观看 呱呱呱影视大全免费观看 少女免费观看全集完整版 和房东在做爰2 免费看电影网站 再深点灬舒服灬大了添JUWU 国产肥白大熟妇BBBB视频 放荡娇妻肉交换H短篇 医生掀开奶罩边躁边狠狠躁视频 奶大器好H野战嫁给老男人视频 欧美A级肉欲大片XXX 性少妇VIDEOSEXFREEXXXX片 人妻出轨系列38部分阅读 原来的琪琪电影在线看 妈妈你真棒插曲快来救救我电影 GOGOGO免费高清在线完整版 善良的小峓子HD无删减播放一区 天天操夜夜操 X7X7X7任意噪108 被绑在坐桩机上抹春药BL推文