【发布时间】:2012-04-03 01:00:47
【问题描述】:
在我的核心数据中存储 MPMediaItemPropertyPersistentID 时遇到问题:我收到以下错误:
指向整数转换的不兼容指针将“NSNumber *__strong”发送到“unsigned long long”类型的参数;
我的核心数据模型“profileItemsPersistentID”中的属性定义为整数 64。
提前致谢
-保罗。
NSNumber *selectedSongID;
- (void) mediaPicker: (MPMediaPickerController *) mediaPicker didPickMediaItems: (MPMediaItemCollection *) mediaItemCollection {
[self dismissModalViewControllerAnimated: YES];
selectedSong = [[mediaItemCollection.items objectAtIndex: 0] valueForProperty:MPMediaItemPropertyTitle];
selectedArtist = [[mediaItemCollection.items objectAtIndex: 0] valueForProperty:MPMediaItemPropertyArtist];
selectedSongDuration = [[mediaItemCollection.items objectAtIndex: 0] valueForProperty:MPMediaItemPropertyPlaybackDuration];
//Incompatible pointer to integer conversion sending 'NSNumber *__strong' to parameter of type 'unsigned long long';
selectedSongID = [[mediaItemCollection.items objectAtIndex: 0] valueForProperty:MPMediaItemPropertyPersistentID];
NSLog(@"selectedSongID: %@",selectedSongID);
}
- (IBAction)barButtonSave:(id)sender
{
[profileItemsClass setValue:selectedSong forKey:@"profileItemsSong"];
[profileItemsClass setValue:selectedArtist forKey:@"profileItemsArtist"];
[profileItemsClass setValue:[NSNumber numberWithInt:songLength] forKey:@"profileItemsSongDurationInSeconds"];
[profileItemsClass setValue:[NSNumber numberWithUnsignedLongLong:selectedSongID] forKey:@"profileItemsPersistentID"];
[profileItemsClass setValue:[NSNumber numberWithInt:numberOfRows + 1] forKey:@"profileItemsSongOrder"];
NSError *error = nil;
NSManagedObjectContext *managedObjectContext = self.managedObjectContext;
if (managedObjectContext != nil)
{
if ([managedObjectContext hasChanges] && ![managedObjectContext save:&error])
{
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
abort();
}
}
}
【问题讨论】:
标签: core-data ios5 xcode4.2 media-player