es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo obtener los precios de los productos de compra en la aplicación en la moneda local en iOS?

Estoy implementando Productos de Compra en la Aplicación en AppStoreConnect donde podemos elegir el precio en Dólares($). Digamos que he creado un Producto con un Precio de $0.99 que es equivalente a £0.89. Ahora quiero mostrar el precio equivalente en Libras Esterlinas en mi Aplicación. Pero, desafortunadamente, lo único que logro obtener son £0.99 de diferentes soluciones que proporcionan el precio local basado en la configuración. Pero esto está mal, ya que idealmente quiero mostrar el precio real en GBP que es solo 0.89 y no 0.99.

Cualquier ayuda para resolver esto sería muy útil.

P.D: He intentado soluciones de https://stackoverflow.com/questions/14453910/how-to-get-locale-currency-price-for-in-app-purchases-in-ios?rq=1 pero ninguna parece funcionar correctamente.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Para mostrar el precio real en GBP, necesitas utilizar el formato de moneda y convertir el precio en USD al equivalente en GBP. Así es como puedes hacerlo:

    1. Obtén el tipo de cambio de USD a GBP: Puedes utilizar una API de terceros o una fuente para obtener el tipo de cambio actual.
    2. Calcula el precio en GBP: Multiplica el precio en USD por el tipo de cambio para obtener el precio en GBP. En este caso, $0.99 * tipo de cambio = precio en GBP.

    3. Utiliza el formato de moneda: Utiliza el formateador de moneda adecuado para mostrar el precio en GBP en el formato deseado en tu aplicación.

    Ejemplo:

    Si el tipo de cambio actual es 1 USD = 0.80 GBP, entonces el precio en GBP para $0.99 sería:

    0.99 * 0.80 = 0.792 GBP

    Para mostrar este precio en tu aplicación, puedes utilizar el formateador de moneda y establecer la configuración regional en Reino Unido de la siguiente manera:

    let precio = 0.792
    let formateador = NumberFormatter()
    formateador.locale = Locale(identifier: “en_GB”)
    formateador.numberStyle = .currency
    formateador.currencySymbol = “GBP”
    let precioFormateado = formateador.string(from: NSNumber(value: precio)) // Resultado: “£0.79”

    Esto formateará el precio como GBP y mostrará el precio correcto de £0.79 en lugar de £0.99.

Comments are closed.