内容简介:Android Studio(二十一):调试你的应用
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代码
import android.util.Log; ... public class MyActivity extends Activity { private static final String TAG = MyActivity.class.getSimpleName(); ... @Override public void onCreate(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代码
void someOtherMethod() { 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在到达这个断点时不会停止。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 使用 FLEX 调试任意第三方应用
- 开发了个 Flipper 调试工具的 Flutter 版本 SDK,让 Flutter 应用调试起来更容易
- Android Studio(二十一):调试你的应用
- 使用 Xamarin 在 iOS 真机上部署应用进行调试
- [译] 用 React Hooks 和调试工具提升应用性能
- 如何提高后台服务应用问题的排查效率?日志 VS 远程调试
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。