当前位置:编程学习 > wap >>

请问一下各路大神,各种手机助手在PC上是怎么通过数据线访问到android文件夹的,包括系统文件夹。

  像360手机助手,可以直接操作android文件,有root权限甚至可以操作系统文件!如果不是通过数据线我还好理解,难道是通过串口吗?真心求大家解惑,我也想实现这个功能! android 通讯 --------------------编程问答-------------------- adb  shell 然后进入目录 就可以看文件 不过有些文件你看不了 因为没有权限吧 --------------------编程问答-------------------- 拉出来 是 pull  安装是 install   这个是最基础的  --------------------编程问答-------------------- 底层USB协议、驱动,中层socket通信,上层协议,系统API。 --------------------编程问答--------------------
引用 3 楼 areful 的回复:
底层USB协议、驱动,中层socket通信,上层协议,系统API。

能详细说个很简单的例子吗? --------------------编程问答-------------------- 移动终端(此处指手机)和PC机通过USB接口,以及驱动程序,实现USB协议,通过遵守共同的协议完成手机和PC机的USB通信。
可以理解为USB协议每次可发送/接收一个字节(其实是按位发送),通过多次发送/接收从而实现字节流的传输。
以上是底层USB协议、驱动程序的功能,实现基本的数据传输。

在上述基础上,PC机和手机可建立socket通信,收、发数据包。socket通信是操作系统支持的,目前PC机操作系统大多数是windows、linux系统及其变种,Android系统是建立在Linux内核基础上的,均支持socket通信。

通过定义数据包的内容(即协议),双方可实现“对方理解”的通信,如PC机使用adb命令安装程序、卸载程序等。可以认为adb程序就是PC机和手机共同遵守的“协议”,可参考android系统源代码的adb部分。

360手机助手等都是通过adb驱动,实现自己的功能。如刷机精灵,会通过adb命令安装一个apk客户端到手机,然后apk客户端直接和PC机通信,实现需要的功能。

不论怎么说,本质上360手机助手还是在调用Android系统提供的功能,只不过是PC机程序向手机发送命令,手机接收到命令后再执行罢了。有些命令可用adb直接完成,有些命令发送到手机后,由手机程序去调用系统功能间接完成。 --------------------编程问答--------------------
引用 4 楼 bao605424093 的回复:
引用 3 楼 areful 的回复:底层USB协议、驱动,中层socket通信,上层协议,系统API。
能详细说个很简单的例子吗?


上述码起来的字发表后,读了一下发现有些地方可能引起歧义,将就着看吧,理解大概意思就可以了,不误人子弟就好~ --------------------编程问答--------------------
引用 5 楼 areful 的回复:
移动终端(此处指手机)和PC机通过USB接口,以及驱动程序,实现USB协议,通过遵守共同的协议完成手机和PC机的USB通信。
可以理解为USB协议每次可发送/接收一个字节(其实是按位发送),通过多次发送/接收从而实现字节流的传输。
以上是底层USB协议、驱动程序的功能,实现基本的数据传输。

在上述基础上,PC机和手机可建立socket通信,收、发数据包。sock……

嗯,说的八九不离十,具体细节需要仔细斟酌
补充:移动开发 ,  Android
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,