首页 > 解决方案 > iOS 13:MPMediaPickerController - 内部错误/找不到请求的应用扩展

问题描述

看来将军MPMediaPicker在ios13(ipad air 2,iphone SE)上不再工作了

从那里复制的示例 1:1 没有显示媒体选择器 https://developer.apple.com/documentation/mediaplayer/displaying_a_media_picker_from_your_app

任何提示如何恢复功能?

注1

当使用MPMediaPickerController这样的

    musicPickerView = [[UIView alloc] initWithFrame:fullScreenRect];
    musicPickerView.alpha = 0.0f;
    musicPicker = [[MPMediaPickerController alloc] initWithMediaTypes:MPMediaTypeMusic];
    musicPicker.showsCloudItems               = false;
    musicPicker.showsItemsWithProtectedAssets = false;
    musicPicker.delegate                      = self;
    musicPicker.allowsPickingMultipleItems    = false;
    musicPicker.prompt                        = NSLocalizedString(@"Select a song", @"Select a song");
    musicPicker.view.frame                    = musicPickerView.bounds;
    [self addChildViewController:musicPicker];
    [musicPickerView addSubview:musicPicker.view];
    [self.view addSubview:musicPickerView];
    [musicPicker didMoveToParentViewController:self];
    [self fadeInMusicPicker:true];

委托根本没有被调用。不显示日志,仅显示本机警报。

我得到了这个原生的改变

内部错误

找不到请求的应用扩展程序

[取消]

笔记2

当该设备上未安装苹果音乐应用程序时,这似乎是问题所在。有人知道确定是否安装了苹果音乐应用程序的可靠方法吗?

标签: iosxcodempmediaitemmpmediapickercontrollerapple-music

解决方案


似乎Music必须在该设备上安装来自苹果的应用程序。仍然不是 100% 可重现,但安装了该应用程序后,我再也没有看到这个问题。


推荐阅读