添加或删除照片时触发iMobileDevice-Net事件

时间:2019-06-27 13:26:17

标签: c# events filesystemwatcher libimobiledevice

'iMobileDevice-Net'library中是否有任何方法可以在连接的设备上的照片发生更改时触发事件?例如当您从设备删除照片或在设备连接时拍摄新照片时。到目前为止,我必须定期使用计时器触发器来检查照片数据库的修改时间(“ st_mtime”)属性,我认为这种方法并不是最好的方法如果我将间隔时间设置得很低,请特别执行此操作。

private void Timer1_Tick(object sender, EventArgs e)
{
    string path = @"/PhotoData/Photos.sqlite-wal";
    ReadOnlyCollection<string> infoList;
    var returnCode = afcApi.afc_get_file_info(clientHandle, path, out infoList);
    long filemtime = Convert.ToInt64(infoList[infoList.IndexOf("st_mtime") + 1]) / 1000000000;
    DateTime modificationTime = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc);
    modificationTime = modificationTime.AddSeconds(filemtime).ToLocalTime();
    if (modificationTime > lastModificationTime)
    {
        lastModificationTime = modificationTime;
        DoTrigger();
    }
}

0 个答案:

没有答案