从android设备获取数据并在浏览器中绘图

从android设备获取数据并在浏览器中绘图,android,browser,plot,adb,Android,Browser,Plot,Adb,我试图从android设备上运行的应用程序中获取数据,并在PC上运行的浏览器中绘制数据 我考虑了以下方法 方法1 将android应用程序中的数据定期写入Cirule文件[file1.txt->file2.txt->file3.txt->file1.txt],在我的例子中是1秒 使用adb按循环顺序拉取文件 在使用XMLHttpRequest读取浏览器中的文件时再次使用相同的循环顺序,并使用一些javascript打印 在这里,我在使用XMLHttpRequest读取文件时遇到一些错误,可能存在

我试图从android设备上运行的应用程序中获取数据,并在PC上运行的浏览器中绘制数据

我考虑了以下方法

方法1

  • 将android应用程序中的数据定期写入Cirule文件[file1.txt->file2.txt->file3.txt->file1.txt],在我的例子中是1秒
  • 使用adb按循环顺序拉取文件
  • 在使用XMLHttpRequest读取浏览器中的文件时再次使用相同的循环顺序,并使用一些javascript打印
  • 在这里,我在使用XMLHttpRequest读取文件时遇到一些错误,可能存在同步->读取和写入文件的问题

    我认为这是非常幼稚的方法

    方法2

    我考虑了另一种选择,即使用USB连接在设备和PC之间建立TCP连接,并从PC上运行的客户端套接字从应用程序获取数据(这种方法听起来比将数据写入设备中的文件并使用adb提取文件要好)

    仍然无法找到将从设备接收到的数据发送到浏览器进行打印的方法

    约束

    我不允许在设备端使用任何类型的Web服务器

    我想到的任何方法都有某种乒乓球/循环的方法,我认为这不是一个好的选择

    我知道这对你们中的许多人来说都是一个相当简单的问题


    如果有人能提供一些优雅的方法,这将非常有帮助。

    我能以某种形式找到答案

  • 打开从设备上运行的应用程序到所连接的PC(使用USB)的TCP/UDP连接,并发送数据

  • a) 如果必须处理数据,请在另一个应用程序中处理该数据,并将处理后的数据发送到PC上运行的node.js b) 如果不需要处理,则直接将数据从设备发送到node.js

  • 在node.js中打开websocket并将数据发送到另一台PC上运行的浏览器


  • 请解释为什么“绘图”应用程序必须是浏览器?我们计划的是这样的。为了获取日志,我们不应该使用与应用相同的ip,因为用于生成日志信息的带宽不应该占用应用的带宽。想法是将设备数据发送到PC1,并从任何其他PC2(可以在任何地方)访问该数据,该PC2只有网络和浏览器,没有其他工具,一种仅通过绘图进行的远程调试。既然您的设备将连接到PC并通过
    ADB
    可用,为什么不让您的android应用程序将数据写入日志,让另一个应用程序在PC端处理
    ADB logcat
    输出,然后通过任何方式在网络上共享?嗨,Alex。使用adb logcat获取数据的过程(我相信,这与使用tcp连接通过usb获取数据是相同的,这是我的第二种方法),并继续将数据附加到某个文件或某个内存中。你建议我用另一个进程在pc上读取那个文件或那个内存,这正是我要解决的问题。数据不会连续出现,所以当从pc上的另一个应用程序(速度非常快)读取数据时,在某个点会导致文件结束。在这里,我不知道如何在另一个正在读取数据以进行处理的应用程序中进一步处理