Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.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
Core data 如何在核心数据实体中存储MPMediaItemPropertyPersistentID_Core Data_Ios5_Xcode4.2_Media Player - Fatal编程技术网

Core data 如何在核心数据实体中存储MPMediaItemPropertyPersistentID

Core data 如何在核心数据实体中存储MPMediaItemPropertyPersistentID,core-data,ios5,xcode4.2,media-player,Core Data,Ios5,Xcode4.2,Media Player,在核心数据中存储MPMediaItemPropertyPersistentID时遇到问题:出现以下错误: 指向整数转换的不兼容指针,将“NSNumber*_strong”发送到“unsigned long long”类型的参数 我的核心数据模型“profileItemsPersistentID”中的属性定义为整数64 提前谢谢 -保罗 NSNumber *selectedSongID; - (void) mediaPicker: (MPMediaPickerController *) med

在核心数据中存储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();
        }
    }

}      
保罗

有时,错误消息会准确地说明问题所在。您的代码:

selectedSongID = [[mediaItemCollection.items objectAtIndex: 0] valueForProperty:MPMediaItemPropertyPersistentID];
虽然我尚未编译以下代码,但它解决了您的错误:

selectedSongID = [[[mediaItemCollection.items objectAtIndex: 0] valueForProperty:MPMediaItemPropertyPersistentID] unsignedLongLongValue];

安德鲁

安德鲁。谢谢你的回复。我一定是昨晚很晚才发布的,因为上面的行没有显示的错误。再往下走。