跳到主要内容

应用公告

提示

如需启用应用公告功能,请使用 Combo SDK for Apps v0.4.0 或更高版本。

公告内容管理与展示规则见 公告功能介绍。

checkAnnouncements​

应用可通过该 API 判断当前是否有新的公告内容。

返回结果可用于在公告 UI 入口处更新红点提示,以引导用户查看公告。

fun checkAnnouncements(activity: Activity, options: CheckAnnouncementsOptions, completionHandler: (CheckAnnouncementsResult?, ComboSDKError?) -> Unit)

请求参数

PropertiesTypeRequiredDescription
activityActivitytrue当前 Activity。
optionsCheckAnnouncementsOptionstrue检查是否存在新公告所需传入的参数集。
completionHandler(CheckAnnouncementsResult?, ComboSDKError?) -> Unittrue检查是否存在新公告完成后的回调方法。

示例代码

Show Code
val options = CheckAnnouncementsOptions(profile = "user-id", level = 0)
ComboSDK.checkAnnouncements(activity, options) { result, error ->
if (error != null) {
Log.e("ComboSDK", "Check announcements failed:\n Error: ${error.error}\n User Message: ${error.userMessage}\n Developer Message: ${error.developerMessage}")
return@checkAnnouncements
}
Log.i("ComboSDK", "Check announcements succeeded!")
if (result?.newAnnouncementsAvailable == true) {
Log.i("ComboSDK", "New announcements are available!")
} else {
Log.i("ComboSDK", "No new announcements.")
}
}

CheckAnnouncementsOptions​

PropertiesTypeRequiredDescription
profileStringfalse当前登录账户数据的唯一标识。
levelIntfalseprofile 的等级。可用于控制公告展示,通常传角色等级或用户等级。
未传时默认为 0。

CheckAnnouncementsResult​

PropertiesTypeDescription
newAnnouncementsAvailableBool是否存在新公告。
- true:有新公告;
- false:无新公告。

Error​

ErrorDescription
SERVER_ERROR服务器发生错误。
NETWORK_ERROR网络错误。
UNKNOWN_ERROR未知错误。

openAnnouncements​

通过该 API 打开公告页面。

fun openAnnouncements(activity: Activity, options: OpenAnnouncementsOptions, completionHandler: (OpenAnnouncementsResult?, ComboSDKError?) -> Unit)

请求参数

PropertiesTypeRequiredDescription
activityActivitytrue当前 Activity。
optionsOpenAnnouncementsOptionstrue打开公告所需传入的参数集。
completionHandler(OpenAnnouncementsResult?, ComboSDKError?) -> Unittrue打开公告流程结束后的回调方法;公告成功打开后,在用户关闭页面时返回。

示例代码

Show Code
val options = OpenAnnouncementsOptions(
profile = "user-id",
level = 0,
width = 100,
height = 100
)
ComboSDK.openAnnouncements(activity, options) { result, error ->
if (error != null) {
Log.e("ComboSDK", "Open Announcements Failed:\n Error: ${error.error}\n User Message: ${error.userMessage}\n Developer Message: ${error.developerMessage}")
return@openAnnouncements
}
Log.i("ComboSDK", "Open Announcements Success")
}

OpenAnnouncementsOptions​

PropertiesTypeRequiredDescription
profileStringfalse当前登录账户数据的唯一标识。
levelIntfalseprofile 的等级。可用于控制公告展示,通常传角色等级或用户等级。
未传时默认为 0。
widthIntfalse公告占屏幕宽度的百分比。取值范围 (0, 100]。
heightIntfalse公告占屏幕高度的百分比。取值范围 (0, 100]。

OpenAnnouncementsResult​

当前无公开字段,用于表示公告页面流程完成。

Error​

ErrorDescription
SERVER_ERROR服务器发生错误。
NETWORK_ERROR网络错误。
UNKNOWN_ERROR未知错误。