Ignorare la schermata di installazione in un'applicazione
La libreria dell'interfaccia utente Servizi di comunicazione di Azure offre la possibilità di partecipare a una chiamata senza passare attraverso la schermata di configurazione. Consente agli sviluppatori di creare un'applicazione di comunicazione in modo che consenta agli utenti di partecipare direttamente a una chiamata, senza alcuna interazione dell'utente. La funzionalità offre anche la possibilità di configurare lo stato predefinito della fotocamera e del microfono (acceso o spento) prima che gli utenti partecipino a una chiamata.
Questo articolo illustra come configurare correttamente la funzionalità nell'applicazione.
Prerequisiti
- Un account Azure con una sottoscrizione attiva. Creare un account gratuitamente.
- Una risorsa di Servizi di comunicazione distribuita. Creare una risorsa di Servizi di comunicazione.
- Token di accesso utente per abilitare il client di chiamata. Ottenere un token di accesso utente.
- Facoltativo: completamento della guida introduttiva per iniziare a usare i compositi della libreria dell'interfaccia utente.
Configurare la funzionalità
Per altre informazioni, vedere la libreria dell'interfaccia utente Android open source e il codice dell'applicazione di esempio.
Opzione per ignorare la schermata di installazione
CallCompositeLocalOptions
è un wrapper di opzioni che imposta la funzionalità della libreria dell'interfaccia utente per ignorare la schermata di installazione usando un valore Boolean. Per impostazione predefinita, la funzionalità per ignorare la schermata di installazione è impostata su false
. È necessario impostare skipSetupScreen
con un true
valore booleano per offrire l'esperienza di ignorare la schermata di configurazione.
È consigliabile creare l'applicazione in modo che quando un utente tenta di partecipare a una chiamata, l'autorizzazione microfono è già concessa per un'esperienza di join senza problemi.
Per usare la funzionalità, passare il valore booleano con skipSetupScreen
e CallCompositeLocalOptions
inserirlo in callComposite.launch
.
import com.azure.android.communication.ui.calling.models.CallCompositeLocalOptions
val localOptions: CallCompositeLocalOptions = CallCompositeLocalOptions()
.setSkipSetupScreen(true)
callComposite.launch(callLauncherActivity, remoteOptions, localOptions)
Opzioni predefinite per la configurazione della fotocamera e del microfono
Per impostazione predefinita, la schermata di configurazione consente agli utenti di configurare le impostazioni della fotocamera e del microfono prima di partecipare a una chiamata. Quando si configura la schermata di configurazione per partecipare a una chiamata, gli utenti non dispongono di tale opzione fino a quando non sono alla chiamata.
È possibile passare un valore booleano con cameraOn
e microphoneOn
per attivare o disattivare la fotocamera e il microfono prima che gli utenti partecipino a una chiamata. La funzionalità di controllo dello stato predefinito della fotocamera e del microfono non è interessata se un utente concede l'autorizzazione per ognuna di esse.
Per impostazione predefinita, sia cameraOn
che microphoneOn
sono impostati su false
. È possibile usare questa funzionalità anche con l'esperienza predefinita di join delle chiamate della libreria dell'interfaccia utente. In tal caso, la fotocamera e il microfono vengono attivati o disattivati sullo schermo di configurazione in base alla configurazione impostata.
Per impostare lo stato predefinito della fotocamera e del microfono, passare il valore booleano con cameraOn
e microphoneOn
a CallCompositeLocalOptions
e inserirlo in callComposite.launch
.
import com.azure.android.communication.ui.calling.models.CallCompositeLocalOptions
val localOptions: CallCompositeLocalOptions = CallCompositeLocalOptions()
.setMicrophoneOn(true)
.setCameraOn(true)
callComposite.launch(callLauncherActivity, remoteOptions, localOptions)
Gestione delle autorizzazioni
È consigliabile consentire agli utenti di partecipare a una chiamata con l'autorizzazione microfono e fotocamera concessa per usare la funzionalità di ignorare la schermata di installazione con le API di configurazione predefinite per il microfono e la fotocamera. Se non gestisci le autorizzazioni dell'utente, la libreria dell'interfaccia utente tenta di gestirle automaticamente.
Gli utenti devono abilitare l'autorizzazione microfono per partecipare a una chiamata. Se gli utenti tentano di partecipare a una chiamata dopo aver negato l'autorizzazione del microfono, la libreria dell'interfaccia utente elimina la chiamata nella fase di connessione e genera un errore con il codice CallCompositeErrorCode.MICROPHONE_PERMISSION_NOT_GRANTED
.
Tuttavia, gli utenti possono partecipare a una chiamata anche se negano l'autorizzazione della fotocamera. La libreria dell'interfaccia utente disabilita la funzionalità della fotocamera quando viene negata l'autorizzazione della fotocamera. Quindi, l'API di configurazione predefinita per la fotocamera non influisce sull'esperienza di chiamata. Gli utenti possono godere dell'effetto dell'API di configurazione predefinita per la fotocamera dopo aver concesso l'autorizzazione della fotocamera.
È consigliabile gestire l'autorizzazione del microfono. Se gli utenti accedono alla chiamata con la fotocamera attivata per impostazione predefinita, ti consigliamo di gestire anche l'autorizzazione della fotocamera.
errori di rete
Se si verifica un'interruzione della rete durante una chiamata o una chiamata, la libreria dell'interfaccia utente si chiude e genera un errore con il codice CallCompositeErrorCode.CALL_END_FAILED
.
Se un utente non ha una connessione di rete e tenta di partecipare alla chiamata dopo aver ignorato la schermata di configurazione, la libreria dell'interfaccia utente si chiude alla fase di connessione delle chiamate e genera un errore con il codice CallCompositeErrorCode.NETWORK_CONNECTION_NOT_AVAILABLE
. Per evitare questo errore, è consigliabile configurare l'applicazione per verificare la disponibilità di rete prima che gli utenti partecipino a una chiamata.
Per ricevere gli eventi di errore, chiamare setOnErrorHandler
con CallComposite
.
È possibile inviare i valori seguenti error
al gestore degli errori:
microphonePermissionNotGranted
networkConnectionNotAvailable
Per altre informazioni, vedere la libreria dell'interfaccia utente iOS open source e il codice dell'applicazione di esempio.
Opzione per ignorare la schermata di installazione
LocalOptions
è un wrapper di opzioni che imposta la funzionalità della libreria dell'interfaccia utente per ignorare la schermata di installazione usando un valore Boolean. Per impostazione predefinita, la funzionalità per ignorare la schermata di installazione è impostata su false
. È necessario impostare skipSetupScreen
con un true
valore booleano per offrire l'esperienza di ignorare la schermata di configurazione.
È consigliabile creare l'applicazione in modo che quando un utente tenta di partecipare a una chiamata, l'autorizzazione microfono è già concessa per un'esperienza di join senza problemi.
Per usare la funzionalità, passare il valore booleano con skipSetupScreen
e LocalOptions
inserirlo in callComposite.launch
.
let localOptions = LocalOptions(skipSetupScreen: true)
callComposite.launch(remoteOptions: remoteOptions, localOptions: localOptions)
Opzioni predefinite per la configurazione della fotocamera e del microfono
Per impostazione predefinita, la schermata di configurazione consente agli utenti di configurare le impostazioni della fotocamera e del microfono prima di partecipare a una chiamata. Quando si configura la schermata di configurazione per partecipare a una chiamata, gli utenti non dispongono di tale opzione fino a quando non sono alla chiamata.
È possibile passare un valore booleano con cameraOn
e microphoneOn
per attivare o disattivare la fotocamera e il microfono prima che gli utenti partecipino a una chiamata. La funzionalità di controllo dello stato predefinito della fotocamera e del microfono non è interessata se un utente concede l'autorizzazione per ognuna di esse.
Per impostazione predefinita, sia cameraOn
che microphoneOn
sono impostati su false
. È possibile usare questa funzionalità anche con l'esperienza predefinita di join delle chiamate della libreria dell'interfaccia utente. In tal caso, la fotocamera e il microfono vengono attivati o disattivati sullo schermo di configurazione in base alla configurazione impostata.
Per impostare lo stato predefinito della fotocamera e del microfono, passare il valore booleano con cameraOn
e microphoneOn
a LocalOptions
e inserirlo in callComposite.launch
.
let localOptions = LocalOptions(cameraOn: true, microphoneOn: true)
callComposite.launch(remoteOptions: remoteOptions, localOptions: localOptions)
Gestione delle autorizzazioni
È consigliabile consentire agli utenti di partecipare a una chiamata con l'autorizzazione microfono e fotocamera concessa per usare la funzionalità di ignorare la schermata di installazione con le API di configurazione predefinite per il microfono e la fotocamera. Se non gestisci le autorizzazioni dell'utente, la libreria dell'interfaccia utente tenta di gestirle automaticamente.
Gli utenti devono abilitare l'autorizzazione microfono per partecipare a una chiamata. Se gli utenti tentano di partecipare a una chiamata dopo aver negato l'autorizzazione del microfono, la libreria dell'interfaccia utente elimina la chiamata nella fase di connessione e genera un microphonePermissionNotGranted
errore.
Tuttavia, gli utenti possono partecipare a una chiamata anche se negano l'autorizzazione della fotocamera. La libreria dell'interfaccia utente disabilita la funzionalità della fotocamera quando viene negata l'autorizzazione della fotocamera. Quindi, l'API di configurazione predefinita per la fotocamera non influisce sull'esperienza di chiamata. Gli utenti possono godere dell'effetto dell'API di configurazione predefinita per la fotocamera dopo aver concesso l'autorizzazione della fotocamera.
È consigliabile gestire l'autorizzazione del microfono. Se gli utenti accedono alla chiamata con la fotocamera attivata per impostazione predefinita, ti consigliamo di gestire anche l'autorizzazione della fotocamera.
errori di rete
Se si verifica un'interruzione della rete durante una chiamata o una chiamata viene eliminata, la libreria dell'interfaccia utente chiude e genera un callEndFailed
errore.
Se un utente non ha una connessione di rete e tenta di partecipare alla chiamata dopo aver ignorato la schermata di configurazione, la libreria dell'interfaccia utente si chiude alla fase di connessione delle chiamate e genera un networkConnectionNotAvailable
errore. Per evitare questo errore, è consigliabile configurare l'applicazione per verificare la disponibilità di rete prima che gli utenti partecipino a una chiamata.
È possibile implementare le chiusure per agire su eventi compositi. L'esempio seguente mostra un evento di errore per un composito non riuscito:
callComposite?.events.onError = { error in
print("CallComposite failed with error:\(error)")
}
È possibile inviare i valori seguenti error
al gestore degli errori:
microphonePermissionNotGranted
networkConnectionNotAvailable