色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

一個可動態擴展的互動系統

張康康 ? 2018-11-01 13:39 ? 次閱讀

作者 | 移動Team景生善

整理 | 包包

背景

動態化作為移動端的一個重要技術分支,一直是大家積極探索的方向。目前移動端流行的動態化方案有,Facebook的React Native,阿里的Weex,它們都是采用了JavaScript與Native之間的橋接,使JavaScript開發的App擁有近似于原生應用的性能。

其他的一些動態化方案,像歷史悠久的WaxPatch動態化方案,已經被App Store禁止的JSPatch,阿里的LuaView,騰訊的OCS,滴滴的DynamicCocoa。

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

通過對比幾種動態化方案,最后選擇阿里的LuaView方案來實現平臺的SDK。LuaView是由lua與Native控件之間的橋接來實現的,相對于其他解決方案來說,是一個輕量級的解決方案。而且Lua語言可擴展性強、簡單、高效、占用體積小、啟動速度快、學習簡單等諸多優勢,有著許多成功案例,是動態化方案首選。

LuaView設計原則

LuaView以UI視圖構建能力為基礎,實現了原生Native UI橋接到Lua Api,使用Lua腳本語言開發應用功能,同時能夠達到原生應用的性能和效果。


LuaView SDK整體架構(注:圖片來自于《LuaView:基于Lua的移動端跨平臺動態化方案》)

如圖,LuaView SDK的整體架構可以表示為五層。

第一、二層依次是OS層和Framework層,分別代表了AndroidiOS以及對應的系統框架層。

第三層有Lua虛擬機,腳本管理模塊和安全控制模塊。Android使用的是LuaJ虛擬機,iOS使用的是LuaC虛擬機,這兩個虛擬機都是目前兩種語言中用的最廣泛,最穩定的虛擬機。腳本管理模塊負責Lua腳本的管理,包括腳本的解包、驗證、加解密、解壓縮等工作。安全控制模塊負責Lua腳本的安全校驗工作,包括腳本完整性校驗和腳本安全校驗等。

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

最上層是Lua業務腳本以及Lua層的lib庫。

LuaView的兩個重要的設計原則

兩端一致性

LuaView的一條重要設計原則就是iOS和Android兩端邏輯只寫一份代碼,API設計的時候考慮了兩端的共性,對于兩端不同的地方,則由Native部分實現。現在,LuaView SDK中Lua API基本完成兩端接口的統一,保證API一致性,同一份腳本在兩端運行的結果也是相同的。


(注:圖片來自于《LuaView:基于Lua的移動端跨平臺動態化方案》)

簡單易用

LuaView的另一個設計原則是保持Lua語言的簡單和易用。在核心UI庫上,所有的API做到精簡,盡量使用腳本實現避免使用Native實現。所有API使用Lua原生語法,并且兩端的接口保持一致風格,方便開發。

OSLua

OSLua是一款針對視頻的互動娛樂的SDK,添加到視頻系統中,給視頻賦能,既可以增加視頻的收入,也可以增加視頻的娛樂性。OSLua SDK是在LuaView SDK的基礎上,擴展了VP UI和VP Non-UI,以及添加了視頻互動娛樂模塊。OSLua使用LuaView的動態化,可以動態的添加新的互動娛樂模塊,以及修改現有的互動娛樂模塊。

1540890835599bff5ee5515


OSLua整體架構

OSLua首先會對比本地版本和服務器版本,若是兩個版本不一致,將服務器版本更新到本地,并寫入本地文件Cache中。在系統運行互動娛樂模塊時,LuaCore按照模板的文件名,在文件Cache中查找,找到腳本文件以后,即可加載運行腳本文件,展示具體的互動類型。具體的流程如下:

154089083588493a8e5688b


OSLua運行流程

模板

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

1540890835603985aa9f442


OSLua模板參數

后續

OS Lua還在不斷完善,豐富Native到Lua的橋接,以及增加新的互動娛樂模板,最終將會發展為一個性能穩定,功能豐富的視頻增值SDK。

參考

1. LuaView:基于Lua的移動端跨平臺動態化方案

2. React Native中文網

3. Weex

4. OCS ——史上最瘋狂的iOS 動態化方案

5. 滴滴iOS 動態化方案DynamicCocoa 的誕生與起航


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 移動端
    +關注

    關注

    0

    文章

    42

    瀏覽量

    4442
  • 系統
    +關注

    關注

    1

    文章

    1019

    瀏覽量

    21409
收藏 人收藏

    評論

    相關推薦

    擴展您的串口設備 EU104數據轉發芯片獨立設置通訊速率和參數 將1UART接口擴展為4

    擴展您的串口設備 EU104數據轉發芯片獨立設置通訊速率和參數 將1UART接口擴展為4 EU104是
    的頭像 發表于 12-23 11:27 ?125次閱讀

    迅為RK3568開發板傳統分區和定制擴展分區鏡像對比

    存在冗余,無法高效利用存儲空間。 定制擴展分區 鏡像特性概述: (1)多設備共享與動態適配:鏡像即可覆蓋多個硬件型號。 (2)設備樹插件與模塊化更新:支持
    發表于 11-19 10:50

    動態無功補償的三必要條件

    在現代電力系統中,電能的有效利用是保證經濟發展的重要因素。然而,隨著電力需求的增加和非線性負載的普遍出現,電力系統面臨的挑戰也日益嚴峻。動態無功補償作為種提高
    的頭像 發表于 11-12 14:05 ?252次閱讀
    <b class='flag-5'>動態</b>無功補償的三<b class='flag-5'>個</b>必要條件

    如何構建高效、安全、擴展的跨工廠IoT平臺?

    的重要途徑。本文旨在探討如何構建高效、安全、擴展的跨工廠IoT平臺,以實現多工廠間的無縫集成與智能化管理。 、跨工廠IoT平臺的需求
    的頭像 發表于 10-25 17:21 ?243次閱讀

    大屏數字互動墻軟件 液晶拼接屏互動軟件 LED大屏交互軟件

    在這個數字化浪潮洶涌的時代,各種數字多媒體互動設備不斷出現,為數字展覽提供了眾多不樣的展示與互動效果,大屏數字互動墻軟件,為觀眾提供了諸多新鮮的
    的頭像 發表于 10-23 17:19 ?335次閱讀
    大屏數字<b class='flag-5'>互動</b>墻軟件 液晶拼接屏<b class='flag-5'>互動</b>軟件 LED大屏交互軟件

    第三代功率半導體器件動態可靠性測試系統

    ,Dynamic high-temperature reverse bias)。KC-3105 測試系統同時完成HTRB和DHTRB測試,整體架構模塊化,通訊協議、通訊接口等采用統標準,便于后期
    發表于 10-17 17:09

    種適用于動態環境的實時視覺SLAM系統

    既能保證效率和精度,又無需GPU,行業第一個達到此目標的視覺動態SLAM系統
    的頭像 發表于 09-30 14:35 ?611次閱讀
    <b class='flag-5'>一</b>種適用于<b class='flag-5'>動態</b>環境的實時視覺SLAM<b class='flag-5'>系統</b>

    動態隨機存儲器的定義和工作原理

    以維持數據穩定而被稱為“動態”存儲器。作為計算機系統中的主要內存類型之,DRAM以其高性價比和擴展性成為現代計算機主存的主要組成部分。
    的頭像 發表于 09-26 16:34 ?1875次閱讀
    <b class='flag-5'>動態</b>隨機存儲器的定義和工作原理

    擴展PMIC NVM更新指南

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

    適用于擴展系統的高效、無代碼、無傳感器BLDC電機驅動器

    電子發燒友網站提供《適用于擴展系統的高效、無代碼、無傳感器BLDC電機驅動器.pdf》資料免費下載
    發表于 08-29 11:11 ?1次下載
    適用于<b class='flag-5'>可</b><b class='flag-5'>擴展</b><b class='flag-5'>系統</b>的高效、無代碼、無傳感器BLDC電機驅動器

    發干貨,篇文章教會你如何利用PCIe擴展SSD硬盤存儲

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

    閉環增益對系統動態性能的影響

    在自動控制系統中,閉環控制作為種重要的控制方式,通過引入反饋機制來調整系統的輸出,使其更好地適應外部環境的變化。閉環增益作為閉環控制系統中的
    的頭像 發表于 07-30 10:05 ?2871次閱讀

    閑置PCIe插槽也能利用起來,輕松抽取的SATA硬盤擴展

    電腦中的的PCIe擴充槽位,來新增額外的硬盤,不僅擴充了資料儲存空間,也為使用者帶來更有效率的儲存空間以及其他選項的解決方案。MB839SP-B將PCIe插槽轉換為熱插拔
    的頭像 發表于 06-14 14:43 ?796次閱讀
    閑置PCIe插槽也能利用起來,<b class='flag-5'>一</b>款<b class='flag-5'>可</b>輕松抽取的SATA硬盤<b class='flag-5'>擴展</b>卡

    求助:請教動態稱重問題

    開發了動態稱重產品,在線使用的時候,精度比較差,始終找不到問題在哪里,有沒有開發過動態稱重的高手指點下。有償!
    發表于 03-14 11:26

    什么是動態線程池?動態線程池的簡單實現思路

    因此,動態監控線程池種針對以上痛點開發的線程池管理工具。主要實現功能有:提供對 Spring 應用內線程池實例的全局管控、應用運行時動態
    的頭像 發表于 02-28 10:42 ?712次閱讀
    主站蜘蛛池模板: 91偷偷久久做嫩草电影院 | 98久久无码一区人妻A片蜜 | 黑人 尺寸 强行害怕 痛哭 | 国产中文视频无码成人精品 | 日日啪无需播放器 | 久久视频精品38线视频在线观看 | 亚洲精品久久久无码一区二区 | 国产精品黄色大片 | 色偷偷777 | 囯产免费精品一品二区三区视频 | 无码人妻精品一区二区蜜桃色欲 | 野花视频在线观看免费最新动漫 | 亚洲精品九色在线网站 | 日本漫画母亲口工子全彩 | 精品手机在线视频 | 欧美日韩永久久一区二区三区 | 富婆夜店找黑人猛男BD在线 | 99热这里只就有精品22 | 四虎国产精品永久一区高清 | 久久久无码精品无码国产人妻丝瓜 | 日本特交大片免费观看 | 欧美激情一区二区三区四区 | 色噜噜2017最新综合 | 国产精品国产三级国产AV麻豆 | 色婷婷综合激情中文在线 | 欧美 亚洲 日韩 在线综合 | 久久精品无码成人国产毛 | 精品国产乱码久久久久久下载 | 最新2017年韩国伦理片在线 | 精品无码国产AV一区二区三区 | 性夜影院午夜看片 | 精品国产乱码久久久久久软件 | 亚洲不卡视频 | 成人毛片免费在线观看 | 久久99re热在线播放7 | 99婷婷久久精品国产一区二区 | 末成年美女黄网站色大片连接 | 欧美日韩免费播放一区二区 | 永久免费精品影视网站 | TUBE19UP老师学生 | 人妻洗澡被强公日日澡 |