美文网首页性能测试Android性能优化安卓开发
一步一步实现简单安卓性能监控SDK之回顾安卓编译过程

一步一步实现简单安卓性能监控SDK之回顾安卓编译过程

作者: 孔祥子看天下 | 来源:发表于2017-03-27 18:11 被阅读96次

    该篇文章是系列<一步一步实现简单安卓性能监控SDK>第一篇文章,欢迎关注!

    从一幅图片说起

    学过安卓开发的人,特别是自己曾经写过安卓自定义打包插件的开发者,对于如下的图片肯定是不会陌生!

    APK编译过程.png

    由于自己编写app打包插件需要对app编译过程中的几乎每一个细节都要了解。我们开发性能监控sdk也是如此。我们从以下几个角度来看。每一个阶段做了什么? 使用了什么工具? 输入是什么输出是什么?

    过程分析

    我们根据图片,从左到右,从上往下的顺序。

    Android资源打包

    工具 : 工具AAPT
    描述:编译资源文件为java索引文件
    输入:android resource。包括res文件夹,assert文件夹中的内容以及AndroidMenifest.xml文件中。
    输出:R.java 、以及bin目录下面的resource_

    AIDL文件处理

    工具:编译器
    描述:处理AIDL接口定义为Java文件
    输入:源码文件、aidl文件、framework.aidl文件
    输出 : java文件

    编译java源代码为class文件

    工具:编译器
    描述:编译java源代码为class文件,包括源代码以及过程中生成的java代码,例如R.java
    输入:java源文件
    输出:class文件

    dx处理class文件为davik支持的字节码文件

    工具:dx命令
    描述: dx处理class文件为davik支持的字节码文件。这些文件包括自己的源码生成的class 以及 第三人jar包中的class文件
    输入:class文件
    输出:dex文件

    打包所有资源为未签名的apk

    工具: apkbuilder
    描述:把apk所需的资源,例如resource、dex文件、AndroidMenifest.xml so文件等等,这些资源打包。
    输入:resource、dex文件、AndroidMenifest.xml so文件等等
    输出:未签名apk

    签名apk

    工具;jarsigner
    描述:对apk文件签名
    输入 :未签名APK
    输出 :签名APK

    对齐

    工具:zipalign
    描述:对apk进行优化、对齐。不优化,有些市场是不让上传的!
    输入:未对齐apk
    输出:对齐APK

    大概就这样,性能监控apk如果要做到自动埋点。需要对整个过程聊熟于心!!!

    相关文章

      网友评论

        本文标题:一步一步实现简单安卓性能监控SDK之回顾安卓编译过程

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