Swift 4将歌曲上传到Apple Music Library

问题描述 投票:6回答:2

我正在Swift 4中构建一个iOS应用程序,我正在尝试向用户Apple Music Library添加一首歌,我能够像我这样得到我的Apple音乐库:

mediaPicker = MPMediaPickerController(mediaTypes: .anyAudio)
        mediaPicker?.showsCloudItems = false
        mediaPicker?.showsItemsWithProtectedAssets = false
        if let picker = mediaPicker{
            picker.delegate = self
            picker.allowsPickingMultipleItems = false
            present(picker, animated: true, completion: nil)
        }

但是可以将歌曲上传到用户Apple Music Library吗?

以下是我如何获取要添加到用户Apple Music Library的音频文件

let audioString = (result[0]["audio"] as! String).addingPercentEncoding(withAllowedCharacters: CharacterSet.urlQueryAllowed)
                let audioUrl = URL(string:"http://example.com/uploads/" + audioString!)
                Alamofire.request(audioUrl!).responseData { response in
                    do {
                        self.audio = try AVAudioPlayer(data: response.data!)
                        self.audio?.prepareToPlay()
                    }catch{
                    }
                }

UPDATE

我发现了这个:https://stackoverflow.com/a/17433006/979331现在我有两个问题,如何将其转换为Swift,如果我使用ScriptingBridge,当我将我的应用程序提交到应用程序商店时,是否允许这样做?

ios swift
2个回答
7
投票

根据Official Documentation

MPMediaPickerController对象或媒体项选择器是一种专用视图控制器,可用于提供用于选择媒体项的图形界面。

这清楚表明MPMediaPickerController不能用于将歌曲上传到音乐库中。它旨在用于从用户媒体库中获取项目。

即使您将歌曲下载到您的应用程序中也是如此。您无法将其传输到音乐库。

希望这可以帮助。


2
投票

Apple没有提供将歌曲直接上传到Apple Music库的任何规定。相反,您可以将您的歌曲本地保存在您的应用程序DocumentDirectory中以供以后使用。

有关更多信息,请参阅以下博客:

https://mobikul.com/play-audio-file-save-document-directory-ios-swift/

© www.soinside.com 2019 - 2024. All rights reserved.