top-block-game-cocos-sdk/assets/btn_click.ts

125 lines
3.1 KiB
TypeScript

import { _decorator, Component, Node, native,sys } from "cc";
const { ccclass, property } = _decorator;
import { createRequestData } from "./WalletSdkUtils";
@ccclass("btn_click")
export class btn_click extends Component {
public address: string;
start() {
window["setAddress"] = this.setAddress.bind(this);
native.bridge.onNative = (add: string): void => {
console.log(`触发了回调!回调内容:${add}`)
this.setAddress(add)
return;
}
}
update(deltaTime: number) { }
/**
* btn_onclick
*/
public btn_onclick() {
console.info("点击了按钮");
// @ts-ignore
var ret = native.reflection.callStaticMethod("JSHandleClass", "init");
}
/**
* 启动连接
*/
public btn_onclick1() {
console.info("点击了按钮");
if (sys.platform == sys.Platform.ANDROID) {
var ret = native.reflection.callStaticMethod(
'com/cocos/game/AppActivity',
"initWallet",
"()V"
);
} else if (sys.platform == sys.Platform.IOS) {
var ret = native.reflection.callStaticMethod(
"JSHandleClass",
"walleConnectFun:",
"imtokenv2"
);
}
}
//发送交易
public async btn_onclick2() {
console.info("点击了按钮");
var temp = createRequestData(
this.address,
"0x62cC9fd83d48eFCe313695bA6a3245bCCC7f196e",
"Mint",
"0x4eDE150f62dc21aDC0F39a2A02c95A5Cc1FD7B2C",
);
if (sys.platform == sys.Platform.ANDROID) {
var ret = native.reflection.callStaticMethod(
'com/cocos/game/AppActivity',
'sendCustomMessage',
'(Ljava/lang/String;)Ljava/lang/String;',
JSON.stringify({
method: 'eth_sendTransaction',
params: [
temp
],
})
);
} else if (sys.platform == sys.Platform.IOS) {
var jsonObj = {
"method": "eth_sendTransaction",
"params": JSON.stringify(temp)
};
var jsonStr = JSON.stringify(jsonObj);
///0x2eB535d54382eA5CED9183899916A9d39e093877
var ret = native.reflection.callStaticMethod(
"JSHandleClass",
"sendContractFun:",
jsonStr
);
}
}
public async btn_onclick3() {
// console.info("点击了按钮");
// var temp = createRequestData(
// "0x4eDE150f62dc21aDC0F39a2A02c95A5Cc1FD7B2C",
// "0x62cC9fd83d48eFCe313695bA6a3245bCCC7f196e",
// "",
// "Mint",
// "0x4eDE150f62dc21aDC0F39a2A02c95A5Cc1FD7B2C",
// );
// var jsonObj = {
// "method": "eth_sendTransaction",
// "params": JSON.stringify(temp)
// };
var jsonObj = {
"method": "personal_sign",
"params": [
"0x49206861766520313030e282ac",
"0x2eB535d54382eA5CED9183899916A9d39e093877"
]
};
var jsonStr = JSON.stringify(jsonObj);
///0x2eB535d54382eA5CED9183899916A9d39e093877
var ret = native.reflection.callStaticMethod(
"JSHandleClass",
"sendMessageFun:",
jsonStr
);
}
public setAddress(add: string) {
console.log(`触发了回调!!回调内容:${add}`)
this.address = add;
}
}