android 微信支付没回调,微信登陆,分享都有回调
微信支付成功后 WXEntryActivity的onCreate 都没有进去,咋整啊?
微信登陆,分享回调都正常啊,配置是没问题的吧。
用的最新的sdk
implementation 'com.tencent.mm.opensdk:wechat-sdk-android-with-mta:5.3.1'
public class WXEntryActivity extends Activity implements IWXAPIEventHandler {
private IWXAPI api;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
Log.e("ssss---onCreate--1", Config.APP_ID);
super.onCreate(savedInstanceState);
Log.e("ssss---onCreate", Config.APP_ID);
api = WXAPIFactory.createWXAPI(this, null);
api.registerApp(Config.APP_ID);
//不写没有回调
api.handleIntent(getIntent(), this);
}
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
Log.e("ssss-------", "onNewIntent");
setIntent(intent);
api.handleIntent(intent, this);
}
@Override
public void onReq(BaseReq baseReq) {
Log.e("ssss---1", "req" + baseReq.openId);
}
@Override
public void onResp(BaseResp baseResp) {
Log.e("ssss---2", "onResp");
switch (baseResp.errCode) {
case BaseResp.ErrCode.ERR_OK:
if (baseResp.getType() == ConstantsAPI.COMMAND_PAY_BY_WX) {
ToastUtil.showShort(WXEntryActivity.this, "支付成功");
Log.e("ssss", "支付成功11");
} else if (baseResp.getType() == 2) {
//分享
ToastUtil.showShort(WXEntryActivity.this, "分享成功");
Log.e("ssss", "分享成功11");
} else if (baseResp.getType() == 1) {
ToastUtil.showShort(WXEntryActivity.this, "授权成功");
//登录
String code = ((SendAuth.Resp) baseResp).code;
Log.e("ssss", "授权成功11"+code );
}
break;
case BaseResp.ErrCode.ERR_USER_CANCEL:
//用户取消
if (baseResp.getType() == ConstantsAPI.COMMAND_PAY_BY_WX) {
ToastUtil.showShort(WXEntryActivity.this, "取消支付");
} else if (baseResp.getType() == ConstantsAPI.COMMAND_SENDMESSAGE_TO_WX) {
ToastUtil.showShort(WXEntryActivity.this, "取消分享");
}
break;
case BaseResp.ErrCode.ERR_AUTH_DENIED:
break;
case BaseResp.ErrCode.ERR_UNSUPPORT:
break;
}
}
答案:
https://github.com/yorkie/react-native-wechat/issues/152#issuecomment-1127581996 <application android:name="com.xyz.abcMainApplication" android:allowBackup="true" android:icon="@drawable/ic_launcher_foreground" android:label="@string/app_name" android:usesCleartextTraffic="true" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/Theme.Fuckyou" > <activity android:launchMode="singleTask" android:exported="true" android:screenOrientation="portrait" android:theme="@style/HiddenTitleTheme" android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".wxapi.WXEntryActivity" android:exported="true" android:launchMode="singleTask" android:screenOrientation="portrait" android:theme="@android:style/Theme.Translucent.NoTitleBar"> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity> <activity android:name=".wxapi.WXPayEntryActivity" android:exported="true" android:launchMode="singleTask" android:screenOrientation="portrait" android:theme="@android:style/Theme.Translucent.NoTitleBar"> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity> </application>
您好,按照以下几点检查,
1,检查回调url是否正确,回调url是不能带参数的,请注意。
2,是否有按照文档要求正确返回参数<xml><return_code><![CDATA[SUCCESS]]></return_code><return_msg><![CDATA[OK]]></return_msg></xml>给到微信。
3,是否开启了防火墙把微信的通知给屏蔽了。
4,是否响应超时。
5,是否正确使用post请求。
6,回调url修改成http协议试试。
回答的什么?我app里支付成功了,WXEntryActivity 没有回调啊
啊
啊
啊
啊
啊
啊
WXEntryActivity 配置正确的吧,因为微信登陆,分享都有回调
您好,我以为您说的是回调出错呢,WXEntryActivity 没有回调应该是代码上的问题,您可以参考一下官方demo,这个需要开发者自己开发。