Android Studio包含了一个调试器,允许你调试运行在Android虚拟机或连接的Android设备的应用。通过Android Studio的调试器,你可以:

1、 选择你调试设备的app

2、 为你的代码设置断点

3、 在运行时检测变量和表达式

4、 截图和录像

通过点击工具栏中的Debug按钮来开始调试,Android Studio生成一个APK,并且使用调试key进行签名,安装到选定的设备中运行并打开调试Debug窗口。

如果点击Debug后,在Select Deployment Target窗口没有出现任何设备,你需要连接一台设备或者创建一个虚拟机。

如果你的app已经运行在一个连接的设备或虚拟机中,你可以通过如下方式开始运行:

1、 点击Attach debugger to Android process

2、 在Choose Process 对话框,选择进程。

3、 点击OK

Debug窗口出现。

4、 点击Terminate结束调试。

使用系统日志

系统日志显示了你调试app时的系统信息。这些消息包含你app运行在设备中的信息。如果你想用系统日志来调试你的app,确保你写了打印日志的相关代码。

在你的代码中打印日志消息

在你的代码中打印日志消息,使用Log类。如下:

Java代码importandroid.util.Log;

...

publicclassMyActivityextendsActivity {

privatestaticfinalString TAG = MyActivity.class.getSimpleName();

...

@Override

publicvoidonCreate(Bundle savedInstanceState) {

if(savedInstanceState !=null) {

Log.d(TAG, "onCreate() Restoring previous state");

/* restore state */

} else{

Log.d(TAG, "onCreate() No saved state available");

/* initialize app */

}

}

}

在开发过程中,你可以捕获异常并打印stack trace到系统日志:

Java代码voidsomeOtherMethod() {

try{

...

} catch(SomeException e) {

Log.d(TAG, "someOtherMethod()", e);

}

}

查看系统日志

在Android DDMS工具窗口中查看系统日志:

1、 在调试模式启动你的APP

2、 点击Android Monitor

3、 如果在Logcat视图中系统日志是空的,点击Restart。

Android DDMS工具窗口给你从Android Studio中访问DDMS某些特性的权限。

系统日志显示来自Android服务和其他Android应用的消息。通过以下方式进行过滤:

1、 显示特定进程的日志消息,在Devices视图中选择相应进程,然后点击Click Show Logcat from Selected Process。如果你的Devices视图没出点,点击Android DDMS工具窗口右边的Restore Devices View,这个按钮仅仅在你隐藏了Devices窗口时才可用。

2、 也可以根据log level来过滤

3、 也可以在输入框中输入特定的字符串,点击回车。

断点

Android Studio支持多种不同的断点来触发不同的调试动作。最常用的是行断点,应用在特定的行停止。暂停时,你可以检查变量,表达式,也可以单步执行来确定运行错误的原因。

添加一个行断点,可以按照以下方式:

1、 找到你需要执行到暂停的行,点击代码编辑器的左边,或者将光标移动到指定的行,店家Ctrl+F8。

2、 如果你的应用已经运行,直接单击Attach debugger to Android process。

当你的代码执行到断点的位置,Android Studio暂停了你的应用的执行。你可以使用调试器中的工具来查找错误的原因。

查看和配置断点

查看所有的断点和配置断点设置,点击Debug窗口左边的View Breakpoints,如图:

Breakpoints窗口允许你开启和禁用左边列表的每个断点。如果断点被禁用,Android Studio在到达这个断点时不会停止。

2017年5月31日

java 安卓调试,Android Studio(二十一):调试你的应用相关推荐

  1. android studio第三方调试,Android Studio直接运行调试签名包

    Android Studio 直接运行将apk装载在模拟器或是手机上的都是它默认的一个debug包,而无正式的签名,然而像第三方登录啊.分享.支付等一些功能,都需要打上签名包才能完整使用,所以现在遇到 ...

  2. android studio控制台调试程序,Android Studio ADB网络调试汇总

    本文为大家汇总了Android Studio ADB网络调试的使用方法,供大家参考,具体内容如下 随着技术的发展,现在的安卓手机大部分开始使用type-c接口了,这对于我们安卓程序猿来说也不是件好事情 ...

  3. Android Studio真机调试,Run Configuration中没有deployment target解决方法

    Android Studio真机调试时,Run Configuration中没有deployment target解决方法 一.手机USB线连接电脑,选择传输文件,如果选择"仅充电" ...

  4. android申请蓝牙的权限,Android Studio 真机调试捕获异常申请和蓝牙权限代码

    Android Studio 真机调试捕获异常申请和蓝牙权限代码 第一步: 在Android的manifest.xml文档中加入下面的声明: android:name="android.ha ...

  5. Android Studio 真机调试vivo系列手机安装失败解决办法

    Android Studio 真机调试vivo系列手机安装失败或一直在提示安装加载(一直没有反应) Android Studio 3.5.2遇到的问题,小米.魅族等手机暂时没有出现这种情况. 解决方法 ...

  6. Android Studio 真机调试vivo系列手机安装失败处理

    Android Studio 真机调试vivo系列手机安装失败或一直在提示安装加载(一直没有反应) Android Studio 3.5.2遇到的问题,小米.魅族等手机暂时没有出现这种情况. 解决方法 ...

  7. Android Studio真机调试方法

    Android Studio真机调试方法 打开手机USB调试功能 安装Google USB Driver 连接手机,指定驱动程序 选中手机,进行调试 打开手机USB调试功能 以华为Mate 20为例, ...

  8. Android Studio无线Wifi调试手机的两种方案

    Android Studio无线Wifi调试手机的两种方案 第一种方式 使用adbWireless连接 第二种方式 使用插件Android Wifi ADB连接 总结 第一种方式 使用adbWirel ...

  9. android studio 真机调试连不上手机

    android studio 真机调试问题 开是和学习android 开发两天了,做了一个小的demo,调试的话之前一直都是使用 夜神模拟器 来进行调试的,但是虚拟机上的运行效果终归和手机上是有区别的 ...

  10. 安卓工作室 android studio 的 汉化 美化 定制 Android studio's Chinesization beautification customization

    安卓工作室 android studio 的 汉化 美化 定制 Android studio's Chinesization beautification customization 作者:韩梦飞沙 ...

最新文章

  1. 线程安全之strtok()函数
  2. R语言ggplot2可视化:ggplot2可视化使用labs函数为可视化图像添加(caption)图片说明文字、theme_bw中指定参数base_size来改变图片说明文字、轴标签等的大小
  3. 20165303实验一 Java开发环境的熟悉
  4. 计算器 abacus 技术文档之二----初步设计
  5. 蓝桥杯--算法入门级题目及答案解析
  6. python第六章函数课后答案_浙大PTA-Python题库 函数题(6-1~6-6)题解
  7. linux php pdo server,linux服务器用PHP的PDO链接myql方法(php pdo)
  8. SpringCloud工作笔记047---FastJson解析多级JSON_FastJson解析嵌套JSON_FastJson对于JSON格式字符串、JSON对象及JavaBean之间的相互转换
  9. undefined reference to symbol' pthread_create@@GLIBC_2.2.5'
  10. 转:全栈工程师的知识栈列表
  11. python学习笔记4-切片
  12. Atitit.编程语言and 自然语言的比较and 编程语言未来的发展
  13. 计算机管理格式化没有顺利完成,内存卡无法格式化
  14. 1024程序员节 | 近300本python电子书推荐
  15. positionViewHolder{a1bbfa3 position=2 id=-1, oldPos=-1, pLpos:-1 no parent}
  16. 使用vue做图片的闪光效果
  17. 动态规划算法解Travelling Salesman Problem(TSP)问题
  18. 妹子图kotlin版
  19. 利用python计算个人所得税
  20. 途志传媒:直播电商如何维护消费者权益?抖音推出安心购

热门文章

  1. 常量指针与指针常量勘误
  2. oracle中trunc x-1,oracle中trunc函数的说明
  3. 工厂模式解耦---控制反转
  4. php 对接 北向数据接口 socket
  5. ad文件服务器部署,AD 集成 – 配置 ADFS 登陆 - Seafile 服务器用户手册
  6. U盘:对于目标文件系统,文件过大放不到u盘里
  7. impala写入oracle,dataframe 写入 impala 语法错误,怎么解决?
  8. matlab去除图片水印_(水印去除技巧)3个在线图片水印去除网站,值得收藏
  9. python淘宝抢购_Python 实现毫秒级淘宝抢购脚本的示例代码
  10. 电脑抓整个路由器的包_网络是电竞游戏体验的命脉 2018年年度电竞路由器功能盘点...