Android的Studio使您能够在模拟器或Android设备上运行调试应用程序。随着Android Studio,您可以:
要调试你的应用程序,Android Studio生成你的应用程序的可调试版本,连接到设备或模拟器,安装应用程序并运行它。IDE将显示系统日志,而你的应用程序正在运行,并提供调试工具来过滤日志消息,断点工作,并控制执行流程。
要以调试模式运行你的应用,你建立一个APK与调试密钥签名和物理Android设备或Android模拟器安装它。要建立一个Android设备的开发,请参阅使用硬件设备。有关通过Android SDK中提供的仿真器的更多信息,请参阅 使用仿真器。
调试在Android的工作室你的应用程序:
图1显示了选择设备的窗口。该列表显示所有连接到您的计算机的Android设备。选择Launch Emulator启动模拟器使用一个Android虚拟设备代替。单击省略号打开Android Virtual Device Manager.。
Android的Studio将打开调试工具窗口,当你调试你的应用程序。要打开Debugger 手动窗口中,单击Debug 。该窗口显示了线程和变量Debugger 选项卡,在设备状态 Console 控制台选项卡,然后在系统日志中的logcat的标签。该调试工具窗口还提供覆盖在下面的章节等调试工具。
系统日志显示系统信息,同时您调试应用程序。这些消息包括从设备上运行的应用程序的信息。如果您要使用系统日志来调试你的应用程序,请确保您的代码写入日志消息,并打印为异常的堆栈跟踪,而你的应用程序是在开发阶段。
写日志在您的代码信息,使用日志
类。日志消息帮助您了解执行流程通过收集系统调试输出,而你与你的应用程序进行交互。日志消息可以告诉你你的应用程序的一部分失败。有关日志记录的详细信息,请参阅 阅读和写作日志。
下面的例子显示了如何添加日志信息,以确定是否以前的状态信息,请您活动开始时:
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 */ } } }
在开发过程中,你的代码也可以捕获异常,并写入堆栈跟踪到系统日志:
void someOtherMethod() { try { ... } catch (SomeException e) { Log.d(TAG, "someOtherMethod()", e); } }
注:从代码中移除调试日志消息和堆栈跟踪打印通话,当你准备发布您的应用程序。你可以通过设置一个做到这一点的DEBUG
标志,并把调试日志消息里的条件语句。
无论是Android的DDMS(Dalvik的调试监控服务器)和调试工具窗口显示系统日志; 然而,Android的DDMS工具窗口,您可以查看特定过程只日志消息。要查看在系统日志中的Android DDMS工具窗口:
在Android的DDMS工具窗口为您提供了从Android Studio中访问某些DDMS的功能。关于DDMS更多信息,请参阅使用DDMS。
系统日志显示来自Android的服务和其他Android应用程序的消息。要过滤日志消息只查看那些你感兴趣的,使用的工具中的Android DDMS 窗口:
断点允许你暂停您的应用程序的执行在一个特定的代码行,检查变量,计算表达式,并通过行继续执行路线。使用断点来确定运行时错误的原因,你不能看只有你的代码修正。要使用断点调试你的应用程序:
Android的工作室暂停您的应用程序的执行,当它到达断点。然后,您可以使用该工具调试工具窗口来找出错误的原因。
要查看所有的断点和配置断点设置,请单击View Breakpoints视图中的断点 在左侧调试工具窗口。该断点窗口出现,如图6。
该断点窗口,您可以从左边的列表中启用或禁用每个断点。如果一个断点被禁用,机器人工作室不会暂停您的应用程序,当它击中断点。从列表中选择一个断点配置设定。您可以配置一个断点在第一次被禁用,让系统启用后,不同的断点被击中。您也可以设定一个断点是否应该被禁止被击中后。要设置断点的任何异常,请选择Exception Breakpoints异常断点 在断点列表中。
当你在你的代码中设置断点,单击Rerun 重新运行 重新启动应用程序。当一个断点被击中,机器人工作室暂停应用程序,并突出了断点在源代码中。该 调试工具窗口可以让你检查变量和控制通过一步一步地执行:
要检查一个变量的对象树中,展开它的变量视图。如果变量视图不可见,请单击Restore Variables View 恢复Variables视图 。
要计算一个表达式在当前执行点,点击 Evaluate Expression计算表达式 。
要前进到下一行代码(不输入法),单击Step Over单步跳过 。
推进到一个方法调用中的第一行,单击 Step Into单步执行 。
要前进到目前的方法之外的下一行,单击Step Out 跳出 。
继续正常运行的应用程序,请单击Resume Program 恢复计划 。
即使您的应用程序不会产生运行时错误,这并不意味着它是没有问题的。您还应该考虑以下问题:
而Android设备监视器是一个独立的工具与serveral的Android应用程序的调试和分析工具,包括在Dalvik调试监视器服务器(DDMS)的图形用户界面。您可以使用Android设备监视器来分析内存使用情况,配置方法,监控网络流量和模拟来电和信息。
为了从Android Studio中打开了Android设备监视器,单击Monitor 监视 工具栏上。在新窗口中的Android设备监视器打开。
有关Android的设备监视器和DDMS的更多信息,请参阅 Device Monitor设备监视器和 使用DDMS。
Android的Studio使您在您的应用程序正在运行捕捉屏幕截图或设备屏幕的一个简短的视频。截图和视频是为你的应用程序的宣传材料有用,你也可以将它们附加到发送到您的开发团队的bug报告。
把你的应用程序的截图:
把你的应用程序的视频录制: