Skip to main content

Prerequisites

  • Add cn.seastart.meeting:meeting:2.0.39 as described in Integration.
  • Get a meetToken from your backend. Don’t store the secret key used to generate tokens in the client.
  • Request the camera and audio recording runtime permissions in your app.
  • Prepare the streamVendor agreed for your deployment. The example uses wangsucdn; the actual value depends on your backend configuration.

1. Create and initialize the Engine

Your app should hold a single MeetingEngine in one place. Callbacks stay on the thread they actually come from; switch to the main thread before any UI operation.
Release the Engine when you no longer use the SDK:

2. Create a meeting

When an instant meeting is created successfully, MeetingCreatedBean is returned directly; the Data<T> network wrapper is no longer exposed.
For scheduled meetings, use createScheduleMeeting(), where planTime is a Unix timestamp in seconds and planDur is in minutes.

3. Register in-meeting events

Assign room, member, message, and media events before entering the meeting so you don’t miss the initial events; they are cleared automatically after you exit the meeting.
For the full list of events, see Meeting events overview (Chinese).

4. Enter and exit the meeting

A successful entry returns MeetingEnterInfo. In-meeting APIs are still called on MeetingEngine; don’t reference the SDK’s internal MeetingSession.
To enter by meeting ID, use enterMeetingByMeetingId(); the other parameters are the same. To exit the meeting, call:

5. Open and publish the camera and mic

openCamera() / openMic() only do local capture before the meeting; after entering, you must use openCameraAndPublish() / openMicAndPublish() to publish to the meeting.
Close the devices:
Remote video must be rendered with VcsPlayerGlTextureView or VcsPlayerGlSurfaceView; a plain Android TextureView / SurfaceView doesn’t work.

6. Subscribe to remote video

Look up the track from InfosManager, then get the RemoteVideoTrack through the asynchronous result callback.
Unsubscribe:

Next steps

  • MeetingEngine (Chinese): all public methods, parameters, and return values
  • Model types (Chinese): configuration and result models
  • Error codes: handling 202xxx and passed-through errors
  • Camera presets (Chinese): choosing resolution and bitrate
  • Audio routing (Chinese): speaker, earpiece, Bluetooth, and wired headsets