С# Подключиться к iPhone через USB/iTunes - возможно?

Кто-нибудь знает, можно ли читать/редактировать список контактов iPhone с помощью C#, при условии, что iPhone подключен к ПК с Windows через USB-кабель/iTunes?


person Jay    schedule 08.01.2013    source источник


Ответы (2)


Вы можете использовать CFManzana/Manaza или MobileDevice dll для подключения iPhone. ниже приведен пример того, как вы можете это сделать.

// this variable will be declared in your class .

public static string devicename;

CFManzana.iDevice
phone = New iDevice();
phone.connect += phone_connect;

void phone_connect(object sender, ConnectEventArgs args)
        {
// here your will add your exception handling details.
           }

// now extract your device details.

devicename = phone.getDeviceName or phone.CopyValue("DeviceName"); \\it all depends what version of Manzana you have downloaded.

//now assign the value to the field 

this.txtname.text = devicename;

person user1986918    schedule 17.01.2013

Если вы хотите подключиться к устройству iOS через USB из Windows, вы можете попробовать пакет imobiledevice-net NuGet, который я поддерживаю. Например, чтобы вывести список всех устройств iOS, которые в данный момент подключены к вашему ПК, вы можете сделать это:

ReadOnlyCollection<string> udids;
int count = 0;

var idevice = LibiMobileDevice.Instance.iDevice;
var lockdown = LibiMobileDevice.Instance.Lockdown;

var ret = idevice.idevice_get_device_list(out udids, ref count);

if (ret == iDeviceError.NoDevice)
{
    // Not actually an error in our case
    return;
}

ret.ThrowOnError();

// Get the device name
foreach (var udid in udids)
{
    iDeviceHandle deviceHandle;
    idevice.idevice_new(out deviceHandle, udid).ThrowOnError();

    LockdownClientHandle lockdownHandle;
    lockdown.lockdownd_client_new_with_handshake(deviceHandle, out lockdownHandle, "Quamotion").ThrowOnError();

    string deviceName;
    lockdown.lockdownd_get_device_name(lockdownHandle, out deviceName).ThrowOnError();

    deviceHandle.Dispose();
    lockdownHandle.Dispose();
}
person Frederik Carlier    schedule 09.11.2017