新买的笔记本E431装了最新版的Eclipse,搞定了Android开发环境,可是logcat里查看东西居然仅仅显示level,没有错误的具体信息。我本身也不是一个愿意折腾图形界面,更喜欢纯命令行的操作,因此今天在明昊师兄的建议下,果断放弃Eclipse的logcat,投奔adb shell下运行logcat。
eclipse 自带的 LogCat 工具太垃圾了, 开始用 adb logcat 在终端查看日志;
实现这个功能的前提是使用adb命令,所以必须要有手机和电脑,还有安装adb,adb程序是很小的几M就可以。
安卓开发经常遇到那种日志太长或滚动得太快, 我们直接的解决办法就是进行日志输出长度增大和添加日志过滤器,个人推荐用adb logcat处理更加方便灵活。
在appium中adb命令的使用必不可少,做android测试嘛,adb命令肯定肯定是每天都要用的啦,所以今天给特地写个博客吧!
Dalvik Debug Monitor Service ( Dalvik调试监控服务) ,可视化的图形界面调试监控工具。不同等级log信息显示的颜色不同,使用起来方便直观。ddms监控系统或应用日志、监控线程状态、VM使用状况(内存泄漏通过它来判断)、模拟短信电话事件、生成logcat日志、文件管理及截屏等功能。
Android 系统的日志分为两部分,底层的 Linux 内核日志输出到 /proc/kmsg,Android 的日志输出到 /dev/log。
1 输出日志的方式,当然是cc.log了 2 如何查看日志? a)如果小程序可以先在浏览器上跑,例如用chrome,在控制台就可以看到输出的log; b)如果在真机上调试,就需要用log工具了。Android上使用logcat。 3 Android调试使用logcat的办法 logcat位置:Android SDK目录中 D:\AndroidDevelopTools\sdk\platform-tools 查看步骤: 连接手机 cmd方式打开logcat:adb.exe l
Android Debug Bridge,Android调试桥接器,简称adb,是用于管理模拟器或真机状态的万能工具, 采用了客户端-服务器模型,包括三个部分:
包名就是packae,在Unity中的PlayerSetting中的PackageName 类名就是AndroidManifest中的Activity名字
Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态。
LogCat是Eclipse里面做Android开发的工具包ADT中的一个工具,用来查看和过滤Android日志系统的输出。
2.1.1.查看设备 2.1.2 开启/关闭服务 2.1.3.安装软件 2.1.4.卸载软件 2.1.5.查看所有app的包名 2.1.6.系统应用 2.1.7.查看已安装的第三方软件 2.1.8将电脑文件传输到移动端 2.1.9将移动端文件传输到电脑 2.2.0查看adb命令帮助信息 2.2.1截屏 2.2.2登录设备shell 2.2.3查看手机CPU情况 2.2.4查看应用内存使用情况 2.2.5显示磁盘使用信息 2.2.6清除应用缓存信息 2.2.6查看电池状态 2.2.7查看电池信息
在Android APP的测试过程中经常遇到crash和anr,开发人员习惯通过eclipse或者eclipse的ddms组件进行捕抓日志,测试人员常通过在dos窗口下adb命令的方式来抓取日志。前者的缺点是启动时非常耗时,后者呢则每次都要写命令也比较麻烦(需要截图时也存在这个问题)。针对这样的情况,本文分享一个通过adb程序与bat命令组合的技巧来抓取日志,只要3~5秒即可获取崩溃日志,非常快捷。
输入以上命令后,adb自动保存logcat日志到指令的文件,,按ctrl + c结束保存。
直接打开AndroidManifest.xml文件,找到包含android.intent.action.MAIN和android.intent.category.LAUNCHER对应的activity。
本人在使用UiAutomator的时候,想多写一个自动收集手机log的方法,使用runtime类执行了adb logcat的方法,但是一直找不到好的方法结束这个线程,网上说有kill pid的,但是这个操作起来略微麻烦了。自己也想了一个destroy线程的方法,一直不好用。提示错误信息如下:
做app测试,遇到异常情况,查看日志是必不可少的,日志如何输出到手机sdcard和电脑的目录呢?这就需要用logcat输出日志了 以下操作是基于windows平台的操作:adb logcat | find linux平台的操作可以把find改成grep: adb logcat | grep windows上的dos里面是没grep指令的
adb介绍: Android Debug Bridge(安卓调试桥) tools。它就是一个命令行窗口,用于通过电脑端与模拟器或者是设备之间的交互。 ADB是一个C/S架构的应用程序,由三部分组成: 运行在pc端的adb client: 命令行程序”adb”用于从shell或脚本中运行adb命令。首先,“adb”程序尝试定位主机上的ADB服务器,如果找不到ADB服务器,“adb”程序自动启动一个ADB服务器。接下来,当设备的adbd和pc端的adb server建立连接后,adb client就可以向ADB servcer发送服务请求; 运行在pc端的adb server: ADB Server是运行在主机上的一个后台进程。它的作用在于检测USB端口感知设备的连接和拔除,以及模拟器实例的启动或停止,ADB Server还需要将adb client的请求通过usb或者tcp的方式发送到对应的adbd上; 运行在设备端的常驻进程adb demon (adbd): 程序“adbd”作为一个后台进程在Android设备或模拟器系统中运行。它的作用是连接ADB服务器,并且为运行在主机上的客户端提供一些服务。
调试Android程序时,我们经常需要使用adb shell命令。adb是Android Debug Bridge的缩写,它充当调试桥梁的作用,就像一条连接开发机和设备之间的桥梁。
/****************2016年5月4日 更新**************************/
前 3 篇文章给大家讲解了 Appium 环境安装,Appium 理念以及实现方式(四大点),第一个 app 自动化脚本。
1)、系统架构:web端的服务器更新后,客户端会自动同步更新;如果是app下修改了服务端,意味着客户端用户所使用的核心版本都需要进行回归测试一遍;
缓存区是链表形式且首尾相连,也叫圆形缓存区或循环缓冲区,该种数据结构适合缓冲数据流(先进先出)
这篇文章,主要介绍平时实际开发过程中可能会用到的adb相关命令。以防备忘。大家有觉的不错的命令,也欢迎留言~
Android Studio 运行一段时间后 , 出现 Logcat 不打印日志的情况 ;
指定设备:adb -s 设备名称:端口号 push 本地文件 Android系统目录
本人在做APP性能测试的过程中,曾经遇到过一个比较尴尬的问题,主线程已经结束,但是程序依然在执行,但没有找到在执行什么,一时非常苦恼。先分享一下自己的代码,再说我找到的原因。
为了运行一个 Android 仿真器的环境,首先需要建立 Android 虚拟设备(AVD)。在 Eclipse 的菜单中,择“Window”>“Android AVD Manager”,出现“Android SDK and AVD Device Manager”窗口,界面如图所示:
adb install *.apk: 安装Apk(adb install daidu.apk)
比如我们在查问题的时候,需要过滤多个关键字,我平时的做法是一个终端执行下面的命令,然后几个关键字就几个终端,切换来切换去不方便看日志
90058 kB: com.tencent.mobileqq (pid 16731)
pidcat 是Android届JakeWharton大神开发的一款命令行工具,堪称Android开发利器,它能方便Android程序猿捕获日志,过滤日志,定位程序问题,超级好用。pidcat对不同的Tag,显示不同的颜色,可辨认度很高,支持根据Tag过滤log,命令强大,用法简单易学,比Android默认的logcat命令强大太多。logcat只支持过滤TAG,而不支持应用级别的日志,如果只想输入某个app的日志,貌似不好做到,估计得结合Android的logcat工具等等,非常麻烦,TAG区分度也很差,而pidcat这点处理的很好,默认操作就是过滤app级别的日志,即使是过滤TAG的,用法也容易。
我们在项目开发过程中可能会因为考虑不周或者对象,变量,方法使用不当导致程序产生bug,严重的时候会导致程序崩溃无法用。在平常开发中,当我们的Android程序crash的时候,我们可以通过Android studio logcat等工具快速定位等crach产生位置
说到 ADB 大家应该都不陌生,即 Android Debug Bridge,Android调试桥,身为 Android 开发的我们,熟练使用 ADB 命令将会大大提升我们的开发效率。
这个得配置了,才能使用adb、fastboot命令,才能编译android工程项目。
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
Monkey程序由Android系统自带,是Android SDK提供的一个命令行工具, 可运行Android模拟器和实体设备上。Monkey会发送伪随机的用户事件流,通过Monkey程序模拟用户触摸屏幕、滑动、 按键等操作来对程序进行压力测试,检测多长时间发生异常、会Crash、以及内存泄露检测可称为随机测试或稳定性测试。
adb的工作方式比较特殊采用监听Socket TCP 5554等端口的方式让IDE和Qemu通讯,默认情况下adb会daemon相关的网络端口,所以当我们运行Eclipse时adb进程就会自动运行。 1.通过adb可以轻松的执行Linux Shell命令,如adb shell dir 就是列举目录,在Linux中根目录为/而不是Windows上的C盘、D盘。 2.安装apk程序到模拟器则执行adb install android123.apk,这样名为android123的安装包就会安装到Android模拟器中,前提是android123.apk文件需要放到SDK/Tools目录下。 3.向emulator传送文件, 使用adb push android123.txt /tmp/android123.txt命令可以把SDK/Tools下的android123.txt文件传输到模拟器的/tmp/文件夹中,需要注意的是/tmp/文件夹中内容会在Android模拟器重新启动时清空。 4.从Android仿真器中回传文件到电脑
实时打印的主要有:logcat main,logcat radio,logcat events,tcpdump,还有高通平台的还会有QXDM日志
通过APP测试之Monkey测试(一),我们了解了Monkey是什么,Monkey是如何实现对APP进行压力测试,也熟悉了Monkey基本的命令,今天将在之前的基础上进行补充和拓展,一起深入接触并掌握Monkey,这之后,我们还将总结APP测试常见问题,不要错过哦!
通过APP测试之Monkey压力测试(一),我们了解了Monkey是什么,Monkey是如何实现对APP进行压力测试,也熟悉了Monkey基本的命令,今天将在之前的基础上进行补充和拓展,一起深入接触并掌握Monkey,这之后,我们还将总结APP测试常见问题,不要错过哦!
1. 查看当前堆栈 1) 功能:在程序中加入代码,使可以在logcat中看到打印出的当前函数调用关系 2) 方法: new Exception(“print trace”).printStackTrace(); 2. MethodTracing 1) 功能:用于热点分析和性能优化,分析每个函数占用的CPU时间,调用次数,函数调用关系等 2) 方法: a) 在程序代码中加入追踪开关 import android.os.Debug; …… android.os.Debug.startMetho
Damn Insecure 漏洞App DIVA是一款漏洞App,旨在教授Android App中发现的漏洞、本文将引导你发现其中的一些漏洞。
本人在做Android APP稳定性测试的过程中,需要测试在不断刷新首页内容的场景下的稳定运行和性能数据的收集。最终根据UiAutomator+多线程解决了这个问题。思路如下:先用UiAutomator编写好运行脚本,然后在使用快速调试的时候把调试命令输出出来,然后在测试脚本中运行这个调试命令即可,当然还需要多线程来辅助记录log和性能数据。
本文是我的关于如何开始Android逆向系列文章的第一部分。在文末提供了一个文档,你可以根据该文档说明部署同我一样的实验环境。
输入adb shell 进入刚刚连接的device的shell,再输入pm list packages查看安卓设备安装了哪些包
最近在写app的UI框架,写脚本之前需要知道app的包名和activity,如果获取呢:
领取专属 10元无门槛券
手把手带您无忧上云