JS功能扩展
JSBridge为MYKEY应用中心内嵌的浏览器环境中默认支持的JS注入库,其支持Scatter协议,也支持web3协议。
为了方便控制MYKEY应用中心浏览器,MYKEY还增加了以下方法:
方法
描述
isMYKEY
检查当前钱包是否为MYKEY
关闭应用窗口回到MYKEY
打开全屏
关闭全屏
禁止物理返回按钮(Android专属)
允许物理返回按钮(Android专属)
获取MYKEY账户信息
获取客户端部分配置
发送交易
sign
申请MYKEY签名
setTitle
设置应用顶部标题
显示loading动画
取消loading动画
对方法进行序列化

检查当前钱包是否为MYKEY

1
window.ethereum.isMYKEY
Copied!

关闭窗口

关闭应用窗口回到MYKEY。
1
window.MyKey.Browser.closeWindow
Copied!

打开全屏

打开全屏
1
window.MyKey.Browser.openFullScreen
Copied!

参数

参数名
类型
描述
isLandscape
boolean
true(横屏)
fasle(竖屏)

关闭全屏

关闭全屏。
1
window.MyKey.Browser.closeFullScreen
Copied!

禁止物理返回

禁止物理返回按钮,限Android
1
window.MyKey.Browser.forbidPhysicalBack
Copied!

允许物理返回

允许物理返回按钮,限Android
1
window.MyKey.Browser.allowPhysicalBack
Copied!

获取MYKEY账户信息

获取MYKEY账户信息
1
window.MyKey.Browser.getAccountInfo
Copied!

参数

参数名
类型
描述
openChain
string
true|fasle
true: 如果没有链会打开创建页面

返回值

1
返回格式:Promise
2
{
3
"data": {
4
"accountName": "", //MYKEY内设置的昵称
5
"chainInfoList": ["account": "", "chain": ""],
6
"id": "", //MYKEY唯一ID
7
"operationKeys": ["","",""], //三把操作权限的公钥
8
"xpubOperationKeys": ["","",""] //三把操作秘钥公钥Xpub形式
9
},
10
"errorCode": 0
11
}
Copied!

获取客户端部分配置

获取客户端部分配置
1
window.MyKey.Browser.getClientConfig
Copied!

返回值

1
返回方式:Promise
2
{
3
"data": {
4
"currency": "CNY",
5
"locale": "zh-CN",
6
"maxKycBindAccount": 1,
7
"regioin": "CN",
8
"userAgent": "", //包含 channel:MYKEY
9
"recaptchaUserKey":"" //MYKEY红包用到
10
},
11
"errorCode": 0
12
}
Copied!

发送交易

发送交易
1
window.MyKey.Browser.sendTransaction(transaction)
Copied!

参数

参数名
类型
描述
transaction
string
指定链以及交易的actions

返回值

1
返回方式:Promise
2
result: {
3
"errorCode": 0,
4
"errorMsg": "",
5
"data": {
6
"transactionId": "",
7
"signature": ""
8
}
9
}
Copied!

举例:

EOS链上购买内存。
1
window.MyKey.Browser.sendTransaction('{"actions":[{"account":"eosio","name":"buyram","data":{"payer":"","receiver":"","quant":"1.0000 EOS"}}],"chain":"EOS","extra":{"key":"value"}}')
Copied!
新增的extra字段,生效版本为:Android:2.5.0,IOS:2.5.0

签名

申请MYKEY签名
1
window.MyKey.Browser.sign(message)
Copied!

参数

参数名
类型
描述
message
string
待签名的数据

返回值

1
返回格式:Promise
2
result: {
3
"errorCode": 0,
4
"errorMsg": "",
5
"data": {
6
"signature": ""
7
}
8
}
Copied!

获取交易进度

1
window.MyKey.Browser.getTransactionProgress
Copied!

参数

参数名
类型
描述
chain
string
EOS|ETH
transactionId
string
blockNum
int
当前交易的blockNum,非必填

返回值

1
返回格式:Promise
2
result: {
3
"errorCode": 0,
4
"errorMsg": "",
5
"data": {
6
"percent": , //[0 - 100]
7
"blockNum": //[当前交易的blockNum]
8
}
9
}
Copied!
生效版本:Android:2.5.0,iOS:2.5.0

设置应用顶部标题

设置应用顶部标题
1
window.MyKey.Browser.setTitle(title)
Copied!

参数

参数名
类型
描述
title
string
标题内容

显示loading动画

显示loading动画
1
window.MyKey.Browser.showLoading
Copied!

取消loading动画

取消loading动画
1
window.MyKey.Browser.hiddenLoading
Copied!

对方法进行序列化

对方法进行序列化
1
window.MyKey.Browser.encodeFunctionCall(abi, method, param)
Copied!

参数

参数名
类型
描述
abi
string
该方法的abi描述,字符串类型,eg:"[{\"constant\":false,\"inputs\":[
{\"name\":\"_to\",\"type\":\"address\"},{\"name\":\"_value\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,
\"stateMutability\":\"nonpayable\",\"type\":\"function\"}]"
method
string
方法名, 字符串类型,eg:transfer。
param
string
参数,eg:{_to:"0xc4ED1B3f31acadbE3c14B20fA766B6C4B1FAB208",
_value:"20000000000000000000"}

返回值

1
返回方式:Promise
2
result: {
3
"errorCode": 0,
4
"errorMsg": "",
5
"data": "" //[序列化后的值]
6
}
Copied!
Last modified 1yr ago