Visión general
En esta guía aprenderás a añadir el Client SDK a tu aplicación iOS.
Requisitos previos
Para usar el SDK de Vonage para iOS, debes tener instalado lo siguiente:
- Xcode 10 o posterior
- iOS 10.2 o posterior
Añade el SDK a tu proyecto iOS
Abre Xcode con tu proyecto iOS.
Puede instalar el Client SDK directamente o a través de CocoaPods.
CocoaPods
Abra el archivo
PodFile. Si aún no lo tienes, abre un terminal y ejecuta los siguientes comandos:$ cd 'Project Dir' $ pod initDónde
Project Dires la ruta al directorio padre delPodFile.Debajo de su objetivo añada
NexmoClientvaina. SustituirTargetNamecon el nombre real de tu objetivo.Asegúrese de que el archivo pod tiene la fuente del repositorio público CocoaPod specs.
Instale el Pod abriendo un terminal y ejecutando el siguiente comando:
$ cd 'Project Dir' $ pod updateDónde
Project Dires la ruta al directorio padre delPodFile.Abra el
xcworkspacecon Xcode y desactivarbitcodepara su objetivo.En su código, importe el archivo
NexmoClientbiblioteca:
import NexmoClient
#import <NexmoClient/NexmoClient.h>;
Añadir permisos
Para utilizar las funciones de voz de la aplicación, tienes que añadir permisos de audio:
En su
Info.plistañada una nueva fila con "Privacidad - Descripción del uso del micrófono" y una descripción del uso del micrófono. Por ejemploAudio Calls.En tu código añade una petición de Permisos de Audio:
import AVFoundation
func askAudioPermissions() {
AVAudioSession.sharedInstance().requestRecordPermission { (granted:Bool) in
NSLog("Allow microphone use. Response: %d", granted)
}
}
#import <AVFoundation/AVAudioSession.h>
- (void)askAudioPermissions {
if ([[AVAudioSession sharedInstance] respondsToSelector:@selector(requestRecordPermission:)])
{
[[AVAudioSession sharedInstance] requestRecordPermission: ^ (BOOL granted)
{
NSLog(@"Allow microphone use. Response: %d", granted);
}];
}
}
AppDelegate es el mejor lugar para hacerlo.
Uso del cliente en su aplicación
Inicio de sesión
Crear un NXMClient e inicie sesión con un jwt token de usuario. Si es necesario, puede leer más sobre generar el JWT.
let client = NXMClient.shared
client.setDelegate(self)
client.login(withAuthToken: "your token")
NXMClient *client = [NXMClient shared];
[self.client setDelegate:self];
[self.client loginWithAuthToken:@"your token"];
Note that `self` should implement the `NXMClientDelegate` protocol.
Estado de la conexión
Cuando el inicio de sesión se realiza correctamente, se llama al siguiente método delegado con NXMConnectionStatusConnected:
func client(_ client: NXMClient, didChange status: NXMConnectionStatus, reason: NXMConnectionStatusReason)
- (void)client:(nonnull NXMClient *)client didChangeConnectionStatus:(NXMConnectionStatus)status reason:(NXMConnectionStatusReason)reason
Puede comprobar si el estado de la conexión es conectado con isConnected:
var clientIsConnected: Bool = NXMClient.shared.isConnected()
BOOL clientIsConnected = [NXMClient.shared isConnected];
isConnected será el último estado de conexión del cliente si su aplicación está suspendida en segundo plano. Por lo tanto, el valor de isConnected puede ser rancio.
Obtener información del usuario actual
Después de que el inicio de sesión tenga éxito, el usuario conectado estará disponible a través de:
let user = client.user
NXMUser *user = client.user;
Conclusión
Ha añadido el Client SDK a su aplicación iOS y ha iniciado sesión en una aplicación NXMClient instancia. Ahora puede utilizar la función NXMClient en su aplicación y utilice las funciones del Client SDK.
Ver también
- Configuración del centro de datos - esta es una configuración opcional avanzada que puede llevar a cabo después de añadir el SDK a su aplicación.