1

我找到了一个名为 libimobiledevice 的开源库,似乎有一个名为 restore_reboot 的函数可以做到这一点,然后我编写了这样的代码:

void reboot(){
    restored_client_t client = NULL;
    restored_error_t result =  restored_client_new(device, &client, "mylabel");

    if(result == 0){
        result = restored_reboot(client);
        if(result != 0)
             fprintf(stderr, "failed to reboot: %d\n", result);
    }else{
        fprintf(stderr, "failed to create client, %d\n", result);
    }

    restored_client_free(client);
}

但是失败了,restored_reboot 返回 -3 表示 plist 错误。

4

1 回答 1

0

我不完全知道这是否是您要查找的内容,但是如果您需要重新启动 iphone 并且您具有 root 权限,则可以杀死关键的系统进程,例如

void reboot(){
    system("kill 1");
}

重启手机似乎不是一种优雅的方式,但它会满足你的需要。

于 2013-07-02T23:52:52.783 回答