完美实现PC端软件控制手机(无需安装任何APK)(一)
来源:互联网 发布:网络电视怎么设置wifi 编辑:程序博客网 时间:2024/06/05 08:41
(需要了解开发细节和demo的朋友可以私信我或者加微信Kingthink)
一、背景
有一天,手机屏幕摔坏掉,我只能看那寥寥可数的开机、Power键,欲哭无泪,
我想要有一款PC端控制软件在必要时就能解围;
有一天我想控制多台手机完成相同的内容(比如:刷微博,刷朋友圈),
然后完美自动完成类似活动,比如:在指定的时间给指定的号码发送一条暧昧短信,或者在指定的时间下载一个酷爽APK并安装又或者在忙的时候自动刷新新闻,这样我在没有wifi的地方也能看一天的新闻了.
二、需求分析
1. 手机通过USB与PC端连接,无需安装APK,无需做其他多余操作,开启PC端软件,直接显示联机控制
2. PC端显示等比例手机图像,在PC端实现与点击、划屏、长按等一系列屏幕操作
3. PC端键盘输入转换到手机软键盘输出,从而实现某些APP登录功能
4. 直接从PC端安装已经下载好的APK文件,直接运行启动
5. PC端可以搜索到当前wifi热点,同时能连接选择的wifi
6. PC端显示收到的短信信息
7. PC端软件控制手机拨打电话和接听来电(PC端支持实时来电提醒功能)
架构设计
手机屏幕显示模块运行测试截图
连接层代码设计
- 手机USB连接电脑后通知应用层,创建连接链路
- 向控制层注册事件
typedef struct android_usb_connection_s android_usb_connection_t;
struct android_usb_connection_s
{
android_socket_t socket; // 虚拟套接字
usb_snd_buffers *snd_buffer; // 控制层用户态发送缓冲区
usb_rcv_buffers *rcv_buffer; // 控制层用户态接收缓冲区
android_pool_t *pool; // 资源池对象,统一管理连接相关资源创建和释放
android_log_t *log; // 全局日志对象
android_process_handles handles; // process集合
};
uint_t
register_contorl_event(android_usb_connection_t *conn);
控制层代码设计
- 接收用户的屏幕控制消息
- …
ADB协议打包
- 修改ADB Server层代码,自定义信令逻辑
- 优化服务端逻辑代码,加入中继模式
- demon端协议封包层不变
细节方面我会分多篇文章进行介绍, 需要了解开发细节和demo的朋友可以私信我或者加微信。
微信二维码长这样
2 1
- 完美实现PC端软件控制手机(无需安装任何APK)(一)
- 手机通过笔记本上网(无需额外安装软件)
- 我的Android进阶之旅------>Android实现用Android手机控制PC端的关机和重启的功能(一)PC服务器端
- Android 无需root实现APK静默安装
- Android手机不能安装任何软件
- 无需任何繁杂设置,YouProxy实现一键瞬间穿越
- 在PC虚拟机中安装apk软件
- 在PC虚拟机中安装apk软件
- 无需ROOT,拷贝出手机中已经安装的APK
- 电脑安装APK到手机(在没有PC版的手机助手的情况)
- android pc通过wifi调试手机(无需USB连接)
- 无需任何费用的手机GPS定位
- 不用装软件-不用任何插件-在PC上下载Google play的apk
- PC获取手机截图、复制文件、安装APK
- Android 无需root实现apk的静默安装
- Android 无需root实现apk的静默安装
- Android 无需root实现apk的静默安装
- Android无需root实现apk的静默安装
- controller里面函数的调用顺序
- 织梦dedecms|友情链接标签(flink)
- 安装supervisor
- Memcache应用场景介绍
- PHP开发者必备工具(适合初始者)打包下载全
- 完美实现PC端软件控制手机(无需安装任何APK)(一)
- Android button样式修改
- 前端上传组件Plupload使用指南 与swfupload一样强大
- 判断回文的方法总结
- Android;Share SDK微信分享中遇到的问题以及解决方法
- android对handler及asynctask的一个例子
- Js jq获取select值
- poj 3639 dp
- Gnome的配置参数管理