android对接微信支付功能,支付完成后finish显示的是微信聊天界面不是自己的App界面怎么解决呢?

关注让 “紫雾凌寒” 来帮你回答,本回答结合 DeepSeek
如果还有问题,请评论或点击头像私信,如果有帮助到您, 请关注、采纳、点赞
IWXAPIEventHandler接口的onResp方法回调结果。在这个方法中,你需要根据支付结果进行相应处理,并正确返回自己的App界面。public class WXPayEntryActivity extends Activity implements IWXAPIEventHandler {
private static final int SDK_PAY_FLAG = 1;
private IWXAPI api;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.pay_result);
api = WXAPIFactory.createWXAPI(this, Constants.APP_ID);
api.handleIntent(getIntent(), this);
}
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
setIntent(intent);
api.handleIntent(intent, this);
}
@Override
public void onReq(BaseReq req) {
}
@Override
public void onResp(BaseResp resp) {
if (resp.getType() == ConstantsAPI.COMMAND_PAY_BY_WX) {
PayResp payResp = (PayResp) resp;
switch (payResp.errCode) {
case 0:
// 支付成功,这里可以进行自己的业务逻辑处理,比如更新订单状态等
// 然后返回自己的App界面
Intent intent = new Intent(this, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
finish();
break;
case -1:
// 支付失败
break;
case -2:
// 用户取消支付
break;
}
}
}
}
AndroidManifest.xml中正确配置微信支付相关的Activity和参数。<activity
android:name=".WXPayEntryActivity"
android:exported="true"
android:theme="@android:style/Theme.Translucent.NoTitleBar">
<intent-filter>
<action android:name="com.tencent.mm.opensdk.intent.ACTION_PAY_BY_WX"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
onResp方法中遗漏一些必要的业务逻辑处理或者返回逻辑写错。希望以上解答对您有所帮助。如果您有任何疑问,欢迎在评论区提出。