當前位置:股票大全官網 - 財經新聞 - 移動端SDK的優化之路1

移動端SDK的優化之路1

魔窗是基於Deep Link技術的開放平臺,通過提供生態落地最後壹公裏的deep link、跨App store渠道的歸因分析以及場景還原(deferred deep link)等解決方案為App開發者構建壹個去中心化的高效連接時代。最重要的產品就是iOS和Android端的SDK。

sdk優化過程,是壹段血淚史,可以吐槽的地方無數。移動端sdk不像app壹樣方便,sdk發布後出現任何問題,都會影響到很多家的app。不能像壹家app壹樣,可以及時發布壹個hotfix,或者強制升級app,又或者熱更新app。所以sdk發版之前,必須經過嚴格的測試,每壹次sdkhotfix的發布都會對我們的用戶造成嚴重的影響。

sdk的優化,最大的痛點是它的大小。每次對接客戶,他們都會問我們sdk的大小是多少?每當提到iOSsdk時,他們都會說還蠻大的,他們自己家的app都已經幾十M了,接入我們的sdk會增加他們app的大小。所以,不得不開始痛苦的sdk優化之路。

我們主要從以下幾個方面進行優化sdk:

1. 腳本構建

2. 極限優化(網絡、日誌上報、圖片格式等方面優化)

3. 第三方組件替換

4. 小版本穩步叠代

腳本構建

我們從開始開發sdk到目前正在開發中的3.8版本,壹直推崇借助腳本進行自動化打包,例如android使用gradle。借助腳本的好處在於:

1)android sdk混淆

2)自動生成文檔,便於開發者查閱,例如android可以很方便的生成javadoc文檔

3)android sdk上傳aar包,iOS sdk發布到cocoa-pods,便於開發者集成

4)節省人工時間,減少出錯

腳本通常能幫助我們實現很多自動化的事情,能提高工作效率的方法是壹定會被采納的。

接下來我們來看看借助gradle如何實現sdk混淆,核心的task是proguardJar這個task。