如何实现DDMS快照机制的自动化?
android ddms 提供apis吗?我需要自动化本机堆的快照机构.还是有任何用于分析DDMS本机堆快照的后处理工具. 解决方案 我假设Snapshot您是指一个堆转储. 在您的应用代码中,您可以调用 Debug.dumpHprofData() 转储数据. 从脚本中您可以调用 adb shell am dumpheap 其中是例如您的流程ID或名称,是转储文件名.之后,您可以adb pull转储到计算机. 要分析可以使用例如jhat或垫子.在此之前,您需要在转储上运行hprof-conv(包含在Android SDK中),以将其从Dalvik格式转换为标准Java格式. 进一步阅读:用于Android应用的内存分析 其他解决方案 @laalto的答案不太正确 从外壳中,您可以使用以下操作来获得使用ADB的应用程序的堆转储. 注:替换 19000 使用运行应用程
16 2024-02-19
编程技术问答社区
在连接到android studio的设备上运行应用程序时,如何进入层次结构视图?
好吧,所以我试图了解Android Studio,并且正在玩几个项目.我的问题是如何运行或调试应用程序,然后在其上打开层次结构视图.如果我尝试打开Android设备监视器,在应用程序运行时,我会收到消息:"将关闭调试会话后:XX".我看到一个小的Android DDMS窗口,在调试或运行时打开,在这里我看到了方法跟踪和分配跟踪的选项,但是层次结构视图呢? 解决方案 我不确定GUI,但是有指示从CLI启动它,在这里. 从终端,从/tools/启动eshierarchyviewer 目录. 您可以通过以下方式确定Android Studio中的目录 文件 - >项目结构 - > SDK位置 其他解决方案 执行以下操作: ./Users//Library/Android/sdk/tools/bin/uiautomatorviewer 我为此做了一个别名: alias viewer='./Users/
18 2024-02-18
编程技术问答社区
Android studio无法打开监视器(DDMS)。
我无法在Android Studio中打开显示器(DDMS) 获取以下错误: 必须使用Java运行时环境(JRE)或Java开发套件(JDK)才能运行监视器.在搜索以下位置后,找不到Java虚拟机:c:\ android-studio \ android-studio \ sdk \ sdk \ sdk \ tools \ lib \ lib \ monitor-x86 \ jre \ jre \ bin \ javaw.javaw.exe javaw.exe javaw.exe in当前路径 将感谢任何解决此问题的建议. 谢谢 解决方案 您必须安装JDK或JRE并在您的路径中.考虑到您正在运行窗口,必须转到环境变量,并将其中一个位置添加到路径中.假设您已经安装了其中一个.如果您不需要,您需要去Oracle网站并获得其中一个. 如果您已经安装了它,请转到系统设置,然后转到"高级设置"选项卡,然后单击底部的环境变量,在那里编辑路径并添加JRE或JDK的位置,以解决
20 2024-02-18
编程技术问答社区
如何在Android studio中使用DDMS向仿真器发送消息
我正在尝试在Android中构建一个文本消息传递应用程序,代码有效,但唯一错误的是我无法使用DDMS向模拟器发送消息.我在下面粘贴了代码,以防万一,并且在 之后立即进行屏幕截图 package com.example.oghenekaroedoh.sms; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.telephony.SmsMessage; import android.util.Log; import android.widget.Toast; /** * Created by OGHENEKARO EDOH on 15/04/2015. */ public class SMSReceiver extends Broadcast
8 2024-02-18
编程技术问答社区
安卓工作室-安卓设备监视器-空视图
我正在尝试在Android Studio中使用Android设备监视器,但是我设法以某种方式删除了所有视图. 我尝试重置视角,窗口 - >显示视图 - >(任何视图),甚至重新安装Android Studio,但没有任何内容显示. 有人知道如何将设备监视器重置为默认视图吗? (带有左侧的设备,右侧的堆/线程/分配视图.) 感谢您的帮助! 解决方案 我通过使用窗口 - >重置透视经历了同样的问题.应该期望这将解决这个问题,而不是打破它.去图. 无论如何,DDMS工作区首选项存储在%USERPROFILE%\.android\monitor-workspace(例如C:\Users\my_user\.android\monitor-workspace)中. 只需删除该文件夹即可. 其他解决方案 请注意,如果您在Mac上,则需要在查找器中启用"隐藏文件".然后,工作区目录在用户/your_username/.android/monitor-work
22 2024-02-18
编程技术问答社区
如何使用监视器(DDMS)工具来调试应用程序
如今,我将我的开发环境从日食转移到Android Studio.我真的很喜欢它的自动完成以及这一IDE提供的许多其他功能.但是,进行调试时我有一些问题. 我希望使用此IDE提供的监视器工具,自我包含的DDMS和非常好的视觉界面来跟踪内存使用情况,线程状况等.但是我找不到可以使用我必须创建的断点(编辑器中的红点) 逐步支持逐步支持的方法 我只能通过不打开此显示器进行逐步调试.由于当我尝试在调试器运行时尝试使用监视器时,它将弹出一个窗口,要求我首先断开ADB的连接.我也找不到从显示器启动应用程序的地方. 在Android Studio同时使用监视器时,有没有办法进行逐步调试? 解决方案 转到 工具> Android> Android设备监视器 在v0.8.6中.这将拉起DDMS Eclipse的视角. 其他解决方案 我认为事情(位置)发生了很小的变化. 为了: Android Studio 1.2.1.1 构建 @A​​I -141.19032
20 2024-02-18
编程技术问答社区
安卓工作室和安卓设备监视器
我刚从日食切换到Android Studio.从那以后我看到的新IDE比Eclipse具有更多的功能,我喜欢将新的IDE用于我的应用程序开发工作. 我只是听不懂一件事:在Eclipse中,有一个非常有用的 ddms Perspective ,您可以从您阅读logcat并做很多其他事情,例如使用非常有用的函数,这使您可以乘以UI的转储并进行检查以了解布局中显示的内容. 我在Android Studio中没有看到任何类似的东西,并且在进行了大量研究之后,您必须这样做的唯一方法是从"工具"菜单打开Android设备监视器. 但是这样做ADB连接被打破了,因为Android Studio正在使用它,而Android Device Monitor希望使用它.结果是,如果您要调试应用程序,则不能打开Android设备监视器,除非您想失去调试状态. 我认为这是不可接受的,我敢肯定,必须有一些更好的方法与Android一起使用Android设备监视器工具,这是可能的吗? 谢
24 2024-02-18
编程技术问答社区
禁用Logcat (DDMS) 和运行控制台在任何活动中自动打开
我从Android Studio外部监视我的logcat( logcat-color 在另一个屏幕/workspace上的仿真器旁边打开)和希望阻止Android DDMS View自动在Android Studio中打开.它占用屏幕房地产,我希望保留我的代码. 我知道我可以完全删除视图,但是我想在我使用它直接链接到有问题的代码线的时间中保留访问它. 我可以过滤LogCat输出以仅显示"错误"级别,但这不是一个很好的解决方案,因为如果我想跟踪问题,我会不断地更改过滤器以获取周围的日志条目. 运行控制台也是如此.我也想阻止它也打开. 有没有办法可以访问这两种视图而无需打开活动的情况吗?我已经浏览了设置,但找不到任何可能修改的候选人. 解决方案 首先,要摆脱运行时的logcat打开,请转到主菜单上的Run - > Edit Configurations...(通过工具栏下拉菜单),然后在Logcat TAB. 接下来,不幸的是,无法在运行时永久防止跑步窗口弹
10 2024-02-18
编程技术问答社区
Logcat无法检测应用程序或软件包名称
我使用的是Android Studio(Beta)0.8.7,我的LogCat一直工作正常几个月.突然,我的logcat无法检测到任何应用程序或软件包名称.这意味着我无法过滤我正在测试的特定应用程序的消息,这很烦人.典型的logcat消息现在看起来像这样: 请注意问号(?)应用程序名称应该在哪里... 最初,我以为是我的设备,但我已经使用了我拥有的另一个Android设备尝试了一下,并且遇到了同样的问题.这就是我尝试的: 重新启动Android Studio和我的计算机 杀死并从终端启动ADB服务器 重新启动设备 以前有人经历过吗?请帮助,因为这让我有点疯狂... 更新:我尝试了安装了Android Studio的笔记本电脑,并且正在做同样的事情!我大约95%确定应用程序名称应该在那里而不是问号,因为这就是我记住的方式.另外,有一个问号,LogCat无法通过应用程序的软件包名称过滤消息...我过去从未遇到过这个问题,所以它一定是在工作,所以我不能发疯..
22 2024-02-18
编程技术问答社区
DDMS-无法在Android Studio上为调试器绑定本地8600
正在尝试使用Android Device Monitor查看我的数据库表,并且由于我不确定的原因,它向我展示了错误.我没有另一个DDM的实例. 而不是显示我的ddms,而是向我显示此错误 [2015-09-10 17:39:53 - ddms] Could not open Selected VM debug port (8700). Make sure you do not have another instance of DDMS or of the eclipse plugin running. If it's being used by something else, choose a new port number in the preferences. [2015-09-10 17:39:53 - ddms] Can't bind to local 8600 for debugger [2015-09-10 17:39:53 - ddmlib] Broken pi
32 2024-02-18
编程技术问答社区
安卓设备监控器无法启动,无论是从安卓工作室还是从终端--不支持的ClassVersionError
尝试从Mac上的Android Studio的工具窗口启动Android设备监视器时会遇到以下错误. 当我打开日志文件时,我发现一个与另一个非常相似的错误报告,因此与此类似的问题,ESP 这个.但是,使用sudo对我不起作用,尽管我遇到了相似,尽管错误数据较短: Macs-MBP:tools macuser$ sudo ./monitor Password: Exception in thread "main" java.lang.UnsupportedClassVersionError: com/android/archquery/Main : Unsupported major.minor version 52.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClassCond(ClassLoader.java:637) at
12 2024-02-18
编程技术问答社区
无法在Android Studio中打开DDMS。弹出神秘的Eclipse错误
所以我再次使用另一个Android Studio工具错误.我不认为这是以前没有报道过的,我找不到任何帖子. 我试图通过单击以下按钮在Android Studio中打开设备监视器(DDMS): 每当我遇到相同的错误时.真正令人困惑的是,它的日食错误,如图所示: 因此,它告诉我在Android Studio SDK文件夹中打开日志文件.日志文件包含很多文本,但主要错误报告为: !ENTRY org.eclipse.osgi 4 0 2015-05-27 09:40:53.091 !MESSAGE Application error !STACK 1 java.io.IOException: The folder "C:\Users\JOHN%20SMITH\.android\monitor-workspace\.metadata" is read-only. at org.eclipse.core.runtime.internal.adaptor.BasicLocat
8 2024-02-18
编程技术问答社区
安卓设备监控器不打开--日志文件出现错误
在Android Studio中尝试运行Android设备监视器时,我在日志文件上会出现以下错误: >!SESSION 2014-12-17 09:57:30.625 ----------------------------------------------- eclipse.buildId=unknown java.version=1.8.0_25 java.vendor=Oracle Corporation BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=pt_BR Command-line arguments: -os win32 -ws win32 -arch x86_64 -data @noDefault >!ENTRY org.eclipse.osgi 4 0 2014-12-17 09:57:31.366 !MESSAGE Bund
16 2024-02-18
编程技术问答社区
从Android Studio浏览SQLite数据库
我想知道Android Studio是否有任何SQLite插件,可以允许用户浏览创建的数据库? 解决方案 2020年7月更新 使用 Android Studio 4.1 (金丝雀6及更高),您可以使用新的数据库Inspector 进行检查,查询和修改应用程序的数据库. 您可以找到 目前没有应用程序中的DB检查的官方插件. 您可以使用 ddms :工具> android> android设备监视器,如 @subhalaxmi的答案 有一个 beta插件由 iDescout 提供,您可以尝试在这里. 有Facebook提供的 stetho 工具(开源和免费) 我建议您使用 stetho Facebook提供的开放式工具.实施非常简单. 只需在您的build.gradle 中添加依赖项 dependencies { // Stetho core compile 'com.facebook.stetho:stetho:1.3
22 2024-02-18
编程技术问答社区
在Android Studio中查看数据库文件的内容
我一直在使用 Android Studio 自发布后开发了我的应用程序. 一切都很好,直到最近,我必须与检查数据库文件一起进行调试.由于我不知道如何直接查看数据库,因此当我调试以生成数据库文件时,我必须将数据库文件从手机导出到PC. 为了做到这一点,我必须打开DDMS > File Explorer.打开DDMS后,我必须重新连接USB,并且失去了调试线程.检查数据库文件后,我必须关闭DDMS并再次重新连接USB才能返回调试模式. 太复杂了.有人在Android Studio中有更好的方法(我知道Eclipse更容易)吗? 解决方案 最后,我找到了一个最简单的解决方案,不需要打开DDMS. 实际上,该解决方案基于@distwo提到的内容,但不必那么复杂. 首先,请记住设备中数据库文件的路径,它应该相同. 例如,我的是:/data/data/com.XXX.module/databases/com.XXX.module.database 第二,执
28 2024-02-18
编程技术问答社区
无法在Android Studio中打开DDMS。弹出神秘的Eclipse错误
所以我再次使用另一个Android Studio工具错误.我不认为这是以前没有报道过的,我找不到任何帖子. 我试图通过单击以下按钮在Android Studio中打开设备监视器(DDMS): 每当我遇到相同的错误时.真正令人困惑的是,它的日食错误,如图所示: 因此,它告诉我在Android Studio SDK文件夹中打开日志文件.日志文件包含很多文本,但主要错误报告为: !ENTRY org.eclipse.osgi 4 0 2015-05-27 09:40:53.091 !MESSAGE Application error !STACK 1 java.io.IOException: The folder "C:\Users\JOHN%20SMITH\.android\monitor-workspace\.metadata" is read-only. at org.eclipse.core.runtime.internal.adaptor.BasicLocat
12 2024-02-17
编程技术问答社区
如何使用文件管理器访问模拟器SD卡中的文件?
我已经在模拟器SD卡上写了一个文件" mydata.txt",我可以在mnt/sdcard/sdcard/使用文件资源管理器下载中找到它. 有没有办法检查我是否在我的Android程序中再次阅读该文件的情况下正确写了文件?图像怎么样?我该怎么做才能查看SD卡中写的图像? 解决方案 如果您使用 Eclipse与ADT : 在DDMS中,在"文件资源管理器"选项卡上,有一个工具栏.左侧有2个按钮:带磁盘的箭头(从设备拉动),然后用电话(推到设备)箭头. 选择文件,然后单击"从设备上拉"以将文件保存在您的高清上. 有关更多信息,请检查 使用模拟器或设备的文件系统 ddms提供了一个文件资源管理器选项卡,可让您查看,复制和 删除设备上的文件.此功能可用于检查文件 由您的应用程序创建或是否要传输文件 往返设备. 与模拟器或设备的文件系统一起工作: 在"设备"选项卡中,选择要查看文件系统的模拟器. 要从设备复制文件,请在文件资源管理器中找到文件,
8 2024-02-17
编程技术问答社区
在DDMS文件管理器Android 6.0中看不到Sdcard内容
Android 6.0已改变了管理SDCARD安装的方式,但这并不能显示正确. 直到5.x我们可以通过层次结构下的DDMS Perspective(Eclipse)访问SDCARD内容 /mnt/shell/... 现在根据文档 /sdcard/ 我看不到DDMS下的该目录的任何内容,但在PC或其他应用程序(例如Astro)中. 我应该在Eclipse(DDMS)中设置什么才能看到该内容? 解决方案 启动Android 6.0,第三方应用程序没有能力查看SDCARD内容. 在Android 6.0中,第三方应用程序无法访问SDCARD_R,并且 sdcard_rw gids.相反,仅通过安装来控制访问 该应用程序适当的运行时视图.交叉用户 互动使用每个人都被阻止. https://source.android.com/devices/devices/storage/storage/ 作为其他信息,Android 6.0介绍 希
18 2024-02-17
编程技术问答社区
用Eclipse DDMS将大文件推送到模拟器/SD卡上的问题
我正在使用Eclipse DDMS将文件推到我的Android模拟器SDCARD上.我选择文件,然后按打开,弹出一个对话框并开始推动文件.在DDMS角度的视图"文件资源管理器"中,我可以看到SDCARD目录,并且可以在其中看到我创建的文件.然后,在弹出窗口中,进度仪表到一半,然后在控制台窗口中得到此错误: [2011-09-22 15:15:56] Failed to push the item(s). [2011-09-22 15:15:56] (null) 然后,文件资源管理器完全刷新,文件消失.我知道SDCARD是为1克空间设置的,我要推的文件仅为9m. 以下是按下和失败后的图像. 所以我做错了什么,或者我需要做什么来解决这个问题? 解决方案 这是您修复它的方式.我有一个大约160m的大文件,所以发生了什么事,很可能是时间的.因此,为了解决此问题,我去了Eclipse Windows - > preceences-> android-> ddms,然后
20 2024-02-17
编程技术问答社区
如何使用ddms来解决c++代码中的内存泄漏问题
如何在C ++代码中使用Android工具DDMS进行内存泄漏 我尝试通过启用了本地人的拍摄来拍摄快照,但我不明白 快照在说什么,符号无法解决,没有显示文件名和行号. 解决方案 DDMS中的本机堆跟踪是不支持的"隐身"功能.让它工作可能有点棘手.那里有一个较旧的讨论有用. 如果您正在接收数据并将UI升级,则您将在其中一半. :-) DDMS在特定位置寻找符号,您应该能够使用ANDROID_SYMBOLS环境变量覆盖该符号,并将地址转换为使用addr2line的行(也必须能够找到). . 寻找大泄漏的最简单方法是配置DDMS以按库进行分配.让应用程序运行一段时间,看看哪个库似乎正在增长最快.查看归因于该库的分配,看看是否有很多来自同一位置的分配.看看堆栈跟踪,看看从那里进行许多长期分配是否有意义.不是很严格,但通常会解决问题. 要对堆进行更彻底的检查,您可以在设备上运行valgrind,但第一次设置并不容易. 其他解决方案 使用分配跟踪器.这是关于在An
14 2024-02-17
编程技术问答社区