这是我第一次在项目中使用react-native-iap。我安装了库,没有任何问题。我有几个问题。
import * as RNIap from 'react-native-iap';
const itemSkus = Platform.select({
ios: ['stackoverflow_ex'],
android: ['stackoverflow_ex']
});
export default class Buy extends Component {
state= {
products:[],
count:0
}
async componentDidMount() {
try {
const products: Product[] = await RNIap.getProducts(itemSkus);
this.setState({ products });
} catch(err) {
console.warn(err); // standardized err.code and err.message available
}
}
requestPurchase = async (sku: string) => {
try {
await RNIap.requestPurchase(sku, false);
this.setState({ count:this.state.count+1 });
} catch (err) {
console.warn(err.code, err.message);
}
}
click = () => {
this.requestPurchase('stackoverflow_ex')
}
render() {
const {item} = this.props;
return (
<TouchableOpacity onPress={() => this.click()} />
);
}
}
答案 0 :(得分:1)
对于android
,您需要在Google Play中上传apk
。否则,您将无法在应用程序中测试Google Play结算。您可以做的是上传apk
,并在Internal test track
下发布。审核过程需要2-3天。之后,您可以进行测试。
有关更多信息,请检查此link
答案 1 :(得分:0)
乍一看,我会说至少缺少 initConnection
。
确保代码正确完成的最佳方法请查看 github 中的示例:https://github.com/dooboolab/react-native-iap/blob/master/IapExample/App.js