- 1. 系统
- 1.1 获取设备型号
- 1.2 获取 JAR 版本
- 1.3 获取设备唯一 ID
- 1.4 获取系统版本
- 1.5 获取系统 SDK 版本
- 1.6 获取内部存储大小
- 1.7 获取剩余运行内存
- 1.8 获取内部 SD 卡路径
- 1.9 获取外部 SD 卡路径
- 1.10 获取 U 盘路径
- 1.11 关机
- 1.12 重启
- 1.13 判断包名对应的 APP 是否存在
- 1.14 打开系统设置界面
- 1.15 打开系统 Wifi 设置界面
- 1.16 设置 GPIO 输出值
- 1.17 获取 GPIO 值
- 1.18 设置 GPIO 方向
- 1.19 获取 GPIO 的方向值
- 1.20 设置开机自启动
- 1.21 获取设置的开机自启动 APP 包名
- 1.22 获取设置的开机自启动 Activity 类名
- 1.23 启动另一个 APP
- 1.24 判断文件是否存在
- 1.25 静默安装 APK
- 1.26 卸载 APP
- 1.27 静默安装 APK 并且重启系统
- 1.28 安装 APP 并启动安装的 APP
- 1.29 守护进程,保持置顶状态
- 1.30 取消守护进程,取消置顶状态
- 1.31 获取系统最大音量
- 1.32 获取系统当前音量
- 1.33 增大音量
- 1.34 降低音量
- 1.35 设置音量
- 1.36 设置系统桌面
- 1.37 获取指定网络的 IPV4 地址
- 1.38 以root权限执行系统命令
- 1.39 设置静态IP和切换动态IP
- 1.40 读取4G卡号
1. 系统
1.1 获取设备型号
函数:public static String getDeviceVersion();
描述:获取 Android 设备型号。
用途:可以通过读取这个 api 适配不同的板子, 写不同的功能代码。
参数说明:
- 返回值:String 类型,表示 Android 设备的设备型号。
示例:
String deviceVersion = yztiotManager.getDeviceVersion();
// deviceVersion 为获取到的设备型号
1.2 获取 JAR 版本
函数:public String getJARVersion();
描述:获取 jar 版本号。
用途:当用户拿到的 jar 版本和厂家公布的 jar 不一致时,建议更新。
参数说明:
- 返回值:String 类型,表示 jar 版本号。
示例:
String JARVersion = yztiotManager.getJARVersion();
// JARVersion 为获取到的设备型号
1.3 获取设备唯一 ID
函数:public String getDeviceID();
描述:获取 Android 设备唯一序列号。
参数说明:
- 返回值:String 类型,表示设备的序列号。
示例:
String deviceID = yztiotManager.getDeviceID();
// deviceID 为获取到的设备序列号
1.4 获取系统版本
函数:public static String getAndroidVersion();
描述:获取 Android 设备系统版本号。
用途:可以通过读取这个 api 适配不同的操作系统版本,写不同的功能代码。
参数说明:
- 返回值:String 类型,表示 Android 设备系统版本号。
示例:
String AndroidVersion = yztiotManager.getAndroidVersion();
// AndroidVersion 为获取到的设备系统版本号
1.5 获取系统 SDK 版本
函数:public int getSDKVersion();
描述:获取 Android 设备系统 SDK 版本号。
参数说明:
- 返回值:int 类型,表示 Android 设备系统 SDK 版本号。
示例:
int SDKVersion = yztiotManager.getSDKVersion();
// SDKVersion 为获取到的设备系统 SDK 版本
1.6 获取内部存储大小
函数:public long getTotalInternalMemorySize();
描述:获取内部存储空间总大小,相当于电脑的硬盘空间大小,单位:字节。
用途:可以写一些监听内存的代码,转换 GB 需要将返回的结果/1024/1024/1024。
参数说明:
- 返回值:long 类型,表示 Android 设备内部存储大小(单位:字节)。
示例:
long totalInternalMemorySize = yztiotManager.getTotalInternalMemorySize();
// totalInternalMemorySize 为获取到的内部存储大小(字节)
1.7 获取剩余运行内存
函数:public long getFreeMemorySize();
描述:获取剩余的运行内存,单位:字节。
用途:可用于监听 app 内存使用情况, 用来查看是否有内存泄漏。
参数说明:
- 返回值:long 类型,表示设备剩余运行内存(单位:字节)。
示例:
long freeMemorySize = yztiotManager.getFreeMemorySize();
//freeMemorySize 为获取到的剩余运行内存(字节)
1.8 获取内部 SD 卡路径
函数:public String getInternalSDCardPath();
描述:获取 Android 设备内部 sdcard 路径。
参数说明:
- 返回值:String 类型,表示内部 SD 卡路径。
示例:
String internalSDCardPath = yztiotManager.getInternalSDCardPath();
//internalSDCardPath 为获取到的内部 SD 卡路径
1.9 获取外部 SD 卡路径
函数:public String getExternalSDCardPath();
描述:获取 Android 设备外部 sdcard 路径,比如说 TF 卡。
参数说明:
- 返回值:String 类型,表示外部 SD 卡路径。
示例:
String externalSDCardPath = yztiotManager.getExternalSDCardPath();
// externalSDCardPath 为获取到的外部 SD 卡路径
1.10 获取 U 盘路径
函数:public String getUsbStoragePath();
描述:获取 Android 设备外部 sdcard 路径,比如说 TF 卡。
备注:因为监听系统广播的 media_mounted 返回的路径各个平台都不统一,所以如果想获取精确的 U 盘路径,推荐使用此接口。当 U 盘插入一段时间后,才能够返回正确的值。不插入 U 盘则返回 null。
参数说明:
- 返回值:String 类型,表示获取 U 盘路径。
示例:
String usbStoragePath = yztiotManager.getUsbStoragePath();
// usbStoragePath 为获取到的 U 盘路径
1.11 关机
函数:public void shutdown();
描述:使 Android 系统进入关机状态。
示例:
yztiotManager.shutdown();
// Android 系统进入关机状态
1.12 重启
函数:public void reboot(int delay);
描述:重启 Android 系统。
说明:该接口在选在关机时会保存用户数据, 以防用户数据丢失。
参数说明:
- delay:int 类型,表示延迟时间,单位:秒,如不需要延时,填入 0 即可。
示例:
yztiotManager.reboot(1000);
// 1 秒后进入重启状态
1.13 判断包名对应的 APP 是否存在
函数:public boolean isAppExist(String pkgName);
描述:判断包名对应的 APP 是否存在设备中。
参数说明:
- pkgName:String 类型,表示需要判断的 app 包名。
- 返回值:boolean 类型,True:存在,false:不存在。
示例:
boolean result = yztiotManager.isAppExist("com.android.settings");
// result 为判断 APP 是否存在的返回结果
1.14 打开系统设置界面
函数:public void startSettings();
描述:打开系统设置界面。
示例:
yztiotManager.startSettings();
// 打开系统设置界面
1.15 打开系统 Wifi 设置界面
函数:public void startWifiSettings();
描述:打开系统 Wifi 设置界面。
示例:
yztiotManager.startWifiSettings();
// 打开系统 Wifi 设置界面
1.16 设置 GPIO 输出值
函数:public void setGpioValue(String port, int value);
描述:将对应的 GPIO 设置为输出模式,并设置输出电平。
参数说明:
- port:String 类型,表示 GPIO 口,具体 IO 口号参考对应列表。
- value:int 类型,1:输出高电平 0:输出低电平。
示例:
yztiotManager.setGpioValue("GPIO_B8", 1);
// 设置 GPIO_B8 输出高电平
1.17 获取 GPIO 值
函数:public int getGpioValue(String port, String direction);
描述:获取指定 GPIO 的值。
参数说明:
- port:String 类型,表示 GPIO 口。
- direction:String 类型,表示 GPIO 的方向,in:输入 out:输出。
- 返回值:int 类型,表示 GPIO 的输出值。
示例:
int value = yztiotManager.getGpioValue("GPIO_B8", "out");
// value 为获取到的 GPIO_B8 输出值
1.18 设置 GPIO 方向
函数:public void setGpioDirection(String port, String direction);
描述:设置 GPIO 的方向。
参数说明:
- port:String 类型,表示 GPIO 口。
- direction:String 类型,表示 GPIO 的方向,in:输入 out:输出。
示例:
yztiotManager.setGpioDirection("GPIO_B8", "out");
// 设置 GPIO_B8 为输出状态
1.19 获取 GPIO 的方向值
函数:public String getGpioDirection(String port);
描述:获取 GPIO 的方向值。
参数说明:
- port:String 类型,表示 GPIO 口。
- 返回值:String 类型,表示 GPIO 的方向值,in:输入 out:输出。
示例:
String value = yztiotManager.getGpioDirection("GPIO_B8");
// value 为获取到的 GPIO_B8 的方向值
1.20 设置开机自启动
函数:public void setBootPackageActivity(String pkgName, String pkgActivity);
描述:设置 Android 系统开机自启动 APP 包名和 Activity,参数为空时取消开机自启动。
参数说明:
- pkgName:String 类型,表示 APP 包名,取消参数填空即可。
- pkgActivity:String 类型,表示 APP 的 Activity 类名,取消参数填空即可。
示例:
yztiotManager.setBootPackageActivity("com.android.settings", "com.android.settings.SubSettings");
// 设置【系统设置】为开机自启动
1.21 获取设置的开机自启动 APP 包名
函数:public void getBootPackageName(CallBack callBack);
描述:获取 Android 设备开机自启动的 APP 包名。
参数说明:
- CallBack:回调函数接口,用于接收返回值。
示例:
yztiotManager.getBootPackageName(new yztiotManager.CallBack() {
@Override
public void returnValue(String bootPackageValue) {
// 处理获取到的开机自启动 APP 包名
}
});
1.22 获取设置的开机自启动 Activity 类名
函数:public void getBootPackageActivity(CallBack callBack);
描述:获取 Android 设备开机自启动的 Activity 类名。
参数说明:
- CallBack:回调函数接口,用于接收返回值。
示例:
yztiotManager.getBootPackageActivity(new yztiotManager.CallBack() {
@Override
public void returnValue(String value) {
// 处理获取到的开机自启动 Activity 类名
}
});
1.23 启动另一个 APP
函数:public void startActivity(String pkgName, String pkgActivity);
描述:启动另一个 APP。
参数说明:
- pkgName:String 类型,表示 APP 包名。
- pkgActivity:String 类型,表示 APP 的 Activity 类名。
示例:
yztiotManager.startActivity("com.android.settings", "com.android.settings.Settings");
// 打开【系统设置】界面
1.24 判断文件是否存在
函数:public boolean isExist(String path);
描述:判断指定路径名称文件是否存在。
参数说明:
- path:String 类型,表示需要判断的文件路径。
示例:
boolean result = yztiotManager.isExist("/sdcard/test.apk");
// result 为判断文件是否存在的结果
1.25 静默安装 APK
函数:public void installAppSilent(String filePath);
描述:静默安装指定路径的 APK 文件。
说明:仅限于有 root 权限的固件使用。
参数说明:
- filePath:String 类型,表示 APK 文件路径。
示例:
yztiotManager.installAppSilent("/sdcard/test.apk");
// 静默安装 test.apk
1.26 卸载 APP
函数:public void uninstallAppSilent(String packageName);
描述:卸载指定包名的 APP。
参数说明:
- packageName:String 类型,表示指定 APP 包名。
示例:
yztiotManager.uninstallAppSilent("com.dc.test");
// 卸载 test.apk
1.27 静默安装 APK 并且重启系统
函数:public void installAppSilentAndRebootSystem(String filePath, int reboot_in_sec);
描述:静默安装 APK 并且重启系统。
参数说明:
- filePath:String 类型,表示 APK 文件路径。
- reboot_in_sec:int 类型,表示安装完成后延迟多少秒再重启。
示例:
yztiotManager.installAppSilentAndRebootSystem("/sdcard/test.apk", 1);
// 安装 /sdcard/ 目录下的 test.apk,并且在 1 秒后重启系统
1.28 安装 APP 并启动安装的 APP
函数:public void installAppAndStartUp(String filePath, String pkgName);
描述:安装 APK,并且在安装完成后启动所安装的 APP。
参数说明:
- filePath:String 类型,表示 APK 文件路径。
- pkgName:String 类型,表示要启动的 APP 包名。
示例:
yztiotManager.installAppAndStartUp("/sdcard/test.apk", "com.dc.test");
// 安装 /sdcard/ 目录下的 test.apk,并且安装完成后启动 test.apk
1.29 守护进程,保持置顶状态
函数:public void keepActivity(String pkgName);
描述:在程序被切换到后台或关闭时,自动返回或启动该 app,保持该 app 在前端。
参数说明:
- pkgName:String 类型,表示需要保持置顶的 app 包名。
示例:
yztiotManager.keepActivity("com.dc.test");
// 保持包名为 "com.dc.test" 的 APP 置顶状态
1.30 取消守护进程,取消置顶状态
函数:public void unKeepActivity();
描述:取消守护进程,取消置定状态。
示例:
yztiotManager.unKeepActivity();
// 取消置顶状态
1.31 获取系统最大音量
函数:public int getSystemMaxVolume();
描述:获取 Android 系统最大媒体音量值。
参数说明:
- 返回值:int 类型,表示 Android 系统最大媒体音量值。
示例:
int systemMaxVolume = yztiotManager.getSystemMaxVolume();
//systemMaxVolume 为获取到的 Android 系统最大媒体音量值
1.32 获取系统当前音量
函数:public int getSystemCurrenVolume();
描述:获取 Android 系统当前媒体音量值。
参数说明:
- 返回值:int 类型,表示 Android 系统当前媒体音量值。
示例:
int systemCurrenVolume = yztiotManager.getSystemCurrenVolume();
//systemCurrenVolume 为获取到的 Android 系统当前媒体音量值
1.33 增大音量
函数:public int setRaiseSystemVolume();
描述:设置 Android 系统媒体音量值+1。
参数说明:
- 返回值:int 类型,表示 0:设置成功 -1:设置失败。
示例:
int flag = yztiotManager.setRaiseSystemVolume();
// 设置 Android 系统媒体音量值+1。
1.34 降低音量
函数:public int setLowerSystemVolume();
描述:设置 Android 系统媒体音量值-1。
参数说明:
- 返回值:int 类型,表示 0:设置成功 -1:设置失败。
示例:
int flag = yztiotManager.setLowerSystemVolume();
// 设置 Android系统媒体音量值-1
1.35 设置音量
函数:public int setSystemVolumeIndex(int index);
描述:设置 Android 系统媒体音量值。
参数说明:
- index:int 类型,表示设置 Android 系统媒体音量值。
- 返回值:int 类型,表示 0:设置成功 -1:设置失败。
示例:
int returnValue = yztiotManager.setSystemVolumeIndex(10);
// 设置 Android 系统媒体音量值为 10
1.36 设置系统桌面
函数:public void setDefaultLauncher(String defPackageName, String defClassName);
描述:设置 Android 系统桌面。
参数说明:
- defPackageName:String 类型,表示 APP 包名。
- defClassName:String 类型,表示 APP 的 Activity 类名。
示例:
yztiotManager.setDefaultLauncher("com.watmind.xn", "com.watmind.xn.SplashActivity");
// 设置系统桌面
1.37 获取指定网络的 IPV4 地址
函数:public String getIPv4(String nettype);
描述:获取 Android 设备指定网络的 IPv4 地址。
参数说明:
- nettype:String 类型,表示网络类型,如 “eth0” 表示以太网,”wlan0” 表示 wifi,”ppp0” 表示电话卡。
- 返回值:String 类型,表示获取到的 IPV4 地址。
示例:
String ipAddress = yztiotManager.getIPv4("eth0");
// ipAddress 为获取到的 IPV4 地址
1.38 以root权限执行系统命令
函数:public void execSuCmd(String cmd);
描述:以root权限执行系统命令。
参数说明:
- cmd:String 类型,表示执行的命令。
示例:
yztiotManager.setContext(this);
yztiotManager.execSuCmd("ifconfig eth0 up");
// 加载ETH0网口
1.39 设置静态IP和切换动态IP
函数:public void setStaticIP(String mode, String ipAddress, String prefixLength, String gateway, String dns);
描述:设置静态IP。
参数说明:
- mode:String 类型,static表示静态IP模式 dhcp表示动态分配
- ipAddress:String 类型,IP地址。
- prefixLength:String 类型,长度。
- gateway:String 类型,网关。
- dns:String 类型,DNS。
示例:
yztiotManager.setContext(this);
yztiotManager.setStaticIP("static","192.168.1.100","24","192.168.1.0","8.8.8.8");// 设置静态IP 192.168.1.100 长度24 网关192.168.1.0 DNS 8.8.8.8
yztiotManager.setStaticIP("dhcp","0.0.0.0","0","0.0.0.0","0.0.0.0");//自动分配IP
1.40 读取4G卡号
函数:public static List<String> getIccids(Context context);
描述:读取4G卡号
示例:
yztiotManager.setContext(this);
List<String> iccids = yztiotManager.getIccids(this);
String iccidsString = String.join(", ", iccids);
Log.d(TAG, "iccids = " + iccidsString);
最后编辑:lzx 更新时间:2025-04-16 11:40