Note: This is a community project initiated by Zoom. Zoom does not actively enhance the interfaces in the Ionic plugin. If you would like to contribute, please contact us or submit a pull request. Thanks! :)
- π¨ Announcement π¨
- Latest SDK Notifications
- Full Documentation && Community Support
- What is Zoom Ionic SDK?
- Disclaimer
- Getting Started
- Simulator Support
- Documentation
- Versioning
- Change log
- Frequently Asked Questions (FAQ)
- Support
- License
- Acknowledgments
To align with Zoomβs recent announcement pertaining to our security initiative, Zoom Client SDKs have added AES 256-bit GCM encryption support, which provides more protection for meeting data and greater resistance to tampering. The system-wide account enablement of AES 256-bit GCM encryption will take place on June 01, 2020. You are strongly recommended to start the required upgrade to this latest version 4.6.21666.0512 at your earliest convenience. Please note that any Client SDK versions below 4.6.21666.0512 will no longer be operational from June 01.
If you would like to test the latest SDK with AES 256-bit GCM encryption meeting before 05/30, you may:
- Download the latest version of Zoom client: https://zoom.us/download
- Visit https://zoom.us/testgcm and launch a GCM enabled meeting with your Zoom client, you will see a Green Shield icon that indicates the GCM encryption is enabled
- Use SDK to join this meeting
- Please note that our Ionic SDK only support Ionic Angular.
You can find the full Zoom Ionic SDK documentation and the community support forum here:
Zoom SDK makes it easy to integrate Zoom with your mobile applications, and boosts up your applications with the power of Zoom.
- Easy to use: Our SDK is built to be easy to use. Just import the libraries, call a few functions, and we will take care all video conferencing related stuffs for you.
- Localizable: Our SDK naturally supports 7 major languages, so you can grow your applications internationally.
Please be aware that all hard-coded variables and constants shown in the documentation and in the demo, such as Zoom Token, Zoom Access, Token, etc., are ONLY FOR DEMO AND TESTING PURPOSES. We STRONGLY DISCOURAGE the way of HARDCODING any Zoom Credentials (username, password, API Keys & secrets, SDK keys & secrets, etc.) or any Personal Identifiable Information (PII) inside your application. WE DONβT MAKE ANY COMMITMENTS ABOUT ANY LOSS CAUSED BY HARD-CODING CREDENTIALS OR SENSITIVE INFORMATION INSIDE YOUR APP WHEN DEVELOPING WITH OUR SDK.
The following instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
- For detailed instructions, please refer to our documentation website: [https://marketplace.zoom.us/docs/sdk/hybrid-frameworks/ionic];
- If you need support or assistance, please visit our Zoom Developer Community Forum;
Before you try out our SDK, you would need the following to get started:
- A Zoom Account: If you do not have one, you can sign up at https://zoom.us/signup.
- Once you have your Zoom Account, sign up for a 60-days free trial at https://marketplace.zoom.us/
- A mobile device
- Android
- Android 5.0 (API Level 21) or later.
- CPU: armeabi-v7a, x86, armeabi, arm64-v8a, x86_64
- compileSdkVersion: 29+
- buildToolsVersion: 29+
- minSdkVersion: 21
- Required dependencies
implementation 'androidx.multidex:multidex:2.0.0' implementation 'androidx.recyclerview:recyclerview:1.0.0' implementation 'androidx.appcompat:appcompat:1.0.0' implementation 'androidx.constraintlayout:constraintlayout:1.1.3' implementation 'com.google.android.material:material:1.0.0-rc01'
- iOS
- iPhone or iPad
- npm@6.13.4+
- ionic-cli@6.9.0+
- ionic/angular@5.0.0+
- ionic-native/core@5.25.0+
- ionic-native/zoom@5.25.0+
- Android
If you are developing on Android, you will need to install the latest version of cordova-android(Since the current released version of cordova-android does not support Android SDK API Level 29, please install the latest version from their Github repo, which supports Android SDK API Level 29)
ionic cordova platform add https://github.com/apache/cordova-android.git
and install the following 2 plugins before you can use the Ionic SDK:
ionic cordova plugin add cordova-plugin-androidx
ionic cordova plugin add cordova-plugin-androidx-adapter
Clone or download a copy of our SDK files from GitHub. After you unzipped the file, you should have the following folders:
.
βββ README.md
βββ libs
βββ package.json
βββ plugin.xml
βββ src
βββ www
In your Ionic application directory, run the following to install the plugin:
ionic cordova plugin add cordova.plugin.zoom
- Import the plugin
import { Zoom } from '@ionic-native/zoom';
constructor(private zoomService: Zoom) { }
1. Initialize Zoom SDK Initialize Zoom SDK, need to be called when app fired up.
this.zoomService.initialize(API_KEY, API_SECRET)
.then((success: any) => console.log(success))
.catch((error: any) => console.log(error));
- Login Log user in with Zoom username and password.
this.zoomService.login(userName, password)
.then((success: any) => console.log(success))
.catch((error: any) => console.log(error));
- Logout Log user out.
this.zoomService.logout()
.then((success: boolean) => console.log(success))
.catch((error: any) => console.log(error));
- isLoggedIn Check whether a user is logged in. Return true if the user is logged in. False if the user is not logged in.
this.zoomService.isLoggedIn()
.then((success: boolean) => console.log(success))
.catch((error: any) => console.log(error));
- MeetingOptions Meeting options. Configure the default meeting room. Some of the options are only available on Android.
let options = {
custom_meeting_id: "Customized Title",
no_share: false,
no_audio: false,
no_video: false,
no_driving_mode: true,
no_invite: true,
no_meeting_end_message: true,
no_dial_in_via_phone: false,
no_dial_out_to_phone: false,
no_disconnect_audio: true,
no_meeting_error_message: true,
no_unmute_confirm_dialog: true, // Android only
no_webinar_register_dialog: false, // Android only
no_titlebar: false,
no_bottom_toolbar: false,
no_button_video: false,
no_button_audio: false,
no_button_share: false,
no_button_participants: false,
no_button_more: false,
no_text_password: true,
no_text_meeting_id: false,
no_button_leave: false
};
- Join Meeting Join meeting
this.zoomService.joinMeeting(meetingNumber, meetingPassword, displayName, options)
.then((success: any) => console.log(success))
.catch((error: any) => console.log(error));
- Start an existing meeting for non-login user Start an existing meeting for non-login user.
this.zoomService.startMeetingWithZAK(meetingNumber, vanityId, displayName, zoomToken, zoomAccessToken, userId, options)
.then((success: any) => console.log(success))
.catch((error: any) => console.log(error));
- Start an existing meeting for logged in user Start an existing meeting for logged in user.
this.zoomService.startMeeting(meetingNumber, vanityId, options)
.then((success: any) => console.log(success))
.catch((error: any) => console.log(error));
- Start an instant meeting for logged in user Start an instant meeting for logged in user.
this.zoomService.startInstantMeeting()
.then((success: any) => console.log(success))
.catch((error: any) => console.log(error));
- Set language Change in-meeting language.
this.zoomService.setLanguage("en-US")
.then((success: any) => console.log(success))
.catch((error: any) => console.log(error));
Supported Languages and Parameters The parameters are unified using IETF BCP 47 (https://tools.ietf.org/html/bcp47).
Language | Language Tag / Parameter |
---|---|
English | en-US |
Simplified Chinese | zh-CN |
Japanese | ja-JP |
German | de-DE |
French | fr-FR |
Traditional Chinese | zh-TW |
Spanish | es-419 |
Russian | ru-RU |
Portuguese | pt-PT |
In order to use the camera and microphone on iOS, please add the following in your config.xml file. Otherwise, your app will not be able to initialize a meeting.
<edit-config file="*-Info.plist" mode="merge" target="NSCameraUsageDescription">
<string>Need camera for video conferencing</string>
</edit-config>
<edit-config file="*-Info.plist" mode="merge" target="NSMicrophoneUsageDescription">
<string>Need microphone for video conferencing</string>
</edit-config>
By default, this plugin only support running on real devices. Since 4.4.55130.0712, we have introduced the simulator support. Here are the steps to add simulator support:
- Install the Zoom Ionic SDK plugin
ionic cordova plugin add cordova.plugin.zoom
- Navigate to
appRoot/plugins/cordova.plugin.zoom
, and back up the wholelibs
folder. - Go to https://github.com/zoom/zoom-sdk-ionic/tags and download the
ionic-zoomsdk-***.zip
file; Unzipp it. - Replace the
libs
folder inappRoot/plugins/cordova.plugin.zoom
with the one in theionic-zoomsdk-***
folder. - Run
ionic cordova platfrom rm android && ionic cordova platform add android
orionic cordova platform rm ios && ionic cordova platform add ios
to make sure the new libraries are added to the project. - If you are going to publish your app to the Google Play Store or Apple App Store, please use the original
libs
since a library that contians simulator architecture will not pass the app upload check.
Please visit [https://marketplace.zoom.us/docs/sdk/hybrid-frameworks/ionic] for details of each features and functions.
For the versions available, see the tags on this repository.
Please refer to our CHANGELOG for all changes.
-
1οΈβ£ I am using Ionic SDK on Android and getting
AAPT: error: attribute android:foregroundServiceType not found
:- Please have a try with the following:
- Make sure you have installed the
cordova-plugin-androidx
andcordova-plugin-androidx-adapter
- Add the following in your config.xml
- Make sure you have installed the
- Please have a try with the following:
<preference name="android-minSdkVersion" value="22" />
<preference name="android-compileSdkVersion" value="29" />
<preference name="android-build-tool" value="29.0.2" />
<preference name="android-targetSdkVersion" value="29" />
3. [Important] When adding the Android platform support, please add using the following:
ionic cordova platform add https://github.com/apache/cordova-android.git
Since the current released version of cordova-android does not support Android SDK API Level 29, please install the latest version from their Github repo, which supports Android SDK API Level 29. Please see the following links: * apache/cordova-android#846 * apache/cordova-android#830
For any issues regarding our SDK, please visit our new Community Support Forum at https://devforum.zoom.us/.
Please refer to LICENSE.pdf file for details
- β If you like our SDK, please give us a "Star". Your support is what keeps us moving forward and delivering happiness to you! Thanks a million! π
- If you need any support or assistance, we are here to help you: Zoom Developer Community Forum;
Copyright Β©2020 Zoom Video Communications, Inc. All rights reserved.