为什么我在Xcode控制台中看到CPSqliteStatementPerform错误?

4

我在Xcode控制台中看到以下错误,但我不知道它所抱怨的只读数据库是什么:

CPSqliteStatementPerform: attempt to write a readonly database for UPDATE ddd.ext_container SET orig_date_modified = (SELECT date_modified FROM container WHERE pid=container_pid) WHERE orig_date_modified=0
CPSqliteStatementReset: attempt to write a readonly database for UPDATE ddd.ext_container SET orig_date_modified = (SELECT date_modified FROM container WHERE pid=container_pid) WHERE orig_date_modified=0

以下代码在错误之前执行:
MPMediaQuery *myPlaylistsQuery = [MPMediaQuery playlistsQuery];
NSArray *array = [myPlaylistsQuery collections];
playlists = [[NSMutableArray alloc] init];
[playlists addObject:@"new playlist"];
NSLog(@"%@", [playlists objectAtIndex:0]);

int numPlaylists = 1;
for (MPMediaPlaylist *arrayItem in array) {
    NSLog(@"Got here");

NSLog打印出'new playlist'

然后在for循环初始化之后,CPSqliteStatementPerform:和CPSqliteStatementReset:错误立即打印出来。

然后NSLog打印出'Got here'。

我正在写哪个只读数据库,如何纠正这个问题?


Jeff,你最后找到是什么原因导致的吗?我也遇到了类似的问题,但一直没有找到解决办法。Bill - Progredux
不,我从来没有想出来。仍然希望有人有解决方案。 - JeffB6688
我正在想,把MPMediaItems放入数组中时可能会引发错误,因为你试图复制它们。你有什么想法吗? - Chris
2个回答

5
设备似乎认为您正在尝试写入那些位置。我正在进行类似的项目,并打开了我的iPhone的组织者控制台以查看发生了什么。 以下是当我尝试获取MPMediaItems属性时出现的行:
May 27 22:11:04 unknown sandboxd[2512] <Notice>: QueryTesting(2510) deny file-write-mode /private/var/mobile/Media/iTunes_Control/iTunes/iTunes Library.itlp/Library.itdb
May 27 22:11:04 unknown sandboxd[2512] <Notice>: QueryTesting(2510) deny file-write-data /private/var/mobile/Media/iTunes_Control/iTunes/iTunes Library.itlp/Library.itdb
May 27 22:11:04 unknown sandboxd[2512] <Notice>: QueryTesting(2510) deny file-write-data /private/var/mobile/Media/iTunes_Control/iTunes/iTunes Library.itlp/Dynamic.itdb
May 27 22:11:04 unknown sandboxd[2512] <Notice>: QueryTesting(2510) deny file-write-data /private/var/mobile/Media/iTunes_Control/iTunes/iTunes Library.itlp/Extras.itdb
May 27 22:11:04 unknown sandboxd[2512] <Notice>: QueryTesting(2510) deny file-write-data /private/var/mobile/Media/iTunes_Control/iTunes/iTunes Library.itlp/DBTemp/ddd.itdbm

尽管我只是在检查值,但它认为我正在尝试进行写入。可能是个错误吗?
编辑: 这是一个错误,如此处所讨论的 --->> https://devforums.apple.com/message/428584#428584

1
这是我的应用程序出现问题的原因,当我开始使用Settings.bundle root.plist文件时。 当我删除它时,它就消失了。
我认为NSUserDefaults.StandardUserDefaults有些问题......
目前我只打算忽略这个消息,并向苹果发送我的应用程序更新。

嗯,这很有趣。但不幸的是,我需要Settings.bundle。 - JeffB6688

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接