tencent cloud

定制权限列表

PDF
聚焦模式
字号
最后更新时间: 2025-07-04 17:33:32
部分 API 涉及用户隐私,超级应用服务对这些 API 做了授权管控,用户可以根据自身情况决定是否授予小程序相关权限,本文介绍了与授权列表有关的定制需求。

获取小程序授权列表

调用 TmfMiniSDK.getAuthStateList 可以获取指定小程序授权列表,仅支持小程序进程调用。
/**
* 获取小程序授权列表
* @param appId 小程序id
* @param appVerType 小程序版本类型
* @return
*/
public static List<MiniAuthState> getAuthStateList(String appId, int appVerType)

设置小程序授权状态

调用 TmfMiniSDK.setAuthState 可以设置指定小程序授权状态。
/**
* 设置授权状态,小程序进程调用有效
*
* @param appId 小程序id
* @param appVerType 小程序版本类型
* @param scopeName 权限名
* @param grant 是否授权
*/
public static void setAuthState(String appId, int appVerType, String scopeName, boolean grant)

定制小程序权限信息描述

通过实现 IScopeInfoProxy 代理,可以自定义权限列表信息。
public interface IScopeInfoProxy {
/**
* 返回需要自定义的权限列表信息
* @return
*/
List<PermissionInfo> getScopeInfos();
}
小程序权限列表请参见Scope 列表
示例代码:
@ProxyService(proxy = IScopeInfoProxy.class)
public class ScopeInfoProxyImpl implements IScopeInfoProxy {
@Override
public List<PermissionInfo> getScopeInfos() {
// 这里可以修改 Scope 的信息,比如名字,描述等
ArrayList<PermissionInfo> perms = new ArrayList<>();
PermissionInfo userInfo = new PermissionInfo();
// 权限 id
userInfo.id = "scope.userInfo";
// 权限名字与标题
userInfo.name = "获取你的昵称和头像";
// 权限描述
userInfo.description = "获取个人信息以提供个性化等服务";
// 权限拒绝文本
userInfo.rejectDescription = "拒绝";
// 权限在设置页中展示的标题
userInfo.settingPageTitle = "用户信息";
perms.add(userInfo);
return perms;
}
}



帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈