Articles of adb

在Genymotion中运行的虚拟设备会定期在ADB中脱机

我有一个在Genymotion 2.4中运行的Android设备(带有Lollipop映像,如果重要的话),并通过ADB(版本1.0.32)连接到另一台开发人员PC,在本地网络中使用Eclipse,没有连接问题。 一切都很好,除了ADB连接的周期性下降(其他协议保持正常工作),即ADB丢失设备,当我尝试重新连接时,表示该设备处于脱机状态。 根据我的经验,这种离线状态基本上意味着接收端(设备)仍然认为它已连接并拒绝新连接。 我知道解决此问题的唯一方法是重新启动设备,然后ADB按预期连接到它。 如果有人感兴趣,ADB不会使用Genymotion在远程主机上运行 – 否则将无法从其他PC上删除连接。 问题:如何在不重新启动整个设备的情况下“轻柔地”刷新虚拟设备以接受新的ADB连接? PS如果我将“离线”设备保留一段时间(很长一段时间,例如一小时),它似乎在没有外部交互的情况下刷新其状态,因此ADB再次能够正确连接并报告设备作为“在线”。 但是,等待这么长时间没有任何意义。 这只是一个需要考虑的新信息。

使用ADB捕获屏幕

我想尽快获得手机屏幕截图。 目前,我正在做: adb shell screencap -p /sdcard/screencap.png && adb pull /sdcard/screencap.png 但它太慢,需要3秒钟。 有没有更好的方法来做到这一点? 我打算在没有根据的手机上使用此function。 还有什么我可以用于screencap的不同论点? 谢谢。 编辑(额外信息):我打算使用此方法能够将屏幕的实时馈送到我的电脑上。 目前的方法有效但速度太慢。 我无法使用adb shell screenrecord因为在录制时我无法访问video文件。

应用程序意外停止:如何调试?

请注意,与主题标题“应用程序已意外停止”的许多其他问题不同,我不是要求对特定问题进行故障排除。 相反,我要求概述Android / Eclipse / Java新手的最佳策略,以解决消化大量信息以开发(和调试!)简单Android应用程序的这项艰巨任务。 在我的例子中,我从SDK中获取了示例骨架应用程序, 稍微修改了一下,当我尝试运行它时,我得到了什么? 应用程序(process.com.example.android.skeletonapp)意外停止。 请再试一次。 好的,所以我知道我必须看看LogCat。 它充满了时间戳线盯着我……我现在该怎么办? 我需要寻找什么? 有没有办法单步执行程序,find使应用程序崩溃的语句? (我认为Java程序永远不会崩溃,但显然我错了) 我该如何设置断点? 您能否在线推荐Android调试教程 , 除此之外 ?

使用ADB更改Android设备方向

我在真实设备上使用Android 4.4,我想通过adb设置设备方向。 我不希望它与uiautomator完成,因为它不会在uiautomator代码终止后持续。 我怎样才能做到这一点?

如何通过亚行解锁Android手机

我的屏幕已经死了,我想解锁手机,所以我可以通过Kies访问它来备份我的照片。 我通过Android设备管理器锁定手机设置一个简单的密码(一旦我锁定它就希望解锁选项)并尝试了各种方法来解锁它,例如: adb shell input text 1234 因为我不知道锁屏是什么样的,所以我不确定解锁它的正确输入。 我知道手机已打开,并且它响应adb。 我也可以通过Eclipse运行应用程序。 这是一款搭载Android 5.0的三星Galaxy S5。

如何在Eclipse中关闭ADB控制台的车展?

实际上这很烦人。 每当出现错误时,ADB控制台窗口都会在Eclipse中popup我的脸。 即使我关闭视图,Hierarchy查看器,DDMS和Android控制台也“显示”。 我试图在偏好中find开关但是徒劳无功。 此外,这些窗口没有通常的“Show when …”按钮。 有没有办法解决这些问题? 提前致谢。 Android问题跟踪器链接与补丁: Android问题40123:SDK Eclipse DDMS控制台在出现错误时正在窃取焦点

通过wifi在Android设备上调试而无需生根

是否有任何可能的方法来调试或运行Android应用程序从eclipse到我的索尼平板电脑S通过wifi而不是USB而不需要生根设备? 如果设备是root的,有办法做到这一点。 但是,我正在寻找一个没有root权限的设备中的解决方案。

通过ADB以root身份启动脚本

我已经创建了一个脚本来安装分区并在我的Android系统中执行一些操作。 我将脚本保存为Android的/ bin文件夹中的install.sh。 我想从ADB调用脚本,它本身是从Windows上的批处理文件调用的,但它需要以root身份执行。 我尝试的第一个解决方案是使用调用脚本 adb shell “su -c sh /bin/script.sh” 但它不起作用,因为它给我一个shell访问权限(具有root权限),但没有执行任何操作。 我也试着打电话 adb root “sh /bin/script.sh” 但我得到以下错误 adbd cannot run as root in production builds 然后我试着写 su -c “command” 对于我的脚本中需要root访问权限的所有命令,但我遇到了同样的问题。 当我运行脚本时,我只获得一个root shell,并且没有执行任何操作。 如果我手动使用第一个解决方案(例如我称之为adb shell su,然后是我的脚本),它就可以了。 但是,重点是自动化该过程,以便可以从另一个脚本调用adb shell。 你知道我怎么能做到这一点吗? 谢谢 !

ADB错误:无法连接到守护程序

我需要帮助才能让ADB使用三星Galaxy S2在我的电脑上工作(win7 64bit)。 我已经安装了Kies的驱动程序,我认为在子文件夹“25_escape”下。 驱动程序在设备管理器下正确显示为“Samsung ADB interface”。 当我运行“adb devices”时,我会得到以下日志 >adb devices * daemon not running. starting it now on port 5037 * * daemon started successfully * ** daemon still not runningerror: cannot connect to daemon 我想知道它是否是驱动程序问题,或其他什么。 我有几个其他Android手机工作正常(HTC,摩托罗拉,三星Galaxy S1甚至工作),但这个问题发生在Galaxy S2(以及Tab 10.1)。 我禁用了Windows防火墙,它仍然卡住了。 我确定Eclipse没有运行,我试图从任务管理器中杀死ADB,但这些都没有帮助。 非常感谢您的帮助! 谢谢!

如何打开adb并使用它来发送命令

我使用ADT尝试制作Android应用程序,并使用AVD。 我知道还有另一个名为adb工具。 我知道它已经安装,我想尝试用它来发送命令。 它在哪里? 怎么打开它? 哪个按钮用于在ADT中打开ADB? 另一个问题是API文件在哪里? 如何在网站上find它,如下载或其他什么?