Skip to main content

Group Management Page

tip

This feature is supported starting from version 5.12.2.

Enable the Service

Before using this feature, you must enable the User Profile Hosting service in the Console.

Group Management Page

The Group Management Page is used to configure group permissions and administrative functions, including managing member permissions, invitation permissions, and transferring group ownership. Below are detailed descriptions of the related components:

  • GroupManagementActivity: The container class for the group management page, responsible for loading and displaying GroupManagementFragment.
  • GroupManagementFragment: The core component of the group management page, responsible for presenting and handling group permission settings and management functions.
  • GroupManagementViewModel: The data and business logic handler, responsible for fetching or updating group permission and information data from the server.
  • XML Layout: rc_page_group_management.xml
tip

Only the Group Owner or Group Administrator will see the group management options on the group settings page.

Group management permissions are visible and operable only by the Group Owner.

Launch the Group Management Page

ConversationIdentifier conversationIdentifier = getConversationIdentifier();
startActivity(GroupManagementActivity.newIntent(this, conversationIdentifier));

Customization

// Customize CustomGroupManagementFragment
public class CustomGroupManagementFragment extends GroupManagementFragment {

// Modify member permission labels
protected Map<GroupMemberInfoEditPermission, String> getMemberInfoEditPermissionLabels(
Map<GroupMemberInfoEditPermission, String> map) {
return map;
}

// Member removal permission labels
protected Map<GroupOperationPermission, String> getRemoveMemberPermissionLabels(
Map<GroupOperationPermission, String> map) {
return map;
}

// Member addition permission labels
protected Map<GroupOperationPermission, String> getAddMemberPermissionLabels(
Map<GroupOperationPermission, String> map) {
return map;
}

// Group info edit permission labels
protected Map<GroupOperationPermission, String> getGroupInfoEditPermissionLabels(
Map<GroupOperationPermission, String> map) {
return map;
}

// Display text for different permissions
@NonNull
protected <T extends Enum<T>> String getLocalizedPermissionLabel(@NonNull T permission) {
return super.getLocalizedPermissionLabel(permission);
}
}