React-native-iap: getProducts siempre devuelve nulo

Creado en 13 abr. 2018  ·  34Comentarios  ·  Fuente: dooboolab/react-native-iap

@dooboolab Estoy recibiendo una matriz nula después de llamar al método getProducts después de preparar el método.

📱 iOS 🙏 help wanted 🤖 android

Comentario más útil

@axelkennedal ser pasivo-agresivo con las personas que voluntariamente dedican su precioso tiempo a tratar de ayudarte no te llevará muy lejos.

@JJMoon @dooboolab gracias por el gran trabajo

Todos 34 comentarios

@ companytest1206 Esto no debería suceder. ¿Podría compartir más información? Como sus códigos, el estado de sus productos, sistema operativo, dispositivos, etc. Para la configuración de productos en la aplicación, consulte el blog .

Aquí está mi código ...

async componentDidMount () {
tratar {
espera RNIap.prepare ();
productos const = aguardan RNIap.getProducts (itemSkus);
console.log ('Productos', productos);
}
catch (err) {
console.warn (código de error, mensaje de error);
}
this.fetchData ();

}

El estado de mi aplicación está en modo alfa. Usando nexus 6 para depurar.

@ companytest1206 Su código parece playstore o itunesconnect ? Siga el archivo Léame y compruebe todo lo que he publicado aquí .

Tengo el mismo problema.

Tengo el mismo problema pero obtengo una matriz vacía (no una matriz nula, sea lo que sea que se suponga que eso signifique). Lo publiqué aquí .

@systemride @sanilcgs ¿Podría compartir las plataformas con las que tiene problemas usando el método getProducts ?

Tengo problemas con esto en Android 7.0 (ejecutándose en un LG G6), desarrollando en MacOS 10.13.4 @dooboolab

Creé mi aplicación usando el paquete create-react-native-app . Para integrar la compra en la aplicación, he separado mi aplicación. Después de eso , integré react-native-iap en mi aplicación. Para mí, el problema ocurrió tanto en iOS como en Android. Estoy usando Android Studio 3.0.1 y Xcode 9.3. @dooboolab

De acuerdo con este README de otra biblioteca, debería ser posible obtener los productos disponibles cuando se ejecuta en un entorno de depuración (no en una versión Alpha / Beta), ¿es correcto? (Creo que debería ser lo mismo para esta biblioteca, ya que probablemente dependa de cómo Google maneja el IAP).

Otra pregunta relacionada; ¿Deberían prefijarse las SKU con el nombre del paquete? En otras palabras; ¿Es correcto "unlock_premium" o "com.kimer.unlock_premium" en mi código cuando el ID que he especificado en Google Play Console es "unlock_premium" ?

@axelkennedal Los SKUS no tienen formato, son totalmente personalizables. En pocas palabras: "unlock_premium" o "com.kimer.unlock_premium" son correctos.

Entiendo que puedes nombrar un ID de producto como quieras, pero lo que pregunté es qué debería ir en mi código si elijo el ID "unlock_premium" en Google Play Console (no si estoy "autorizado" a prefijar ambos en Google Play Console y en mi código). Estás diciendo que elegir el ID "unlock_premium" en Google Play Console debería funcionar junto con "unlock_premium" y "com.kimer.unlock_premium", ¿correcto? Creo que esto debe indicarse en algún lugar del README, porque es confuso.

ACTUALIZAR

¡Ahora me está funcionando 😄! Probé un par de cosas, pero no estoy seguro de cuál fue la clave para que funcione 🤔 De todos modos, esto es lo que hice:

  1. Reinstaló el paquete
  2. Cambié mi declaración de importación de import InAppPurchase from "react-native-iap;" to "import * as InAppPurchase from 'react-native-iap';"
  3. Cambié mi SKU en el código de "com.kimer.unlock_premium" a "unlock_premium"

@axelkennedal debe usar cualquier nombre, pero debe usarlo en Google Play Console> su aplicación> Google Play store> en los productos de la aplicación. Y el MISMO nombre que debe usar en el código fuente.

@dooboolab Cuando intento ejecutar RNIap.buyProduct (' * ') con mi ID de producto, aparece el mensaje de error

@sanilcgs, ¿ podría decirme en qué plataforma se enfrenta el error?

@dooboolab Estoy enfrentando el problema en la plataforma Android y desarrollando en MacOS High Sierra (10.13.4)

@sanilcgs, ¿está utilizando nuestro módulo más nuevo que es '0.3.23'? También se puede encontrar un problema similar aquí. https://github.com/dooboolab/react-native-iap/issues/142

@dooboolab Sí, estoy usando '0.3.23'. Mi problema ahora es con RNIap.buyProduct (' * ') .

@sanilcgs Publiqué información de ayuda para eso en el número anterior. Pegaré aquí de nuevo. Por favor, consulte a continuación.

         Do's

1) Cree apk de signo para su aplicación.
2) Sube tu apk en Google Play Store.
3) Cree un producto para su aplicación.
4) espere de 6 a 12 horas para actualizar los artículos en la tienda.
5) Otorgue permisos de facturación en Manifest.xml

           Don't

1) No utilice el emulador para probar, ya que no es compatible con los servicios de facturación.
2) No utilice apk sin firmar para los servicios de facturación.

Leer más: http://www.androidhub4you.com/2013/03/how-to-inegrate-in-app-purchase-billing.html#ixzz5DqRctVJp

@dooboolab Como ya dije, mi aplicación no se lanza a producción. Ahora solo he lanzado mi versión alfa. Entonces, ¿puedo probar este RNIap.buyProduct (' * * ') ** con mi versión alfa o necesito liberar mi producción para probar la compra?

@sanilcgs Si ha leído detenidamente lo anterior, debe tener en cuenta que no necesita lanzar apk a producción. Solo alfa o beta está bien, pero su apk debe estar firmado como se explica. Verifique arriba una vez más y vea lo que se está perdiendo primero.

@dooboolab Lo que se debe y no se debe hacer arriba son útiles. Para los novatos, sería realmente útil explicar en la documentación que solo puede probar esto en una versión alfa / beta y si prueba esto en una compilación de desarrollo en un emulador, siempre devolverá una matriz vacía. No veo ninguna mención de eso en ninguna parte. Me complace agregar esto en una solicitud de extracción si lo desea.

@systemride ¡ Se

@axelkennedal hizo todas esas cosas, todavía
por cierto ... todavía estoy probando en un simulador. ¿Es necesario probarlo en un dispositivo iOS real?

@axelkennedal getProducts() en iOS funciona bien en el simulador. Las acciones de compra deben probarse en el dispositivo real con la cuenta de sandbox de Apple.
Es posible que no hayas terminado a la perfección la configuración del producto de la App Store.

@JJMoon, si sabrías que estoy en Android, no en iOS.

@axelkennedal ser pasivo-agresivo con las personas que voluntariamente dedican su precioso tiempo a tratar de ayudarte no te llevará muy lejos.

@JJMoon @dooboolab gracias por el gran trabajo

@raduflp lol ¿de qué estás hablando? Acabo de señalar que estamos en diferentes plataformas.

@raduflp Gracias por su amable respuesta y preocupación. No creo que @axelkennedal pretendiera ser agresivo. Está demasiado abrumado al usar react-native-iap . Siento que este problema se puede cerrar, así que lo cerraré. Además, se agradece cualquier PR que pueda ayudar a las nuevas generaciones.

Intentalo. Trabaja para mi:

"Necesita agregar adicionalmente su cuenta de prueba a otra lista especial de cuentas" Cuentas de Gmail con acceso de prueba ", puede encontrar eso en la configuración de la cuenta de juego (¡no en el proyecto!). En la página donde puede ver una lista de sus proyectos, vaya a configuración, y luego en la página "Detalles de la cuenta" (desplácese hacia abajo, está casi en la parte inferior de la página) encontrará la lista "Cuentas de Gmail con acceso de prueba".

Configurar la licencia de la aplicación
Para configurar la licencia de la aplicación, comience agregando su lista de direcciones de Gmail de los evaluadores en Play Console.

Ve a tu Play Console.
Seleccione Configuración Configuración> Detalles de la cuenta.
En "Prueba de licencia", agrega las direcciones de Gmail de tus evaluadores.
En la parte superior de la pantalla, seleccione Guardar.

He integrado react-native-iap y subí mi apk firmado a la versión beta en Play Store y también agregué un plan de suscripción. Estoy tratando de obtener la lista de suscripción por ID de suscripción en modo de depuración que siempre devuelve una matriz vacía. ¿Puedo probar la suscripción en modo de depuración?

@ShridharCodewave ¿usas un dispositivo o simulador real?

@NarekChang Uso un dispositivo real y ahora de alguna manera

¿Fue útil esta página
0 / 5 - 0 calificaciones