Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在应用程序未运行时检测iphone是否同步_Iphone_Objective C_Sync_Mpmusicplayercontroller - Fatal编程技术网

如何在应用程序未运行时检测iphone是否同步

如何在应用程序未运行时检测iphone是否同步,iphone,objective-c,sync,mpmusicplayercontroller,Iphone,Objective C,Sync,Mpmusicplayercontroller,我想知道,当我的应用程序不运行时,是否有办法检测iphone音乐库是否发生了变化 在MPMediaLibrary类中有一个属性lastModifiedDate可以实现此功能,但我面临的问题是,即使iPhone未同步,此日期也会更改。如果iPod中的当前播放列表或当前播放列表发生更改,则日期通常会更改 是否有其他方法检测iPhone是否同步?您可以使用lastModifiedDate,在应用程序关闭时记录播放列表的状态,然后在应用程序打开且lastModifiedDate已更改时:比较当前和以前的

我想知道,当我的应用程序不运行时,是否有办法检测iphone音乐库是否发生了变化

在MPMediaLibrary类中有一个属性lastModifiedDate可以实现此功能,但我面临的问题是,即使iPhone未同步,此日期也会更改。如果iPod中的当前播放列表或当前播放列表发生更改,则日期通常会更改


是否有其他方法检测iPhone是否同步?

您可以使用lastModifiedDate,在应用程序关闭时记录播放列表的状态,然后在应用程序打开且lastModifiedDate已更改时:比较当前和以前的播放列表。

如果设备与iTunes同步,它将清除所有应用程序下的tmp文件夹。 因此,您可以在tmp中创建一个空白文件,下次启动应用程序时发现该文件丢失时,应该已同步设备。
要获取tmp文件夹路径,请使用HI Alex,Thanx进行回复。即使iPod中的“当前播放列表”或“当前播放列表”已更改,并且现在有办法获取iPod的当前播放列表(如果有,请让我知道!),也会出现问题。通过您的方法,我可以存储以前的播放列表(因为播放列表是在我的应用程序存在时设置的),但无法获取当前播放列表进行比较。此外,除了当前播放列表中的更改外,我还不能完全确定上次修改的日期何时更改。谢谢@Owen,我今天会再次查看。我尝试过这种方法,但在同步iphone时,temp dir中的文件不会被删除。我在iOS 3.1.3I中进行测试时发现,几年前,我不小心使用了NSTemporaryDirectory()而不是NSHomeDirectory(),并且一个保存文件最终保存在/tmp/Documents/而不是/Documents/中,这导致每次我同步设备时保存文件都会被删除。这是一个错误,我花了一个多星期,所以我很肯定这一点。也许苹果后来改变了这种行为。从iOS 8开始,这种方法就不起作用了。还有其他建议吗?