Veröffentlichen eines Streams in der Sitzung
Wenn die App eine Verbindung zur Vonage Video-Sitzung herstellt, soll sie einen Audio-Video-Stream mit der Kamera und dem Mikrofon an die Sitzung senden:
- Hinzufügen einer
publisherEigenschaft zur Klasse MainActivity (nach der Deklaration dersessionEigenschaft):
Die Klasse Publisher ist im Android SDK definiert.
- Ändern Sie die Implementierung der
SessionListener.onConnected()Methode, um Code zur Veröffentlichung eines Streams in der Sitzung einzuschließen:
Der obige Code verwendet Publisher.Builder() um ein Publisher-Objekt zu instanziieren. Der Konstruktor nimmt einen Parameter an: den mit diesem Prozess verbundenen Kontext (obwohl dieser in einer Produktionsanwendung anders sein kann).
Die Publisher.setPublisherListener() Methode legt das Objekt fest, das die PublisherListener-Schnittstelle implementieren wird. Diese Schnittstelle umfasst Callback-Methoden, die als Reaktion auf verlagsbezogene Ereignisse aufgerufen werden.
Das ist wichtig: Der von Ihnen verwendete Kontext hängt von dem jeweiligen Anwendungsfall ab. In der Regel ist es jedoch erwünscht, dass die Sitzung außerhalb der Aktivität stattfindet (z. B. zwischen den Aktivitäten). Für produktive Anwendungen ist es praktisch, den Anwendungskontext anstelle des Aktivitätskontexts zu verwenden.
Der Code übergibt dann das Publisher-Objekt als einen Parameter der Session.publish() Methode. Diese Methode veröffentlicht einen Audio-/Videostream in der Sitzung, wobei die Kamera und das Mikrofon des Android-Geräts verwendet werden. (Beachten Sie, dass das Android SDK in einem virtuellen Android-Gerät bei der Veröffentlichung eines Streams ein Testvideo verwendet).
Das Publisher-Objekt hat eine getView() zurück, das ein Android-Ansichtsobjekt zurückgibt. Diese Ansicht zeigt das von der Kamera des Geräts aufgenommene Video an. Der Code fügt diese Ansicht als eine Unteransicht der publisherViewContainer Objekt.
- Um Ereignisse zu protokollieren, fügen Sie eine
publisherListenerEigenschaft zumsessionListenerderMainActivity:
Beachten Sie, dass die Publisher-Klasse die PublisherKit-Klasse erweitert (ebenfalls vom Android SDK definiert). Die PublisherKit-Klasse ist eine Basisklasse, die Sie verwenden können, um erweiterte Publisher zu erstellen (z. B. Publisher, die benutzerdefinierte Video-Capturer oder Renderer verwenden).
Dies implementiert die PublisherListener Methoden:
onStreamCreated(publisherKit, stream)- Wird aufgerufen, wenn der Verleger mit dem Streaming in die Sitzung beginnt.onStreamDestroyed(publisherKit, stream)- Wird aufgerufen, wenn der Verleger das Streaming an die Sitzung beendet.onError(error)- Wird aufgerufen, wenn der Client bei der Veröffentlichung in der Sitzung fehlschlägt. EineOpentokErrorObjekt an die Methode übergeben wird.
Einfacher Video-Chat
Lernen Sie die grundlegenden Concepts der Vonage Video API-Plattform kennen und erfahren Sie, wie Benutzer über Video, Voice und Messaging kommunizieren können. Erkunden Sie einen grundlegenden Ablauf der Vonage Video API.