Могу ли я отфильтровать песни, загруженные на устройство из Apple Music?

У меня есть MPMediaPickerController, показывающий песни, доступные на устройстве, которые можно использовать для отправки другим пользователям в моем приложении. Я отфильтровал элементы Cloud, но я также хочу отфильтровать песни из Apple Music, которые стали «доступными в автономном режиме».

-(void)openMusic:(NSNotification *)notification {

    if ([[notification name] isEqualToString:@"myMusic"]){

        dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 0.75 * NSEC_PER_SEC), dispatch_get_main_queue(), ^{
            MPMediaPickerController *mediaPicker = [[MPMediaPickerController alloc] initWithMediaTypes:MPMediaTypeMusic];
            mediaPicker.delegate = self;
            mediaPicker.allowsPickingMultipleItems = NO;
            mediaPicker.showsCloudItems = NO;
            [self presentViewController:mediaPicker animated:YES completion:nil];
        });

    }


}

В настоящее время он по-прежнему показывает все загруженные треки Apple Music. Как я могу их отфильтровать?


person Austin Berenyi    schedule 02.12.2017    source источник
comment
Я до сих пор не знаю, как скрыть элементы Apple Music, которые были доступны в автономном режиме, но я обнаружил, что когда элемент Apple Music загружается на устройство, трек itemURL = nil, поэтому, возможно, это можно использовать для их фильтрации из MPMediaPickerController.   -  person Austin Berenyi    schedule 13.12.2017


Ответы (1)


Согласно этому ответу, если вы используете:

picker.showsCloudItems = NO;

Вы получите список песен, которые были либо загружены вручную в приложение "Музыка", либо песни, которые были переданы в потоковом режиме и поэтому кэшированы. Однако, поскольку песни Apple Music защищены DRM, для отображения только песен, загруженных локально , вам также нужно добавить эту строку:

picker.showsItemsWithProtectedAssets = NO;

person Jelena    schedule 03.08.2018
comment
идеальное решение для фильтрации песен, загруженных на устройство из Apple Music. - person Hardik Thakkar; 15.09.2020