Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

139
Vistas
La suscripción de compra desde la aplicación de iOS muestra una moneda incorrecta para la configuración regional

Estoy usando SwiftyStoreKit para manejar IAP en mi aplicación. El problema es que los precios de los productos IAP siempre se mostrarán en USD como este: $9.99. No importa en qué país la gente pruebe la aplicación.

Estoy tratando de cambiar la configuración regional en el Simulador de esta manera (en la ventana de edición del esquema). El uso de la ubicación personalizada no me dará otra moneda, mientras que Locale.current muestra la configuración regional modificada.

Probando ambos:

  1. Producto de product.localizedPrice
  2. Y directamente desde el objeto del producto (que en realidad es LocalizedPrice como extensión de SKProduct)

     let numberFormatter = NumberFormatter() numberFormatter.numberStyle = .currency numberFormatter.locale = product.priceLocale let price = numberFormatter.string(from: product.price)

    precio todavía $ 9.99 aquí en Dinamarca o Japón

¿Me estoy perdiendo alguna configuración local mágica en las propiedades del proyecto?

  • sandbox o producción, no hará la diferencia
  • cuando aparece la ventana emergente de IAP, la moneda es correcta allí pero no en la aplicación en sí
  • usando un montón de otros Pods en el proyecto como Sentry y Beacon
over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

El precio y la configuración regional del precio están determinados por la asociación de tiendas de la cuenta de compra, no por la configuración regional del dispositivo.

es decir, alguien con una cuenta vinculada a la tienda de EE. UU. siempre verá $ US, ya que así es como se le cobrará, independientemente de dónde se encuentre físicamente en el mundo o de la ubicación de su dispositivo.

Para probar la internacionalización del precio, deberá usar un probador de sandbox con un territorio de App Store apropiado.

Si ejecuta la aplicación antes de iniciar sesión con un probador de Sandbox, verá el precio en dólares estadounidenses de forma predeterminada. Además, tenga en cuenta que realmente no puede probar IAP en el simulador; Necesitas usar un dispositivo real.

over 4 years ago · Santiago Trujillo Denunciar

0

Las cuentas de sandbox se manejaron de manera diferente desde iOS 12. Cuando ejecuta una compilación de desarrollo desde Xcode, la aplicación le solicitará un ID de Apple de sandbox falso tan pronto como inicie una compra. Después de ese primer inicio de sesión, la aplicación conocerá la configuración regional correcta y, por lo tanto, podrá mostrar los precios apropiados para sus compras dentro de la aplicación. Antes de eso, siempre mostrará los precios en USD.

Fuente: https://developer.apple.com/documentation/storekit/in-app_purchase/testing_in-app_purchases_with_sandbox

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda