zoukankan      html  css  js  c++  java
  • android技能树

    1.插件化

    插件化技术是Android技术领域的集大成者。基于插件化技术,企业可以随时发布新功能、修复线上bug,而不需要重新发版。
    ②本解决方案将提供动态替换、静态代理两种成熟的插件化实现方式,企业可以根据自身实际情况,决定在项目中采取哪一种。
    ③在提供插件化框架的同时,还将提供增量更新、服务器插件安全下发等一揽子解决方案。

     

    2.热修复 
      目前有AndFix、Robust、Tinker等多种热修复解决方案

    3.组件化和模块化

       组件化:当团队规模快速增长时,就该面临多人协作开发的问题。本方案将对原先功能强大的Android App程序按照独立的业务线进行拆分,并通过Maven进行依赖管理,大幅提高代码调试时的编译速度。不同业务线的Android开发人员,在不同的Git仓库上编写代码,开发效率大幅提升。

    4.定制化
     
    5.持续集成

    在Github上采取主干开发、分支修bug并上线的持续集成策略

    基于Gradle+Jenkins的快速继承模型,以确保Android项目每日自动构建,质量得到充分保障

    引入Freeline,将Android每次打包的时间降低到秒级

     
    6.网络底层封装

    7.android优化(性能优化 +瘦身)

    ①性能优化(leakCanary+过度宣览)

    leakCanary缺点 一次只能一个

    A.内存泄露问题
    B.ANR问题
    C.OOM问题
    D.Android网络访问优化
    E.Android布局的性能问题
    F.Android耗电问题
    G.Android流畅度问题
    H.ListView性能优化

    ②瘦身:

    App越做越大,是每个App都面临的问题。

    图片优化,是App瘦身的一个主要方向。如果巧妙的对图片进行压缩,是本方案的一个重要课题。

    代码瘦身,是Android App瘦身的另一个方向,包括检查冗余代码、检查相似代码,原生代码转Hybrid等多种解决方案。

    8.图片显示的最佳实践

    App中最难做的页面是列表页,列表页中最难做的是图片,尤其是上拉分页时下载大量图片到内存中,是导致OOM的罪魁祸首。

    目前业内毕竟成熟的解决方案是Fresco和ImageLoader。

    Fresco能有效处理Android2.3系统的内存回收问题。而且能高效给图片添加圆角。

    9.注解编程

    10.跨平台混合编程

    跨平台混合编程能实现一次编程,多处运行。

    本解决方案包括Hybrid和React Native两种业内成熟的实现方式。企业可以根据自身实际情况,来选择合适的解决方案。

    Hybrid是早期的跨平台编程解决方案,覆盖增量更新、离线包等若干技术,但缺点是JS代码在Webview上运行,执行效率差。ReactNative则在Hybrid的基础之上,可以在运行时把JS代码翻译成系统原生语言,执行效率大幅提升。

  • 相关阅读:
    java异常
    Map集和
    获取每个字符出现的次数
    从1-33号球中选取6个红球,且红球数字最多重复不超过3个 从1-16号球中选取一个篮球 由红球和蓝球共同组成一个双色球号码,且红球在左边(按照升序排列),篮球在右边。
    gitlab介绍及使用
    Maven使用介绍
    IDEA集成开发环境安装git,修改代码后文件变色代表的含义
    大数据相关
    开源镜像站汇总
    MySQL配置文件详解
  • 原文地址:https://www.cnblogs.com/ganchuanpu/p/6995824.html
Copyright © 2011-2022 走看看