安卓手机调试设备记录
两年前就有想法,让客户用自己的手机直接测试我们的设备。但是当时需求性不大,手上事情多也就先放着了。休假回来后,发现情况已经变了,客户都走安卓平台了,愤转平台而战。目前虽未能用自己的手机测试(平台权限问题)成功,但是过程值得一叙。
安卓平台调试设备的主要流程:
1,环境安装
2,驱动开发
3,驱动编译
4,测试工具开发
5,测试工具编译与测试工具模拟运行
6,安卓设备配置
7,设备调试
步骤详情
1,环境安装
准备JDK安卓包(360软件中有),Android Studio 安装包(360软件中有), adb调试工具包。
1)安装JDK并配置到环境变量,不会配置的请看https://blog.****.net/huahua520amy/article/details/19708417
2)安装Android Studio,并在安装成功后右下角工具栏下载安装NDK(需配置ndk-build文件路径到环境变量)、安卓平台、AVD。也可在安装好后Tools->SDK Manager/AVD Manager中安装。
3)adb调试工具包路径配置到环境变量。
2,驱动开发
设备驱动基于windows平台已开发好,且已支持安卓平台。
3,驱动编译
配置好Application.mk和Android.mk文件后用cmd指令“ndk-build NDK_PROJECT_PATH=. NDK_APPLICATION_MK=Application.mk”编译驱动。
Application.mk:
APP_BUILD_SCRIPT := Android.mk
APP_ABI := armeabi-v7a
APP_STL := c++_static
Android.mk
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := #cpp文件列表
LOCAL_MODULE := #目标名称
LOCAL_MODULE_TAGS := eng
LOCAL_C_INCLUDES := #依赖文件头列表
LOCAL_LDLIBS := #依赖库列表
LOCAL_LDFLAGS := -llog -lz
LOCAL_CFLAGS := -w -O2 -g -W -Wall -DLOG_DEBUG -DANDROID -fPIC -std=c++11
include $(BUILD_SHARED_LIBRARY)
4,测试工具开发
在Android Studio中新建文件,编辑xml文件设计界面,编辑java文件设置功能。xml文件可以可视化编辑,但需要处理控件位置问题(魔术棒)。
5,测试工具编译与测试工具模拟运行
在Android Studio中用小锤子(make project)后点绿三角(run)本机模拟运行。
6,安卓设备配置
- 开发机有线连接安卓设备,打开设备开发者-USB调试功能。安卓设备无线网络连接到开发机同一网段。
- 进入开发机cmd,输入指令“dba devices“”查看连接按安卓设备。若android studio中有run过,需要先关闭android studio并重启,否则3057端口会被占用报错。
- 输入指令 “dba install app.apk”(最后字段是apk文件全名)安装apk到安卓设备。此处需要在安卓设备上确认安装,否则会报-200错误。
- 输入指令“adb shell”进入安卓设备指令模式,输入指令“ifconfig”查询安卓设备ip地址,输入指令“exit”退出安卓设备指令模式。
- 输入指令“arp - a” 查询测试机网段内设备IP信息,结合安卓设备ip地址查询信息得到安卓设备ip地址。
- 输入指令“adb tcpip 55555”打开安卓设备tipcp调试口。
- 输入指令“adb connect 102.168.43.1”(最后字段是安卓设备ip)网络连接到安卓设备。
7,设备调试(HID设备)
- 安卓设备打开OTG功能并通过OTG线连接调试设备。
- 开发机中输入指令“adb shell”进入安卓设备指令模式。
- 开发机中输入指令“cat /proc/bus/input/devices"查看安卓机连接设备信息,找到调试设备信息确认连接正常。
- 开发机中输入指令“cd /dev/bus/usb/”进入安卓设备的连接设备目录,用ls指令查看所有子目录设备。
- 安卓设备断开测试设备有线连接。
- 开发机中用ls指令查看安卓设备连接的设备信息,对比上次查询情况,排除掉安卓机的固有设备。
- 安卓设备有线连接测试设备。
- 开发机中用ls指令查看安卓设备连接的设备信息,对比上次查询情况,确定调试设备“文件名”。
- 开发机中用ls - l指令查看调试设备权限信息,若当前权限不可读写,则需要用“chmod -R 777 /dev/bus/usb/”指令配置设备权限。
- 进入apk调试。