flutter_zoom_meeting_wrapper 0.0.2 copy "flutter_zoom_meeting_wrapper: ^0.0.2" to clipboard
flutter_zoom_meeting_wrapper: ^0.0.2 copied to clipboard

A Flutter plugin to integrate Zoom Meeting SDK directly in your app. Join meetings without switching to Zoom app. Simple initialization with JWT authentication.

πŸ“± Flutter Zoom Meeting Wrapper #

A Flutter plugin that allows you to integrate the Zoom Meeting SDK into your Flutter application. This plugin enables users to join Zoom meetings directly within your app without switching to the Zoom app.

Zoom Meeting Banner

✨ Features #

πŸš€ Easy integration with the Zoom Meeting SDK
πŸ”„ Initialize SDK using a JWT token
🎯 Join meetings directly within your app (no Zoom app required)
πŸ“± Android & iOS platform support
πŸ”Š Full audio and video meeting experience
πŸ” Secure authentication flow via JWT

πŸ“¦ Installation #

Add the following to your pubspec.yaml file:

dependencies:
  flutter_zoom_meeting_wrapper: ^0.0.2

βš™οΈ Mandatory Zoom SDK Setup #

πŸ€– Android Setup #

  1. Add the dependency and run flutter pub get.

  2. Download the Zoom SDK ZIP from the following link:
    πŸ‘‰ Zoom SDK Download

  3. Extract the ZIP file after downloading.

  4. Copy the libs folder and paste it inside your Flutter pub-cache directory at:

    ~/.pub-cache/hosted/pub.dev/flutter_zoom_meeting_wrapper-0.0.2/android/
    

    πŸ” Replace 0.0.2 with the version you’re using, if different.

  5. Or run the following command to open the folder directly:

    open ~/.pub-cache/hosted/pub.dev/flutter_zoom_meeting_wrapper-0.0.2/android
    

⚠️ Important: The libs folder must be placed in the correct location for the plugin to function properly.


🍎 iOS Setup #

The iOS integration requires placing the Zoom Meeting SDK frameworks into the plugin’s ios/Frameworks/ directory inside the Flutter pub-cache. Follow these steps:

Step 1 β€” Download the Zoom iOS Meeting SDK

You can download the iOS SDK using either option below:

Option A β€” Direct Download (Google Drive)

πŸ‘‰ Download iOS SDK from Google Drive

Extract the ZIP file after downloading.

Option B β€” Zoom Marketplace

  1. Go to https://marketplace.zoom.us/ and sign in.
  2. Navigate to your app’s credentials page.
  3. Download the iOS Meeting SDK ZIP package.
  4. Extract the ZIP file.

Step 2 β€” Copy frameworks into the plugin

Open the pub-cache directory for the plugin’s iOS folder:

open ~/.pub-cache/hosted/pub.dev/flutter_zoom_meeting_wrapper-0.0.2/ios/Frameworks

πŸ” Replace 0.0.2 with the version you’re using, if different.

Copy all of the following items from the extracted Zoom SDK into the Frameworks/ folder:

File / Folder Description
MobileRTC.xcframework Core Zoom Meeting SDK
MobileRTCResources.bundle UI resources (required at runtime)
MobileRTCScreenShare.xcframework Screen sharing support
zoomcml.xcframework Zoom companion framework (required)

After copying, the folder should look like:

ios/Frameworks/
β”œβ”€β”€ MobileRTC.xcframework
β”œβ”€β”€ MobileRTCResources.bundle
β”œβ”€β”€ MobileRTCScreenShare.xcframework
└── zoomcml.xcframework

⚠️ Important: zoomcml.xcframework is required. If it is missing, pod install will fail with an error.

Step 3 β€” Configure minimum iOS version

In your app’s ios/Podfile, make sure the platform is set to iOS 15.0 or higher:

platform :ios, β€˜15.0’

Step 4 β€” Exclude unsupported simulator architectures

The Zoom SDK frameworks include arm64 simulator slices only (no x86_64). Add the following to your ios/Podfile’s post_install block to prevent build errors on Intel Mac simulators:

post_install do |installer|
  installer.pods_project.targets.each do |target|
    flutter_additional_ios_build_settings(target)
  end

  installer.aggregate_targets.each do |aggregate_target|
    aggregate_target.user_project.native_targets.each do |target|
      target.build_configurations.each do |config|
        config.build_settings[β€˜EXCLUDED_ARCHS[sdk=iphonesimulator*]’] = β€˜$(inherited) i386 x86_64’
        config.build_settings[β€˜SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD’] = β€˜NO’
      end
    end
    aggregate_target.user_project.save
  end
end

Step 5 β€” Install pods

Run the following from your project’s ios/ directory:

cd ios && pod install

Step 6 β€” Add required permissions

Add the following keys to your app’s ios/Runner/Info.plist so the system grants Zoom the access it needs:

<key>NSCameraUsageDescription</key>
<string>Camera access is required for video meetings.</string>

<key>NSMicrophoneUsageDescription</key>
<string>Microphone access is required for audio in meetings.</string>

<key>NSPhotoLibraryUsageDescription</key>
<string>Photo library access is required to share images in meetings.</string>

Step 7 β€” Build and run on a device

flutter run

⚠️ Note: The Zoom SDK simulator frameworks are arm64-only. Testing on a physical iPhone or iPad is recommended. Running on an Intel-based Mac simulator may not work even with the architecture exclusions above.


πŸ”‘ Getting Started with Zoom SDK #

  1. Create a Zoom Developer Account at https://marketplace.zoom.us/
  2. Create an app in the Zoom Marketplace
  3. Get your API Key and API Secret from the app credentials
  4. Use these to generate your JWT token

πŸ”’ Generate JWT Token #

To generate a ZOOM JWT token, you can use https://jwt.io/ with the following payload and signature: Payload:

{
  "appKey": "ZOOM-CLIENT-KEY",
  "iat": ANY-TIME-STAMP,
  "exp": ANY-TIME-STAMP, //greater than iat
  "tokenExp": ANY-TIME-STAMP //greater than iat
}

Verify Signature:

HMACSHA256(
  base64UrlEncode(header) + "." +
  base64UrlEncode(payload),
  "ZOOM-CLIENT-SECRET"
)

πŸš€ Usage #

Initialize the SDK #

First, initialize the Zoom SDK with your JWT token:

import 'package:flutter_zoom_meeting_wrapper/flutter_zoom_meeting_wrapper.dart';

// Initialize Zoom SDK

bool isInitialized = await ZoomMeetingWrapper.initZoom(jwtToken);

Join a Meeting #

Once initialized, you can join a Zoom meeting like this:

bool joinSuccess = await ZoomMeetingWrapper.joinMeeting(
  meetingId: "your_meeting_id",
  meetingPassword: "meeting_password",
  displayName: "Your Name",
);

⚠️ Common Issues #

JWT Token Invalid: Ensure your API Key and Secret are correct, and check that your system time is accurate.
Failed to initialize SDK: Make sure you have a stable internet connection and valid JWT token.
Cannot join meeting: Verify that the meeting ID and password are correct.

⚑ Limitations #

πŸ–ΌοΈ Custom UI overlays are not supported in the current version
πŸ“Ή Recording meetings is not supported in this plugin
πŸ–₯️ Screen sharing functionality is limited to platform capabilities

πŸ‘¨β€πŸ’» Code Contributors #

Zoom Meeting Wrapper contributors
14
likes
150
points
90
downloads
screenshot

Documentation

API reference

Publisher

verified publisherdevcodespace.com

Weekly Downloads

A Flutter plugin to integrate Zoom Meeting SDK directly in your app. Join meetings without switching to Zoom app. Simple initialization with JWT authentication.

Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

flutter, plugin_platform_interface

More

Packages that depend on flutter_zoom_meeting_wrapper

Packages that implement flutter_zoom_meeting_wrapper