libimobiledevice之iphone/ipad设备的识别实现

本文介绍如何利用libimobiledevice库在C++中注册并实现回调函数myDeviceEvent,从而实现对iPhone和iPad设备的识别功能。
摘要由CSDN通过智能技术生成

第一步,注册回调函数myDeviceEvent:

idevice_event_unsubscribe();
idevice_error_t error = idevice_event_subscribe(myDeviceEvent, this);

回调函数myDeviceEvent的实现:
 

void myDeviceEvent(const idevice_event_t *event, void *user_data)
{
    auto mobileDev = (MyMobileDevice*)user_data;

    auto eventType = event->event;


    qDebug() << "phone event:" << event->udid << event->event << event->conn_type;

    switch (eventType)
    {
    case IDEVICE_DEVICE_ADD:{//手机插上usb线后,电脑识别到手机
        QMetaObject::invokeMethod(mobileDev, "appendDevice", Qt::QueuedConnection, Q_ARG(QString, event->udid));
    };break;
    case IDEVICE_DEVICE_REMOVE:{//电脑检测到手机拔掉usb线
        QMetaObject::invokeMethod(mobileDev, "removeDevice", Qt::QueuedConnection, Q_ARG(QString, event->udid));
    };break;
    case IDEVICE_DEVICE_PAIRED:{ //用户点击信任后会触发这个
        QMetaObject::invokeMethod(mobileDev, "appendDevice", Qt::QueuedConnection, Q_ARG(QString, event->udid));
    };break;
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值