Links

iOS

This page contains an overview of all relevant changes made to the iOS SDK and the latest version releases

Version 6.2.2 (2023-03-16)

Improvement

  • The error messages have been improved to provide more clarity in certain cases. In particular, the error 800000 unknown has been dealt with in more detail.

Version 6.2.1 (2023-03-14)

Improvement

  • Improved the error messages for more clarity in certain cases.

Compatibility

  • Xcode Version: 14.1
  • Realm Version: 10.28.3

Version 6.4.0 (2023-03-13)

New Features

Fixes:

  • Fixed issue where the SDK crashes on initializing AmityChannelRepository.

Compatibility:

  • Xcode Version: 14.1
  • Realm Version: 10.32.2
  • Realm Swift Version: 10.32.2
  • Minimum Target: iOS 13.0

Version 5.33.2 (2023-03-07)

Fixes

  • Fixed issue where the SDK crashes for some users with the error message "Cannot register notification blocks from within write transactions".

Compatibility

  • Xcode Version: 14.1
  • Realm Version: 10.28.3
  • Minimum Target: iOS 13.0

Version 6.3.0 (2023-02-24)

New Features

  • AmityUser Live Collection now supports the automatic addition of new objects via real-time events. Affected APIs:
AmityUserRepository
func searchUser(_ displayName: String, sortBy: AmityUserSortOption) -> AmityCollection<AmityUser>
func getUsers(_ sortBy: AmityUserSortOption) -> AmityCollection<AmityUser>

Fixes

  • Fixed issue where the SDK crashes for some users with the error message "Cannot register notification blocks from within write transactions".

Compatibility

  • Xcode Version: 14.1
  • Realm Version: 10.28.3
  • Minimum Target: iOS 13.0

Version 5.33.1 (2023-02-17)

Fixes

  • Fixed issue where the SDK crashes for some users with the error message "Cannot register notification blocks from within write transactions".

Compatibility

  • Xcode Version: 14.1
  • Realm Version: 10.28.3
  • Minimum Target: iOS 13.0

Version 6.2.0 (2023-02-09)

Fixes

  • Fixed issue where local cache was cleared on query channels with 'firstPage'.

Compatibility

  • Xcode Version: 14.1
  • Realm Version: 10.32.2
  • Realm Swift Version: 10.32.2
  • Minimum Target: iOS 13.0

Version 6.1.0 (2023-02-03)

New Features

  • AmityCommunityMember Live Collection now supports the automatic addition of new objects via real-time events. Affected APIs:
AmityCommunityRepository
func searchMembers(...) -> AmityCollection<AmityCommunityMember>
  • Added new API for searching community members with keywords.
AmityCommunityRepository
func searchMembers(communityId: String, keyword: String, membership membershipOptions: AmityCommunityMembershipFilterOption, roles: [String], sortBy: AmityCommunityMembershipSortOption) -> AmityCollection<AmityCommunityMember>
  • AmityCommunity Live Collection now supports automatic addition of new items via real-time events. Affected APIs:
AmityCommunityRepository
func getCommunities(...) -> AmityCollection<AmityCommunity>
  • Added async/await API for deleteMessage, createCustomMessage, createTextMessage, createImageMessage, createAudioMessage, createFileMessage and createVideoMessage in AmityMesageRepository.
  • Introduced the ability to delete on a specific poll post.
AmityPollRepository
func deletePoll(...)

Compatibility

  • Xcode Version: 14.1
  • Realm Version: 10.28.3
  • Minimum Target: iOS 13.0

Version 6.0.0 (2023-01-13)

New Features

  • Introduced Sub Channel functionality. Now users can create sub channels inside a channel.

Deprecations

  • All deprecated interfaces from AmitySDK v5.x.x has been removed in AmitySDK v6.0.0.

Breaking Changes

  • AmitySDK v6.0.0 has been written in PureSwift. This version has breaking changes in api interfaces. Please refer to the migration guide for more details.
  • Events related to channels of type Community & Conversation are automatically subscribed. To receive events for other type of channels, user needs to subscribe to it explicitly.
  • For subscribing to channel topics, create an instance of the AmityChannelTopic class and use the AmityTopicSubscription class to subscribe to it.

Compatibility

  • Xcode Version: 14.1
  • Realm Version: 10.32.2
  • Realm Swift Version: 10.32.2
  • Minimum Target: iOS 13.0

Version 5.33.0 (2022-12-16)

New Features

AmityClient {
public func login(userId: String, displayName: String?, authToken: String?, sessionHandler: SessionHandler) async throws
}
  • Added sesionState API to AmityClient
  • Added issuedAt, expiresAt API to AmityUserToken

Fixes

  • Fixed issue where the user could not send a reply to image messages
  • Fixed issue where the user could not see the existing message when editing it

Deprecations

  • Deprecated connectionState API
  • Deprecated old login API
AmityClient {
@available(*, deprecated)
@objc public func login(userId: String, displayName: String?, authToken: String?, completion: AmityRequestCompletion?)
}

Compatibility

  • Xcode Version: 14.1
  • Realm Version: 10.28.3
  • Minimum Target: iOS 13.0

Version 5.32.0 (2022-12-02)

Fixes

  • SDK Upgrade

Compatibility

  • Xcode Version: 14.1
  • Realm Version: 10.28.3
  • Minimum Target: iOS 13.0

Version 5.31.0 (2022-11-18)

New Features

  • Upgraded the post settings feature. When a moderator role is demoted to a user role, post creation must be approved by a moderator.
  • Introduced the ability to get video thumbnail image data from video messages using the AmityMessage.getVideoThumbnailImageInfo() function.

Fixes

  • Fixed issue where the application crashes when a globally banned user sends a message in a channel.

Compatibility

  • Xcode Version: 14.1
  • Realm Version: 10.28.3
  • Minimum Target: iOS 13.0

Version 5.30.0 (2022-11-04)

New Features

  • Introduced the ability for User roles to create community with “Admin can post only” settings.

Fixes

  • Fixed issue where the global feed is not updated after creating a post in the community feed or user feed.

Compatibility

  • Xcode Version: 14.0
  • Realm Version: 10.28.3
  • Minimum Target: iOS 13.0

Version 5.29.0 (2022-10-21)

New Features

  • Introduced the ability to query poll type.
  • Introduced a new moderatorCount property in AmityChannel to show the total number of moderator in the channel.
  • Introduced the ability to query message by type.

Fixes

  • Fixed issue where channels with a certain ID were not retrieved correctly.

Compatibility

  • Xcode Version: 14.0.0
  • Realm Version: 10.28.3
  • Minimum Target: iOS 13.0

Version 5.28.1 (2022-10-18)

Fixes

  • Fixed issue where the application crashes with errorCannot register notification blocks from within write transactions when fetching Live Object or Live Collection within observe block.

Compatibility

  • Xcode Version: 13.4.0
  • Realm Version: 10.28.3
  • Minimum Target: iOS 12.0

Version 5.28.0 (2022-10-07)

New Features

  • Introduced the ability to create video messgaes in Live, Broadcast, Community and Chat channels.
  • When creating a poll post, the setTimeToClosePoll value is set to 30 days by default if the user does not set any value.

Fixes

  • Fixed issue where the application crashes when the user adds a reaction to a message.

Compatibility

  • Xcode Version: 13.4.0
  • Realm Version: 10.28.3
  • Minimum Target: iOS 12.0

Version 5.27.0 (2022-09-23)

Fixes

  • Fixed issue where SDK tries to query the current user after logging in.
  • Fixed issue where the isJoined property for AmityCommunity is not updated properly when a user leaves the community.
  • Fixed issue where the URL of the downloaded file is the same for multiple downloads.
  • Non-members with the User role can no longer be able to get information about the conversation channel.
  • Non-members with the User role can no longer query messages within the conversation channel.

Compatibility

  • Xcode Version: 13.4.0
  • Realm Version: 10.28.3
  • Minimum Target: iOS 12.0

Version 5.26.1 (2022-09-15)

Fixes

  • Fixed issue where reaction count was incorrect

Compatibility

  • Xcode Version: 13.4.0
  • Realm Version: 10.28.3
  • Minimum Target: iOS 12.0

Version 5.26.0 (2022-09-09)

New Features

  • Community query is now case-insensitive! You no longer have to match the case sensitivity of the community’s display name when querying for a community.
  • System now displays an error message while uploading HDR video format

Fixes

  • Fixed issue where reaction count becomes deficit
  • Fixed muting channel members issue

Compatibility

  • Xcode Version: 13.4.0
  • Realm Version: 10.28.3
  • Minimum Target: iOS 12.0

Version 5.25.0 (2022-08-26)

New Features

  • Enhanced Video on Demand (VOD) configurations. Videos you upload with our SDK can now be transcoded to 4 different resolutions (from 360p to 1080p) with a maximum file size of 1 GB and a duration of up to 2 hours.
  • New method uploadVideo(with:forFeedType:progress:completion:) is added in AmityFileRepository

Fixes

  • Fixed issue where automatic invalidation of live collections happen once the session is logged out
  • Fixed issue where all SDK async functions are forced to be invoked on the main thread
  • Fixed issue where user cannot view post which has multiple videos

Deprecations

  • Deprecated uploadVideo(with:progress:completion:) method in AmityFileRepository

Compatibility

  • Xcode Version: 13.4.0
  • Realm Version: 10.28.3
  • Minimum Target: iOS 12.0

Version 5.24.0 (2022-08-11)

New Features

  • Enhanced LiveCollections for message reactions. Newly created reactions are now automatically added into the collection. Affected APIs:
AmityReactionRepository
func getReactions(...) -> AmityCollection<AmityReaction>
  • Enhanced LiveCollections for followers/following users. Newly created followed/unfollowed are now automatically added into the collection. Affected APIs:
AmityUserFollowManager
func getMyFollowerList(...) -> AmityCollection<AmityFollowRelationship>
func getMyFollowingList(...) -> AmityCollection<AmityFollowRelationship>
func getUserFollowerList(...) -> AmityCollection<AmityFollowRelationship>
func getUserFollowingList(...) -> AmityCollection<AmityFollowRelationship>

Fixes

  • Fixed realtime events .myFollower and .myFollowing in AmityFollowTopic which subscribes to the wrong path
  • Fixed issue where user cannot submit vote when a poll is closed
  • Fixed issue where user cannot edit caption when a poll is closed

Dependency Changes

  • Updated Realm version to 10.28.3

Deprecations

  • DeprecatedAmityMessageReactor class. Please use AmityReactionRepository instead.

Compatibility

  • Xcode Version: 13.4.0
  • Realm Version: 10.28.3
  • Minimum Target: iOS 12.0

Version 5.23.0 (2022-07-29)

New Features

  • Enhanced LiveCollections for users and community post. Newly added comments are now automatically added into the collection. Affected APIs:
AmityCommentRepository
func getCommentsWithReferenceId(...) -> AmityCollection<AmityComment>

Compatibility

  • Xcode Version: 13.4.0
  • Realm Version: 10.26.0
  • Minimum Target: iOS 12.0

Version 5.22.0 (2022-07-15)

New Features

  • Enhanced LiveCollections for user and community posts. Newly created posts are now automatically added into the collection. Affected APIs:
AmityFeedRepository
func getUserFeed(...) -> AmityCollection<AmityPost>
func getCommunityFeed(...) -> AmityCollection<AmityPost>
  • Introduced real-time event for channel deletion

Fixes

  • Fixed issue with app crashes when searching members with AmityCommunityRepository
  • Fixed some SDK errors to no longer show empty error messages

Compatibility

  • Xcode Version: 13.4.0
  • Realm Version: 10.26.0
  • Minimum Target: iOS 12.0

Version 5.21.0 (2022-07-04)

New Features:

  • Introduced ability to manage community post settings via SDK (i.e. 'Only Admins Can Post' or 'Approve Member Posts')

Fixes:

  • Fixed issue where users who weren't logged in were receiving push notifications.

Compatibility

  • Xcode Version: 13.4.0
  • Realm Version: 10.26.0
  • Minimum Target: iOS 12.0

Version 5.20.0 (2022-06-17)

Dependency Changes

  • Updated Realm to 10.26.0

Compatibility

  • Xcode Version: 13.4.0
  • Realm Version: 10.26.0
  • Minimum Target: iOS 12.0

Version 5.19.0 (2022-06-02)

New Features

  • Added channel async/await APIs including create / join / update / leave.

Deprecations

  • Deprecate channel create / join update / leave that returns live object. Please use equivalent channel async/await APIs instead.

Version 5.18.0 (2022-05-20)

New Features

  • Real time update of user deletion

Compatibility

  • Xcode Version: 13.2
  • Realm Version: 10.21.1
  • Minimum Target: iOS 12.0

Version 5.17.0 (2022-05-09)

New Features

  • Update image and file post by adding/removing them from the existing post

Compatibility

  • Xcode Version: 13.2
  • Realm Version: 10.21.1
  • Minimum Target: iOS 12.0

Version 5.16.0 (2022-04-22)

New Features

  • Add isDeleted property to AmityUser.

Fixes

  • Fix issue where message unread count indicates incorrect value.

Compatibility

  • Xcode Version: 13.2
  • Realm Version: 10.21.1
  • Minimum Target: iOS 12.0

Version 5.15.0 (2022-03-31)

New Features

  • Update video post by adding/removing the video from the existing post
  • Realtime events for comments and posts in the user feed

Fixes

  • Fix a channel member list sorting issue
  • Fix issue where querying channels with empty result doesn’t trigger completion block
  • Fix issue where targetUser and sourceUser from AmityFollowRelationship are always null when querying following/follower list

Compatibility

  • Xcode Version: 13.2
  • Realm Version: 10.21.1
  • Minimum Target: iOS 12.0

Version 5.14.0 (2022-03-17)

New Features

Fix

  • Fix channel member list sorting issue

Breaking Changes

  • Deprecate getMyFollowInfo:completion and getUserFollowInfo:completion API

Compatibility

  • Xcode Version: 13.1
  • Realm Version: 10.21.1
  • Minimum Target: iOS 12.0

Version 5.13.1 (2022-03-11)

Fixes

  • Fix issue where unreadCount in AmityChannel class isn’t updated and miscalculated
  • Fix issue where new messages sent by another user don't appear while observing AmityMessageListScreenViewModel.getMessages(:)

Compatibility

  • Xcode Version: 13.1
  • Realm Version: 10.21.1
  • Minimum Target: iOS 12.0

Version 5.13.0 (2022-03-03)

Fixes

  • Fix crash related to mqtt realtime events on SDK
  • Fix issue where community category did not update when realtime event is received
  • Fix unregister notification issue
  • Fix mention highlight issue for reply
  • Framework installation via Cocoapods doesn’t support running on M1 natively

Compatibility

  • Xcode Version: 13.1
  • Realm Version: 10.21.1
  • Minimum Target: iOS 12.0

Version 5.12.0 (2022-02-17)

New Features

  • Create a livestream post with mentions
  • Add push notification log menu in the sample app

Fixes

  • Fix mention selection issue in editing mode for a message
  • Fix comment reply mention highlight issue after editing
  • Fix crash issue when fetching channel with certain filter

Compatibility Xcode

  • Version: 13.1
  • Realm Version: 10.21.1
  • Minimum Target: iOS 12.0

Version 5.11.0 (2022-02-04)

New Features

  • Create a poll post with mentions

Fixes

  • Fix mention highlight issue after editing a message
  • Fix channel filter issue
  • Fix compose bar appearance issue after mentioning in a comment
  • Fix mentioned user remove issue on edit message page

Compatibility

  • Xcode Version: 13.1
  • Realm Version: 10.21.1
  • Minimum Target: iOS 12.0

Version 5.10.0 (2022-01-25)

New Features

  • Hard delete post and comment
  • Old mentions in a message will not be removed after editing the message
  • Custom post ranking global feed to support a score-sorting mechanism
  • User level notification error
  • Live collection allObjects API

Fix

  • Compose bar text wrapping issue when creating a message, post, and comment

Breaking Changes

  • Add hardDelete parameter to Post and Comment deletion API
AmityPostRepository.deletePost(withPostId:, parentId:, hardDelete:, completion:)
AmityCommentRepository.deleteComment(withId:, hardDelete:, completion:)

Compatibility

  • Xcode Version: 13.1
  • Realm Version: 10.21.1
  • Minimum Target: iOS 12.0

Version 5.9.0 (2021-12-24)

New Features

  • Add properties createdAt, updatedAt, rateLimit to AmityChannel.
  • Add AmityClient.disconnect() API
  • Add support for real time events for social module
  • Create/Update comment/reply with mention

Fix

  • Update many functions documentation in SDK

Breaking Changes

  • Rename AmityClient functions
    Before SDK 5.9.0
    SDK 5.9.0
    registerDevice(...)
    login(...)
    unregisterDevice()
    logout()
  • Rename AmityMessageMentionMetadata to AmityMentionMapper
  • Change AmityClient initializer to throwable initializer
    class AmityClient {
    public init(...) throws
    }
  • Change all message creation API in AmityMessageRepository to callback-style Before SDK 5.9.0
    let messageLiveObject = messageRepository.createTextMessage(...)
    token = messageLiveObject.observe(...) {
    // 1. Handle message creation response.
    // 2. Observe message data changes.
    }
    SDK 5.9.0
    let messageId = messageRepository.createTextMessage(...) { message, error in
    // 1. Handle message creation response.