解决:接入微信支付,调不起回调界面WXPayEntryActivity

最近开发公司SDK需要接入微信支付功能,于是上了微信开发者平台,下载微信的SDK,按着文档接入。当我进行微信支付,需要调起微信客户端,但是却没有。而微信回调WXPayEntryActivity也没有被回调起来。

这就很奇怪了,看回文档,说要把WXPayEntryActivity放到wxapi包下,而且在Manifest的路径配置还必须是

<activity android:name=".wxapi.WXPayEntryActivity" android:exported="true"></activity>

但是我把以上的要求都配置好了。还是调不起来WXPayEntryActivity,而且还报了classNotFound的异常

在看看我的项目配置


如果仔细看项目的报错的话,你就可以发现问题了。因为我是在SDK里面接入的微信支付,却在demo里面调用微信支付和在Manifest文件配置路径。这就导致了微信SDK找不到了WXPayEntryActivity,因为WXPayEntryActivity的路径根本不是这个,可以看到下图

要怎么修改呢?我们可以根据报错提示,把包名改一下,改为下图:

在鸿蒙系统中接入微信支付,主要流程与安卓系统类似。开发者可以使用微信官方提供的 SDK 来实现支付功能。以下是基本的接入步骤: 1. **注册微信开放平台账号并创建应用** 在 [微信开放平台](https://open.weixin.qq.com/) 注册账号,并创建移动应用,获取 `AppID` 和 `AppSecret`。 2. **下载微信支付 SDK** 从微信开放平台下载适用于 HarmonyOS 的微信支付 SDK 或兼容 Android 的 SDK(目前大多数鸿蒙设备兼容安卓应用)。 3. **配置开发环境** 将 SDK 导入项目中,并在 `build.gradle` 文件中添加依赖项(如果适用)。 4. **初始化微信支付接口** 在代码中初始化微信支付对象: ```java IWXAPI wxapi = WXAPIFactory.createWXAPI(context, appId); wxapi.registerApp(appId); ``` 5. **起支付界面** 构造支付参数并用支付接口: ```java PayReq request = new PayReq(); request.appId = "你的AppID"; request.partnerId = "商户ID"; request.prepayId = "预支付交易单号"; request.packageValue = "Sign=WXPay"; request.nonceStr = "随机字符串"; request.timeStamp = "时间戳"; request.sign = "签名"; // 根据规则生成 wxapi.sendReq(request); ``` 6. **处理支付结果回调** 实现 `IWXAPIEventHandler` 接口来接收微信支付的结果: ```java public class WXPayEntryActivity extends Activity implements IWXAPIEventHandler { @Override public void onResp(BaseResp resp) { if (resp.getType() == ConstantsAPI.COMMAND_PAY_BY_WX) { switch (resp.errCode) { case BaseResp.ErrCode.ERR_OK: // 支付成功 break; case BaseResp.ErrCode.ERR_USER_CANCEL: // 用户取消 break; default: // 其他错误 break; } } } } ``` 7. **服务器端验证支付结果** 微信支付完成后,建议通过自己的服务器向微信服务器查询支付状态,确保支付的安全性。 ---
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阮小鬼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值