一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一個(gè)可動(dòng)態(tài)擴(kuò)展的互動(dòng)系統(tǒng)

張康康 ? 2018-11-01 13:39 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

作者 | 移動(dòng)Team景生善

整理 | 包包

背景

動(dòng)態(tài)化作為移動(dòng)端的一個(gè)重要技術(shù)分支,一直是大家積極探索的方向。目前移動(dòng)端流行的動(dòng)態(tài)化方案有,F(xiàn)acebook的React Native,阿里的Weex,它們都是采用了JavaScript與Native之間的橋接,使JavaScript開發(fā)的App擁有近似于原生應(yīng)用的性能。

其他的一些動(dòng)態(tài)化方案,像歷史悠久的WaxPatch動(dòng)態(tài)化方案,已經(jīng)被App Store禁止的JSPatch,阿里的LuaView,騰訊的OCS,滴滴的DynamicCocoa。

但是Facebook的React Native和阿里的Weex接入以后會(huì)顯著增加App包的大小,還有環(huán)境搭建問題,不適合SDK的開發(fā),只適合App開發(fā)。

通過對(duì)比幾種動(dòng)態(tài)化方案,最后選擇阿里的LuaView方案來實(shí)現(xiàn)平臺(tái)的SDK。LuaView是由lua與Native控件之間的橋接來實(shí)現(xiàn)的,相對(duì)于其他解決方案來說,是一個(gè)輕量級(jí)的解決方案。而且Lua語(yǔ)言可擴(kuò)展性強(qiáng)、簡(jiǎn)單、高效、占用體積小、啟動(dòng)速度快、學(xué)習(xí)簡(jiǎn)單等諸多優(yōu)勢(shì),有著許多成功案例,是動(dòng)態(tài)化方案首選。

LuaView設(shè)計(jì)原則

LuaView以UI視圖構(gòu)建能力為基礎(chǔ),實(shí)現(xiàn)了原生Native UI橋接到Lua Api,使用Lua腳本語(yǔ)言開發(fā)應(yīng)用功能,同時(shí)能夠達(dá)到原生應(yīng)用的性能和效果。


LuaView SDK整體架構(gòu)(注:圖片來自于《LuaView:基于Lua的移動(dòng)端跨平臺(tái)動(dòng)態(tài)化方案》)

如圖,LuaView SDK的整體架構(gòu)可以表示為五層。

第一、二層依次是OS層和Framework層,分別代表了Android、iOS以及對(duì)應(yīng)的系統(tǒng)框架層。

第三層有Lua虛擬機(jī),腳本管理模塊和安全控制模塊。Android使用的是LuaJ虛擬機(jī),iOS使用的是LuaC虛擬機(jī),這兩個(gè)虛擬機(jī)都是目前兩種語(yǔ)言中用的最廣泛,最穩(wěn)定的虛擬機(jī)。腳本管理模塊負(fù)責(zé)Lua腳本的管理,包括腳本的解包、驗(yàn)證、加解密、解壓縮等工作。安全控制模塊負(fù)責(zé)Lua腳本的安全校驗(yàn)工作,包括腳本完整性校驗(yàn)和腳本安全校驗(yàn)等。

第四層是LuaView的核心Lib庫(kù),包括Lua UI Lib(主要是所有的UI組件,如View、Button、Label、Image等)和Lua Non-UI Lib(主要包括Network、Json、Gesture)。

最上層是Lua業(yè)務(wù)腳本以及Lua層的lib庫(kù)。

LuaView的兩個(gè)重要的設(shè)計(jì)原則

兩端一致性

LuaView的一條重要設(shè)計(jì)原則就是iOS和Android兩端邏輯只寫一份代碼,API設(shè)計(jì)的時(shí)候考慮了兩端的共性,對(duì)于兩端不同的地方,則由Native部分實(shí)現(xiàn)?,F(xiàn)在,LuaView SDK中Lua API基本完成兩端接口的統(tǒng)一,保證API一致性,同一份腳本在兩端運(yùn)行的結(jié)果也是相同的。


(注:圖片來自于《LuaView:基于Lua的移動(dòng)端跨平臺(tái)動(dòng)態(tài)化方案》)

簡(jiǎn)單易用

LuaView的另一個(gè)設(shè)計(jì)原則是保持Lua語(yǔ)言的簡(jiǎn)單和易用。在核心UI庫(kù)上,所有的API做到精簡(jiǎn),盡量使用腳本實(shí)現(xiàn)避免使用Native實(shí)現(xiàn)。所有API使用Lua原生語(yǔ)法,并且兩端的接口保持一致風(fēng)格,方便開發(fā)。

OSLua

OSLua是一款針對(duì)視頻的互動(dòng)娛樂的SDK,添加到視頻系統(tǒng)中,給視頻賦能,既可以增加視頻的收入,也可以增加視頻的娛樂性。OSLua SDK是在LuaView SDK的基礎(chǔ)上,擴(kuò)展了VP UI和VP Non-UI,以及添加了視頻互動(dòng)娛樂模塊。OSLua使用LuaView的動(dòng)態(tài)化,可以動(dòng)態(tài)的添加新的互動(dòng)娛樂模塊,以及修改現(xiàn)有的互動(dòng)娛樂模塊。

1540890835599bff5ee5515


OSLua整體架構(gòu)

OSLua首先會(huì)對(duì)比本地版本和服務(wù)器版本,若是兩個(gè)版本不一致,將服務(wù)器版本更新到本地,并寫入本地文件Cache中。在系統(tǒng)運(yùn)行互動(dòng)娛樂模塊時(shí),LuaCore按照模板的文件名,在文件Cache中查找,找到腳本文件以后,即可加載運(yùn)行腳本文件,展示具體的互動(dòng)類型。具體的流程如下:

154089083588493a8e5688b


OSLua運(yùn)行流程

模板

OSLua中所有互動(dòng)娛樂模塊,如云圖、中插、氣泡、投票等,都是采用統(tǒng)一的策略,將模板的共有屬性抽像為相同的參數(shù),差異化的內(nèi)容,則在模板中自己處理。這樣客戶端收到投遞的廣告時(shí),將統(tǒng)一處理模板數(shù)據(jù),按照模板數(shù)據(jù)時(shí)間,展示模板,控制模板展示的頻次,在這個(gè)階段系統(tǒng)并不知道處理的是哪個(gè)模板。模板展示時(shí),根據(jù)模板數(shù)據(jù)展示具體的模板效果,所有的差異化的內(nèi)容都在這個(gè)階段處理。同時(shí),將模板中的各種事件,如展示、點(diǎn)擊、關(guān)閉等,還有需要對(duì)接平臺(tái)處理的操作,抽象為統(tǒng)一的參數(shù),這樣所有的模板都有一樣的事件處理機(jī)制。以上的這些特性,可以極大的增加系統(tǒng)的擴(kuò)展性,如果系統(tǒng)需要新的模板,只需要按照上面的策略,統(tǒng)一添加投遞和事件處理的參數(shù),實(shí)現(xiàn)特異化的內(nèi)容,就可以添加到系統(tǒng)中了。

1540890835603985aa9f442


OSLua模板參數(shù)

后續(xù)

OS Lua還在不斷完善,豐富Native到Lua的橋接,以及增加新的互動(dòng)娛樂模板,最終將會(huì)發(fā)展為一個(gè)性能穩(wěn)定,功能豐富的視頻增值SDK。

參考

1. LuaView:基于Lua的移動(dòng)端跨平臺(tái)動(dòng)態(tài)化方案

2. React Native中文網(wǎng)

3. Weex

4. OCS ——史上最瘋狂的iOS 動(dòng)態(tài)化方案

5. 滴滴iOS 動(dòng)態(tài)化方案DynamicCocoa 的誕生與起航


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 移動(dòng)端
    +關(guān)注

    關(guān)注

    0

    文章

    42

    瀏覽量

    4598
  • 系統(tǒng)
    +關(guān)注

    關(guān)注

    1

    文章

    1032

    瀏覽量

    21818
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    Simcenter STAR-CCM+在燃燒學(xué)方面的應(yīng)用:提供了個(gè)可以高效、高保真進(jìn)行燃燒仿真的迅速而擴(kuò)展的化學(xué)求解器

    優(yōu)勢(shì)使用快速、擴(kuò)展的化學(xué)求解器在更短時(shí)間內(nèi)運(yùn)行更多解決方案采用新型自動(dòng)反應(yīng)器網(wǎng)絡(luò)方法,為燃燒室設(shè)計(jì)提供快速、精確的排放曲線確保高效、擴(kuò)展的求解器充分利用計(jì)算資源使用模型特定的反應(yīng)流
    的頭像 發(fā)表于 06-27 17:11 ?179次閱讀
    Simcenter STAR-CCM+在燃燒學(xué)方面的應(yīng)用:提供了<b class='flag-5'>一</b><b class='flag-5'>個(gè)</b>可以高效、高保真進(jìn)行燃燒仿真的迅速而<b class='flag-5'>可</b><b class='flag-5'>擴(kuò)展</b>的化學(xué)求解器

    動(dòng)態(tài)BGP與靜態(tài)BGP的區(qū)別?

    :明確指定對(duì)等體,排錯(cuò)方便 不支持自動(dòng)發(fā)現(xiàn):每一個(gè)鄰居都要手動(dòng)添加 安全性較高:無動(dòng)態(tài)鄰居加入風(fēng)險(xiǎn) 擴(kuò)展性差:當(dāng)對(duì)等關(guān)系變多,配置工作繁瑣 2.3 示例配置(Cisco 風(fēng)格)bash 復(fù)制編輯
    發(fā)表于 06-24 06:57

    靈活且擴(kuò)展系統(tǒng)電源管理集成電路PMIC DA9061-A數(shù)據(jù)手冊(cè)

    造就了種高能效的系統(tǒng)解決方案,適用于信息娛樂、遠(yuǎn)程信息處理和高級(jí)駕駛輔助系統(tǒng)(ADAS)等應(yīng)用領(lǐng)域。 *附件:靈活且擴(kuò)展
    的頭像 發(fā)表于 04-01 16:02 ?415次閱讀
    靈活且<b class='flag-5'>可</b><b class='flag-5'>擴(kuò)展</b>的<b class='flag-5'>系統(tǒng)</b>電源管理集成電路PMIC DA9061-A數(shù)據(jù)手冊(cè)

    訊維高清互動(dòng)教育錄播系統(tǒng):引領(lǐng)教育信息化新篇章!

    ,成為網(wǎng)上實(shí)時(shí)直播、點(diǎn)播的學(xué)習(xí)資源,供全校師生使用。這不僅方便了學(xué)生的學(xué)習(xí),也使得優(yōu)質(zhì)教學(xué)資源得以共享,提高了教學(xué)質(zhì)量。訊維高清互動(dòng)教育錄播系統(tǒng)作為行業(yè)內(nèi)的佼佼者,以其獨(dú)特的優(yōu)勢(shì)為教育信息化帶來了新的突破。
    的頭像 發(fā)表于 02-10 14:57 ?353次閱讀

    開源項(xiàng)目!手把手教你制作個(gè)互動(dòng)式LED墻壁時(shí)鐘!

    在這篇教程中,將教你使用Arduino創(chuàng)建個(gè)互動(dòng)式LED墻壁時(shí)鐘。這個(gè)項(xiàng)目結(jié)合了創(chuàng)意和技術(shù),設(shè)計(jì)出個(gè)功能性強(qiáng)且視覺效果驚人的時(shí)鐘,它配
    發(fā)表于 02-08 17:47

    擴(kuò)展您的串口設(shè)備 EU104數(shù)據(jù)轉(zhuǎn)發(fā)芯片獨(dú)立設(shè)置通訊速率和參數(shù) 將1個(gè)UART接口擴(kuò)展為4個(gè)

    擴(kuò)展您的串口設(shè)備 EU104數(shù)據(jù)轉(zhuǎn)發(fā)芯片獨(dú)立設(shè)置通訊速率和參數(shù) 將1個(gè)UART接口擴(kuò)展為4個(gè) EU104是
    的頭像 發(fā)表于 12-23 11:27 ?419次閱讀

    迅為RK3568開發(fā)板傳統(tǒng)分區(qū)和定制擴(kuò)展分區(qū)鏡像對(duì)比

    存在冗余,無法高效利用存儲(chǔ)空間。 定制擴(kuò)展分區(qū) 鏡像特性概述: (1)多設(shè)備共享與動(dòng)態(tài)適配:個(gè)鏡像即可覆蓋多個(gè)硬件型號(hào)。 (2)設(shè)備樹插件與模塊化更新:支持
    發(fā)表于 11-19 10:50

    動(dòng)態(tài)無功補(bǔ)償?shù)娜?b class='flag-5'>個(gè)必要條件

    在現(xiàn)代電力系統(tǒng)中,電能的有效利用是保證經(jīng)濟(jì)發(fā)展的重要因素。然而,隨著電力需求的增加和非線性負(fù)載的普遍出現(xiàn),電力系統(tǒng)面臨的挑戰(zhàn)也日益嚴(yán)峻。動(dòng)態(tài)無功補(bǔ)償作為種提高
    的頭像 發(fā)表于 11-12 14:05 ?642次閱讀
    <b class='flag-5'>動(dòng)態(tài)</b>無功補(bǔ)償?shù)娜?b class='flag-5'>個(gè)</b>必要條件

    如何構(gòu)建個(gè)高效、安全、擴(kuò)展的跨工廠IoT平臺(tái)?

    的重要途徑。本文旨在探討如何構(gòu)建個(gè)高效、安全、擴(kuò)展的跨工廠IoT平臺(tái),以實(shí)現(xiàn)多工廠間的無縫集成與智能化管理。 、跨工廠IoT平臺(tái)的需求
    的頭像 發(fā)表于 10-25 17:21 ?485次閱讀

    第三代功率半導(dǎo)體器件動(dòng)態(tài)可靠性測(cè)試系統(tǒng)

    ,Dynamic high-temperature reverse bias)。KC-3105 測(cè)試系統(tǒng)同時(shí)完成HTRB和DHTRB測(cè)試,整體架構(gòu)模塊化,通訊協(xié)議、通訊接口等采用統(tǒng)標(biāo)準(zhǔn),便于后期
    發(fā)表于 10-17 17:09

    種適用于動(dòng)態(tài)環(huán)境的實(shí)時(shí)視覺SLAM系統(tǒng)

    既能保證效率和精度,又無需GPU,行業(yè)第一個(gè)達(dá)到此目標(biāo)的視覺動(dòng)態(tài)SLAM系統(tǒng)。
    的頭像 發(fā)表于 09-30 14:35 ?1342次閱讀
    <b class='flag-5'>一</b>種適用于<b class='flag-5'>動(dòng)態(tài)</b>環(huán)境的實(shí)時(shí)視覺SLAM<b class='flag-5'>系統(tǒng)</b>

    擴(kuò)展PMIC NVM更新指南

    電子發(fā)燒友網(wǎng)站提供《擴(kuò)展PMIC NVM更新指南.pdf》資料免費(fèi)下載
    發(fā)表于 09-06 11:20 ?0次下載
    <b class='flag-5'>可</b><b class='flag-5'>擴(kuò)展</b>PMIC NVM更新指南

    適用于擴(kuò)展系統(tǒng)的高效、無代碼、無傳感器BLDC電機(jī)驅(qū)動(dòng)器

    電子發(fā)燒友網(wǎng)站提供《適用于擴(kuò)展系統(tǒng)的高效、無代碼、無傳感器BLDC電機(jī)驅(qū)動(dòng)器.pdf》資料免費(fèi)下載
    發(fā)表于 08-29 11:11 ?1次下載
    適用于<b class='flag-5'>可</b><b class='flag-5'>擴(kuò)展</b><b class='flag-5'>系統(tǒng)</b>的高效、無代碼、無傳感器BLDC電機(jī)驅(qū)動(dòng)器

    發(fā)干貨,篇文章教會(huì)你如何利用PCIe擴(kuò)展SSD硬盤存儲(chǔ)

    擴(kuò)展能力,在眾多領(lǐng)域熠熠生輝。對(duì)于追求極致性能與擴(kuò)展性的服務(wù)器愛好者而言,主板上普遍配備的至少個(gè)PCIe插槽,無疑為他們提供了
    的頭像 發(fā)表于 08-02 16:02 ?1802次閱讀
    來<b class='flag-5'>一</b>發(fā)干貨,<b class='flag-5'>一</b>篇文章教會(huì)你如何利用PCIe<b class='flag-5'>擴(kuò)展</b>SSD硬盤存儲(chǔ)

    閉環(huán)增益對(duì)系統(tǒng)動(dòng)態(tài)性能的影響

    在自動(dòng)控制系統(tǒng)中,閉環(huán)控制作為種重要的控制方式,通過引入反饋機(jī)制來調(diào)整系統(tǒng)的輸出,使其更好地適應(yīng)外部環(huán)境的變化。閉環(huán)增益作為閉環(huán)控制系統(tǒng)中的
    的頭像 發(fā)表于 07-30 10:05 ?3826次閱讀