- 博客(30)
- 资源 (3)
- 问答 (7)
- 收藏
- 关注
原创 android monkey测试方法实践
上一次已经为大家介绍monkey和它的五种类型的命令(monkey命令详解),下面我们来看看这些命令在实际工作的使用方法。 * 一:monkey的启动与停止monkey的启动很简单,可以通过两种方式来启动monkey命令: 1.PC端启动:adb shell monkey -p packagename -vvv 10002.shell环境中启动:adb shellmonkey -p packa
2017-05-17 20:00:55 767
原创 monkey命令详解
monkey是android系统自带的一款测试工具,它可以来做一些稳定性和随机的测试,monkey是一个命令行工具,它可以运行在任何模拟器实例或设备,它向系统发送伪随机的用户事件流,对被测应用进行压力测试。
2017-05-16 12:15:25 1672
原创 android 静默安装
android实际的自动化测试中,应用的整个测试过程中,我们可能都不要人为的手动干预,譬如apk的安装,我们希望它静默安装,不要人手动去确认等。 如果大家看过我第一篇的文章ADB技能使用初级篇(上),相信大家还记得里面有个pm 命令,接下来我们看看如何通过它实现我们的静默安装功能。 首选需要我们的手机要有root权限,具体的命令如下 ad
2017-04-06 12:07:13 629
原创 ADB技能使用初级篇(上)
作为一名android开发的同学,还是测试开发者,adb命令都是工作中必备的技能,今天主要梳理一下adb的初级使用技能。 adb是什么?,我们来看看Google官方给它的解释: adb (android debug bridge) 是一个通用命令行工具,其允许你与模拟器实例或连接的 Android 设备进行通信。
2017-04-06 10:45:16 901
原创 adb shell 获取版本信息
通过adb shell命令获取安装应用的版本信息 dumpsys package packagename | grep version
2016-07-06 19:56:32 1949
原创 Java监控jvm是否退出
最近在做项目的时候,需要监控一下jvm,在jvm退出的时候做一些清理工作,发现一个方便好用的方法。 Runtime.addShutdownHook void java.lang.Runtime.addShutdownHook(Thread hook) 该方法用来在Jvm中增加一个关闭的钩子,当程序正常退出系统,系统调用System.exit以及虚机退出的时候才会执行addShutd
2016-07-06 18:15:00 2530 1
原创 使用MessageDigest生成MD5的问题
之前在工作中需要使用MD5来判断APK是否是同一个文件,开始服务端和客户端使用MD5的方式是没有问题的,但是随着APK文件越来越多,有一天忽然发现同一个APK客户端和服务端计算的MD5值不相同,导致一些问题,二客户端一直采用BigInteger bigInt = new BigInteger(1, digest.digest());bigInt.toString(16);这种方式来计算,后来通
2016-06-03 15:27:30 3839
原创 service全面解析(二)
前一篇我们分析了service的一些基本知识和用法,service全面解析(一),今天一起来看看如何提高service的进程优先级,跨进程通信的问题。 一:如何将service设置为前台进程: 首先我们简单的来看下Android中的几种进程: 1.前台进程(active process) 前台进程是那种用于和用户交互控件的程序,这些进程Android系统都会极力
2016-06-03 14:57:45 447
原创 service全面解析(一)
Service Android程序的四大组件之一,它与Activity极为相似,它具有自己的生命周期,不同的是它没有Activity 类似的交互界面,不能和用户进行交互,Service运行在后台,它可以和一些组建(Activity)绑定进行本地通信,也可以跨进程通信(AIDL),接下来我们详细看看service的功能。1:启动方式:Service的启动方式可以分为两种形式,第一种只启动一个ser
2016-05-30 19:52:05 640
原创 Android符号表转换
Android中为了保护我们自己辛苦劳作,我们常常会把代码混淆,但是混淆后如果程序出现问题,解崩溃比较麻烦,需要将混淆的log进行解混淆。 首先我们在混淆代码的时候,会生成一个mapping文件,它是混淆前和混淆后代码的对应表,借助Android的retrace.jar我们就可将解混淆。 在adb shell 命令下可以使用命令很容易解混淆,但是目前,我需要在Windows、Linux服
2016-05-12 17:46:22 4339 1
原创 Java使用cookie和session管理用户状态
一个做移动端的,要做服务端的一些工作,没办法,工作还的继续,这就是生活,废话不说,总结一下这一天的东西,逆水行舟,努力,努力。 Java中什么状态管理 一般我们会将浏览器与服务器之间多次的交互当作一个整体来对待,所以将这多次操作所涉及的数据记录保存下来,就是用户状态的一种管理。 Java中状态的管理方式,一般有两种,一种是在cookie的方式,另一种是sess
2016-04-13 12:04:09 978
原创 Android资源----ShapeDrawable
直入主题,程序开发的时候回使用ShapeDrawable在drawable资源下定义,各种图形(圆,矩形等)以及它们的颜色等,这样可以让我们的按钮等比较友好的显示。 首先看看在xml文件中定义方式 1.定义各种图形xmlns:android="http://schemas.android.com/apk/res/android" android:shape="r
2016-04-10 01:55:16 466
原创 Android应用安全防御措施
一:静态代码块分析 使用静态代码分析可以再不运行程序的前期下对程序存在的潜在问题进行分析,如控制内存使用越界等。SDK提供了一个静态代码分析工具lint,这个工具可以再通过扫描工程的所有代码和资源文件后根据所得结果,将检测的问题分为6大类正确性、可用性、安全性、无障碍性、性能、国际化。可以根据问题类型和内容将代码进行修改和优化。二:Android Java代码混淆混淆就是对
2015-12-01 17:24:09 1316
原创 uiautomator解决设置中文问题
我们知道通过uiautomator中UiObject.setText(),可以用来设置文本,可是不知什么缘故Google设计的这个方法只能接收ASCII码,因此直接调用这个方法设置中文当然会错,为此有人专门写了输入法utf7ime专门用来解决这个问题,它是开源的,我们可以在github下载到它的源码https://github.com/sumio/uiautomator-unicode-input
2015-12-01 17:18:14 3019
原创 Zxing框架扫描框大小适配问题
Zxing框架进行二维码扫描时候会发现,随着分辨率的增加,扫描框会越来越小,SurfaceView扫描窗口就看不见了,我们可以自己定义扫描窗口的大小,以及适配屏幕问题。 Zxing包中有个类CameraManager,它是来设置扫描框的大小 扫描框框初始化数值 private static int MIN_FRAME_WIDTH = 240; priva
2015-12-01 17:12:02 6717 5
原创 Android代码混淆常见配置
Android代码混淆常见配置1.manifest中注册的都不能混淆,如果混淆了就找不到了,所以一下类不能被混淆,一般保持原样。-keep public class * extends android.app.Activity-keep public class * extends android.app.Application -keep public class * exten
2015-11-30 21:28:11 700
原创 温故知新之__Java类加载器(一)
我们知道类加载的作用是,它负责将.class文件加载到内存中,.class文件可能在本地磁盘中,或者网络上等,并且为之生成对应的Java.lang.Class对象。当一个类被载入JVM中后,同一个类就不会被再一次载入,那么JVM如何区别“同一个类”? 其实不难想到,在对象中,对象存在一个唯一的标示一样,一个载入JVM的类也有唯一的标示,Java中一个类是使用全限定名(包名+类名)标
2015-10-25 22:52:33 503
转载 android Instrumentation 转载
Android提供了一系列强大的测试工具,它针对Android的环境,扩展了业内标准的JUnit测试框架。尽管你可以使用JUnit测试Android工程,但Android工具允许你为应用程序的各个方面进行更为复杂的测试,包括单元层面及框架层面。Android测试环境的主要特征有:l 可以访问Android系统对象。l Instrumentation框架可以控制和测试
2015-10-19 11:21:45 339
原创 Android 判断EditView是否为密码框
最近在做项目的时候需自动判断,一个登陆页面中EditView是否为密码框,我们可以使用inPutType属性来判断,我们可以利用getInputType()来判断,getInputType == 129时EditView就是一个密码框。
2015-07-16 18:34:37 967
原创 MD5加密文件
这个可以直接使用哦public class MD5Test { public static String getFile(File file) { if (!file.exists() || !file.isFile()) { return null; } MessageDigest dige
2014-11-26 21:22:42 705 2
原创 KeyguardManager详解
KeyguardManager类的概述:这个类于锁定和解锁键盘。 通过调用获取这个类的一个实例getSystemService(java.lang.String)与参数KEYGUARD_SERVICE 。 实际的类来控制键盘锁是KeyguardManager.KeyguardLock 。 内部类KeyguardManager.KeyguardLock:这个类在API级别13被弃用。
2014-11-05 18:36:13 4383
原创 Android实时网络抓取分析方法
云平台已经实现了此功能具体使用方法请参考:知识库《云平台Android实时网络数据分析工具使用说明》对网络中的数据包进行抓取为稍后的分析是很有用的,但如果我们在抓取数据包的同时就能够开展这种分析那将获得更好的效果。这样做的话,开发者能很清晰了解到对每一个测试用例中的请求和应答的数据是哪些。在本文中,将展示如何实时地抓取Android应用联网程序中的数据包,并且将使用著名的网络数据分析利器Wir
2014-11-05 18:08:38 1545 1
转载 Android Handler 机制
一、Android消息机制一 Android 有一种叫消息队列的说法,这里我们可以这样理解:假如一个隧道就是一个消息队列,那么里面的每一部汽车就是一个一个消息,这里我们先忽略掉超车等种种因素,只那么先进隧道的车将会先出,这个机制跟我们android 的消息机制是一样的。角色描述1. Looper:(相当于隧道) 一个线程可以产生一个Looper 对象,由它来
2014-11-03 15:47:30 486
转载 浅谈Android应用性能之内存
转载:如何测试一个APP的内存占用情况?一个APP占用的内存分哪些部分?如何检查一个APP是否存在内存泄漏? 一、Android内存介绍:在java开发过程中,是通过new来为对象分配内存的,而内存的释放是由垃圾收集器(GC)来回收的,在开发的过程中,不需要显式的去管理内存,java虚拟机会自动帮我们回收内存。但是这样有可能在不知不觉中就会浪费了很多内存
2014-09-30 20:20:38 512
转载 Android手机上获取其他应用的包名及版本号
转载:http://blog.csdn.net/jason_src/article/details/37757661
2014-09-30 20:17:35 1102
转载 Android如何检测网络的类型为3G、2G、wap、wifi
关于Android如何检测网络的类型,网上代码很多,但是有用的精品不多,前段时间,因为做项目需要涉及到具体网络类型的检查,特别是区分2G网络是为wap,还是net,类型,因为wap类型,需要配置代理上网,基于此,我将自己实现的过程代码记录下来:
2014-09-30 20:07:06 650
原创 某公司面试题
1.什么是内存泄露,怎么检测自己的程序的内存泄露2 求下面类的内存大小 class {int a;void f1();virture void f2(); }3. 数组,链表,树和哈希表在内存中是怎么样组织的4.bmp格式有哪些,怎样快速设置某点的像素5.kmp算
2014-03-23 00:53:06 723 1
原创 Android开发之service浅谈
一.何为service 服务就是运行在后台的一段代码。它可以运行在自己的线程中,也可以运行在其他应用程序的上下文中,其他的组件可以绑定到一个服务上面,通过远程调运PRC来实现的(下面会详细说明),二。如何使用服务 第一种是通过调用Context.startServece()启动,调用Context.stoptService()结束,startService
2014-03-22 23:13:49 724
Android ant自动集成打包出错
2015-04-16
android4.4的系统,在cmd下执行 am start -W -n 。
2015-02-12
设计模式 弱不变模式 子类修改父类状态的理解
2015-02-04
Android 如何判断一个View在屏幕上可见
2015-02-02
Android 中调用nc命令
2014-11-03
Android平台下解析tcpdump数据包
2014-11-03
TA创建的收藏夹 TA关注的收藏夹
TA关注的人