项目地址:guxiaonian/MobileInfo

Table of Contents

  • 数据信息

    • App 信息获取
    • App 安装列表获取
    • 音量数据获取
    • 版本数据获取
    • 电池数据获取
    • Cpu 实时数据获取
    • 蓝牙数据获取
    • 系统 Build 数据获取
    • 摄像头数据获取
    • Cpu 数据获取
    • 调试数据获取
    • host 数据获取
    • 模拟器数据获取
    • hook 数据获取
    • 本地数据获取
    • 内存数据获取
    • 多开数据获取
    • 网络数据获取
    • root 数据获取
    • 屏幕数据获取
    • SDCard 数据获取
    • 设置数据获取
    • 信号数据获取
    • 手机卡数据获取
    • 堆栈数据获取
    • 唯一 ID 数据获取
    • UA 数据获取
    • Xposed 数据获取

依赖

implementation 'fairy.easy:mobilehardware:{latest-version}'

数据信息

App 信息获取

代码示例

 PackageHelper.getPackageInfo(getApplicationContext())

数据格式

{"appName":"MobileInfo","packageName":"com.mobile.mobileinfo","packageSign":"521cec5eb6984bc70f5b2a27e437b979","appVersionCode":"1","appVersionName":"1.0","targetSdkVersion":"27","minSdkVersion":"14"}
数据键 数据类型 数据解释
appName String app 名字
packageName String app 包名
packageSign String app 包签名
appVersionCode String app 版本号
appVersionName String app 版本名
targetSdkVersion String 目标系统版本号
minSdkVersion String 最低系统版本号

App 安装列表获取

代码示例

 ListAppHelper.mobListApp(getApplicationContext())

数据格式

[{"packageName":"com.huawei.android.tips","versionName":"1.0","versionCode":"1","isSystem":"false"}
]
数据键 数据类型 数据解释
packageName String app 包名
appVersionCode String app 版本号
appVersionName String app 版本名
isSystem String 是否是系统 app

音量数据获取

代码示例

 AudioHelper.mobGetMobAudio(getApplicationContext())

数据格式

{"maxVoiceCall":"15","currentVoiceCall":"3","maxSystem":"15","currentSystem":"0","maxRing":"15","currentRing":"0","maxMusic":"15","currentMusic":"0","maxAlarm":"15","currentAlarm":"0"
}
数据键 数据类型 数据解释
maxVoiceCall String 最大通话音量
currentVoiceCall String 当前通话音量
maxSystem String 最大系统音量
currentSystem String 当前系统音量
maxRing String 最大铃声音量
currentRing String 当前铃声音量
maxMusic String 最大音乐音量
currentMusic String 当前音乐音量
maxAlarm String 最大提示声音音量
currentAlarm String 当前提示声音音量

版本数据获取

代码示例

 BandHelper.mobGetBandInfo()

数据格式

{"baseBand":"21C30B323S006C000,21C30B323S006C000","innerBand":"STF-AL00 8.0.0.360(C00GT)","linuxBand":"$unknown"
}
数据键 数据类型 数据解释
baseBand String 基带版本
innerBand String 内部版本
linuxBand String linux 内核版本

电池数据获取

代码示例

BatteryHelper.mobGetBattery(getApplicationContext())

数据格式

{"br":"74.0%","status":"charging","plugState":"usb","health":"good","present":"true","technology":"Li-poly","temperature":"33℃","voltage":"4.068V","power":"3100.0mAh"
}
数据键 数据类型 数据解释
br String 电量百分比
status String 电池状态
plugState String 电池充电状态
health String 电池健康状况
present String 是否有电池
technology String 电池的技术制造
temperature String 电池温度
voltage String 电池电压
power String 电池总电量

Cpu 实时数据获取

代码示例

CpuInternals.getInstance().getCpuSampler().start();
CpuInternals.getInstance().getCpuSampler().getCpuList();
CpuInternals.getInstance().getCpuSampler().stop();

蓝牙数据获取

代码示例

BluetoothHelper.mobGetMobBluetooth(getApplicationContext())

数据格式

{"bluetoothAddress":"$unknown","isEnabled":"true","device":[{"name":"iPhone","address":"E4:9A:79:89:C7:24",}],"phoneName":"Honor"
}
数据键 数据类型 数据解释
bluetoothAddress String 蓝牙地址
isEnabled String 蓝牙是否打开
device JSONArray 连接的手机的信息
name String 连接手机的蓝牙地址
address String 连接手机的蓝牙名字
phoneName String 手机设置的名字

系统 Build 数据获取

代码示例

BuildHelper.mobGetBuildInfo()

数据格式

{"board":"STF","bootloader":"unknown","brand":"HONOR","device":"HWSTF","display":"STF-AL00 8.0.0.360(C00GT)","fingerprint":"HONOR/STF-AL00/HWSTF:8.0.0/HUAWEISTF-AL00/360(C00GT):user/release-keys","hardware":"hi3660","host":"WUH1000129106","id":"HUAWEISTF-AL00","manufacturer":"HUAWEI","model":"STF-AL00","product":"STF-AL00","radio":"21C30B323S006C000,21C30B323S006C000","serial":"8BN0217901012695","tags":"release-keys","time":"1553851883000","type":"user","user":"test","osVersion":"HONOR/STF-AL00/HWSTF:8.0.0/HUAWEISTF-AL00/358(C00GT):user/release-keys","releaseVersion":"8.0.0","codeName":"$unknown","incremental":"360(C00GT)","sdkInt":"26","previewSdkInt":"0","securityPatch":"2019-04-05"
}
数据键 数据类型 数据解释
board String 主板名称
bootloader String 系统引导程序版本号
brand String 系统定制商
device String 设备参数
display String 显示屏参数
fingerprint String 硬件名
hardware String 内核命令行中的硬件名
host String host
id String 标签
manufacturer String 硬件厂商
model String 版本
product String 手机厂商
radio String 无线电固件的版本字符串
serial String 获取硬件序列号
tags String 描述 Build 的标签
time String time
type String type
user String user
osVersion String os 版本
releaseVersion String 版本
codeName String 当前开发代码名称
incremental String 基础源代码控件用于表示此构建的内部值
sdkInt String SDK 的版本
previewSdkInt String SDK 的预览版本
securityPatch String 用户可见的安全补丁程序级别

摄像头数据获取

代码示例

CameraHelper.getCameraInfo(getApplicationContext())

数据格式

{"cameraInfo":[{"cameraFacing":"back","cameraLevel":"limited","cameraFlashInfo":"true","outputFormats":["raw_sensor","jpeg","private","yuv_420_888","depth16"]}]
}
数据键 数据类型 数据解释
cameraInfo JSONArray 摄像头信息
cameraFacing String 摄像头的位置
cameraLevel String 摄像头支持水平
cameraFlashInfo String 是否有闪光灯
outputFormats JSONArray 摄像头支持的格式

Cpu 数据获取

代码示例

CpuHelper.mobGetCpuInfo()

数据格式

{"cpuName":"0","cpuFreq":"1844000KHZ","cpuMaxFreq":"1844000KHZ","cpuMinFreq":"533000KHZ","cpuHardware":"hi3660","cpuCores":"8","cpuTemp":"36℃","cpuAbi":"arm64-v8a,armeabi-v7a,armeabi"
}
数据键 数据类型 数据解释
cpuName String CPU 名字
cpuFreq String CPU 频率
cpuMaxFreq String CPU 最大频率
cpuMinFreq String CPU 最小频率
cpuHardware String CPU 硬件名
cpuCores String CPU 核数
cpuTemp String CPU 温度
cpuAbi String CPU 架构

调试数据获取

代码示例

DebugHelper.getDebuggingData(getApplicationContext())

数据格式

{"isOpenDebug":"true","isDebugVersion":"true","isDebugging":"false","isReadProcStatus":"false","isAllowMockLocation":"false"
}
数据键 数据类型 数据解释
isOpenDebug String 是否开启了调试模式
isDebugVersion String 是否是 Debug 版本
isDebugging String 是否正在调试
isReadProcStatus String 读取 id 判断是否在调试
isAllowMockLocation String 是否打开位置模拟

host 数据获取

代码示例

DnsHelper.mobDNS("ip")

模拟器数据获取

代码示例

EmulatorHelper.mobCheckEmulator(getApplicationContext())

数据格式

{"checkBuild":"false","checkPkg":"false","checkPipes":"false","checkQEmuDriverFile":"false","checkHasLightSensorManager":"false","checkCpuInfo":"false"
}
数据键 数据类型 数据解释
checkBuild String build
checkPkg String 包名修改
checkPipes String 管道检测
checkQEmuDriverFile String 驱动程序检测
checkHasLightSensorManager String 光传感器检测
checkCpuInfo String cpu 架构检测

hook 数据获取

代码示例

HookHelper.isXposedHook(getApplicationContext())

数据格式

{"xposedInfo":{"checkXposedPackage":"false","checkXposedHookMethod":"false","checkXposedJars":"false","checkClassLoader":"false","checkNativeMethod":"false","checkSystem":"false","checkExecLib":"false","checkCheckman":"false","checkXposedBridge":"false"},"substrateInfo":{"checkSubstratePackage":"false","checkSubstrateHookMethod":"false","checkSubstrateJars":"false"},"fridaInfo":{"checkRunningProcesses":"false","checkFridaJars":"false"}
}
数据键 数据类型 数据解释
xposedInfo JSONObject Xposed 信息
checkXposedPackage String 包名检测
checkXposedHookMethod String 检测调用栈中的可疑方法
checkXposedJars String 检测内存中可疑的 jars
checkClassLoader String 检测载入 Xposed 工具类
checkNativeMethod String 判断系统方法调用钩子
checkSystem String 虚拟检测 Xposed 环境
checkExecLib String 寻找 Xposed 运行库文件
checkCheckman String 内核查找 Xposed 链接库
checkXposedBridge String 环境变量特征字判断
substrateInfo JSONObject Substrate 信息
checkSubstratePackage String 包名检测
checkSubstrateHookMethod String 检测调用栈中的可疑方法
checkSubstrateJars String 检测内存中可疑的 jars
fridaInfo JSONObject Frida 信息
checkRunningProcesses String 检测进程信息
checkFridaJars String 检测内存中可疑的 jars

本地数据获取

代码示例

LocalHelper.mobGetMobLocal()

数据格式

{"country":"CN","language":"zh"
}
数据键 数据类型 数据解释
country String 当前国家
language String 当前语言

内存数据获取

代码示例

MemoryHelper.getMemoryInfo(getApplicationContext())

数据格式

{"ramMemoryTotal":"3.90 GB","ramMemoryAvailable":"1.56 GB","romMemoryAvailable":"40.22 GB","romMemoryTotal":"56.30 GB","sdCardMemoryAvailable":"40.20 GB","sdCardMemoryTotal":"56.28 GB"
}
数据键 数据类型 数据解释
ramMemoryTotal String RAM 全部内存
ramMemoryAvailable String RAM 可用内存
romMemoryAvailable String ROM 可用内存
romMemoryTotal String ROM 全部内存
sdCardMemoryAvailable String 内存卡可用内存
sdCardMemoryTotal String 内存卡全部内存

多开数据获取

代码示例

MoreOpenHelper.checkVirtual(getApplicationContext())

数据格式

{"checkByPrivateFilePath":"false","checkByMultiApkPackageName":"false","checkByHasSameUid":"false"
}
数据键 数据类型 数据解释
checkByPrivateFilePath String 检测私有路径
checkByMultiApkPackageName String maps 检测
checkByHasSameUid String ps 检测

网络数据获取

代码示例

NetWorkHelper.mobGetMobNetWork(getApplicationContext())

数据格式

{"type":"WIFI","networkAvailable":"true","haveIntent":"false","isFlightMode":"false","isNFCEnabled":"true","isHotspotEnabled":"false","hotspotSSID":"$unknown","hotspotPwd":"$unknown","encryptionType":"$unknown"
}
数据键 数据类型 数据解释
type String 网络类型
networkAvailable String 网络是否可用
haveIntent String 是否开启数据流量
isFlightMode String 是否是飞行模式
isNFCEnabled String NFC 功能是否开启
isHotspotEnabled String 是否开启热点
hotspotSSID String 热点账号
hotspotPwd String 热点密码
encryptionType String 热点加密类型

root 数据获取

代码示例

RootHelper.mobileRoot(getApplicationContext())

屏幕数据获取

代码示例

ScreenHelper.mobGetMobScreen(getApplicationContext())

数据格式

{"densityScale":"3.0","densityDpi":"480","width":"1080","height":"1920","isScreenAuto":"false","isScreenAutoChange":"false","screenBrightness":"114","checkHideStatusBar":"false","checkHasNavigationBar":"false","getStatusBarHeight":"72","getNavigationBarHeight":"126"
}
数据键 数据类型 数据解释
densityScale String 当前屏幕密度与标准屏幕密度的比值
densityDpi String 屏幕密度
width String 屏幕宽度
height String 屏幕高度
isScreenAuto String 亮度是否为自动调节
isScreenAutoChange String 屏幕亮度
screenBrightness String 屏幕是否开启自动旋转
checkHideStatusBar String 是否隐藏状态栏
checkHasNavigationBar String 是否显示底部导航栏
getStatusBarHeight String 获取状态栏高度
getNavigationBarHeight String 获取底部导航栏的高度

SDCard 数据获取

代码示例

SDCardHelper.mobGetSdCard()

数据格式

{"isSDCardEnable":"true","getSDCardPath":"/storage/emulated/0"
}
数据键 数据类型 数据解释
isSDCardEnable String SDCard 是否可用
getSDCardPath String SDCard 的路径

设置数据获取

代码示例

SettingsHelper.mobGetMobSettings(getApplicationContext())

数据格式

{"androidId":"f573c0f6ca5178a2"
}
数据键 数据类型 数据解释
androidId String androidId

信号数据获取

代码示例

SignalHelper.mobGetNetRssi(getApplicationContext())

数据格式

{"type":"WIFI","bssid":"82:2a:a8:1b:58:de","ssid":"GPNL","ipAddress":"192.168.1.73","ipAddressIpv6":"$unknown","macAddress":"D8:C7:71:E4:48:B9","networkId":"93","linkSpeed":"86Mbps","rssi":"-53","level":"4","supplicantState":"COMPLETED","proxy":"false","proxyAddress":"$unknown","proxyPort":"$unknown"
}
数据键 数据类型 数据解释
type String 网络类型
bssid String bssid
ssid String ssid
ipAddress String ipv4
ipAddressIpv6 String ipv6
macAddress String mac 地址
networkId String 网络 id
linkSpeed String 网络速度
rssi String 信号强度
level String 信号等级
supplicantState String 连接状态
proxy String 是否开启代理
proxyAddress String 代理地址
proxyPort String 代理端口号

手机卡数据获取

代码示例

SimCardHelper.mobileSimInfo(getApplicationContext())

数据格式

{"sim1Imei":"$unknown","sim2Imei":"866957032955878","sim1Imsi":"460037121038284","sim2Imsi":"$unknown","simSlotIndex":"0","meid":"A000007ADE42E2","sim1ImsiOperator":"CT","sim2ImsiOperator":"$unknown","sim1Ready":"true","sim2Ready":"false","isTwoCard":"false","isHaveCard":"true","operator":"CT"
}
数据键 数据类型 数据解释
sim1Imei String 卡 1IMEI
sim2Imei String 卡 2IMEI
sim1Imsi String 卡 1IMSI
sim2Imsi String 卡 2IMSI
simSlotIndex String 有流量的卡的卡槽 id
meid String MEID
sim1ImsiOperator String 卡 1 运营商
sim2ImsiOperator String 卡 2 运营商
sim1Ready String 卡 1 是否激活
sim2Ready String 卡 2 是否激活
isTwoCard String 是否有两张卡
isHaveCard String 是否有卡
operator String 流量卡运营商

堆栈数据获取

代码示例

StackSampler.getStackInfo(Thread.currentThread())

唯一 ID 数据获取

代码示例

PhoneIdHelper.getPsuedoUniqueID()

UA 数据获取

代码示例

UserAgentHelper.getDefaultUserAgent(getApplicationContext())

Xposed 数据获取

代码示例

XposedHookHelper.checkXposedInjet(getApplicationContext())

数据格式

{"xposedApp":"false","xposedImei":"false","xposedImsi":"false","xposedSerial":"false","xposedSsid":"false","xposedMac":"false","xposedAddress":"false","xposedAndroidId":"false","xposedLatitude":"false","xposedLongitude":"false"
}
数据键 数据类型 数据解释
xposedApp String 是否 hook 了本 APP
xposedImei String 是否 hook 了 IMEI
xposedImsi String 是否 hook 了 IMSI
xposedSerial String 是否 hook 了序列号
xposedSsid String 是否 hook 了 SSID
xposedMac String 是否 hook 了 MAC 地址
xposedAddress String 是否 hook 了蓝牙地址
xposedAndroidId String 是否 hook 了 AndroidId
xposedLatitude String 否 hook 了纬度
xposedLongitude String 是否 hook 了经度

MobileInfo相关推荐

  1. MobileInfo,如何成为杰出的程序员

    | plugState | String | 电池充电状态 | | health | String | 电池健康状况 | | present | String | 是否有电池 | | technolo ...

  2. 010_JavaScript变量

    1. JavaScript变量是存储数据值的容器. 2. 声明变量 2.1. 使用var(关键字)+变量名的方式声明变量. 2.2. 声明之后, 变量是没有值的: var carName; 2.3. ...

  3. 使用MyEclipse简单调用WebServices

    使用MyEclipse调用第三方WebServices,第一步先新建一个Java工程项目: 在工程项目中点击右键,新建一个Web Service Client 一直next,到这个界面时,需要把wsd ...

  4. android wifi是否可用,Android判断网络是否可用、区分WiFi和数据、是否被安全软件拦截...

    Android判断网络是否可用.区分WiFi和数据.是否被安全软件拦截 网络请求失败的原因有很多,手机没有连网是很常见的原因,这时需要提醒用户打开网络.怎么从众多可能的失败原因中判断是不是手机没连网呢 ...

  5. vue项目中获取当前设备 操作系统及版本,设备型号,ip,地区信息

    1.获取ip,地区信息 使用搜狐IP地址查询接口(?后边设置编码)须连网! http://pv.sohu.com/cityjson http://pv.sohu.com/cityjson?ie=utf ...

  6. javaScripty笔记

    <JavaScript-笔记> CSS的基本选择器 选择器分类 语法 标签选择器 标签名 类选择器 .类名 ID选择器 #ID 通用选择器 * CSS的扩展选择器选择元素 扩展选择器 作用 ...

  7. dya04 js_02

    1 json的入门 <!DOCTYPE html> <html lang="en"> <head><meta charset=" ...

  8. Android监听手机网络变化

    Android监听手机网络变化 手机网络状态发生变化会发送广播,利用广播接收者,监听手机网络变化 效果图 注册广播接收者 <?xml version="1.0" encodi ...

  9. Python零基础速成班-第13讲-Python正则表达式Regex

    Python零基础速成班-第13讲-Python正则表达式Regex 学习目标 正则表达式 课后作业(4必做) 友情提示:将下文中代码拷贝到JupyterNotebook中直接执行即可,部分代码需要连 ...

最新文章

  1. TensorFlow tf.nn.conv2d是怎样实现卷积的?
  2. 优秀编程团队需要改善的12件事情
  3. 最常见的HTTP错误
  4. redis实现轮询算法_基于zookeeper或redis实现分布式锁
  5. 在WORD中插入带圈的数字的序号
  6. anjularjs ajax 调用,AngularJS AJAX调用的服务(AngularJS Ajax Call in Service
  7. LeetCode 475. 供暖器(双指针二分查找)
  8. UML设计的9种图例
  9. jmeter断言 判断响应数据是否符合预期
  10. 36. 打印数组的主次对角线
  11. 实战教你刷显卡BIOS
  12. 易灵思FPGA-软件Efinity和Modelsim联仿设置
  13. pyhton BOF图像检索
  14. 阴阳师手游服务器维护,12月30日阴阳师服务器维护更新公告
  15. 阿里云思维导图系列(五)阿里云关系型数据库产品全家福
  16. layui 怎么设置点击图片放大_layui图片如何放大
  17. 【ES】一、ES入门及JavaAPI使用
  18. CAD图纸无法复制粘贴该怎么办?
  19. Java并发编程: CyclicBarrier让多线程齐步走
  20. IDEA选中一列数据

热门文章

  1. 深圳云计算培训:文件属性 chattr
  2. 苹果手机拷贝功能 php,苹果iPhone上的“通用剪贴板”到底是什么?
  3. HOW2J.CN--JAVA学习笔记
  4. 【树莓派不吃灰】基础篇④ Raspberry Pi上搭建NodeJS运行环境
  5. 夜间模式的开启与关闭,父模板的制作(2017.11.2)
  6. 运动健身行业门店运营管理解决方案
  7. 计算机毕业设计Java创新学分认证系统(源码+系统+mysql数据库+lw文档)
  8. 计算机ps cs2考试,初中信息技术《认识Photoshop CS2的工作界面》答辩
  9. UL1017是什么标准?吸尘器UL1017报告
  10. 学Python这本书不错!