SDKsHarmonyOSEnterprise
Retrieve blocklist
Query users blocked by the current account and listen for blocklist events.
Blocklist state is maintained independently of friendships, group memberships, and administrative bans. Query the blocklist without passing parameters:
Code example
import sdk, {
EventOnBlackAddedData,
EventOnBlackDeletedData,
GetBlacksResp,
OpenIMSDKEvent,
} from '@openimsdk/imsdk';
const response: GetBlacksResp = await sdk.getBlacks();
replaceBlockedUsers(response.blacks);
const handleBlackAdded = (data: EventOnBlackAddedData): void => {
mergeBlockedUser(data.black);
};
const handleBlackDeleted = (data: EventOnBlackDeletedData): void => {
removeBlockedUser(data.black.blockUserID);
};
const unsubscribeAdded = sdk.on(OpenIMSDKEvent.EventOnBlackAdded, handleBlackAdded);
const unsubscribeDeleted = sdk.on(OpenIMSDKEvent.EventOnBlackDeleted, handleBlackDeleted);
export function removeBlacklistListeners(): void {
unsubscribeAdded();
unsubscribeDeleted();
}Return value
Returns a Promise that resolves to a GetBlacksResp object containing blacks: IMBlack[]:
| Property | Type | Description |
|---|---|---|
blockUserID | string | Blocked user identifier. |
nickname | string | Blocked user's nickname. |
faceURL | string | Blocked user's avatar URL. |
ownerUserID | string | User ID of the account owning this blocklist entry. |
createTime | number | Block action timestamp in Unix milliseconds. |
ex | string | Custom metadata extension string. |
State changes after the call
Resolving the Promise provides the blocklist snapshot. Incoming real-time events fire through EventOnBlackAdded and EventOnBlackDeleted; correlate updates using blockUserID. Release listeners with removeBlacklistListeners() when signing out or unmounting views. Re-query whenever network reconnection completes.
Was this page helpful?