uni-app paypal安卓端无法支付
uni-app paypal安卓端无法支付
操作步骤:
app端发起paypal支付,应用内弹出输入邮箱号弹窗,输入后下一步进入到默认浏览器,输入账户密码点击下一步,在同意政策页面持续转圈加载
预期结果:
可以正常支付
实际结果:
目前无法支付
bug描述:
项目集成paypal支付,沙盒模式下ios端可以正常支付,安卓端跳入网页,输入账户密码后一直在同意政策页面转圈,无法进行下一步
| 信息类别 | 详细信息 |
|---|---|
| 产品分类 | uniapp/App |
| PC开发环境操作系统 | Windows |
| PC开发环境操作系统版本号 | 10 |
| HBuilderX类型 | 正式 |
| HBuilderX版本号 | 3.8.12 |
| 手机系统 | Android |
| 手机系统版本号 | Android 13 |
| 手机厂商 | 小米 |
| 手机机型 | 红米note11 |
| 页面类型 | vue |
| vue版本 | vue2 |
| 打包方式 | 云端 |
| 项目创建方式 | HBuilderX |

更多关于uni-app paypal安卓端无法支付的实战教程也可以访问 https://www.itying.com/category-93-b0.html
解决毛线啊,根本没人理
请问 uni.getProvider返回的provider中只有微信和支付宝[“alipay”,“wxpay”],没有paypal导致拉起PayPal失败报错"errMsg": “requestPayment:fail service not found”
这个咋解决啊
哥们好好看看文档啊,你配置文件没勾吧
回复 万能的李大少: 老哥帮忙看看,我勾选了的
这里勾选了的
你是直接运行的hbuilderx基座吧,得打包成自定义基座
回复 万能的李大少: 谢谢 老哥 我去试试
回复 万能的李大少: 自定义调试基座可以了,有paypal支付了,感谢!不过APP闪一下后没拉起paypal,老哥能再帮我看下么, 抱拳.jpg
李老哥,再帮我看下,执行到 uni.requestPayment 后自定义调试基座APP闪一下回到桌面了,没拉起paypal
uni.getProvider({
service: ‘payment’,
success: function(res) {
console.log(“获取服务提供商res:”, res, res.provider)
if (~res.provider.indexOf(provider)) {
console.log(“准备拉起支付 provider:”, provider, orderInfo)
uni.requestPayment({
“provider”: provider,
“orderInfo”: orderInfo,
success: function(res) {
console.log(“支付成功res:”, res)
},
fail: function(err) {
console.log("拉起支付失败:", res);
}
});<br>不是哥们,你先好好看看文档吧,我觉得你没怎么看文档,这都是基础的东西你复制一下也不会出错啊,.indexOf是在检查集合里是否包含支付方式,provider这个参数应该是”paypal“,直接传个provider是什么鬼
回复 万能的李大少: 好的 谢谢,我的支付需要支持支付宝和paypal这里只是动态传的值,支付宝正常,现在拉起PayPal拉不起来,我再看看,谢了
年底了 这个问题有人知道怎么处理了吗?
各种方法都没解决,最后还是用的链接跳转浏览器,支付完再调回来方式整的…
现在android还是打开了webview进行支付,能不能在应用内直接拉起paypal的支付弹窗进行支付
在 uni-app 中集成 PayPal 支付时,如果安卓端无法正常支付,可能是由于以下原因导致的。以下是一些常见的排查步骤和解决方案:
1. 检查 PayPal SDK 配置
- 确保你在
manifest.json中正确配置了 PayPal 的 SDK。 - 检查
appid、clientId和environment是否正确。 - 示例:
"paypal": { "appid": "your-app-id", "clientId": "your-client-id", }
2. 检查网络环境
- PayPal 的 SDK 需要稳定的网络环境。确保设备可以正常访问 PayPal 的服务器。
- 如果是测试环境,确保使用的是
sandbox模式。 - 如果是生产环境,确保使用的是
live模式。
3. 检查回调 URL
- 确保 PayPal 支付成功后的回调 URL 配置正确。
- 在 PayPal 开发者后台检查回调 URL 是否与 uni-app 中的配置一致。
4. 检查 PayPal SDK 版本
- 确保使用的 PayPal SDK 版本是最新的。
- 如果使用的是第三方插件,检查插件是否支持最新的 PayPal SDK。
5. 调试日志
- 在代码中添加调试日志,检查支付流程中是否有错误信息。
- 示例:
uni.requestPayment({ provider: 'paypal', orderInfo: orderInfo, success: function(res) { console.log('Payment success:', res); }, fail: function(err) { console.log('Payment failed:', err); } });
6. 检查权限
- 确保在安卓设备上已经授予了网络权限。
- 在
AndroidManifest.xml中添加以下权限:<uses-permission android:name="android.permission.INTERNET" />
7. 测试设备
- 在某些设备上,可能由于系统或浏览器兼容性问题导致无法支付。
- 尝试在其他设备或模拟器上测试。
8. 检查 PayPal 账户
- 确保 PayPal 沙盒账户或生产账户配置正确。
- 检查账户是否有足够的余额或是否被限制。
9. 使用原生插件
- 如果 uni-app 的 PayPal 插件无法满足需求,可以尝试使用原生开发(如 Android Studio)集成 PayPal SDK,然后通过 uni-app 的原生插件机制调用。
10. 联系 PayPal 支持
- 如果以上方法都无法解决问题,可以联系 PayPal 官方支持,提供详细的错误日志和复现步骤。
示例代码
以下是一个简单的 uni-app PayPal 支付示例:
uni.requestPayment({
provider: 'paypal',
orderInfo: {
// 订单信息
amount: '10.00',
currency: 'USD',
description: 'Test Payment'
},
success: function(res) {
console.log('Payment success:', res);
},
fail: function(err) {
console.log('Payment failed:', err);
}
});


