https://github.com/dreamteammobile/xamarin.agora.samples
Agora.io samples for Xamarin.iOS, Xamarin.Android, Xamarin.MacOS and Xamarin.Forms
https://github.com/dreamteammobile/xamarin.agora.samples
agora agora-webrtc calls video webrtc xamarin-android xamarin-forms xamarin-ios xamarin-macos
Last synced: 6 days ago
JSON representation
Agora.io samples for Xamarin.iOS, Xamarin.Android, Xamarin.MacOS and Xamarin.Forms
- Host: GitHub
- URL: https://github.com/dreamteammobile/xamarin.agora.samples
- Owner: DreamTeamMobile
- License: mit
- Created: 2017-03-28T06:55:41.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2022-12-08T15:19:11.000Z (almost 3 years ago)
- Last Synced: 2025-04-01T09:47:24.708Z (7 months ago)
- Topics: agora, agora-webrtc, calls, video, webrtc, xamarin-android, xamarin-forms, xamarin-ios, xamarin-macos
- Language: C#
- Homepage: https://dreamteam-mobile.com/video-calls
- Size: 26.2 MB
- Stars: 49
- Watchers: 11
- Forks: 13
- Open Issues: 11
-
Metadata Files:
- Readme: Readme.md
- License: LICENSE
Awesome Lists containing this project
README
Agora.io Full SDK Cross-Platfrom samples
========================================This repository contains samples of using Xamarin Agora.io FULL SDK Nuget packages
[Xamarin.Agora.Full.Android](https://www.nuget.org/packages/Xamarin.Agora.Full.Android/) [](https://www.nuget.org/packages/Xamarin.Agora.Full.Android/)
[Xamarin.Agora.Full.iOS](https://www.nuget.org/packages/Xamarin.Agora.Full.iOS/) [](https://www.nuget.org/packages/Xamarin.Agora.Full.iOS/)
[Xamarin.Agora.Full.Mac](https://www.nuget.org/packages/Xamarin.Agora.Full.Mac/) [](https://www.nuget.org/packages/Xamarin.Agora.Full.Mac/)
[Xamarin.Agora.Full.Forms](https://www.nuget.org/packages/Xamarin.Agora.Full.Forms/) [](https://www.nuget.org/packages/Xamarin.Agora.Full.Forms/)
also contains a basic sample for Agora WebRTC
Running samples
---------------1. Run app on any 2 devices
1. Enter same room name on both devices
1. Click Join button
Quick Start
-----------1. Prepare Agora App ID, you can follow [Obtaining an App ID instructions](https://docs.agora.io/en/2.1.1/product/Video/Agora%20Basics/key_web#app-id-web) to get your App ID.
1. Replace the following empty string with the corresponding App ID:
* For Android/iOS/macOS app
[DT.Samples.Agora.Shared/AgoraTestConstants.cs](DT.Samples.Agora.Shared/AgoraTestConstants.cs)
```
public static string AgoraAPI
```
* For Forms app
[Forms/Xamarin.Agora.Forms/DT.Samples.Agora.Cross/DT.Samples.Agora.Cross/Consts.cs](Forms/Xamarin.Agora.Forms/DT.Samples.Agora.Cross/DT.Samples.Agora.Cross/Consts.cs)
```
public const string AgoraKey = "";
```
* For WebRTC app enter the key on UI or in the code
[Web/webrtc/index.html](Web/webrtc/index.html)
```
vendorKey = ...
```
1. Prepare node.js [AgoraTokenServer](AgoraTokenServer) server for generatin agora tokens. You need to enable Primary cetificate in your agora progect and replace the following empty strings with your cettificated string and App ID:
[AgoraTokenServer/TokenServer.js](AgoraTokenServer/TokenServer.js)
```
var appID = "";
var appCertificate = "";
```
1. Run AgoraTokenServer and replace the following epmty string with server URL:
[DT.Samples.Agora.Shared/AgoraTestConstants.cs](DT.Samples.Agora.Shared/AgoraTestConstants.cs)
```
public static string TokernServerBaseUrl
```What's Inside
-------------In this repository you can find OneToOne Communication apps for Android, iOS, Mac, Forms and Web
* **Xamarin Android, iOS and MacOS** apps in one solution [/DT.Samples.Agora.OneToOne.sln](/DT.Samples.Agora.OneToOne.sln)
* **Xamarin Forms (iOS, Android, MacOS)** apps in one solution [Forms/Xamarin.Agora.Forms/Forms.sln](Forms/Xamarin.Agora.Forms/Forms.sln)
* **Agora WebRTC** usage example in [/Web/webrtc](/Web/webrtc)
Screenshots
-------------Xamarin.Forms iOS
![]()
Xamarin.Forms Android
![]()
Xamarin.Forms MacOS
![]()
RTM example for Android, iOS and Mac
* **Xamarin Android, iOS and MacOS** apps in one solution [RTM](RTM)