Yandex Cloud
Поиск
Связаться с намиПопробовать бесплатно
  • Кейсы
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
  • Marketplace
    • Доступны в регионе
    • Инфраструктура и сеть
    • Платформа данных
    • Искусственный интеллект
    • Безопасность
    • Инструменты DevOps
    • Бессерверные вычисления
    • Управление ресурсами
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Партнёрская программа
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Акции и free tier
  • Кейсы
  • Документация
  • Блог
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ТОО «Облачные Сервисы Казахстан»
Yandex Cloud Video
RU
    • Обзор
    • Управление
      • Обзор
        • Начало работы
    • Политика автозапуска браузеров
  • Управление доступом
  • Правила тарификации
  • Аудитные логи Audit Trails
  • История изменений

В этой статье:

  • Подключение библиотеки SDK видеоплеера
  • Импорт библиотек
  • Использование SDK
  • Настройте запуск воспроизведения
  • Подключение оболочки видеоплеера
  • Воспроизведение в SwiftUI
  1. Видеоплеер
  2. SDK
  3. iOS
  4. Начало работы

SDK видеоплеера для iOS

Статья создана
Yandex Cloud
Обновлена 8 мая 2026 г.
  • Подключение библиотеки SDK видеоплеера
  • Импорт библиотек
  • Использование SDK
    • Настройте запуск воспроизведения
    • Подключение оболочки видеоплеера
    • Воспроизведение в SwiftUI

С помощью SDK вы можете встроить в ваше iOS-приложение видеоплеер для воспроизведения контента из Cloud Video.

Для работы с SDK нужна среда разработки Xcode версии 16.4 или выше и Swift версии 5.8 или выше.

Подключение библиотеки SDK видеоплеераПодключение библиотеки SDK видеоплеера

Xcode SPM
Package.swift
  1. В окне Xcode навигатора проектов (Project Navigator) выберите свой проект.

  2. На верхней панели нажмите File и выберите Add Package Dependencies...

  3. В строке поиска введите https://github.com/yandex-cloud/cloud-video-player-ios-sdk/ и выберите пакет cloud-video-player-ios-sdk.

  4. В поле Dependency Rule выберите Up to Next Major Version и укажите версию 0.1.6.

  5. В поле Add to Project выберите проект, к которому вы хотите подключить библиотеки, и нажмите Add Package.

  6. Во всплывающем окне укажите, к какому таргету в проекте подключить библиотеки, и нажмите Add Package.

    Пакет содержит библиотеки:

    • CloudVideoPlayer — основная библиотека SDK видеоплеера для iOS.
    • CloudVideoPlayerUI — дополнительная библиотека с набором интерфейсных элементов (оболочка видеоплеера).
  1. В окне Xcode навигатора проектов (Project Navigator) выберите свой проект.

  2. Откройте Package.swift.

  3. Добавьте в массив dependencies следующую зависимость:

    dependencies: [
      .package(
        url: "https://github.com/yandex-cloud/cloud-video-player-ios-sdk/",
        from: "0.1.6"
      )
    ],
    
  4. Добавьте библиотеки в массив dependencies конкретного таргета:

    .target(
      name: "MyTargetName",
      dependencies: [
        .product(name: "CloudVideoPlayer", package: "cloud-video-player-ios-sdk"),
        .product(name: "CloudVideoPlayerUI", package: "cloud-video-player-ios-sdk")
      ]
    ),
    

    Где:

    • CloudVideoPlayer — основная библиотека SDK видеоплеера для iOS.
    • CloudVideoPlayerUI — дополнительная библиотека с набором интерфейсных элементов (оболочка видеоплеера).
  5. Сохраните изменения.

Импорт библиотекИмпорт библиотек

Чтобы импортировать библиотеки, добавьте в файл с кодом следующие строки:

import CloudVideoPlayer
import CloudVideoPlayerUI

Использование SDKИспользование SDK

Настройте запуск воспроизведенияНастройте запуск воспроизведения

  1. Импортируйте библиотеку в файле:

    import CloudVideoPlayer
    
  2. Создайте объекты Configuration, Environment и YaPlayer:

    let environment = Environment(configuration: Configuration(from: From(raw: "your-app-bundle")))
    
    class ViewController: UIViewController {
      let player = environment.player()
    }
    
  3. Создайте UIView-компонент VideoSurface, добавьте его в иерархию и подключите к экземпляру плеера:

    let surface = VideoSurface()
    
    override func loadView() {
      super.loadView()
      self.view.addSubview(surface)
      surface.frame = UIScreen.main.bounds
    }
    
    override func viewDidLoad() {
      super.viewDidLoad()
      surface.attach(player: player)
    }
    
  4. Запустите воспроизведение:

    if let source = ContentIdEndpoint(url: URL(string: "https://runtime.video.cloud.yandex.net/player/...")!) {
      player.set(source: source)
      player.play()
    }
    

Где https://runtime.video.cloud.yandex.net/player/... — ссылка на видео, трансляцию или плейлист.

Полный код настройки запуска воспроизведения
import CloudVideoPlayer

let environment = Environment(configuration: Configuration(from: From(raw: "your-app-bundle")))

class ViewController: UIViewController {

  let player = environment.player()
  let surface = VideoSurface()

  override func loadView() {
    super.loadView()
    self.view.addSubview(surface)
    surface.frame = UIScreen.main.bounds
  }

  override func viewDidLoad() {
    super.viewDidLoad()
    surface.attach(player: player)

    if let source = ContentIdEndpoint(url: URL(string: "https://runtime.video.cloud.yandex.net/player/...")!) {
      player.set(source: source)
      player.play()
    }
  }
}

Где https://runtime.video.cloud.yandex.net/player/... — ссылка на видео, трансляцию или плейлист.

Подключение оболочки видеоплеераПодключение оболочки видеоплеера

  1. Импортируйте библиотеку в файле:

    import CloudVideoPlayerUI
    
  2. Создайте UIView-компонент VideoView, добавьте его в иерархию и подключите к экземпляру плеера:

    let videoView = VideoView()
    
    override func loadView() {
      super.loadView()
      self.view.addSubview(videoView)
      videoView.frame = UIScreen.main.bounds
    }
    
    override func viewDidLoad() {
      super.viewDidLoad()
      videoView.attach(player: player)
    }
    
Полный код подключения оболочки видеоплеера
import CloudVideoPlayerUI

let videoView = VideoView()

override func loadView() {
  super.loadView()
  self.view.addSubview(videoView)
  videoView.frame = UIScreen.main.bounds
}

override func viewDidLoad() {
  super.viewDidLoad()
  videoView.attach(player: player)
}

Воспроизведение в SwiftUIВоспроизведение в SwiftUI

Чтобы встроить плеер в SwiftUI, оберните VideoView из CloudVideoPlayerUI в UIViewRepresentable и подключите к нему экземпляр YaPlayer, созданный через Environment.

  1. Импортируйте библиотеки в файле:

    import SwiftUI
    import CloudVideoPlayer
    import CloudVideoPlayerUI
    
  2. Создайте объекты Environment и YaPlayer:

    let environment = Environment(configuration: Configuration(from: From(raw: "your-app-bundle")))
    
    final class PlayerViewModel: ObservableObject {
      let player: YaPlayer = environment.player()
    
      init() {
        guard
          let url = URL(string: "https://runtime.video.cloud.yandex.net/player/..."),
          let source = ContentIdEndpoint(url: url)
        else {
          return
        }
        player.set(source: source)
        player.play()
      }
    }
    
  3. Создайте тип UIViewRepresentable, который создает VideoView и вызывает attach(player:):

    struct VideoViewRepresentable: UIViewRepresentable {
      let player: YaPlayer
    
      func makeUIView(context: Context) -> VideoView {
        let view = VideoView()
        view.attach(player: player)
        return view
      }
    
      func updateUIView(_ uiView: VideoView, context: Context) {
        uiView.attach(player: player)
      }
    }
    
  4. Добавьте обертку в иерархию SwiftUI:

    struct ContentView: View {
      @StateObject private var viewModel = PlayerViewModel()
    
      var body: some View {
        VideoViewRepresentable(player: viewModel.player)
          .aspectRatio(16 / 9, contentMode: .fit)
          .frame(maxHeight: .infinity, alignment: .top)
      }
    }
    

Где https://runtime.video.cloud.yandex.net/player/... — ссылка на видео, трансляцию или плейлист.

Полный код воспроизведения в SwiftUI
import SwiftUI
import CloudVideoPlayer
import CloudVideoPlayerUI

let environment = Environment(configuration: Configuration(from: From(raw: "your-app-bundle")))

final class PlayerViewModel: ObservableObject {
  let player: YaPlayer = environment.player()

  init() {
    guard
      let url = URL(string: "https://runtime.video.cloud.yandex.net/player/..."),
      let source = ContentIdEndpoint(url: url)
    else {
      return
    }
    player.set(source: source)
    player.play()
  }
}

struct VideoViewRepresentable: UIViewRepresentable {
  let player: YaPlayer

  func makeUIView(context: Context) -> VideoView {
    let view = VideoView()
    view.attach(player: player)
    return view
  }

  func updateUIView(_ uiView: VideoView, context: Context) {
    uiView.attach(player: player)
  }
}

struct ContentView: View {
  @StateObject private var viewModel = PlayerViewModel()

  var body: some View {
    VideoViewRepresentable(player: viewModel.player)
      .aspectRatio(16 / 9, contentMode: .fit)
      .frame(maxHeight: .infinity, alignment: .top)
  }
}

Где https://runtime.video.cloud.yandex.net/player/... — ссылка на видео, трансляцию или плейлист.

См. такжеСм. также

Справочники по библиотекам SDK:

  • CloudVideoPlayer — основная библиотека с объектами Environment, YaPlayer, VideoSurface и настройками воспроизведения.
  • CloudVideoPlayerUI — дополнительная библиотека интерфейсных элементов с готовой оболочкой плеера VideoView.

Была ли статья полезна?

Предыдущая
События плеера
Следующая
Environment
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ТОО «Облачные Сервисы Казахстан»