Hola, Apple

1

Hablemos de iOS

2

Conozcamos XCode

3

¿Necesito un iPhone para ser iOS Developer?

Tu primera app en iOS

4

¡Hola, Mundo Apple!

5

Navegación con UINavigationController

6

Modales en la navegación

7

Utilizando controles en código

8

Autolayout vs SwiftUI

9

Autolayout

10

Listas con UITableView

11

Celdas personalizadas para nuestras listas.

12

Persistencia: UserDefaults

Manejo de dependencias

13

CocoaPods

14

Carthage

Servicios Web

15

Primeros pasos para consumir servicios

16

Afinando detalles para consumir servicios

17

Convirtiendo los JSON a modelos

18

Alamofire

Proyecto: PlatziTweets

19

Bienvenido a PlatziTweets

20

Configurando Proyecto

21

Diseñando vistas iniciales

22

Configuración de vistas iniciales

23

Configuración de registro

24

Descripción de la API de PlatziTweets

25

Conexión de la API y Autenticación

26

Registro de usuarios

27

Diseño del Tweet

28

Obteniendo Tweets

29

Creación de vista para publicar Tweets

30

Publicando Tweets

31

Borrando Tweets

32

Integración de la cámara

33

Conexión con Firebase

34

Configuración de XCode para correr app

35

Subir imagen a Firebase

36

Publicar Tweet con imagen

37

Tomando Videos para el Tweet

38

Publicar Tweet con video

39

Detalles del video

40

Accediendo al GPS

41

Implementando mapas con MapsKit

42

Mostrando todos los estudiantes en el mapa

43

Retos del proyecto

En producción

44

Enviar a pruebas con Firebase Distribution

45

Enviar tu aplicación a APP Store Connect

46

Distribución de tu app con TestFlight

iOS Avanzado

47

Dark Mode

48

SwiftUI

49

Terminando detalles de una vista con SwiftUI

50

Objective-C

Hola, iOS Developer

51

Felicidades

52

Expert Session: ¡nuevo espacio para resolver tus dudas sobre el desarrollo de Apps para iOS!

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Primeros pasos para consumir servicios

15/52
Recursos

Aportes 11

Preguntas 2

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Regístrate o inicia sesión para participar.

👇🏽 las lineas de excepción

<key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true/>
        <key>NSExceptionDomains</key>
        <dict>
            <key>mocky.io</key>
            <dict>
                <key>NSExceptionAllowsInsecureHTTPLoads</key>
                <true/>
                <key>NSIncludesSubdomains</key>
                <true/>
            </dict>
        </dict>
    </dict>

// Endpoint: http://www.mocky.io/v2/5e2674472f00002800a4f417
// 1. Crear excepcion de seguridad.
// 2. Crear URL con el endpoint
// 3. Hacer request con la ayuda de URLSession
// 4. Transformar respuesta a diccionario
// 5. Ejecutar request

Me tiene bastante contento este curso

ESTO YA NO SE HACE ASÍ

En Xcode13, a la fecha 19/05/2022, el info. plist ya no está, no se puede hacer la excepción de seguridad como la muestra el profe.

Tenemos que añadir un App Transport Security Exception

  1. Para eso debemos de irnos a la configuración de nuestro proyecto (en el archivo Aprendiendo-Servicios arriba de la carpeta)
  2. Luego irnos Singing & Capabilities
  3. Le daremos al botón (+) y añadiremos el App Transport Security Exception
  4. Ya luego solo debemos añadir el dominio

Con esto se ahorraran los quebraderos de cabeza y las ganas de llorar, like para que todos lo vean ❤️

Al final falto agregar : **.resume() **

    URLSession.shared.dataTask(with: endpoint) { (data: Data?, _, error: Error?) in
      ...
    }.resume()

Lines just copy and paste them!

   <key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key><true/>
        <key>NSExceptionDomains</key>
        <dict>
            <key>mocky.io</key>
            <dict>
                <!--Include to allow subdomains-->
                <key>NSIncludesSubdomains</key>
                <true/>
                <!--Include to allow HTTP requests-->
                <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
                <true/>
            </dict>
        </dict>
    </dict>```

Puede que le ayude a alguien este link para configurar el archivo Info.plist sin editar texto.
https://stevenpcurtis.medium.com/app-transport-security-has-blocked-a-cleartext-http-http-resource-load-since-it-is-insecure-65d75b598bcc

Los que estén usando Xcode 13 ay cambios en la manera en la que se configura el archivo Info.plist
Les dejo un link que podría ayudar
https://useyourloaf.com/blog/xcode-13-missing-info.plist/

tal vez sea debido a que no se llamo la función, ademas de que este tipo de funciones se deben de ejecutar fuera del hilo principal

Excelente clase!

Resumen