使用社区推荐的 https://www.npmjs.com/package/react-native-yunpeng-alipay 插件, 按照文档配置就行了, 配置完毕, 使用 react-native run-android 启动项目, 可能会报错, 报错信息是什么 override 无法覆盖 (具体忘了), 这时候找到报错那个文件, 删除掉那一行的 @override 就行了.
调用方法:
- import Alipay from 'react-native-yunpeng-alipay';
- Alipay.pay("signed pay info string").then(function(data){//pay 方法的参数就是后台给你的付费签名信息.
- console.log(data);
- }, function (err) {
- console.log(err);
- });
如果你的手机有支付宝的话, 此时就已经可以调用起支付宝了.(^^)
如果想实现没有支付宝 APP 就打开 h5 页面进行支付的功能, 看支付宝的官方文档 https://docs.open.alipay.com/204/105296/ , 将以下的权限加到 AndroidManifest.xml:
- <uses-permission android:name="android.permission.INTERNET" />
- <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
- <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
- <uses-permission android:name="android.permission.READ_PHONE_STATE" />
- <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
并且将以下代码加到 AndroidManifest.xml 里面, 注意以下代码必须是 <application> 的子元素:
<activity
android:name="com.alipay.sdk.app.H5PayActivity"
android:configChanges="orientation|keyboardHidden|navigation|screenSize"
android:exported="false"
android:screenOrientation="behind"
android:windowSoftInputMode="adjustResize|stateHidden">
</activity>
<activity
android:name="com.alipay.sdk.app.H5AuthActivity"
android:configChanges="orientation|keyboardHidden|navigation"
android:exported="false"
android:screenOrientation="behind"
android:windowSoftInputMode="adjustResize|stateHidden">
</activity>
然后就大功告成了!!!
来源: https://juejin.im/post/5b02256251882567203458f0