移動(dòng)互聯(lián)網(wǎng)開發(fā)微信應(yīng)用號(hào)開啟內(nèi)測“微信小程序”來了
傳說中的微信“應(yīng)用號(hào)”終于要來了,但它的正式名稱很有可能是“微信小程序”。這一次微信還是按照慣例,通過機(jī)器跑出的數(shù)據(jù),首先將“小程序”開放給了 200 名擁有微信服務(wù)號(hào)的開發(fā)者進(jìn)行內(nèi)測,而且目前開發(fā)者發(fā)布的小程序無法在用戶的客戶端顯示。
簡單說,微信“小程序”可以為開發(fā)者提供基于微信的表單、導(dǎo)航、地圖、媒體和位置等開發(fā)組件,讓他們?cè)谖⑿诺木W(wǎng)頁里構(gòu)建一個(gè) HTML 5 應(yīng)用。同時(shí)微信還開放了登錄和微信支付等接口,讓這個(gè)“小程序”可以和用戶的微信賬號(hào)打通。
根據(jù)參與本次內(nèi)測的“小道消息”創(chuàng)始人 Fenng 提供的 信息 ,微信小程序向開發(fā)者開放了下列 API 接口:
視圖容器:視圖(View)、滾動(dòng)視圖、Swiper
基礎(chǔ)內(nèi)容:圖標(biāo)、文本、進(jìn)度條
表單組件:按鈕、表單等等
操作反饋
導(dǎo)航
媒體組建:音頻、圖片、視頻。
地圖
畫布
文件操作能力
網(wǎng)絡(luò):上傳下載能力、WebSocket
數(shù)據(jù):數(shù)據(jù)緩存能力
位置:獲取位置、查看位置
設(shè)備:網(wǎng)絡(luò)狀態(tài)、系統(tǒng)信息、重力感應(yīng)、羅盤
界面:設(shè)置導(dǎo)航條、導(dǎo)航、動(dòng)畫、繪圖等等
開放接口:登錄,包括簽名加密,用戶信息、微信支付、模板消息
雖然微信小程序本質(zhì)上來說就是一個(gè) HTML 5(移動(dòng)網(wǎng)頁) 應(yīng)用,但與那些經(jīng)常在朋友圈刷屏的 H5 小游戲或者應(yīng)用不同的是,微信小程序獲得更多的系統(tǒng)權(quán)限。首先是數(shù)據(jù)緩存能力,這可以讓用戶在打開一個(gè)小程序的時(shí)候?qū)⒊绦虻闹饕蚣芫彺娴轿⑿派?,下一次就可以快速打開了。微信創(chuàng)始人張小龍?jiān)f過,微信應(yīng)用號(hào)希望實(shí)現(xiàn)的目標(biāo)是“用完即走,無需安裝和卸載”,也就是說以后當(dāng)你要使用一個(gè)應(yīng)用時(shí),只需要在微信里搜索就可以直接使用了。
某開發(fā)者公布的小程序demo截圖
在這些框架和組建的幫助下,微信小程序的啟動(dòng)和運(yùn)行速度將遠(yuǎn)超過依賴瀏覽器的普通移動(dòng)網(wǎng)頁應(yīng)用——甚至可以媲美手機(jī)本地安裝的應(yīng)用,但這還是得取決于你的網(wǎng)速。另外,16 GB 的 iPhone 用戶可能真的得升級(jí)手機(jī)了:一旦“小程序”啟用,微信可能吞噬你大部分的儲(chǔ)存空間。
另外一個(gè)非常重要的開放權(quán)限是微信登錄接口,有了這個(gè)接口,開發(fā)者就可以將用戶的微信賬號(hào)和應(yīng)用賬號(hào)打通——這一點(diǎn)是很多開發(fā)者夢(mèng)寐以求的,畢竟在這種情況下獲取一個(gè)活躍用戶的成本要小得多。
此外微信還為開發(fā)者提供了非常詳盡的開發(fā)文檔,以及基于 Mac、Windows 和 Linux 系統(tǒng)的開發(fā)工具。不過小程序開發(fā)完后不能直接發(fā)布,需要提交給微信團(tuán)隊(duì)進(jìn)行審核,審核方式類似于蘋果審核嚴(yán)格的 App Store。目前還不確定微信是否會(huì)像蘋果一樣只允許付費(fèi)的開發(fā)者發(fā)布程序,以及如何進(jìn)行小程序的收入分成。
從目前已知的信息來看,微信“小程序”對(duì)于開發(fā)者來說還是非常友好的。首先是推廣成本將大幅降低,開發(fā)者獲取一個(gè)用戶不再需要下載安裝和注冊(cè)的過程,而僅僅是讓用戶關(guān)注自己的小程序,一鍵即可完成,同時(shí)也不會(huì)占用太多用戶的手機(jī)內(nèi)存(當(dāng)然微信應(yīng)用自身會(huì)進(jìn)一步吞噬更多的手機(jī)內(nèi)存);其次是微信為開發(fā)者提供了完整的前端框架和后端管理平臺(tái),這可以為開發(fā)者節(jié)省不少在這方面的人力和資金成本——這就相當(dāng)于一個(gè)內(nèi)容創(chuàng)業(yè)者已經(jīng)不需要開發(fā)一個(gè)網(wǎng)站,而是直接使用微信訂閱號(hào)平臺(tái)。
這也就是說,在很多數(shù)情況下,開發(fā)者不用再開發(fā)一款原生的移動(dòng)app,再放到蘋果的App Store應(yīng)用商店和各種Android應(yīng)用商店里去審核了,開發(fā)一款微信的“小程序”就能滿足用戶的瀏覽、定位、預(yù)訂、分享和支付等絕大部分需求。而對(duì)普通用戶來說,到應(yīng)用商店里搜索下載應(yīng)用,占用手機(jī)內(nèi)存,然后再不斷刪除冗余的app以節(jié)約手機(jī)存儲(chǔ)空間的做法也不必了;很多時(shí)候你只需要安裝一個(gè)越來越臃腫的微信而已——大部分應(yīng)用將以“小程序”的方式內(nèi)置其中。
這對(duì)自2009年以來以“應(yīng)用商店”為中心的移動(dòng)應(yīng)用和用戶體驗(yàn),是一個(gè)非常重要的改變。一款“超級(jí)應(yīng)用”包含了人們需要的大部分應(yīng)用。而人們僅僅需要從應(yīng)用商店下載它——而且,在這個(gè)問題上,微信得到了蘋果的默許。
其實(shí)在微信小程序正式登場之前,你就可以在 iPhone 的 iMessage 應(yīng)用上體驗(yàn)類似的“小程序”了。在升級(jí)到最新版的 iOS 10 后,蘋果簡直就是在 iMessage 上復(fù)制了一個(gè) App Store,你不僅可以在 iMessage 里發(fā)送表情包,還可以跟朋友玩小游戲和分享其他應(yīng)用信息。但跟微信小程序不同的是,iMessage 使用的是 iPhone 手機(jī)自帶的框架,而不是網(wǎng)頁框架。
將應(yīng)用“網(wǎng)頁化”一直都是技術(shù)公司努力推動(dòng)的一個(gè)趨勢(shì),而將強(qiáng)大的通訊工具“應(yīng)用平臺(tái)化”也是技術(shù)公司們正在探索的。除了微信的“小程序”和蘋果的iMessage應(yīng)用,此前 Facebook 也在自己的通訊工具 Messager 上推出了簡單的應(yīng)用開發(fā)接口,讓用戶直接通過聊天窗口完成打車和訂餐等操作。
而 Google 則一直希望將 Chrome 瀏覽器變成一個(gè)超級(jí)網(wǎng)頁 App 平臺(tái),Google 在最近提出了一個(gè)名為 Progressive Web App 的概念,指的是運(yùn)行在瀏覽器里的 App。這類 App 跟微信小程序的原理很類似,也就是將應(yīng)用需要的框架和進(jìn)程緩存到本地的瀏覽器里,讓 H5 程序在離線的狀態(tài)下仍然能夠使用。
目前 Google 旗下的 Chrome 瀏覽器和 Firefox、Opera 等主流瀏覽器都已經(jīng)支持了 Progressive Web App,并在 Google 的主導(dǎo)下為開發(fā)者提供了統(tǒng)一的 API 接口。相比之下,微信在這個(gè)時(shí)候發(fā)布小程序也只是在自己的平臺(tái)上進(jìn)行了跟進(jìn)。
這么看,移動(dòng)應(yīng)用程序開發(fā)和分發(fā)的大變局真的快來了。 “別再開發(fā)app了”,有很多人這么說。那么,現(xiàn)在加上后半句吧?!罢?qǐng)開發(fā)移動(dòng)網(wǎng)頁應(yīng)用吧” ,而且JavaScrpit程序員要更吃香了。對(duì)開發(fā)者們來說,這是一次地震。
不過,不難想象小程序的開發(fā)者同樣會(huì)像微信公眾號(hào)的運(yùn)營中一樣受到諸多限制,例如將應(yīng)用內(nèi)容分享到朋友圈、內(nèi)容審核的規(guī)則都得按微信的來——微信在這方面從來就不比蘋果更好對(duì)付。
如果說 3 年前微信推出訂閱號(hào)讓內(nèi)容生產(chǎn)者能夠?qū)⒕性趧?chuàng)作和運(yùn)營上的話,那么現(xiàn)在微信推出的小程序無疑能讓開發(fā)者更專注地進(jìn)行開發(fā)。因?yàn)槲⑿乓呀?jīng)準(zhǔn)備好了用戶和平臺(tái),開發(fā)者們只需要開發(fā)出更有趣和實(shí)用的應(yīng)用。