Introducción al SDK de transmisión para iOS de IVS | Transmisión en tiempo real
Este documento explica los pasos necesarios para comenzar a utilizar el SDK de transmisión para iOS de la transmisión en tiempo real de IVS.
Instalación de la biblioteca
Recomendamos que integre el SDK de transmisión a través de Swift Package Manager. (De manera opcional, puede integrarlo a través de CocoaPods o agregar el marco a su proyecto de forma manual.)
Recomendación: integre el SDK de transmisión (Swift Package Manager)
-
Descargue el archivo Package.swift desde https://broadcast.live-video.net/1.38.0/Package.swift
. -
En su proyecto, cree un nuevo directorio denominado AmazonIVSBroadcast y agréguelo al control de versiones.
-
Coloque el archivo Package.swift descargado en el nuevo directorio.
-
En Xcode, vaya a Archivo > Agregar dependencias de paquete y seleccione Agregar local….
-
Navegue hasta el directorio AmazonIVSBroadcast que ha creado, selecciónelo y elija Agregar paquete.
-
Cuando se le pida que elija productos de paquete para AmazonIVSBroadcast, seleccione AmazonIVSBroadcastStages como su producto de paquete mediante la configuración del destino de la aplicación en la sección Agregar a destino.
-
Seleccione Agregar paquete.
Importante: el SDK de transmisión para transmisión en tiempo real de IVS incluye todas las características del SDK de transmisión para transmisión de baja latencia de IVS. No es posible integrar ambos SDK en el mismo proyecto.
Enfoque alternativo: integración del SDK de transmisión (CocoaPods)
Importante: CocoaPods está en modo de mantenimiento (solo correcciones de seguridad) y, después de diciembre de 2026, no se podrán publicar nuevos paquetes ni actualizaciones en el repositorio de CocoaPods. Los paquetes existentes permanecerán disponibles pero bloqueados. Recomendamos usar Swift Package Manager para todos los nuevos proyectos.
La funcionalidad en tiempo real se publica como una subespecificación del SDK de transmisión para transmisión de baja latencia de iOS. De este modo, los clientes pueden elegir incluirla o excluirla en función de sus necesidades. Incluirla aumenta el tamaño del paquete.
Las versiones se publican a través de CocoaPods bajo el nombre AmazonIVSBroadcast. Agregue esta dependencia a su Podfile:
pod 'AmazonIVSBroadcast/Stages'
Ejecute pod install y el SDK estará disponible en su .xcworkspace.
Importante: El SDK de transmisión para transmisión en tiempo real de IVS (es decir, con la subespecificación de escenario) incluye todas las características del SDK de transmisión para transmisión de baja latencia de IVS. No es posible integrar ambos SDK en el mismo proyecto. Si agrega a su proyecto la subespecificación de escenarios mediante CocoaPods, asegúrese de eliminar cualquier otra línea del Podfile que contenga AmazonIVSBroadcast. Por ejemplo, no incluya estas dos líneas en el Podfile:
pod 'AmazonIVSBroadcast' pod 'AmazonIVSBroadcast/Stages'
Método alternativo: instalar el marco de forma manual
-
Descargue la versión más reciente desde https://broadcast.live-video.net/1.38.0/AmazonIVSBroadcast-Stages.xcframework.zip
. -
Extraiga el contenido del archivo.
AmazonIVSBroadcast.xcframeworkcontiene el SDK para el dispositivo y el simulador. -
Integre el
AmazonIVSBroadcast.xcframeworkarrastrándolo a la sección Frameworks, Libraries, and Embedded Content (Marcos, bibliotecas y contenido integrado) de la pestaña General para el destino de la aplicación.
Solicitar permisos
La aplicación debe solicitar permiso para acceder a la cámara y al micrófono del usuario. (Esto no es específico de Amazon IVS; es necesario para cualquier aplicación que necesite acceso a cámaras y micrófonos).
Aquí, verificamos si el usuario ya ha concedido permisos y, de no ser así, preguntamos por ellos:
switch AVCaptureDevice.authorizationStatus(for: .video) { case .authorized: // permission already granted. case .notDetermined: AVCaptureDevice.requestAccess(for: .video) { granted in // permission granted based on granted bool. } case .denied, .restricted: // permission denied. @unknown default: // permissions unknown. }
Es necesario hacer esto para los tipos de medios .video y .audio, si desea tener acceso a cámaras y micrófonos, respectivamente.
También es necesario agregar entradas para NSCameraUsageDescription y NSMicrophoneUsageDescription para su Info.plist. De lo contrario, la aplicación se bloqueará al intentar solicitar permisos.
Desactivar el temporizador inactivo de la aplicación
Esto es opcional, pero recomendable. Evita que el dispositivo se ponga en suspensión mientras utiliza el SDK de transmisión, lo que interrumpiría la transmisión.
override func viewDidAppear(_ animated: Bool) { super.viewDidAppear(animated) UIApplication.shared.isIdleTimerDisabled = true } override func viewDidDisappear(_ animated: Bool) { super.viewDidDisappear(animated) UIApplication.shared.isIdleTimerDisabled = false }