Android不常用功能

Android不常用功能

wapublisher No Comment
Uncategorized

1 支付有关

1.1 查询支付服务是否可用

通过以下接口可以获取支付服务是否可用,返回boolean类型结果,true为可用,false为不可用,只要有一个支付渠道可用即为true。

参数说明:

参数名 类型 必填 说明 备注
context Context Y 上下文

1.2 查询商品本地价格

通过查询商品信息,可以获取库存商品的本地价格,查询商品本地价格调用接口

注意:这个接口需要在查询库存商品(WAPayProxy.queryInventory)成功回调后使用。

参数说明:

参数名 类型 必填 说明 备注
channel String Y WAConstants类中定义的渠道类型,比如谷歌渠道传WAConstants.CHANNEL_GOOGLE
callback WACallback<Map<String,WAChannelProduct>> Y 回调方法,结果返回,如果未获取到谷歌商品本地化价格信息,Map返回空集合 Map中的键是库存商品id(sku)

WAChannelProduct实体类说明:

Get方法名 返回值类型 不为空 说明 备注
getChannel() String Y 渠道类型
getSku() String Y 库存商品id
getPriceCurrencyCode() String Y 本地货币类型 比如美元返回USD
getPrice() String Y 本地货币类型换算的价格(格式化) 比如美元返回US$1.17
getPriceAmount() Double Y 本地货币价格(数值类型)

2 获取隐私政策有关

如果CP对接的登录方式是接口登录方式,则可以使用以下几个接口来实现隐私政策流程,具体流程可参考下图。
图片1

2.1.获取隐私政策url

WINGSDK有自己的隐私政策,调用以下接口获取到隐私政策url(隐私政策内容为html页面):

参数说明:

参数名 类型 必填 说明 备注
context context Y 上下文

返回值说明:

类型 必填 说明 备注
String Y 隐私政策html页面对应的url

2.2.获取隐私政策更新时间

隐私政策更新需要重新显示时可以调用以下接口获取最新隐私政策更新时间,和上一次保存的时间戳作对比,从而确定是否需要展示:

参数说明:

参数名 类型 必填 说明 备注
context context Y 上下文

返回值说明:

类型 必填 说明 备注
String Y 最新隐私政策更新的时间戳

2.3.显示隐私政策详情UI

当需要显示隐私政策详情时,可以调用以下接口显示出隐私政策详情界面:

参数说明:

参数名 类型 必填 说明 备注
context context Y 上下文
callback WACallback N 回调方法,窗口关闭时可以在onCancel中得知结果

调用示例,当窗口关闭时会回调onCancel接口。

3 公共参数设置

WINGSDK包括serverId等公共参数,这些参数主要用于数据跟踪和统计。
公共参数必须严格按照文档进行设置,在后续的接口中会使用到这些公共的参数,没有按照要求配置会导致部分接口调用失败。

3.1 设置服务器ID

当用户的服务器ID发生改变时,需要调用设置服务器ID接口设置新的服务器ID,例如每次进入服务器

注意:设置服务器id的操作在每次选服后都需要进行,必须在调用其他接口前设置。

3.2 设置gameUserId

当gameUserId发生改变时,需要调用设置gameUserId接口设置新的gameUserId,例如成功登录账号后、切换账号成功后

注意:必须在调用其他接口前设置。

3.3 设置用户等级Level

当用户角色等级发生改变时,需要调用设置等级接口设置新的等级,例如开始进入游戏、等级提升等。

注意:第一次进服获取玩家等级或玩家等级变更后,需要及时调用这个接口设置玩家等级,必须在调用其他接口前设置。

3.4 设置游戏玩家昵称

设置游戏玩家的昵称,调用接口:

注意:
1.当玩家登录、登出游戏,或修改昵称时,需要及时调用这个接口设置玩家昵称。
2.调用该接口设置昵称后,玩家进行购买时会自动记录昵称到订单信息中。

4 推送消息设置

4.1 获取推送消息的数据

收到推送消息后,WINGSDK将在设备通知栏显示通知,用户点击通知后打开应用程序,会将消息的数据传递给应用(例如自定义的数据),如果在应用中需要接收数据,需要实现一个BroadcastReceiver子类,并且在AndroidManifest.xml配置。当BroadcastReceiver接收到一个Action值为com.wa.sdk.push.intent.NOTIFICATION_OPENED的广播时,即收到了打开的推送消息包含的数据,数据为存放在Intent的Extras中。
说明:推送消息数据的处理非必要,如果推送消息中没有数据需要处理,可以不用配置。

数据接收BroadcastReceiver实现示例
实现一个类继承BroadcastReceiver,在onReceive方法中处理数据

在AndroidManifest.xml中配置Receiver,注意action值必须一致。


4.2 自定义通知图标及背景颜色

该项为可选配置,但是为了更好的通知显示效果,建议配置。
若不使用自定义图标,通知会默认以白色渲染的应用图标作为通知图标来显示,效果参考下方图示。

a、自定义通知图标

在res/drawable文件夹下添加通知图标的图片文件。
通知图标要求:
1.文件名ic_wa_push_notification.png
2.图片格式png
3.图标尺寸参考应用桌面图标。
4.尽量带透明效果,体现图标易于辨认的核心形状。不要有圆形,圆角,方形等不透明背景,保证轮廓辨识度,因为Android系统默认会把该图标统一渲染颜色。若是核心形状辨识度不足,会影响视觉体验。下方有相应效果示例。

b、自定义通知图标背景颜色

1.在AndroidManifest.xml清单中添加下面内容

2.在res/values/colors.xml中添加 color_wa_push_notification 颜色声明,其中色值修改为项目要求的颜色

效果展现

Demo应用图标原图:
图片1

通知显示效果:

图片2

自定义通知图标增加透明效果,及设置通知图标背景颜色为红色:
图片3

自定义后通知显示效果:

图片4

5 账户管理

5.1 绑定第三方平台账户

绑定第三方平台账户,不但可以使用第三方平台账户登录,而且可以防止账户信息丢失,调用以下接口绑定平台账户

参数说明

参数名 类型 必填 说明 备注
activity Activity Y 调用接口的Activity
platform String Y 绑定第三方平台账号的平台类型 取值参考 平台取值
extInfo String N 额外信息 预留字段
callback WABindCallback N 回调,用来返回绑定结果

5.2 查询已绑定的第三方平台账户

查询当前的账户已经绑定的第三方平台账户列表,调用接口

WAAccountResult字段说明

字段名 类型 说明 备注
code int 结果码 状态码说明
message String 结果消息
accounts List<WAAccount>
platform String 绑定的平台类型 取值参考 平台取值
platformUserId String 平台用户id

WAAccount字段说明

字段名 类型 说明 备注
platform String 绑定的平台类型 取值参考 平台取值
platformUserId String 平台用户id

5.3 解绑第三方平台账户

解绑已经绑定的第三方平台账户,调用接口

注意:有以下情况之一者,不可解绑
1.解绑的账户为SDK平台的;
2.用户没有绑定第三方平台账户的;
3.用户只绑定一个第三方平台账户,且用户没有与当前设备绑定的

5.4 切换账户

切换账户可以一键切换登录账户,调用接口

参数说明:

参数名 类型 必填 说明 备注
activity Activity Y
platform String Y 需要切换的账号类型 取值参考 平台取值
callback WACallback<WALoginResult> N 回调 用来返回结果

5.5 新建账户

新建账户可以新建一个全新的玩家账户。

注意:新建账户后,新的账户会跟当前设备绑定,如果之前的账户没有绑定第三方平台账户,数据将会丢失。

5.6 获取账户信息

获取账户信息接口可以获取指定平台的账户信息,调用接口

参数说明:

参数名 类型 必填 说明 备注
platform String Y 平台名称 取值参考 平台取值
callback WACallback<WAUser> N 回调 结果中包含平台用户的id,名称,头像等信息

6 Aihelp客服有关


6.1.打开游戏评价客服入口

说明:该接口受WING后台中”游戏评价开关”控制。如果后台未开启开关,此接口不生效。

6.2.设置客服系统语言

示例代码:

语言支持列表图:
图片1

7 google 应用内评分

Google 应用内评分参考:
https://developer.android.com/guide/playcore/in-app-review
通过此接口,可以在应用内调起应用内评分

示例:

备注:
评分回调onSuccess后,并不能知道用户是否已经评分,是否弹出评分界面,这是调用google 评分的api流程完成,不能作为用户已经完成评分的依据

谷歌商店评分页面的显示逻辑是完全由谷歌内部控制的,会根据用户是否弹过,评分接口调用频率等等一些逻辑去控制显示或者不显示,这个规则也不对外公开。
如果希望百分百观察到评分页面弹出及操作,需要按照谷歌文档进行操作,建议使用内部测试轨道进行测试。
Google测试说明:

https://developer.android.com/guide/playcore/in-app-review/test?hl=zh-cn

如果发现调不起评分界面,请查看问题排查:
https://developer.android.com/guide/playcore/in-app-review/test?hl=zh-cn#troubleshooting

8 帐号删除有关

8.1 接口版本

接口版本为,cp需要自己做UI,然后调用sdk接口进行删除操作。

8.1.1 请求删除账号接口

注意:需要在sdk登录成功的情况下才可调用。

参数说明:

参数名 类型 必填 说明 备注
callback WACallback< WADeleteResult> N 回调方法,结果返回 WADeleteResult实体类参考下方说明

WADeleteResult实体类说明:

get方法名 返回值类型 不为空 说明 备注
getApplyDate String Y 账号注销申请时间 示例:2023-08-29 07:49
getDeleteDate String Y 账号注销时间,达到该时间账号即被删除 示例:2023-08-29 07:49

示例代码:

8.1.2 取消删除账号接口

参数说明:

参数名 类型 必填 说明 备注
userId String Y 用户ID 登录失败时,若用户在申请账号注销中则会返回userId
callback WACallback< WAResult> N 回调方法,结果返回

示例代码:

9 UMP同意弹窗相关

9.1 同意弹窗说明

SDK在初始化的时候会在该Activity页面进行UMP同意弹窗初始化,并展示给需要的用户(欧盟地区)进行同意授权,授权完成后AdMob功能才会进行初始化及加载广告。如果是非欧盟地区用户,则会直接返回授权成功,并进行后续逻辑。

以上为SDK内部逻辑,研发无需处理。除此之外,研发需要在游戏内部放置一个按钮,可供用户打开UMP同意设置并修改同意状态,需要用到下面“检查设置”和”展示设置“两个方法。
UMP同意弹窗效果如下:

图片3

9.2 开关配置

UMP功能默认关闭,如果需要开启UMP功能,在AndroidManifest.xml中加入下面配置:

9.3 检查设置

返回值说明:

类型 必填 说明 备注
boolean Y true为需要展示,此时可以显示UMP配置按钮入口;false为不需要,可以隐藏UMP配置按钮入口。 如果设备在非欧盟地区一般返回false

9.4 展示设置

展示UMP同意设置

参数说明:

参数名 类型 必填 说明 备注
activity Activity Y 当前Activity页面
callback WACallback N 显示成功后,用户操作同意或不同意才会回调onSuccess;如果显示失败,则直接回调onError;

9.5 添加UMP同意监听

注意:该接口功能用于配合启动页展示开屏广告,如非必要,无需接入使用。

添加SDK初始化时的UMP同意弹窗授权状态监听,主要在SDK初始化方法之前调用。

参数说明:

参数名 类型 必填 说明 备注
callback WACallback Y 用户已经完成授权回调onSuccess;

示例代码:

10 Logcat工具

SDK提供了调试信息显示的Logcat工具,使用这个工具测试人员不需要IDE环境就可以查看调试信息,工具可以看到应用的调试Log信息(不包含系统打印)。使用前必须确保手机的安全软件没有拦截该程序的悬浮窗口权限,使用调用以下接口:

10.1 显示Logcat悬浮按钮

说明:如果已经开启了调试模式,不需要调用该接口就可以显示Logcat入口悬浮窗。

10.2 隐藏Logcat悬浮按钮

10.3 向Logcat增加一条日志

通过以下接口,开发者可以向Logcat工具中增加一条开发日志,日志会在Logcat工具的Log标签中显示。

11 华为HMS

11.1.华为HMS基本配置

1)在项目级别根build.gradle中配置华为仓库地址和依赖插件,如下:

2)在应用级别的根目录中添加agconnect-services.json文件,如下图所示:
instagram

agconnect-services.json的生成请参考《WINGSDK第三方后台配置.docx》中添加华为HMS后台配置章节。

3)在应用级别的build.gradle中,添加华为插件,如下:
apply plugin: ‘com.huawei.agconnect’
如果使用性能监测,则需要添加APMS开关代码,如下:
agcp{
enableAPMS true
}

4)在应用级别的build.gradle中,添加华为多语种支持,配置如下:
android {
defaultConfig {
//华为多语种设置,由CP配置
resConfigs “en”, “zh-rCN”, “pt”
}
}

支持语言参考:
https://developer.huawei.com/consumer/cn/doc/development/HMSCore-Guides-V5/support-language-0000001050040564-V5

5)在AndroidManifest.xml中添加配置:

11.2.华为HMS混淆配置

1)proguard-rules.pro文件配置

2)AndResGuard配置方式

说明:如果应用无相关混淆可不配置。

11.3.华为HMS权限配置

说明:SDK已经集成权限,如果危险权限需要CP动态申请权限。

12.leidian雷电模块配置

12.1.maven仓库配置

在项目目录下的build.gradle文件添加以下配置,否则无法正常拉取雷电依赖库:

12.2.清单配置

AndroidManifest.xml.xml中application标签下添加以下配置:

ld_app_id、ld_app_key、ld_channel_id、ld_sub_channel_id的具体值从运营处获取,,CHANNEL值为固定内容“Leidian”。

12.3.生命周期

在游戏页中添加生命周期处理方法:

13.nowgg模块配置

13.1 nowgg基本配置

AndroidManifest.xml.xml中application标签下添加以下配置:

CLIENT_ID 和 PAYMENT_ID 的具体值从运营处获取。CHANNEL值为固定内容“Nowgg”。

PaymentId 付款编号 获取参考:付款编号获取
ClientId 登录凭证 获取参考:登录凭证获取

13.2 最低API版本调整到24

minSdkVersion 24

13.3 登录按钮接入

进行Nowgg登录的按钮,其样式必须符合Nowgg平台要求,SDK已经封装好该按钮,可以直接在项目中的xml布局引入使用

按钮效果:

图片1

13.4 登录接口接入

使用登录接口接入,具体接口说明参考《使用接口登录》章节

注意事项:
1.应Nowgg平台要求,登录必须由用户点击才能发起,如果有存在自动调用登录逻辑,请务必移除。
2.因为nowgg登录需要用户授权权限,所以建议在授权成功后,尝试再次调用登录,具体参考以下示例

Leave a Reply