如何使用adb socket从手机获取结果?

时间:2012-08-20 08:33:11

标签: android adb

我编写了一个可执行文件,并将其推入/ system / bin。

运行文件后,它会以float形式给出结果。

现在在PC方面,我想得到这个结果。

首先,我将此浮点数写入文件,然后使用'adb pull'来提取此文件,然后读取文件。 因为我需要经常做这个操作,可能每秒2次。这会导致手机性能下降。

当我使用adb套接字时,它会受到什么影响? 我的可执行文件应输出的位置? adb socket如何获得结果?

感谢。 詹姆斯。

2 个答案:

答案 0 :(得分:1)

如果您要将手机连接起来,您可能只需要

adb shell /system/bin/myexecutable

然后让你的二进制文件将其输出打印到stdout。只要程序运行得很快,每秒两次就不会太快。否则,你可以做

adb shell cat /somewhere/myoutfile

查看当前文件中的内容。

答案 1 :(得分:1)

如果有可用的ADB连接,您可以使用logcat作为从Android应用程序向桌面计算机获取数据的媒介。

我的想法是有两件事:

  1. 使用logcat将您的应用输出记录到Android端的唯一TAG。例如,

    Log.d("MyAppOutput", "This is the output I am looking for");
    
  2. 在桌面端,您可以运行专门针对该TAG的命令行,例如:

    adb logcat -s MyAppOutput
    
  3. 我相信这可以让您近乎实时地阅读Android应用中的结果。如果您需要知道日志消息的时间戳,可以添加-v time参数为每条消息添加时间戳前缀。