Вы ищете lockdownd_get_value
, который является частью libimobiledevice C api. Декларация:
/**
* Retrieves a preferences plist using an optional domain and/or key name.
*
* @param client An initialized lockdownd client.
* @param domain The domain to query on or NULL for global domain
* @param key The key name to request or NULL to query for all keys
* @param value A plist node representing the result value node
*
* @return LOCKDOWN_E_SUCCESS on success, LOCKDOWN_E_INVALID_ARG when client is NULL
*/
LIBIMOBILEDEVICE_API_MSC lockdownd_error_t lockdownd_get_value(lockdownd_client_t client, const char *domain, const char *key, plist_t *value);
Вы можете создать lockdown_client_t
, используя lockdownd_client_new
. Посмотрите исходный код ideviceinfo
для получения дополнительной информации о том, как настроить клиент блокировки.
Параметры domain
и key
соответствуют тому, что вы указали в командной строке. Вы не указали домен, поэтому установите его на NULL
. key
должно быть значением того, что вы передали в качестве аргумента -k
, следовательно, UniqueChipID
.
На выходе будет plist_t
. Вы можете использовать libplist API для преобразования этого в XML или строку.