1
0
Code Issues Pull Requests Packages Projects Releases Wiki Activity GitHub Gitee
react-native-alipay/index.js

71 lines
1.8 KiB
JavaScript
Raw Permalink Normal View History

2020-07-07 20:10:43 +08:00
import { NativeModules, Platform } from 'react-native';
2020-07-07 17:44:10 +08:00
2022-08-06 16:25:42 +08:00
const LINKING_ERROR =
`The package '@uiw/react-native-alipay' doesn't seem to be linked. Make sure: \n\n` +
Platform.select({ ios: "- You have run 'pod install'\n", default: '' }) +
'- You rebuilt the app after installing the package\n' +
'- You are not using Expo managed workflow\n';
console.log(':::NativeModules:::', NativeModules.RNAlipay)
const RNAlipay = NativeModules.RNAlipay ? NativeModules.RNAlipay : new Proxy(
{},
{
get() {
throw new Error(LINKING_ERROR);
},
}
);
// console.log('>RNAlipay1111>', RNAlipay.setAlipayScheme)
// console.log('>>NativeModules.RNAlipay:', NativeModules.RNAlipay)
2020-07-07 20:10:43 +08:00
export default class Alipay {
/**
* 支付
2020-07-07 20:10:43 +08:00
* @param orderInfo 支付详情
* @returns result 支付宝回调结果 https://docs.open.alipay.com/204/105301
2020-07-07 20:10:43 +08:00
*/
static alipay(orderInfo) {
return NativeModules.RNAlipay.alipay(orderInfo);
2020-07-07 20:10:43 +08:00
}
2020-07-13 22:01:03 +08:00
/**
* 快速登录授权
* @param authInfoStr 验证详情
* @returns result 支付宝回调结果 详情见 https://opendocs.alipay.com/open/218/105325
*/
static authInfo(authInfoStr) {
return NativeModules.RNAlipay.authInfo(authInfoStr)
}
/**
* 获取当前版本号
* @return 当前版本字符串
2020-07-13 22:01:03 +08:00
*/
static getVersion() {
return NativeModules.RNAlipay.getVersion()
2020-07-13 22:01:03 +08:00
}
2020-07-07 20:10:43 +08:00
/**
* 设置支付宝跳转Scheme iOS
* @param scheme
2020-07-23 23:53:36 +08:00
* @platform ios
2020-07-07 20:10:43 +08:00
*/
static setAlipayScheme(scheme) {
if (Platform.OS === 'ios') {
NativeModules.RNAlipay.setAlipayScheme(scheme);
2020-07-07 20:10:43 +08:00
}
}
2020-07-08 10:21:49 +08:00
/**
* 设置支付宝沙箱环境 Android
* @param isSandBox
2020-07-23 23:53:36 +08:00
* @platform android
2020-07-08 10:21:49 +08:00
*/
2020-07-09 18:56:50 +08:00
static setAlipaySandbox(isSandBox) {
2020-07-08 10:21:49 +08:00
if (Platform.OS === 'android') {
NativeModules.RNAlipay.setAlipaySandbox(isSandBox);
2020-07-08 10:21:49 +08:00
}
}
2020-07-07 20:10:43 +08:00
}