99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

電子發(fā)燒友App

硬聲App

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

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

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>Shadow騰訊的Android插件框架

Shadow騰訊的Android插件框架

2022-06-13 | zip | 1.63 MB | 次下載 | 2積分

資料介紹

授權(quán)協(xié)議 BSD
開(kāi)發(fā)語(yǔ)言 Kotlin Java
軟件類(lèi)型 開(kāi)源軟件
所屬分類(lèi) 手機(jī)/移動(dòng)開(kāi)發(fā)、 Android UI 組件

軟件簡(jiǎn)介

Shadow是一個(gè)騰訊自主研發(fā)的Android插件框架,經(jīng)過(guò)線上億級(jí)用戶(hù)量檢驗(yàn)。 Shadow不僅開(kāi)源分享了插件技術(shù)的關(guān)鍵代碼,還完整的分享了上線部署所需要的所有設(shè)計(jì)。

與市面上其他插件框架相比,Shadow主要具有以下特點(diǎn):

  • 復(fù)用獨(dú)立安裝App的源碼:插件App的源碼原本就是可以正常安裝運(yùn)行的。
  • 零反射無(wú)Hack實(shí)現(xiàn)插件技術(shù):從理論上就已經(jīng)確定無(wú)需對(duì)任何系統(tǒng)做兼容開(kāi)發(fā),更無(wú)任何隱藏API調(diào)用,和Google限制非公開(kāi)SDK接口訪問(wèn)的策略完全不沖突。
  • 全動(dòng)態(tài)插件框架:一次性實(shí)現(xiàn)完美的插件框架很難,但Shadow將這些實(shí)現(xiàn)全部動(dòng)態(tài)化起來(lái),使插件框架的代碼成為了插件的一部分。插件的迭代不再受宿主打包了舊版本插件框架所限制。
  • 宿主增量極小:得益于全動(dòng)態(tài)實(shí)現(xiàn),真正合入宿主程序的代碼量極小(15KB,160方法數(shù)左右)。
  • Kotlin實(shí)現(xiàn):core.loader,core.transform核心代碼完全用Kotlin實(shí)現(xiàn),代碼簡(jiǎn)潔易維護(hù)。

支持特性

  • 四大組件
  • Fragment(代碼添加和Xml添加)
  • DataBinding(無(wú)需特別支持,但已驗(yàn)證可正常工作)
  • 跨進(jìn)程使用插件Service
  • 自定義Theme
  • 插件訪問(wèn)宿主類(lèi)
  • So加載
  • 分段加載插件(多Apk分別加載或多Apk以此依賴(lài)加載)
  • 一個(gè)Activity中加載多個(gè)Apk中的View
  • 等等……

編譯與開(kāi)發(fā)環(huán)境

環(huán)境準(zhǔn)備

第一次clone Shadow的代碼到本地后,建議先在命令行編譯一次。

  • 在編譯前,必須設(shè)置ANDROID_HOME環(huán)境變量。
  • 在編譯時(shí),必須使用gradlew腳本,以保證采用了項(xiàng)目配置的Gradle版本。

在命令行測(cè)試編譯時(shí)可以執(zhí)行這個(gè)任務(wù):

./gradlew build

如果沒(méi)有出錯(cuò),再?lài)L試用Android Studio打開(kāi)工程。

  • 必須使用3.4或更高版本的Android Studio打開(kāi)工程。(業(yè)務(wù)插件開(kāi)發(fā)時(shí)沒(méi)有限制)
  • 必須關(guān)閉Android Studio的Instant Run功能。

然后就可以在IDE中選擇sample-host模塊直接運(yùn)行了。

?

Shadow的所有代碼都位于projects目錄下的3個(gè)目錄,分別是:

  • sdk包含SDK的所有代碼
  • test包含SDK的自動(dòng)化測(cè)試代碼
  • sample包含演示代碼

其中sample應(yīng)該是大家體驗(yàn)Shadow的最佳環(huán)境。 詳見(jiàn)sample目錄中的README介紹。

自己寫(xiě)的測(cè)試代碼出錯(cuò)?

以我們多年的插件環(huán)境下業(yè)務(wù)開(kāi)發(fā)經(jīng)驗(yàn),插件框架是不可能一步到位實(shí)現(xiàn)完美的。 因此,我們相信大部分業(yè)務(wù)在接入時(shí)都是需要一定的二次開(kāi)發(fā)工作。 Shadow現(xiàn)有的代碼滿(mǎn)足的是我們自己的業(yè)務(wù)現(xiàn)在的需求。得益于全動(dòng)態(tài)的設(shè)計(jì), 插件框架和插件本身都是動(dòng)態(tài)發(fā)布的,插件包里既有插件代碼也有插件框架代碼, 所以可以根據(jù)新版本插件的需要同時(shí)開(kāi)發(fā)插件框架。

例如,ShadowActivity沒(méi)有實(shí)現(xiàn)全所有Activity方法,你寫(xiě)的測(cè)試代碼可能用到了, 就會(huì)出現(xiàn)Method Not Found錯(cuò)誤,只需要在ShadowActivity中實(shí)現(xiàn)對(duì)應(yīng)方法就可以了。 大部分方法的實(shí)現(xiàn)都只是需要簡(jiǎn)單的轉(zhuǎn)調(diào)就能工作正常。

如果遇到不會(huì)實(shí)現(xiàn)的功能,可以提Issue。最好附上測(cè)試代碼。

后續(xù)開(kāi)發(fā)

  • 原理與設(shè)計(jì)說(shuō)明文檔
  • 多插件支持的演示工程
  • 自動(dòng)化測(cè)試用例補(bǔ)充
  • 開(kāi)源包含下載能力的manager實(shí)現(xiàn)
?

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評(píng)估板參考手冊(cè)
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開(kāi)發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊(cè)
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書(shū))
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)