美文网首页
移动端SDK的优化之路1

移动端SDK的优化之路1

作者: 钢镚koala | 来源:发表于2021-03-08 11:04 被阅读0次

    本文转载来自『移动开发前线』公众号。

    嘉宾介绍

    沈哲,擅长移动端、互联网后端技术,曾经在安硕信息、decarta(已被uber收购)、京东商城等国内外知名软件公司、互联网公司工作。开发过decarta第一款地图导航app,今夜酒店特价app,负责过京东到家上海的移动端团队。现负责魔窗移动端团队,负责研发魔窗的sdk以及移动端相关产品。

    魔窗是基于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。

    Image

    相关文章

      网友评论

          本文标题:移动端SDK的优化之路1

          本文链接:https://www.haomeiwen.com/subject/wzlpqltx.html