Released: 2026-02-16 Updated: 2026-02-17
Summary: Remove support for x86 architecture for the iOS simulator; added support for public app type authentication, support for custom 3D avatar elements and for managing custom 3D avatars, and support for human avatars.
Breaking changes
- As of version 6.7.5, the Meeting SDK no longer supports x86 architecture for the iOS simulator.
Added
-
Added new interface
publicAppKeyin classZoomSDKAuthContextto support public app type authentication.``` /** * @brief Public app key used for SDK authentication (alternative to JWT token). */ @property (nullable, retain, nonatomic) NSString *publicAppKey; ``` -
Added
MobileRTCMeetError_UserLevelTokenNotHaveHostZakObfandMobileRTCMeetError_AppCanNotAnonymousJoinMeetingconstants toMobileRTC/MobileRTCConstants.hto support restricting cross-account anonymous joining from the Meeting SDK. Also addedMobileRTCMeetError_OnBehalfTokenInvalidandMobileRTCMeetError_OnBehalfTokenNotMatchMeetingconstants to support restricting cross-account anonymous joining from the Meeting SDK./** User level privilege token not have host zak/obf. */ MobileRTCMeetError_UserLevelTokenNotHaveHostZakObf = 503, /** App can not anonymous join meeting. */ MobileRTCMeetError_AppCanNotAnonymousJoinMeeting = 504, /** On-behalf token invalid. */ MobileRTCMeetError_OnBehalfTokenInvalid = 505, /** On-behalf token meeting number not match. */ MobileRTCMeetError_OnBehalfTokenNotMatchMeeting = 506, -
Added the new enum
MobileRTCCustom3DAvatarElementImageTypeto help define the different types of custom 3D avatar element images. Also added the new enumMobileRTCCustom3DAvatarElementColorTypeto help define the different types of custom 3D avatar element colors.typedef NS_ENUM(NSInteger, MobileRTCCustom3DAvatarElementImageType) { MobileRTCCustom3DAvatarElementImageType_None = 0, MobileRTCCustom3DAvatarElementImageType_Skin, MobileRTCCustom3DAvatarElementImageType_Face, MobileRTCCustom3DAvatarElementImageType_Hair, MobileRTCCustom3DAvatarElementImageType_Eyes, MobileRTCCustom3DAvatarElementImageType_EyeColor, MobileRTCCustom3DAvatarElementImageType_Eyelashes, MobileRTCCustom3DAvatarElementImageType_Eyebrows, MobileRTCCustom3DAvatarElementImageType_Nose, MobileRTCCustom3DAvatarElementImageType_Mouth, MobileRTCCustom3DAvatarElementImageType_LipColor, MobileRTCCustom3DAvatarElementImageType_Age, MobileRTCCustom3DAvatarElementImageType_FacialHair, MobileRTCCustom3DAvatarElementImageType_Body, MobileRTCCustom3DAvatarElementImageType_Clothing, MobileRTCCustom3DAvatarElementImageType_HeadCovering, MobileRTCCustom3DAvatarElementImageType_Glasses, }; typedef NS_ENUM(NSInteger, MobileRTCCustom3DAvatarElementColorType) { MobileRTCCustom3DAvatarElementColorType_None = 0, MobileRTCCustom3DAvatarElementColorType_Eyebrow, MobileRTCCustom3DAvatarElementColorType_Mustache, MobileRTCCustom3DAvatarElementColorType_Hair, MobileRTCCustom3DAvatarElementColorType_Eyelash, }; -
Added delegate setter interface to help support custom 3d avatar and human avatar callbacks.
- (void)setDelegate:(id<MobileRTCMeetingSettingsDelegate> _Nullable)delegate; -
Added callbacks relating to custom 3D avatar downloaded events to help manage custom 3D avatars.
@protocol MobileRTCMeetingSettingsDelegate <NSObject> @optional - (void)onCustom3DAvatarImageModelDataDownloaded:(BOOL)success imageInfo:(MobileRTC3DAvatarImageInfo * _Nullable)imageInfo; - (void)onCustom3DAvatarDefaultImageModelDataDownloaded:(BOOL)success; @end -
Add custom 3D avatar interfaces in new file
MobileRTCMeetingSettings+Custom3DAvatar.hto help manage custom 3D avatars.@interface MobileRTCMeetingSettings (Custom3DAvatar) - (BOOL)isCustom3DAvatarEnabled; - (NSArray<MobileRTC3DAvatarImageInfo*> * _Nullable)getCustom3DAvatarImageList; - (BOOL)isCustom3DAvatarImageModelDataReady:(MobileRTC3DAvatarImageInfo* _Nullable)imageInfo; - (MobileRTCSDKError)downloadCustom3DAvatarImageModelData:(MobileRTC3DAvatarImageInfo* _Nullable)imageInfo; - (MobileRTCSDKError)setCustom3DAvatarImage:(MobileRTC3DAvatarImageInfo* _Nullable)imageInfo; - (BOOL)isCustom3DAvatarDefaultImageModelDataReady; - (MobileRTCSDKError)downloadCustom3DAvatarDefaultImageModelData; - (MobileRTCCustom3DAvatarElementSettingContext* _Nullable)startCreateCustom3DAvatarWithPreviewView:(UIView* _Nullable)previewView; - (MobileRTCSDKError)finishCreateCustom3DAvatar:(BOOL)save; - (MobileRTCCustom3DAvatarElementSettingContext* _Nullable)startEditCustom3DAvatarWithPreviewView:(UIView* _Nullable)previewView imageInfo:(MobileRTC3DAvatarImageInfo* _Nullable)imageInfo; - (MobileRTCSDKError)finishEditCustom3DAvatar:(BOOL)save; - (MobileRTCSDKError)duplicateCustom3DAvatarImage:(MobileRTC3DAvatarImageInfo* _Nullable)imageInfo; - (MobileRTCSDKError)deleteCustom3DAvatarImage:(MobileRTC3DAvatarImageInfo* _Nullable)imageInfo; @end -
Add custom 3D avatar context interfaces in new file
MobileRTCCustom3DAvatarElementSettingContext.hto help manage custom 3D avatars.@protocol MobileRTCCustom3DAvatarElementSettingContextDelegate <NSObject> @optional - (void)onCustom3DAvatarElementImageModelDataDownloaded:(BOOL)success imageInfo:(MobileRTCCustom3DAvatarElementImageInfo *)imageInfo; @end @interface MobileRTCCustom3DAvatarElementImageInfo : NSObject @property (nonatomic, assign) MobileRTCCustom3DAvatarElementImageType elementImageType; @property (nonatomic, assign) BOOL isSelected; @property (nonatomic, copy) NSString * _Nullable imageFilePath; @property (nonatomic, copy) NSString * _Nullable imageName; @end @interface MobileRTCCustom3DAvatarElementColorInfo : NSObject @property (nonatomic, assign) MobileRTCCustom3DAvatarElementColorType elementColorType; @property (nonatomic, strong) UIColor * _Nullable color; @property (nonatomic, assign) BOOL isSelected; @property (nonatomic, copy) NSString * _Nullable colorName; @end @interface MobileRTCCustom3DAvatarElementSettingContext : NSObject - (void)setDelegate:(id<MobileRTCCustom3DAvatarElementSettingContextDelegate> _Nullable)delegate; - (NSArray<MobileRTCCustom3DAvatarElementImageInfo*> * _Nullable)getCustom3DAvatarElementImageList; - (MobileRTCSDKError)setCustom3DAvatarElementImage:(MobileRTCCustom3DAvatarElementImageInfo* _Nullable)imageInfo; - (BOOL)isCustom3DAvatarElementImageModelDataReady:(MobileRTCCustom3DAvatarElementImageInfo* _Nullable)imageInfo; - (MobileRTCSDKError)downloadCustom3dAvatarElementImageModelData:(MobileRTCCustom3DAvatarElementImageInfo* _Nullable)imageInfo; - (NSArray<MobileRTCCustom3DAvatarElementColorInfo*> * _Nullable)getCustom3DAvatarElementColorList; - (MobileRTCSDKError)setCustom3DAvatarElementColor:(MobileRTCCustom3DAvatarElementColorInfo* _Nullable)colorInfo; @end