C#。。。通过USB/iTunes连接到iPhone-可能吗?
有人知道,如果iPhone通过USB电缆/iTunes插入Windows PC,是否可以使用C#。。。通过USB/iTunes连接到iPhone-可能吗?,c#,iphone,ios4,iphone-sdk-3.0,itunes-sdk,C#,Iphone,Ios4,Iphone Sdk 3.0,Itunes Sdk,有人知道,如果iPhone通过USB电缆/iTunes插入Windows PC,是否可以使用C#读取/编辑iPhone的联系人列表吗?您可以使用CFManzana/Manaza或MobileDevice dll连接iPhone。下面是一个如何做到这一点的示例 // this variable will be declared in your class . public static string devicename; CFManzana.iDevice phone = New iDevi
C#
读取/编辑iPhone的联系人列表吗?您可以使用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;
如果您想从Windows通过USB连接到iOS设备,您可以尝试我维护的imobiledevice net NuGet软件包。例如,要列出当前连接到PC的所有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();
}
ReadOnlyCollection udid;
整数计数=0;
var idevice=LibiMobileDevice.Instance.idevice;
var lockdown=LibiMobileDevice.Instance.lockdown;
var ret=idevice.idevice\u get\u device\u list(out udid,ref count);
if(ret==iDeviceError.NoDevice)
{
//在我们的案例中,这实际上不是一个错误
返回;
}
ret.ThrowOnError();
//获取设备名称
foreach(udid中的变量udid)
{
iDeviceHandle设备手柄;
idevice.idevice_new(out deviceHandle,udid).ThrowOnError();
锁止手柄锁止手柄;
锁定。通过握手(deviceHandle,out lockdownHandle,“Quamotion”)。ThrowOnError();
字符串设备名;
lockdown.lockdown_get_device_name(lockdownHandle,out deviceName).ThrowOnError();
deviceHandle.Dispose();
lockdownHandle.Dispose();
}