Test Environment Deprecation Notice
Overview
To provide more convenient and standardized services, ZEGOCLOUD has unified the environment concept. After 2021-11-16, there is no distinction between formal environment and test environment. Users who created projects on ZEGOCLOUD Console on or before 2021-11-16 can refer to this document for SDK upgrades and related code adjustments.
For guidance on each product, please refer to the table below:
| Category | Product | Platform/Framework |
|---|---|---|
| Cloud Communication Products | Video Call | |
| Voice Call | ||
| Live Streaming | ||
| Supporting Services/Plugins | Super Board | |
| Interactive Whiteboard | ||
| File Sharing | ||
| Local Server Recording | - | |
| Server API | Server API v2 | - |
- Products and platforms/frameworks not listed in this table are not affected by the test environment deprecation.
- You can refer to the "Sample Source Code" of the above products for corresponding code adjustments.
Upgrade Instructions
Video Call
The specific implementation process for each platform/framework is as follows:
iOS
-
For integrating the latest version of the SDK, please refer to Video Call - Download SDK.
-
When initializing the SDK, please use the latest createEngineWithProfile interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile *profile = [ZegoEngineProfile new];
profile.appID = appID;
profile.appSign = appSign;
profile.scenario = ZegoScenarioGeneral;
[ZegoExpressEngine createEngineWithProfile:profile eventHandler:self];Android
-
For integrating the latest version of the SDK, please refer to Video Call - Download SDK.
-
When initializing the SDK, please use the latest createEngine interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile profile = new ZegoEngineProfile();
profile.appID = appID;
profile.appSign = appSign;
profile.scenario = ZegoScenario.GENERAL;
profile.application = getApplication();
ZegoExpressEngine.createEngine(profile, null);macOS
-
If you are using Objective-C:
-
For integrating the latest version of the SDK, please refer to Video Call - Download SDK.
-
When initializing the SDK, please use the latest createEngineWithProfile interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile *profile = [ZegoEngineProfile new]; profile.appID = appID; profile.appSign = appSign; profile.scenario = ZegoScenarioGeneral; [ZegoExpressEngine createEngineWithProfile:profile eventHandler:self]; -
-
If you are using C++:
-
For integrating the latest version of the SDK, please refer to Video Call - Download SDK.
-
When initializing the SDK, please use the latest createEngine interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile profile; profile.appID = appID; profile.appSign = appSign; profile.scenario = ZegoScenario::ZEGO_SCENARIO_GENERAL; ZegoExpressSDK::createEngine(profile, nullptr); -
Windows
-
If you are using C++:
-
For integrating the latest version of the SDK, please refer to Video Call - Download SDK.
-
When initializing the SDK, please use the latest createEngine interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile profile; profile.appID = appID; profile.appSign = appSign; profile.scenario = ZegoScenario::ZEGO_SCENARIO_GENERAL; ZegoExpressSDK::createEngine(profile, nullptr); -
-
If you are using C#:
- For integrating the latest version of the SDK, please refer to Video Call - Download SDK.
- When initializing the SDK, please use the latest createEngine interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile engine_profile = new ZegoEngineProfile(); engine_profile.appID = appID; engine_profile.appSign = appSign; engine_profile.scenario = ZegoScenario.General; var context = SynchronizationContext.Current; var engine = ZegoExpressEngine.CreateEngine(engine_profile, context);
Web
- For projects created on ZEGOCLOUD Console on or before 2021-11-16, the functionality for this platform is enabled by default in the test environment and can be used directly. In the formal environment, the functionality for this platform is not enabled by default and needs to be enabled through the original process if needed.
- For projects created on ZEGOCLOUD Console after 2021-11-16, there is no distinction between formal/test environments, but the functionality for this platform is not enabled by default. Please contact ZEGOCLOUD Technical Support to enable it before use.
Mini Program
- For projects created on ZEGOCLOUD Console on or before 2021-11-16, the functionality for this platform is enabled by default in the test environment and can be used directly. In the formal environment, the functionality for this platform is not enabled by default and needs to be enabled through the original process if needed.
- For projects created on ZEGOCLOUD Console after 2021-11-16, there is no distinction between formal/test environments, but the functionality for this platform is not enabled by default. Please contact ZEGOCLOUD Technical Support to enable it before use.
Flutter
-
For integrating the latest version of the SDK, please refer to Video Call - Download SDK.
-
When initializing the SDK, please use the latest createEngineWithProfile interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile profile = ZegoEngineProfile(
appID,
appSign,
ZegoScenario.General,
true);
ZegoExpressEngine.createEngineWithProfile(profile);Electron
-
For integrating the latest version of the SDK, please refer to Video Call - Download SDK.
-
When initializing the SDK, please use the latest createEngine interface. Example code is as follows:
const profile = {
appID : xxx,
appSign : "xxx",
scenario : zgDefines.ZegoScenario.General
};
zgEngine.createEngine(profile)
.then(() => {
console.log("init succeed")
}).catch((e) => {
console.log("init failed", e)
});Unity3D
-
For integrating the latest version of the SDK, please refer to Video Call - Download SDK.
-
When initializing the SDK, please use the latest CreateEngine interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile profile = new ZegoEngineProfile();
profile.appID = appID;
profile.appSign = appSign;
profile.scenario = ZegoScenario.General;
ZegoExpressEngine.CreateEngine(profile);uni-app
-
For integrating the latest version of the SDK, please refer to Video Call - Download SDK.
-
When initializing the SDK, please use the latest createEngineWithProfile interface. Example code is as follows:
const profile = {
appID : xxx,
appSign : "xxx",
scenario : 0
};
ZegoExpressEngine.createEngineWithProfile(profile)React Native
-
For integrating the latest version of the SDK, please refer to Video Call - Download SDK.
-
When initializing the SDK, please use the latest createEngineWithProfile interface. Example code is as follows:
// Import
import ZegoExpressEngine from 'zego-express-engine-reactnative';
// Use general scenario
const profile = {
appID : xxx,
scenario : 0
};
ZegoExpressEngine.createEngineWithProfile(profile)Voice Call
The specific implementation process for each platform/framework is as follows:
iOS
-
For integrating the latest version of the SDK, please refer to Voice Call - Download SDK.
-
When initializing the SDK, please use the latest createEngineWithProfile interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile *profile = [ZegoEngineProfile new];
profile.appID = appID;
profile.appSign = appSign;
profile.scenario = ZegoScenarioGeneral;
[ZegoExpressEngine createEngineWithProfile:profile eventHandler:self];Android
-
For integrating the latest version of the SDK, please refer to Voice Call - Download SDK.
-
When initializing the SDK, please use the latest createEngine interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile profile = new ZegoEngineProfile();
profile.appID = appID;
profile.appSign = appSign;
profile.scenario = ZegoScenario.GENERAL;
profile.application = getApplication();
ZegoExpressEngine.createEngine(profile, null);macOS
-
For integrating the latest version of the SDK, please refer to Voice Call - Download SDK.
-
When initializing the SDK, please use the latest createEngineWithProfile interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile *profile = [ZegoEngineProfile new];
profile.appID = appID;
profile.appSign = appSign;
profile.scenario = ZegoScenarioGeneral;
[ZegoExpressEngine createEngineWithProfile:profile eventHandler:self];Windows
-
For integrating the latest version of the SDK, please refer to Voice Call - Download SDK.
-
When initializing the SDK, please use the latest createEngine interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile profile;
profile.appID = appID;
profile.appSign = appSign;
profile.scenario = ZegoScenario::ZEGO_SCENARIO_GENERAL;
ZegoExpressSDK::createEngine(profile, nullptr);Web
- For projects created on ZEGOCLOUD Console on or before 2021-11-16, the functionality for this platform is enabled by default in the test environment and can be used directly. In the formal environment, the functionality for this platform is not enabled by default and needs to be enabled through the original process if needed.
- For projects created on ZEGOCLOUD Console after 2021-11-16, there is no distinction between formal/test environments, but the functionality for this platform is not enabled by default. Please contact ZEGOCLOUD Technical Support to enable it before use.
Flutter
-
For integrating the latest version of the SDK, please refer to Voice Call - Download SDK.
-
When initializing the SDK, please use the latest createEngineWithProfile interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile profile = ZegoEngineProfile(
appID,
appSign,
ZegoScenario.General,
true);
ZegoExpressEngine.createEngineWithProfile(profile);Electron
-
For integrating the latest version of the SDK, please refer to Voice Call - Download SDK.
-
When initializing the SDK, please use the latest createEngine interface. Example code is as follows:
const profile = {
appID : xxx,
appSign : "xxx",
scenario : zgDefines.ZegoScenario.General
};
zgEngine.createEngine(profile)
.then(() => {
console.log("init succeed")
}).catch((e) => {
console.log("init failed", e)
});Unity3D
-
For integrating the latest version of the SDK, please refer to Voice Call - Download SDK.
-
When initializing the SDK, please use the latest CreateEngine interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile profile = new ZegoEngineProfile();
profile.appID = appID;
profile.appSign = appSign;
profile.scenario = ZegoScenario.General;
ZegoExpressEngine.CreateEngine(profile);uni-app
-
For integrating the latest version of the SDK, please refer to Voice Call - Download SDK.
-
When initializing the SDK, please use the latest createEngineWithProfile interface. Example code is as follows:
const profile = {
appID : xxx,
appSign : "xxx",
scenario : 0
};
ZegoExpressEngine.createEngineWithProfile(profile)React Native
-
For integrating the latest version of the SDK, please refer to Video Call - Download SDK.
-
When initializing the SDK, please use the latest createEngineWithProfile interface. Example code is as follows:
// Import
import ZegoExpressEngine from 'zego-express-engine-reactnative';
// Use general scenario
const profile = {
appID : xxx,
scenario : 0
};
ZegoExpressEngine.createEngineWithProfile(profile)Live Streaming
The specific implementation process for each platform/framework is as follows:
iOS
-
For integrating the latest version of the SDK, please refer to Live Streaming - Download SDK.
-
When initializing the SDK, please use the latest createEngineWithProfile interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile *profile = [ZegoEngineProfile new];
profile.appID = appID;
profile.appSign = appSign;
profile.scenario = ZegoScenarioGeneral;
[ZegoExpressEngine createEngineWithProfile:profile eventHandler:self];Android
-
For integrating the latest version of the SDK, please refer to Live Streaming - Download SDK.
-
When initializing the SDK, please use the latest createEngine interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile profile = new ZegoEngineProfile();
profile.appID = appID;
profile.appSign = appSign;
profile.scenario = ZegoScenario.GENERAL;
profile.application = getApplication();
ZegoExpressEngine.createEngine(profile, null);macOS
-
For integrating the latest version of the SDK, please refer to Live Streaming - Download SDK.
-
When initializing the SDK, please use the latest createEngineWithProfile interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile *profile = [ZegoEngineProfile new];
profile.appID = appID;
profile.appSign = appSign;
profile.scenario = ZegoScenarioGeneral;
[ZegoExpressEngine createEngineWithProfile:profile eventHandler:self];Windows
-
For integrating the latest version of the SDK, please refer to Live Streaming - Download SDK.
-
When initializing the SDK, please use the latest createEngine interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile profile;
profile.appID = appID;
profile.appSign = appSign;
profile.scenario = ZegoScenario::ZEGO_SCENARIO_GENERAL;
ZegoExpressSDK::createEngine(profile, nullptr);Web
- For projects created on ZEGOCLOUD Console on or before 2021-11-16, the functionality for this platform is enabled by default in the test environment and can be used directly. In the formal environment, the functionality for this platform is not enabled by default and needs to be enabled through the original process if needed.
- For projects created on ZEGOCLOUD Console after 2021-11-16, there is no distinction between formal/test environments, but the functionality for this platform is not enabled by default. Please contact ZEGOCLOUD Technical Support to enable it before use.
Super Board
- For projects created on ZEGOCLOUD Console on or before 2021-11-16, the functionality for this product is enabled by default in the test environment and can be used directly. In the formal environment, the functionality for this product is not enabled by default and needs to be enabled through the original process if needed.
- For projects created on ZEGOCLOUD Console after 2021-11-16, there is no distinction between formal/test environments, but the functionality for this product is not enabled by default. Please contact ZEGOCLOUD Technical Support to enable it before use.
The specific implementation process for each platform/framework is as follows:
iOS
-
For integrating the latest version of the SDK, please refer to Super Board - Download SDK.
-
When initializing ZegoExpress-Video SDK, please use the latest createEngineWithProfile interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile *profile = [ZegoEngineProfile new];
profile.appID = appID;
profile.appSign = appSign;
profile.scenario = ZegoScenarioGeneral;
[ZegoExpressEngine createEngineWithProfile:profile eventHandler:self];- When initializing ZegoSuperBoard SDK, use the initWithConfig interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoSuperBoardInitConfig * config = [ZegoSuperBoardInitConfig new];
config.appID = appID;
config.appSign = appSign;
[ZegoSuperBoardManager sharedInstance].delegate = self;
[[ZegoSuperBoardManager sharedInstance] initWithConfig:config complete:^(ZegoSuperBoardError errorCode) {
if (errorCode == ZegoSuperBoardSuccess) {
/** Initialization successful */
} else {
/** Initialization failed */
}
}];Android
-
For integrating the latest version of the SDK, please refer to Super Board - Download SDK.
-
When initializing ZegoExpress-Video SDK, please use the latest createEngine interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile profile = new ZegoEngineProfile();
profile.appID = appID;
profile.appSign = appSign;
profile.scenario = ZegoScenario.GENERAL;
profile.application = getApplication();
ZegoExpressEngine.createEngine(profile, null);- When initializing ZegoSuperBoard SDK, use the init interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoSuperBoardInitConfig config = new ZegoSuperBoardInitConfig();
config.appID = appID;
config.appSign = appSign;
ZegoSuperBoardManager.getInstance().init(this, config, new IZegoSuperBoardInitCallback() {
@Override
public void onInit(int errorCode) {
Log.d(TAG, "init ZegoSuperBoardManager result: errorCode = [" + errorCode + "]");
if (errorCode == ZegoSuperBoardError.ZegoSuperBoardSuccess) {
/** Initialization successful */
} else {
/** Initialization failed */
}
}
});Web
-
For integrating the latest version of the SDK, please refer to Super Board - Download SDK.
-
When initializing ZegoSuperBoard SDK, use the init interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
zegoSuperBoard = ZegoSuperBoardManager.getInstance();
const result = await zegoSuperBoard.init(zg, {
parentDomID: 'parentDomID',
appID: 0,
userID: '',
token: ''
});Interactive Whiteboard
The specific implementation process for each platform/framework is as follows:
iOS
-
For integrating the latest version of the SDK, please refer to Interactive Whiteboard - Download SDK.
-
When initializing ZegoExpress-Video SDK, please use the latest createEngineWithProfile interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile *profile = [ZegoEngineProfile new];
profile.appID = appID;
profile.appSign = appSign;
profile.scenario = ZegoScenarioGeneral;
[ZegoExpressEngine createEngineWithProfile:profile eventHandler:self];Android
-
For integrating the latest version of the SDK, please refer to Interactive Whiteboard - Download SDK.
-
When initializing ZegoExpress-Video SDK, please use the latest createEngine interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile profile = new ZegoEngineProfile();
profile.appID = appID;
profile.appSign = appSign;
profile.scenario = ZegoScenario.GENERAL;
profile.application = getApplication();
ZegoExpressEngine.createEngine(profile, null);macOS
-
For integrating the latest version of the SDK, please refer to Interactive Whiteboard - Download SDK.
-
When initializing ZegoExpress-Video SDK, please use the latest createEngineWithProfile interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile *profile = [ZegoEngineProfile new];
profile.appID = appID;
profile.appSign = appSign;
profile.scenario = ZegoScenarioGeneral;
[ZegoExpressEngine createEngineWithProfile:profile eventHandler:self];Windows
-
For integrating the latest version of the SDK, please refer to Interactive Whiteboard - Download SDK.
-
When initializing ZegoExpress-Video SDK, please use the latest createEngine interface. There is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
ZegoEngineProfile profile;
profile.appID = appID;
profile.appSign = appSign;
profile.scenario = ZegoScenario::ZEGO_SCENARIO_GENERAL;
ZegoExpressSDK::createEngine(profile, nullptr);Web
- For projects created on ZEGOCLOUD Console on or before 2021-11-16, the functionality for this platform is enabled by default in the test environment and can be used directly. In the formal environment, the functionality for this platform is not enabled by default and needs to be enabled through the original process if needed.
- For projects created on ZEGOCLOUD Console after 2021-11-16, there is no distinction between formal/test environments, but the functionality for this platform is not enabled by default. Please contact ZEGOCLOUD Technical Support to enable it before use.
Electron
-
For integrating the latest version of the SDK, please refer to Interactive Whiteboard - Download SDK.
-
When initializing ZegoExpress-Video SDK, please use the latest createEngine interface. Example code is as follows:
zegoExpressEngine.createEngine({ appID: zegoauth.appID, appSign: zegoauth.appSign, scenario: 0 });File Sharing
- For projects created on ZEGOCLOUD Console on or before 2021-11-16, the functionality for this product is enabled by default in the test environment and can be used directly. In the formal environment, the functionality for this product is not enabled by default and needs to be enabled through the original process if needed.
- For projects created on ZEGOCLOUD Console after 2021-11-16, there is no distinction between formal/test environments, but the functionality for this product is not enabled by default. Please contact ZEGOCLOUD Technical Support to enable it before use.
The specific implementation process for each platform/framework is as follows:
iOS
-
For integrating the latest version of the SDK, please refer to File Sharing - Download SDK.
-
When initializing the SDK, use the initWithConfig interface. There is no need to set isTestEnv to distinguish between formal/test environments. Example code is as follows:
ZegoDocsViewConfig *config = [ZegoDocsViewConfig new];
config.appSign = appSign;
config.appID = appID;
config.dataFolder = [[NSHomeDirectory() stringByAppendingPathComponent:@"Documents/ZegoDocs"] stringByAppendingString:@"data"];
config.cacheFolder = [[NSHomeDirectory() stringByAppendingPathComponent:@"Documents/ZegoDocs"] stringByAppendingString:@"doc"];
config.logFolder = [[NSHomeDirectory() stringByAppendingPathComponent:@"Documents/ZegoDocs"] stringByAppendingString:@"log"];
[[ZegoDocsViewManager sharedInstance] initWithConfig:config completionBlock:^(ZegoDocsViewError errorCode) {
if (errorCode == ZegoDocsViewSuccess) {
NSLog(@"SDK initialization successful");
} else {
NSLog(@"SDK initialization failed %ld",errorCode);
}
}];Android
-
For integrating the latest version of the SDK, please refer to File Sharing - Download SDK.
-
When initializing the SDK, use the init interface. There is no need to set setTestEnv to distinguish between formal/test environments. Example code is as follows:
ZegoDocsViewConfig config = new ZegoDocsViewConfig();
config.setAppID(appID);
config.setAppSign(appSign);
ZegoDocsViewManager.getInstance().init(application,config, new IZegoDocsViewInitListener() {
@Override
public void onInit(int errorCode) {
if (errorCode == 0) {
/** Initialization successful */
} else {
/** Initialization failed */
}
}
});Web
-
For integrating the latest version of the SDK, please refer to File Sharing - Download SDK.
-
When initializing the SDK, there is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
const zegoExpressDocs = new window.ZegoExpressDocs({appID, token, userID});Electron
-
For integrating the latest version of the SDK, please refer to Interactive Whiteboard - Download SDK.
-
When initializing the SDK, there is no need to set the isTestEnv parameter to distinguish between formal/test environments. Example code is as follows:
const zegoExpressDocs = new ZegoExpressDocs({
appID,
appSign,
dataFolder,
cacheFolder,
logFolder
});Local Server Recording
SetUseTestEnv is about to be deprecated. Please delete the relevant code for this interface. You can also refer to "How to achieve project data isolation?" in the "FAQ" section below to distinguish between formal/test environments.
Server API v2
The common request parameter isTest for all interfaces has a default value of false, indicating the formal environment.
- For projects created on ZEGOCLOUD Console on or before 2021-11-16:
- Information such as AppID and AppSign applied from the console defaults to the test environment.
- You can set this parameter according to the AppId environment type and business requirements.
- For projects created on ZEGOCLOUD Console after 2021-11-16:
- Information such as AppID and AppSign applied from the console is all for the formal environment.
- You must modify this parameter to "false" to indicate using the formal environment.
FAQ
How to achieve project data isolation?
You can create 2 projects on ZEGOCLOUD Console, one for testing and one for formal use, to achieve project data isolation.
For your convenience, the console also provides a "Project Phase" label. You can label the current phase of the project yourself, such as "Testing" or "Launched", so that you can distinguish between multiple projects without confusion.
