Android Market In-App-Purchase: ¿Cómo obtener la moneda que un usuario pagará?
Tengo una aplicación de Android que utiliza In-App-Purchase para atender a una audiencia internacional, por lo que espero pagos en diferentes monedas. Por supuesto me gustaría mostrar los artículos para la compra con la moneda local del usuario, pero no sé realmente cómo.
El uso de la región o el idioma de un usuario parece un indicador incorrecto, ya que la moneda parece depender de la región de la cuenta Market que el usuario está utilizando y no de la configuración del dispositivo.
- Lanzar nueva versión de producción en Google Play sin afectar a Beta
- ¿Cómo busco Android Market basado en el nombre de desarrollador de dos palabras?
- La función de optimización de Google Play sugiere traducción al inglés (inglés) al inglés (inglés)
- Versión beta en la tienda de juegos Android. ¿Dónde está el enlace opt-in para probadores?
- Actualización de la aplicación de Android en Google Play - Android Developer Console
¿Cómo puedo averiguar en qué moneda un usuario pagará?
Gracias.
- Si elimino un APK de la consola de desarrollo de Play, ¿está disponible para descargar hasta que publiqué?
- ¿Cómo redirigir el usuario a la pestaña de revisión de la página de la aplicación en Google Play desde un navegador?
- "Almacenamiento insuficiente disponible", incluso hay mucho espacio libre en la memoria del dispositivo
- Mejor hora / día para publicar en Android Market?
- Advertencia SSL de google play
- Actualización de la aplicación Google Play: no se puede publicar un nuevo apk
- Android eliminar localizaciones
- Envío de aplicaciones a Google Play
A partir de IAB Versión 3 , los detalles de SKU para el artículo comprado incluyen un precio con formato, que incluye la moneda en la que el usuario pagaría (la moneda correspondiente a su tienda de Google Play):
Algunos ejemplos de valores de price
(no de una SKU real):
- 3,99 €
- 2,99 €
- $ 4.99
EDIT : He actualizado la tabla de detalles de SKU, ahora incluye información sobre el campo price_currency_code.
Es algo difícil de hacer, ya que el tipo de cambio que el mercado utiliza para procesar la transacción puede fluctuar entre usted, mostrando el precio y la compra del usuario. Me atrevo a decir que Google preferiría que no estuvieran haciendo esto, ya que puede resultar en clientes gritando con ellos / usted porque dijo que $ 10 y se les cobró $ 12.
Su mejor apuesta (fallar a alguien sabiendo cómo hacerlo dentro del marco) es preguntarle al usuario qué moneda desea pagar y luego darles un precio aproximado (lo lista entre paréntesis junto al precio suministrado como "USD $ 10 [Aproximadamente AUD $ 9] "). Usted debe ser capaz de agarrar con un API de tipo de cambio.
Es un poco de desorden, pero sólo debe pedir una vez y guardar la preferencia. Si realmente quieres ser difícil, puedes usar datos de ubicación aproximada para obtener su configuración regional y poblar inicialmente el valor de esa manera.
- Puede pedirle al usuario que elija su moneda (opcional).
- Mostrar precio en USD por defecto. Proporcione una opción para que el usuario cambie de moneda en la pantalla de selección de artículos. Tal vez un icono / botón cerca de donde se muestra el precio que abre una lista desplegable de todas las monedas. Cuando el usuario selecciona una moneda desde la lista desplegable, el precio de todos los elementos debe mostrarse en la moneda seleccionada.
Yo no que sería una buena idea, ya que la facturación en la aplicación no es manejado por su usted, es manejado por el mercado. Simplemente escriba el precio en dólares o en euros y deje que el usuario vea la compra en su propia moneda en la página de check-out.
http://developer.android.com/guide/market/billing/index.html
Tal vez utilizar la configuración regional predeterminada del dispositivo?
String locale = Locale.getDefault().toString();
Entonces podrías hacer una comparación de eso.
¡Solo una idea!
- ¿Cómo ahorrar mejor el estado de compra de InApp localmente?
- Intención de la cámara Android Guardar imagen Paisaje cuando se toma Retrato