Android手机助手识别机型浅析

最近在做PAD项目,QA提交了一个bug,用iTools管理PAD时,iTools显示的设备与目标机型的设备型号不一致,在其他豌豆荚,百度等手机助手并没有遇到这个问题。为了解决该问题,首先查询机器system目录下的prop.build中关于设备的说明是否有影响。主要包含:

ro.product.model=型号_modle

ro.product.brand=品牌_brand

ro.product.name=手机名称_name

……

ro.product.cpu.abi=armeabi-v7a

ro.product.cpu.abi2=armeabi

ro.product.manufacturer=制造商_manufacturer

但是发现识别的设备名称为其他品牌,可以确定该品牌不是通过prop.build文件获取。另外在测试过程中发现,如果断网的情况下,设备名称会等同于model名称,因此可以知道iTools会根据某个ID,在自己的网上数据库去查找对应的设备型号。

通过用usblayzer查看usb的VID,PID,并对应http://www.linux-usb.org/usb.ids中的VID,发现此VID为某厂商的VID,因此估计iTools是根据USB的VID,PID进行获取对应的设备名称。所以我们将原来的VID PID改成台电PAD的VID与PID,因为台电在断网与联网情况下识别都是与model名称一致。通过查询可以知道VID=18d1是google的,pid为0007.所以修改android4.4/device/softwinner/fiber-a31stm的init.sun6i.usb.rc文件中:

on property:sys.usb.config=mtp

write /sys/class/android_usb/android0/enable   0

write /sys/class/android_usb/android0/idVendor       18d1

write /sys/class/android_usb/android0/idProduct      0007

write /sys/class/android_usb/android0/functions       ${sys.usb.config}

write /sys/class/android_usb/android0/enable   1

setprop sys.usb.state ${sys.usb.config}

.......

该文件中所有的VID都要修改成一样的18d1,PID可以错开,但是不能与google的注册设备冲突。如下:

VID->18d1  Google Inc.

PID->      0d02  Celkon A88

2d00  Android-powered device in accessory mode

2d01  Android-powered device in accessory mode withADB support

4e11  Nexus One

4e12  Nexus One (debug)

4e13  Nexus One (tether)

4e20  Nexus S (fastboot)

4e21  Nexus S

4e22  Nexus S (debug)

4e24  Nexus S (tether)

4e40  Nexus 7 (fastboot)

4e41  Nexus 7 (MTP)

4e42  Nexus 7 (debug)

4e43  Nexus 7 (PTP)

4ee1  Nexus 4 / 10

4ee2  Nexus 4 (debug)

4ee3  Nexus 4 (tether)

4ee4  Nexus 4 (debug + tether)

7102  Toshiba Thrive tablet

b004  Pandigital / B&N Novel 9" tablet

d109  LG G2x MTP

d10a  LG G2x MTP (debug)

经过修改,设备名称与model名称一致。

总结:iTools连接时,会先用USBVID PID到自己的网络数据库匹配设备名称,如果有网络并且数据库有数据,则采用网络端数据,如果没有网络或者有网络但是数据库没有对应VID PID,则是有model一致型号。

时间: 2024-10-16 18:39:59

Android手机助手识别机型浅析的相关文章

Android手机唯一识别IMSI

现在Android应用APP越来越多,服务器对APP使用的用户权限管理的越来越严格,如使用Request_Token令牌来控 制服务器的API,然后服务器管理用户的复杂度也高了.以前在开发APP的时候使用的是手机的IMEI作为唯一表示机器 码,但是当刷机.系统还原出厂设置 这2种情况下,手机的IMEI都会改变,所以有时候回出现以前绑定的IMEI在服务 数据库对应的用户移动设备,当用户刷机.还原出厂设置  此时用户手机上的IMEI就改变了,当用户登录时,提交的 IMEI与服务器数据库的IMEI就不

android手机自带浏览器无法识别apk文件

原文:http://www.cnblogs.com/yaozhongxiao/archive/2013/07/17/3194765.html 在项目中遇到安卓自带浏览器下载成功 , 但无法打开已下载的APK文件自动安装的问题,特别是三星系列的手机普遍存在这种问题,google后发现也有朋友遇到类似的问题: http://bbs.csdn.net/topics/390262400 引:      写了一些 android 的应用放在网站上让人下载,在某些机型上,三星的 android 的 4.0 

浅析android OCR文字识别

这学期有门课程老师要求用JAVA实现一个OCR文字识别的程序,所以就花了一些时间研究了一下在安卓端如何实现 OCR的引擎是用的开源项目tesseract-ocr 这个安卓版的地址:https://code.google.com/p/tesseract-android-tools/ 但是自己在编译的时候老是出错,于是在网上寻找到了别人编译好安卓可用的tess-two导入到项目中(参考文章地址 http://www.cnblogs.com/hangxin1940/archive/2012/01/13

[转]仿91助手的PC与android手机通讯

仿91助手的PC与android手机通讯 原文 知道91助手和豌豆莢吧? 说到这两个东西,最让人好奇的应该是就是和手机的交互了.我之前有研究过电脑和安卓的交互,基本功能已经走通了,在这里我想分享一下. 初初看这个问题觉得很简单,然后如果你有点计算机基础的话深入想一下却发现有很多实现上的空白. ---------------------------------------------------------上面是废话,进入正题. 检测设备插入 检测是否是手机 检测是否已经安装驱动 自动安装手机驱动

不想手动输入车牌号?手机Android端车牌识别助你一臂之力!

关键词:手机车牌识别 Android端车牌识别 移动端车牌识别 车牌识别 随着车辆的暴涨,对车辆的管理也是日益严峻.需要更多灵活的有效的管理方式,伴随着移动端APP的火爆应用,北京易泊时代将原来应用在电脑端的车牌识别技术转移到了手机Android端,手机Android端车牌识别更加灵活,方便,为人们的应用解决了很多实际困难. 手机Android端车牌识别产品描述 手机Android端车牌识别系统是北京易泊时代开发的基于移动平台的证件识别应用程序,支持Android/IOS等多种主流移动操作系统.

Android静默安装实现方案,仿360手机助手秒装和智能安装功能

转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/47803149 之前有很多朋友都问过我,在Android系统中怎样才能实现静默安装呢?所谓的静默安装,就是不用弹出系统的安装界面,在不影响用户任何操作的情况下不知不觉地将程序装好.虽说这种方式看上去不打搅用户,但是却存在着一个问题,因为Android系统会在安装界面当中把程序所声明的权限展示给用户看,用户来评估一下这些权限然后决定是否要安装该程序,但如果使用了静默安装的方式,也就没

电脑无法识别MX4和Android手机的问题(windows和mac下亲测)

ADB连接驱动也安装成功了. 不启动助手的时候就是连接不上.多次重启电脑,重启手机,重启USB调试开关,仍然无解. 我用手机助手连接手机时候,是有这个RSA密钥指纹认证的,可以连接成功,同时android studio和eclipse都可以正常连接到设备进行调试.但是每次手机上都被安装助手对应的软件,非常非常不爽.卸载或者不启动各种助手,我打开Android studio 的DDMS和eclipse的DDMS或者直接用ADB命令的时候就不显示RSA密钥指纹认证.这台电脑上直接启动ddms和adb

android 浮动窗口学习笔记及个人理解(仿360手机助手)

非常感谢原文作者 http://blog.csdn.net/guolin_blog/article/details/8689140 经自己理解 程序运行界面如下图: 1.程序入口界面 2.小浮动窗口 3.大浮动窗口 由上图可看出,可以看出我们基本需要: 1.一个主Activity 2.小浮动窗口view界面 3.大浮动窗口view界面 对于浮动窗口的管理我们还需要 4.一个Service(在后台监控管理浮动窗口的状态) 5.窗口管理类(创建/消除浮动窗口) 代码: package com.ww.

解决部分android手机自带浏览器下载 apk 文件的时候提示无法识别该类型的文件

android 有些较为早期的手机自带的浏览器可能会出现无法识别 apk 类型的文件,因此在文件服务器端需要做以下的调整: 解决一: 在IIS服务器上,MIME类型中添加一个: 文件扩展名: .apk MIME类型: application/vnd.android.package-archive 解决二: 服务端部署在tomcat下,已经在tomcat的web.xml里面配置了mini type <mime-mapping> <extension>apk</extension