Quiero crear una aplicación (iOS) que tenga videollamadas / transmisiones en vivo de igual a igual. ¿Cómo debo hacerlo? Sé que hay servicios, como Twilio, que me permiten hacer esto, pero ¿cómo aprenderé cómo usar el servicio? Tengo conocimientos básicos de Swift.

Me voy a centrar en “¿Cómo debo hacerlo?” Porque esa pregunta es más aplicable a cualquier persona que trabaje en una pieza de software.

Primero, descubra sus casos de uso / historias de usuario. Dado que este es un producto móvil, ¿cómo se usará? En un escritorio? ¿en el tren? mientras caminaba por la calle? ¿Qué problemas surgen en cada una de esas cosas?

¿Cuál es el flujo? Cualquier pieza de software puede codificarse, pero con demasiada frecuencia, veo software codificado que no pensó en cómo se usaría y todos se rascan la cabeza diciendo “¿por qué nadie usa esto?”

PORQUE ES HORRIBLE DE USAR.

Así que no dejes que eso te suceda. 🙂

Una vez que hayas descubierto esa parte, se trata de dividir el código en historias procesables. Prefiero hacer esto con una suposición basada en el número de Fibonacci en horas. Cualquier cosa que sea más que un 8 probablemente necesita más detalles y se puede dividir en pedazos más pequeños. A veces no puede, pero a menudo puede.

Mientras llama a esto “peer to peer”, ¿cómo se puede descubrir? Necesitará algún servicio central en algún lugar, como una centralita, especialmente si alguien va a extraer una lista de “¿quién está transmitiendo en este momento?”. ¿Quién está transmitiendo? ”como una forma para que la gente vea lo que está disponible en la plataforma (“ ¿Por qué debería descargar / pagar esta aplicación? ”)

La integración de API de terceros, como Twilio, es solo mucha lectura, investigación y búsqueda en Google. Vas a dar un paso a la vez (prueba de estilo de pepino aquí):

Como el sistema
Para mostrar contenido
Necesito conectarme al sistema

Haga que funcione, luego escriba una prueba reprobatoria para obtener una lista de feeds. Cree algunos datos semilla o use datos públicos. Haga que funcione, luego escriba una prueba sobre cómo seleccionar uno de ellos y verlo. Haz que funcione.

Ahora tiene un sistema probado que puede conectarse a un servicio, descargar una lista de transmisiones disponibles y reproducir una de ellas.

Espuma. Enjuague. Repetir.

Para Twilio específicamente, comience aquí: Twilio Client iOS SDK

En una aplicación que desarrollé, la integré con un servicio llamado Agora. Tienen un SDK de iOS que era relativamente sencillo. También proporcionan una aplicación de muestra, por lo que copiar y pegar es definitivamente posible. Mire al líder mundial en comunicaciones en tiempo real.

More Interesting

Cómo desarrollar una relación con Apple como desarrollador de iOS

¿Puede una aplicación de iPhone lanzar una aplicación SIM toolkit?

¿Hay alguna forma legal de desarrollar aplicaciones nativas de iOS con un lenguaje rápido en la plataforma Windows?

¿Cuán realista hubiera sido construir Instagram en Firebase?

¿Necesita sincronizar standardUserDefaults después de llamar a registerDefaults?

Si tuviera que construir un dispositivo BLE que detectara la proximidad de un teléfono inteligente, ¿podría este dispositivo BLE configurarse para activar la aplicación descargada solo a una proximidad extremadamente cercana (por ejemplo, <2 pulgadas)?

¿Por qué los tamaños de los iconos oficiales del sistema iOS para la barra de navegación superior no se corresponden con el tamaño oficialmente recomendado de 22 × 22?

En promedio, ¿cuánto es el costo anual para mantener una aplicación de iPhone popular?

¿Podré crear aplicaciones iOS básicas después de leer el libro Hacking with Swift de Paul Hudson?

¿Es fácil aprender AngularJS para un desarrollador de iOS?

¿Cuáles son algunas ideas para un juego mínimo de iOS?

¿Es la clase CS50 de Harvard más el libro 'C Programming The Absolute Beginner's Guide 3rd Edition' de Greg Perry un buen comienzo para aprender y eventualmente comenzar a desarrollar aplicaciones para iOS?

Xcode: ¿Los probadores internos en iTunes Connect necesitan una cuenta de miembro de desarrollador de Apple antes de que puedan probar la aplicación?

Cómo ir de un campo de texto a otro en xcode

Apple promueve que Swift es mucho más fácil que Objective-C, pero como desarrollador experimentado de Objective-C, descubrí que Swift es mucho más difícil de aprender debido a sus características más ricas y su estilo de programación orientado al protocolo. ¿Es verdad?