React Native-reacr-native-iap-我找不到错误

问题描述

我正在使用expo做一个项目,但是随后它运行了,现在我正在使用react native。我正在尝试购买应用程序,并且使用的是“ reac-native-iap”库,当我想使用initConection方法初始化连接时,它会向我发出警告并且无法建立连接。因此,问题在于我无法实现该库,在Google Play控制台中,除了之前已经创建了两种产品之外,我已经在内部测试中上传了apk,但我不知道为什么它对我不起作用。

我是由图书馆资料库中的示例指导的,是否不需要其他东西来将Google许可证密钥放在某处?

这是警告消息

enter image description here

此处是实现该功能代码

import React,{useState,useEffect,useContext} from 'react'
import { StyleSheet,Text,View,ScrollView,Image,TouchableOpacity,Platform,Alert  } from 'react-native'
import { AntDesign } from '@expo/vector-icons'; 
import { MaterialCommunityIcons } from '@expo/vector-icons'; 
import { FontAwesome5 } from '@expo/vector-icons'; 
import AsyncStorage from '@react-native-community/async-storage';
import Config from '../config'
import * as RNIap from 'react-native-iap';

import { AuthContext } from '../components/context'

const itemSkus = Platform.select({
    ios: [
        '1000_monedas','2000_monedas' 
    ],android: [
        '1000_monedas','2000_monedas' 
    ]
  });



// initializeInAppPurchase();

export default function MyProfile() {



    const [userInfo,setUserInfo] = useState(null);

    const { signOut } = useContext(AuthContext);

    useEffect(() => {
        fetchUserData()
    },[])

    useEffect(() => {
        initializeInAppPurchase()
        // fetchProductsData()
    },[])

    const fetchUserData = async() => {
        try {
            const userData = await AsyncStorage.getItem('userData')
            const dataUser = JSON.parse(userData)
            setUserInfo(dataUser)
          } catch (error) {
            console.log(error)
          }
    }

    const fetchProductsData = async () => {
        const { responseCode,results } = await InAppPurchases.getProductsAsync(itemSkus);
        if (responseCode === InAppPurchases.IAPResponseCode.OK) {
            console.log("result",results)
            console.log("responseCode",responseCode)
        }
    }

    const initializeInAppPurchase = async() => {
        try {
            const result = await RNIap.initConnection();
            await RNIap.consumeAllItemsAndroid();
            console.log('result',result);
          } catch (err) {
            console.warn(err.code,err.message);
          }
    }



    const onAddCoins = () => {
        
    }
    
    return(
        <ScrollView>
            <View style={[styles.containerUser]}>
                <Image 
                    resizeMode="contain" 
                    style={styles.imageMain} 
                    source={require('../assets/backgrounds/perfil2.jpg')} 
                />
                <View style={styles.hoverBack}>
                    <View style={styles.containerImage}>
                        <Image 
                            resizeMode="cover" 
                            style={styles.profileImage} 
                            source={{uri: Config.urlBackEnd + '//profileImages/' + userInfo?.profile_image}} 
                        />
                    </View>
                    <Text style={styles.textWhite}>{userInfo?.name}</Text>
                    <Text style={styles.textWhite}>{userInfo?.email}</Text>
                    <Text style={styles.textWhite}>Tipo de Usuario: {userInfo?.typeOfUser == "teacher" ? "Profesor" : userInfo?.typeOfUser == "user" ? "Usuario normal" : "AdminisTrador"}</Text>
                    <View style={[styles.containerWallet,styles.shadow]}>
                        <View style={styles.TrapezoidStyle}>
                            <FontAwesome5 style={styles.iconCoin} name="coins" size={20} color="#efb810" />
                        </View>
                        <View style={styles.coinText}>
                            <Text style={styles.textMoney}>1000</Text>
                        </View>
                    </View>
                </View>
            </View>
            <View style={styles.containerOptions}>
                <View style={styles.eachOption}>
                    <AntDesign style={styles.icon} name="edit" size={25} color="#526065" />
                    <Text style={styles.textEach}>Editar mi Perfil</Text>
                </View>
                <View style={styles.eachOption}>
                    <MaterialCommunityIcons name="textBox-password" style={styles.icon} size={25} color="#526065" />
                    <Text style={styles.textEach}>Cambiar la Contraseña</Text>
                </View>
                <TouchableOpacity onPress={onAddCoins}>
                    <View style={styles.eachOption}>
                        <MaterialCommunityIcons name="textBox-password" style={styles.icon} size={25} color="#526065" />
                        <Text style={styles.textEach}>Añadir Monedas</Text>
                    </View>
                </TouchableOpacity>
                <View style={styles.eachOption}>
                    <AntDesign name="delete" style={styles.icon} size={25} color="#526065" />
                    <Text style={styles.textEach}>Eliminar Cuenta</Text>
                </View>

                <TouchableOpacity onPress={signOut}>
                    <View style={styles.eachOption}>
                        <AntDesign name="logout" style={styles.icon} size={25} color="#526065" />
                        <Text style={styles.textEach}>Cerrar Sesion</Text>
                    </View>
                </TouchableOpacity>
            </View>
        </ScrollView>
    )
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)