各位大神好,我是新手,最近接入微信分享,无论是分享成功还是取消,返回值一直都是BaseResp.ErrCode.ERR_OK,求指点!
//分享代码
api = WXAPIFactory.createWXAPI(ba.context, "wx6609****943a2223");
public void SendText(String text,boolean isTimeline) {
WXTextObject textObj = new WXTextObject();
textObj.text = text;
WXMediaMessage msg = new WXMediaMessage();
msg.mediaObject = textObj;
msg.description = text;
SendMessageToWX.Req req = new SendMessageToWX.Req();
req.transaction = buildTransaction("text");
req.message = msg;
req.scene = isTimeline ? SendMessageToWX.Req.WXSceneTimeline : SendMessageToWX.Req.WXSceneSession;
api.sendReq(req);
}
//回调代码
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
api = WXAPIFactory.createWXAPI(this, "wx6609****943a2223");
api.handleIntent(getIntent(), this);
}
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
setIntent(intent);
api.handleIntent(intent, this);
}
@Override
public void onResp(BaseResp resp) {
String result=null;
if (resp.getType() == ConstantsAPI.COMMAND_SENDMESSAGE_TO_WX) {
switch (resp.errCode) {
case BaseResp.ErrCode.ERR_OK:
result = "ok";
break;
case BaseResp.ErrCode.ERR_USER_CANCEL:
result = "cancel";
break;
case BaseResp.ErrCode.ERR_AUTH_DENIED:
result = "denied";
break;
default:
result = "other";
break;
}
Toast.makeText(this, "errCode=" + resp.errCode + ",Type=" + resp.getType(), Toast.LENGTH_LONG).show();
}
finish();
}
微信为了避免第三方强制用户滥用分享功能,把分享结果回调给取消了,就是正常逻辑下你获取不到是否分享成功。
微信分享成功 都是返回1 除非分享失败返回其他的
我是在官方下的Demo啊
应该是你使用的第三方包定义的,这个不是微信返回的。