我将尝试使用Android支付。对于android-pay需要以下对象。
global.PaymentRequest = require('react-native-payments').PaymentRequest;
const METHOD_DATA = [
{
supportedMethods: ['android-pay'],
data: {
supportedNetworks: ['visa', 'mastercard', 'amex'],
currencyCode: 'USD',
environment: 'TEST', // defaults to production
paymentMethodTokenizationParameters: {
tokenizationType: 'NETWORK_TOKEN',
parameters: {
publicKey: 'BLGm3OTNgH8PJaHJBDLQ4Bpvi3aBW0U07c0W9lOCmnytX1YLQ56k31BsT7xaEPn0j3ZiN96pVooSVQ21VzuXLP4='
}
}
}
}];
const DETAILS = {
id: 'basic-example',
displayItems: [
{
label: 'Movie Ticket',
amount: {currency: 'USD', value: '15.00'}
}
],
total: {
label: 'Merchant Name',
amount: {currency: 'USD', value: '15.00'}
}
};
const paymentRequest = new PaymentRequest(METHOD_DATA, DETAILS);然后按下按钮呼叫:
paymentRequest.show();使用以下引用生成publicKey:#!/bin/bash
# Generate key.pem file:
openssl ecparam -name prime256v1 -genkey -noout -out key.pem
# Print public and private key in hex form:
openssl ec -in key.pem -text -noout
openssl pkcs8 -topk8 -inform PEM -outform PEM -in key.pem -nocrypt
#!/bin/bash
KEY="04:a9:9b:54:81:b0:67:0d:d3:50:84:e0:d4:d2:29:
a5:3a:d6:5c:21:ae:5e:dd:58:75:f0:27:63:44:e8:
a9:86:8d:cf:17:64:63:96:54:34:ed:16:37:c4:37:
e6:b7:27:ad:06:af:b0:07:d1:b5:66:0a:2a:85:c0:
71:9e:cc:39:54"
echo $KEY | xxd -r -p | base64公钥: BKmbVIGwZw3TUITg1NIppTrWXCGuXt1YdfAnY0ToqYaNzxdkY5ZUNO0WN8Q35rcnrQavsAfRtWYKKoXAcZ7MOVQ=
犯错误,如:
YellowBox.js:80 Possible Unhandled Promise Rejection (id: 1):
TypeError: Cannot read property 'show' of undefined
TypeError: Cannot read property 'show' of undefined发布于 2018-10-02 13:50:26
PublicKey中的问题:使用以下命令生成PublicKey并为我解决问题。
openssl ec -in key.pem -pubout -text -noout 2> /dev/null | grep "pub:" -A5 | sed 1d | xxd -r -p | base64 | paste -sd "\0" -https://stackoverflow.com/questions/52589299
复制相似问题