DApp server or client should query the user's ReserveKey from MYKEY SmartContract data to verify the signature, see detail in KEYS in MYKEY.
SignRequest signRequest =newSignRequest()// chain could be EOS, and ETH. EOS is the default value..setChain(ChainCons.EOS)// message should be a hex string start with 0x.setMessage("Messages that need to be signed, [it could be random which come from dapp server]")// DApp CallbackUrl// param:{"protocol": "", "version": "", "message": "", "sign": "", "ref": "", "account": ""}// return: same as SimpleWallet {"code": [0-2], "message": ""}.setCallBackUrl(Config.DAPP_CALLBACK_URL);MYKEYSdk.getInstance().sign(signRequest,newMYKEYWalletCallback() { @OverridepublicvoidonSuccess(String dataJson) {// dataJson:{"sign":""}LogUtil.e(TAG,"onSuccess data:"+ dataJson);Toast.makeText(activity,"success",Toast.LENGTH_LONG).show(); } @OverridepublicvoidonError(String payloadJson) {// payloadJson: {"errorCode":,"errorMsg":""}LogUtil.e(TAG,"onError payloadJson: "+ payloadJson);Toast.makeText(activity,"error, payloadJson: "+ payloadJson,Toast.LENGTH_LONG).show(); } @OverridepublicvoidonCancel() {LogUtil.e(TAG,"cancel");Toast.makeText(activity,"cancelled",Toast.LENGTH_LONG).show(); }});