与 UIActivityViewController 共享 AVPlayerAsset

Sharing an AVPlayerAsset with UIActivityViewController

我想分享我加载到 AVPlayerAsset 中的音频文件。我想知道这是否可能,或者这样做的正确方法是什么样的。这是我的代码:

func shareTrack(track: Track) {
  guard let file = track.playerItem else { return } // This is the AVPlayerAsset
  let activityController = UIActivityViewController(activityItems: [file], applicationActivities: nil)
  activityController.completionWithItemsHandler = { (nil, completed, _, error ) in
    if completed {
      print("Success")
    } else {
      print("Canceled")
    }
  }
  DispatchQueue.main.async{
    self.present(activityController, animated: true)
  }
}

您正在使用单词“文件”,但资产不是文件。它是一种资产。其他程序不会对此一无所知。如果你想分享一些东西,分享一个文件 URL.