热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

安卓APK专项测试包体优化

测试从0到1网络探讨会议,已开展将近半年多了,收获了很多知识,开始慢慢整理,主要是从我的角度获得的收获,今天我


      测试从0到1网络探讨会议,已开展将近半年多了,收获了很多知识,开始慢慢整理,主要是从我的角度获得的收获,今天我就总结第一个收获如何做安卓apk包体优化专项测试,这个之前没做过也没听过用什么工具,然后在一期网络探讨会议主题app专项测试提到了ApkChecker,我就赶紧拿起笔记本记录起来,进行了解和查找,实践,真的就是发现挺多问题,实打实的收获。收获可不能我一个人独享,就分享出来~

 ApkCheck是Matrix(APM)系统一部分,以一个单独jar形式存在,根据设定好的规则检测 Apk 是否存在特定的问题,并输出较为详细的检测结果报告,用于分析排查问题以及版本追踪;ApkChecker 一共有14个Task,包括:5项安装包基础信息的扫描 以及 9项针对特定问题的扫描;至于14个Task具体内容,就请自己百度吧,包括以下的测试步骤,你们百度也是有很多的。话不多说,ApkChecker工具使用如下:

步骤:

1.下载apkCheck jar包和配置文件:

下载地址:

链接:https://pan.baidu.com/s/18JudXHg9X_jmvpe6NMfKrQ

提取码:k0ts

2.在本地电脑英文路径下,建立matrix/origin文件夹,也就是要建立两个文件夹

3.准备好解析的apk包,mapping.txt,R.txt项目路径:

apk包:\app\build\outputs\apk\wap\release\

mapping.txt:\app\build\outputs\mapping\wap\release\

R.txt:\app\build\intermediates\symbols\wap\release

其中wap\release 具体根据打包类型而生成路径。获取到这三个文件以后,放到matrix/origin文件夹下,这些都可以直接找开发要就行了;

4.建立个config.json,里面内容如下:(可自行百度)

"--apk":解析apk的绝对路径

"--mappingTxt":mapping文件的绝对路径

"--output":输出报告的文件名,填写绝对路径

"--unzip":临时生成报告的文件名,填写绝对路径

"--format":生成报告的格式,一般都是json跟html,便于查看

"name":添加解析apk包名"package":添加解析apk包名

"--rTxt":R.txt文件的绝对路径”

"name":"-fileSize","--min":"20",限制文件大小

具体看下载的configDemo.json;(具体可以根据实际配置)

5.把下载的matrix-apk-canary-0.6.5.jar放到matrix文件夹里面;

6.打开终端,也就是dos模式,进入到matrix文件下,运行命令 java -jar matrix-apk-canary-0.6.5.jar --config  +config的绝对路径

7.测试结束以后,matrix会产生两个文件,apk-checker-result.html和apk-checker-result.json,点击apk-checker-result.html就可以查看报告;

整体就是关于测试apk是否能“瘦身”的方法,具体是不是有问题,可以关注下是否文件重复过多,是否没有被使用,被压缩,混淆等进行问题定位,这个最好跟开发进行探讨,第一次测试完,保存数据,然后优化后,进行对比测试,以判断优化效果~后续就要配合CI进行apk包诊断并做历史数据进行对比或集成到平台作为专项测试内容,来提高和优化产品质量;


推荐阅读
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • Node.js学习笔记(一)package.json及cnpm
    本文介绍了Node.js中包的概念,以及如何使用包来统一管理具有相互依赖关系的模块。同时还介绍了NPM(Node Package Manager)的基本介绍和使用方法,以及如何通过NPM下载第三方模块。 ... [详细]
  • VScode格式化文档换行或不换行的设置方法
    本文介绍了在VScode中设置格式化文档换行或不换行的方法,包括使用插件和修改settings.json文件的内容。详细步骤为:找到settings.json文件,将其中的代码替换为指定的代码。 ... [详细]
  • 原文地址:https:www.cnblogs.combaoyipSpringBoot_YML.html1.在springboot中,有两种配置文件,一种 ... [详细]
  • baresip android编译、运行教程1语音通话
    本文介绍了如何在安卓平台上编译和运行baresip android,包括下载相关的sdk和ndk,修改ndk路径和输出目录,以及创建一个c++的安卓工程并将目录考到cpp下。详细步骤可参考给出的链接和文档。 ... [详细]
  • flowable工作流 流程变量_信也科技工作流平台的技术实践
    1背景随着公司业务发展及内部业务流程诉求的增长,目前信息化系统不能够很好满足期望,主要体现如下:目前OA流程引擎无法满足企业特定业务流程需求,且移动端体 ... [详细]
  • Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOMEbinjava–option来启 ... [详细]
  • 本文讨论了Kotlin中扩展函数的一些惯用用法以及其合理性。作者认为在某些情况下,定义扩展函数没有意义,但官方的编码约定支持这种方式。文章还介绍了在类之外定义扩展函数的具体用法,并讨论了避免使用扩展函数的边缘情况。作者提出了对于扩展函数的合理性的质疑,并给出了自己的反驳。最后,文章强调了在编写Kotlin代码时可以自由地使用扩展函数的重要性。 ... [详细]
  • 使用正则表达式爬取36Kr网站首页新闻的操作步骤和代码示例
    本文介绍了使用正则表达式来爬取36Kr网站首页所有新闻的操作步骤和代码示例。通过访问网站、查找关键词、编写代码等步骤,可以获取到网站首页的新闻数据。代码示例使用Python编写,并使用正则表达式来提取所需的数据。详细的操作步骤和代码示例可以参考本文内容。 ... [详细]
  • 本文讨论了在手机移动端如何使用HTML5和JavaScript实现视频上传并压缩视频质量,或者降低手机摄像头拍摄质量的问题。作者指出HTML5和JavaScript无法直接压缩视频,只能通过将视频传送到服务器端由后端进行压缩。对于控制相机拍摄质量,只有使用JAVA编写Android客户端才能实现压缩。此外,作者还解释了在交作业时使用zip格式压缩包导致CSS文件和图片音乐丢失的原因,并提供了解决方法。最后,作者还介绍了一个用于处理图片的类,可以实现图片剪裁处理和生成缩略图的功能。 ... [详细]
  • 本文介绍了如何使用JSONObiect和Gson相关方法实现json数据与kotlin对象的相互转换。首先解释了JSON的概念和数据格式,然后详细介绍了相关API,包括JSONObject和Gson的使用方法。接着讲解了如何将json格式的字符串转换为kotlin对象或List,以及如何将kotlin对象转换为json字符串。最后提到了使用Map封装json对象的特殊情况。文章还对JSON和XML进行了比较,指出了JSON的优势和缺点。 ... [详细]
  • 本文介绍了OkHttp3的基本使用和特性,包括支持HTTP/2、连接池、GZIP压缩、缓存等功能。同时还提到了OkHttp3的适用平台和源码阅读计划。文章还介绍了OkHttp3的请求/响应API的设计和使用方式,包括阻塞式的同步请求和带回调的异步请求。 ... [详细]
  • OpenCV4.5.0+contrib编译流程及解决错误方法
    本文介绍了OpenCV4.5.0+contrib的编译流程,并提供了解决常见错误的方法,包括下载失败和路径修改等。同时提供了相关参考链接。 ... [详细]
  • 微信官方授权及获取OpenId的方法,服务器通过SpringBoot实现
    主要步骤:前端获取到code(wx.login),传入服务器服务器通过参数AppID和AppSecret访问官方接口,获取到OpenId ... [详细]
  • 本文介绍了解决java开源项目apache commons email简单使用报错的方法,包括使用正确的JAR包和正确的代码配置,以及相关参数的设置。详细介绍了如何使用apache commons email发送邮件。 ... [详细]
author-avatar
为你空手的执着
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有