2

我想使用我需要执行以下命令的设备策略管理器使我的应用成为设备所有者:

adb shell dpm set-device-owner {package_name}/{receiver_name}

这可以在模拟器运行时找到,并且该命令是从命令行命中的。

但我想以编程方式执行此操作,我尝试过这种方式:

Java.Lang.Process process = Runtime.GetRuntime().Exec(command);
process.WaitFor();

但这不起作用。根据文档,我在 UiAutomation 下找到了一个方法ExecuteShellCommand,但不知道如何使用这个方法。有人可以帮忙吗?

4

1 回答 1

0

有趣的部分是您的命令是如何定义的。

基于这个答案,我得到了以下工作

    Java.Lang.Process process = Runtime.GetRuntime()?.Exec(new string[] { "su", "-c", "echo test"});
    var result = process?.WaitFor();
    Debug.WriteLine(result);

其中echo test是您的实际命令,su -c表示替代用户并运行以下命令。

于 2020-10-18T17:24:41.050 回答