RxReader / wechat_kit

Flutter版微信登录/分享/支付 SDK

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

微信发送请求到第三方应用时(例如由小程序打开应用)无法获取参数

chaosphinx opened this issue · comments

根据微信所提供 Android demo 中 WXEntryActivity 所示,微信发送请求应当在 onReq() 回调中监听,相关代码:

> // 微信发送请求到第三方应用时,会回调到该方法
> @Override
> public void onReq(BaseReq req) {
> 	switch (req.getType()) {
> 	case ConstantsAPI.COMMAND_GETMESSAGE_FROM_WX:
> 		goToGetMsg();		
> 		break;
> 	case ConstantsAPI.COMMAND_SHOWMESSAGE_FROM_WX:
> 		goToShowMsg((ShowMessageFromWX.Req) req);
> 		break;
> 	default:
> 		break;
> 	}
> }

其中,goToShowMsg() 用来获取传递给应用的参数:

private void goToShowMsg(ShowMessageFromWX.Req showReq) {
	WXMediaMessage wxMsg = showReq.message;		
	WXAppExtendObject obj = (WXAppExtendObject) wxMsg.mediaObject;
	
	StringBuffer msg = new StringBuffer(); // 组织一个待显示的消息内容
	msg.append("description: ");
	msg.append(wxMsg.description);
	msg.append("\n");
	msg.append("extInfo: ");
	msg.append(obj.extInfo);
	msg.append("\n");
	msg.append("filePath: ");
	msg.append(obj.filePath);
	
	Intent intent = new Intent(this, ShowFromWXActivity.class);
	intent.putExtra(Constants.ShowMsgActivity.STitle, wxMsg.title);
	intent.putExtra(Constants.ShowMsgActivity.SMessage, msg.toString());
	intent.putExtra(Constants.ShowMsgActivity.BAThumbData, wxMsg.thumbData);
	startActivity(intent);
	finish();
}

当前代码在此处未作处理,所以无法获取参数。希望作者可以完善此处,十分感激。