Я реализовал AVKit
, URL-адрес, с которого я вызываю видео, с моего сайта использует https.Когда я запускаю приложение через XCode, все работает нормально, но когда я архивирую приложение для выпуска, оно не будет показывать видео.Я реализовал NSAppTransportSecurity
, NSExceptionDomains
и NSIncludesSubdomains
.Это ошибка, которую я получаю,
startConfigurationWithCompletionHandler: Не удалось получить прокси удаленного объекта: Ошибка Domain = NSCocoaErrorDomain Code = 4097 "подключение к службе с именем com.apple.rtcreportingd" UserInfo = {NSDebugDescription = подключение кслужба с именем com.apple.rtcreportingd}.
Я использую Xcode 10.2 Swift 5 У меня был URL-адрес в файле констант, принудительно развернутый, с тех пор я поместил их в свой makeView с помощью оператора guard.У меня есть пользовательская ячейка с видеопроигрывателем внутри ячейки.
У меня есть поиск по максимуму и минимуму, Apple говорит, что нужно внедрить plist-код и настроить его так, как я.
Я попытался использовать другой URL-адрес, поэтому я использовал пример Apples AVKit с теми же результатами.
Все, что я прочитал, говорит, что plist нуждается в коде AppTransportSecurity, который я уже реализовал и до сих пор использую.невозможно подключиться к видео, когда приложение заархивировано и готово к выпуску.
// plist sourceCode
<key>NSAppTransportSecurity</key>
<dict>
<key>NSExceptionDomains</key>
<dict>
<key>example.com</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSThirdPartyExceptionAllowsInsecureHTTPLoads</key>
<false/>
</dict>
</dict>
</dict>
// TableViewDataSource
func tableView(_ tableView: NSTableView, viewFor tableColumn: NSTableColumn?, row: Int) -> NSView? {
guard let videoOne = URL(string: "https://example.com/video.mov") else {return nil}
let cell = tableView.makeView(withIdentifier: NSUserInterfaceItemIdentifier(rawValue: "videoCell"), owner: nil) as? VideoCell
switch row {
case 0:
cell?.titleLabel.stringValue = "title 1"
cell?.playerView.player = AVPlayer(url: videoOne)
return cell
default:
break
Когда приложение было заархивировано для распространения, видео должно воспроизводиться.