通过蓝牙重启 Android phone?
Reboot Android phone via bluetooth?
我的项目涉及工厂标准(例如,未 root)Android phone 通过蓝牙和 wifi 连接到 PC,但 phone 本身在物理上不可访问(它是在上锁的塑料盒中)并且不适合个人使用。
有什么方法可以通过蓝牙或 wifi 向 android phone 发送某种命令来重新启动它?
是的,但这很棘手。
有多个 case-scenario 但唯一的条件是蓝牙或 Wi-Fi 连接由 third-party 应用程序建立和维护,并且您可以访问以下代码这个特定的应用程序(或者更好的是,你是这个应用程序的开发者)。
首先:有问题的应用程序必须能够通过蓝牙或 Wi-Fi 接收要求重新启动的命令。
如果您无权访问应用程序代码或没有涉及 third-party 应用程序(这意味着它是 OS (Android) 本身管理连接)根本行不通。
现在,进入棘手的部分。
最简单的方法是,相关设备已获得 root 权限,并且您的应用程序可以被授予 super-user(root)权限。
在这种情况下,一旦它收到重启命令,它就可以执行重启过程如下:
Runtime.getRuntime().exec(new String[]{"/system/bin/su","-c","reboot
now"});
或
Runtime.getRuntime().exec(new String[]{"/system/xbin/su","-c","reboot
now"});
因为它可能取决于 su 二进制文件所在的位置。
在任何情况下,它都可能不适用于所有设备,因此您应该尝试哪种方法适用于您将要使用的设备。
现在,如果您没有获得 root 权限的设备 and/or,您将无法对有问题的设备进行 root 权限,当且仅当您将应用程序签名为系统应用程序时,您才可以这样做。
此处有更多详细信息:
希望对您有所帮助!
我的项目涉及工厂标准(例如,未 root)Android phone 通过蓝牙和 wifi 连接到 PC,但 phone 本身在物理上不可访问(它是在上锁的塑料盒中)并且不适合个人使用。
有什么方法可以通过蓝牙或 wifi 向 android phone 发送某种命令来重新启动它?
是的,但这很棘手。
有多个 case-scenario 但唯一的条件是蓝牙或 Wi-Fi 连接由 third-party 应用程序建立和维护,并且您可以访问以下代码这个特定的应用程序(或者更好的是,你是这个应用程序的开发者)。
首先:有问题的应用程序必须能够通过蓝牙或 Wi-Fi 接收要求重新启动的命令。
如果您无权访问应用程序代码或没有涉及 third-party 应用程序(这意味着它是 OS (Android) 本身管理连接)根本行不通。
现在,进入棘手的部分。 最简单的方法是,相关设备已获得 root 权限,并且您的应用程序可以被授予 super-user(root)权限。 在这种情况下,一旦它收到重启命令,它就可以执行重启过程如下:
Runtime.getRuntime().exec(new String[]{"/system/bin/su","-c","reboot now"});
或
Runtime.getRuntime().exec(new String[]{"/system/xbin/su","-c","reboot now"});
因为它可能取决于 su 二进制文件所在的位置。 在任何情况下,它都可能不适用于所有设备,因此您应该尝试哪种方法适用于您将要使用的设备。
现在,如果您没有获得 root 权限的设备 and/or,您将无法对有问题的设备进行 root 权限,当且仅当您将应用程序签名为系统应用程序时,您才可以这样做。
此处有更多详细信息:
希望对您有所帮助!