提交 f61b5375 作者: 张峰

添加demo和文档

上级 64f29bf4
......@@ -7,7 +7,6 @@ import {
AppUtil,
LogUtil,
NetWorkAdManager,
AdsKitManager,
} from 'zwgame';
import { window } from '@kit.ArkUI';
......@@ -24,7 +23,6 @@ export struct SecondMainPage {
@Local message: string = 'Hello World';
// 控制弹框显示的状态变量
@Local isPopupShown: boolean = false;
@Local shoudleShowWindow: boolean = false
@Local server_id:string = ''
@Local cp_role_id:string = ''
@Local deviceInfo:string = ''
......@@ -41,6 +39,8 @@ export struct SecondMainPage {
} catch (err) {
console.error('设置横屏失败: ' + JSON.stringify(err));
}
// 悬浮球的显隐由 SuspensionV2 组件自己根据登录态管理,宿主无需关心。
}
build() {
......@@ -51,9 +51,8 @@ export struct SecondMainPage {
SDKToolsManager.getInstance()
.showSdkLogin(this.getUIContext(), '熊猫大作战游戏账号登录', $r('app.media.ic_float'), {
getBooleanData: (isShowFloatBall: boolean): void => {
this.shoudleShowWindow = isShowFloatBall
const info = UserSDKManager.getInstance().getUserLoginInfo()
LogUtil.info('zfcs 登录成功: ' + this.shoudleShowWindow +', '+ info )
LogUtil.info('zfcs 登录成功: ' + isShowFloatBall +', '+ info )
}
}, {
onPanelClosed: (code: number, reason: string): void => {
......@@ -62,6 +61,9 @@ export struct SecondMainPage {
}
})
}).width(150).height(55).margin({ top: 15 })
Button('切换账号').onClick(() => {
SDKToolsManager.getInstance().switchAccount()
}).width(150).height(55).margin({ top: 15 })
Button('展示广告').onClick(() => {
NetWorkAdManager.getInstance().getAdvertiser(this.getUIContext().getHostContext() as common.UIAbilityContext, '333333',
{
......@@ -93,7 +95,6 @@ export struct SecondMainPage {
LogUtil.info('zfcs', info);
}
})
// AdsKitManager.getInstance().loadAds(this.getUIContext().getHostContext() as common.UIAbilityContext)
}).width(150).height(55).margin({ top: 15 })
Row(){
TextInput({text: this.amount,placeholder:'请输入总金额'}).onChange((value:string)=>{
......@@ -107,8 +108,9 @@ export struct SecondMainPage {
}).width(100).layoutWeight(1)
}.width('90%').height(95).margin({ top: 15 })
Button('华为支付').onClick(()=>{
let jsonStr = '{"role":{"event":"other","server_id":"1","role_name":"主宰传奇","cp_role_id":"2","server_name":"主宰服","role_level":"83","role_vip":"0"},"order":{"cp_order_id":"1770709001026","amount":"100","product_price":"100","product_id":"com.product.test03","product_cnt":"1","product_name":"1元档充值","product_desc":"商品","ext":"测试数据"}}'
AppUtils.createOrderWithHuaWei(jsonStr, '1', '2', this.amount,this.product_price,this.product_cnt,'com.product.test03',
let jsonStr = '{"role":{"event":"other","server_id":"1","role_name":"主宰传奇","cp_role_id":"1","server_name":"主宰服","role_level":"83","role_vip":"0"},"order":{"cp_order_id":"1770709001026","amount":"98","product_price":"98","product_id":"com.xmdzzharmony.huawei5110","product_cnt":"1","product_name":"1元档充值","product_desc":"商品","ext":"测试数据"}}';
AppUtils.createOrderWithHuaWei(jsonStr, '1', '2', this.amount,this.product_price,this.product_cnt,
'com.xmdzzharmony.huawei5110',
{
Success: (msg: Object): void => {
LogUtil.info('zfcs 支付成功: ' + msg.toString())
......@@ -126,8 +128,8 @@ export struct SecondMainPage {
let jsonStr = '{"role":{"event":"other","server_id":"1","role_name":"主宰传奇","cp_role_id":"2","server_name":"主宰服","role_level":"83","role_vip":"0"},"order":{"cp_order_id":"1770709001026","amount":"100","product_price":"100","product_id":"101","product_cnt":"1","product_name":"1元档充值","product_desc":"商品","ext":"测试数据"}}'
AppUtils.createOrder(jsonStr, '1', '2')
}).width(150).height(55).margin({ top: 15 })
Button(this.shoudleShowWindow ? '隐藏悬浮框' : '显示悬浮框').onClick(() => {
this.shoudleShowWindow = !this.shoudleShowWindow
Button('显示/隐藏悬浮框').onClick(() => {
// 调试按钮:演示用,实际显隐由 SuspensionV2 内部根据登录态自管
}).width(150).height(55).margin({ top: 15 })
Row(){
TextInput({text: this.server_id,placeholder:'请输入server_id'}).onChange((value:string)=>{
......@@ -155,8 +157,8 @@ export struct SecondMainPage {
}.width('100%').height('100%')
// 悬浮按钮
SuspensionV2().visibility(this.shoudleShowWindow ? Visibility.Visible : Visibility.None).id('trigger_text_privacy')
// 悬浮按钮 —— 显隐由组件内部根据 SDK 登录态自管,宿主不需要传 visibility
SuspensionV2().id('trigger_text_privacy')
.hitTestBehavior(HitTestMode.None)// 重要用于点击事件穿透,不然无法点击Web内容
.height('100%')
.width('100%').zIndex(100)
......
# 国内游戏鸿蒙客户端sdk对接文档
# 国内游戏鸿蒙客户端sdk对接文档
......@@ -143,13 +143,13 @@ SDKToolsManager.getInstance().aboutToAppear('20248','com.xmdzzharmony.huawei','1
备注:
| 参数 | 说明 |
| --- | ---------------------------------------------------------------------------------------------------------------- |
| 参数1 | context,值传this.getUIContext() |
| 参数2 | 华为联合登录面板显示游戏账号登录的显示名称,例如“'熊猫大作战游戏账号登录“,”'种花游戏账号登录“ |
| 参数3 | $r('app.media.ic_float'):游戏的图标,图标大小不能超过35kb |
| 参数4 | getBooleanData: (isShowFloatBall: boolean) => void  : isShowFloatBall值为true代表玩家登录成功,显示sdk悬浮球,false:玩家登录失败,不显示悬浮球 |
| 参数5 | onPanelClosed?: (code: number, reason: string) => void;  : 华为联合登录面板关闭时回调 |
| 参数 | 说明 |
| --- | ------------------------------------------------------------------------------------------------ |
| 参数1 | context,值传this.getUIContext() |
| 参数2 | 华为联合登录面板显示游戏账号登录的显示名称,例如“'熊猫大作战游戏账号登录“,”'种花游戏账号登录“ |
| 参数3 | $r('app.media.ic_float'):游戏的图标,图标大小不能超过35kb |
| 参数4 | getBooleanData: (isShowFloatBall: boolean) => void  : isShowFloatBall值为true代表玩家登录成功,false:玩家登录失败 |
| 参数5 | onPanelClosed?: (code: number, reason: string) => void;  : 华为联合登录面板关闭时回调 |
8.拉起支付的方法:
......@@ -250,10 +250,10 @@ const jsonStr = '{"cp_account":"cp_account","role":{"event":"create","server_id"
| recharge | 角色充值 |
| other | 其他 |
10.悬浮按钮的集成方法:宿主app页面的build()根节点必须为stack,加入如下代码,可见性由sdk暴露标记值,需宿主app接收该标记
10.悬浮按钮的集成方法:宿主app页面的build()根节点必须为stack,加入如下代码:
```
SuspensionV2().visibility(this.shoudleShowWindow ? Visibility.Visible : Visibility.None).id('trigger_text_privacy')
SuspensionV2().id('trigger_text_privacy')
.hitTestBehavior(HitTestMode.None)
.height('100%')
.width('100%')
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论