

# Fase 4: Integrazione dell'SDK di trasmissione IVS
<a name="getting-started-broadcast-sdk"></a>

IVS fornisce un SDK di trasmissione per Web, Android e iOS che può essere integrato nella tua applicazione. L'SDK di trasmissione viene utilizzato sia per l'invio che per la ricezione di video. Se hai [configurato l'acquisizione RTMP per la fase](https://docs.aws.amazon.com/ivs/latest/RealTimeUserGuide/rt-stream-ingest.html), puoi utilizzare qualsiasi codificatore in grado di trasmettere verso un endpoint RTMP (ad esempio, OBS o ffmpeg).

In questa sezione, viene descritto come scrivere una semplice applicazione che consente a due o più partecipanti di interagire in tempo reale. I passaggi seguenti ti guidano nella creazione di un'app chiamata BasicRealTime. Il codice completo dell'app è su CodePen e GitHub:
+  Web: [https://codepen.io/amazon-ivs/pen/ZEqgrpo](https://codepen.io/amazon-ivs/pen/ZEqgrpo) 
+  Android: [https://github.com/aws-samples/amazon-ivs-real-time-streaming-android-samples](https://github.com/aws-samples/amazon-ivs-real-time-streaming-android-samples) 
+  iOS: [https://github.com/aws-samples/amazon-ivs-real-time-streaming-ios-samples](https://github.com/aws-samples/amazon-ivs-real-time-streaming-ios-samples) 

## App
<a name="getting-started-broadcast-sdk-web"></a>

### Configurazione dei file
<a name="getting-started-broadcast-sdk-web-setup"></a>

Per iniziare, configura i file creando una cartella e un file HTML e JS iniziale:

```
mkdir realtime-web-example
cd realtime-web-example
touch index.html
touch app.js
```

Puoi installare l'SDK di trasmissione usando un tag di script o npm. Nel nostro esempio verrà utilizzato il tag script per semplicità, ma è facile da modificare se si decide di utilizzare npm in un secondo momento.

### Utilizzo di un tag di script
<a name="getting-started-broadcast-sdk-web-script"></a>

L'SDK di trasmissione Web è distribuito come libreria JavaScript e può essere recuperato all'indirizzo [https://web-broadcast.live-video.net/1.33.0/amazon-ivs-web-broadcast.js](https://web-broadcast.live-video.net/1.33.0/amazon-ivs-web-broadcast.js).

Quando viene caricata tramite il tag `<script>`, la libreria espone una variabile globale nell'ambito della finestra denominato `IVSBroadcastClient`.

### Utilizzo di npm
<a name="getting-started-broadcast-sdk-web-npm"></a>

Per installare il pacchetto npm:

```
npm install amazon-ivs-web-broadcast
```

È ora possibile accedere all'oggetto IVSBroadcastClient:

```
const { Stage } = IVSBroadcastClient;
```

## Android
<a name="getting-started-broadcast-sdk-android"></a>

### Creazione del progetto Android
<a name="getting-started-broadcast-sdk-android-project"></a>

1. In Android Studio, crea un **nuovo progetto**.

1. Scegli **Attività di viste vuote**.

   Nota: in alcune versioni precedenti di Android Studio, l'attività basata sulle viste è detta **attività vuota**. Se in Android Studio viene visualizzata la finestra **Attività vuota** ma *non* mostra l'attività **Viste vuote**, seleziona **Attività vuota**. Altrimenti, non selezionare **Attività vuota**, poiché utilizzeremo le API View (non Jetpack Compose).

1. Assegna un **nome** al tuo progetto, quindi seleziona **Fine**.

### Installazione dell'SDK di trasmissione
<a name="getting-started-broadcast-sdk-android-install"></a>

Per aggiungere la libreria di trasmissione di Amazon IVS per Android al proprio ambiente di sviluppo Android, aggiungi la libreria al file `build.gradle` del modulo come mostrato di seguito (per la versione più recente dell'SDK di trasmissione Amazon IVS): Nei progetti più recenti il repository `mavenCentral` potrebbe essere già incluso nel file`settings.gradle`, in tal caso puoi omettere il blocco `repositories`. Per il nostro esempio, dovremo anche abilitare l'associazione dei dati nel blocco `android`.

```
android {
    dataBinding.enabled true
}

repositories {
    mavenCentral()
}
 
dependencies {
     implementation 'com.amazonaws:ivs-broadcast:1.40.0:stages@aar'
}
```

In alternativa, per installare manualmente l'SDK, scaricare la versione più recente da questo percorso:

[https://search.maven.org/artifact/com.amazonaws/ivs-broadcast](https://search.maven.org/artifact/com.amazonaws/ivs-broadcast)

## iOS
<a name="getting-started-broadcast-sdk-ios"></a>

### Creazione del progetto iOS
<a name="getting-started-broadcast-sdk-ios-project"></a>

1. Crea un nuovo progetto Xcode.

1. Per **Piattaforma**, seleziona **iOS**.

1. Per **Applicazione**, seleziona **App**.

1. Inserisci il **nome del prodotto** della tua app, quindi seleziona **Successivo**.

1. Scegli o passa a una directory in cui salvare il progetto, quindi seleziona **Crea**.

Successivamente, dovrai inserire l'SDK. Per le istruzioni, consulta [Installare la libreria](broadcast-ios-getting-started.md#broadcast-ios-install) nella *Guida all'SDK di trasmissione per iOS*.

### Per configurare le autorizzazioni
<a name="getting-started-broadcast-sdk-ios-config"></a>

Devi aggiornare `Info.plist` del tuo progetto in modo da aggiungere due nuove voci per `NSCameraUsageDescription` e `NSMicrophoneUsageDescription`. Per i valori, fornisci spiegazioni rivolte all'utente del motivo per cui la tua app richiede l'accesso alla fotocamera e al microfono.

![\[Configura le autorizzazioni iOS.\]](http://docs.aws.amazon.com/it_it/ivs/latest/RealTimeUserGuide/images/iOS_Configure.png)
