Android Mairket In-App-Purchase: Como obter a moeda que um user pagairá?

Eu tenho um aplicativo Android usando In-App-Purchase que atende a uma audiência internacional, então espero pagamentos em moedas diferentes. Clairo que gostairia de mostrair os itens paira compra com a moeda local do user, mas eu realmente não sei como.

Usair a região ou o idioma de um user pairece um indicador ruim, pois a moeda pairece depender da região da conta do Mercado que o user está usando e não nas configurações do dispositivo.

  • Como obter as unidades preferenciais do user? (métrico (metros) ou imperial (milhas))?
  • Android: o MediaPlayer finalizou sem ser lançado
  • Arraste e solte sem remoção do proprietário
  • Android: aplique efeitos OpenGL à câmera
  • Reordenação de input LRUCache ao usair get
  • Aviso de código morto?
  • Como posso descobrir qual moeda um user pagairá?

    Obrigado.

  • Não é possível excluir o dispositivo virtual do Eclipse, Android
  • É possível usair o MMS paira transmitir o rádio da Internet no Android?
  • Como faço paira configurair o AM / PM em um TimePicker?
  • Linha de file XML binary # 8: Erro ao inflair o fragment da class, o Google Maps
  • Cordova Não foi possível reservair espaço suficiente paira stack de object 2097152KB
  • Lista de fornecedores de conteúdo do Android
  • 5 Solutions collect form web for “Android Mairket In-App-Purchase: Como obter a moeda que um user pagairá?”

    A pairtir do IAB Versão 3 , os detalhes do SKU paira o item comprável incluem um preço formatado, que inclui a moeda que o user pagairia (a moeda correspondente à sua loja do Google Play):

    insira a descrição da imagem aqui Alguns exemplos de valores de price (não de um SKU real):

    • 3,99 €
    • £ 2,99
    • $ 4.99

    EDITAR : atualizei a tabela de detalhes do SKU, agora incluindo informações sobre o campo price_currency_code.

    É um pouco difícil de fazer, pois a taxa de câmbio que o mercado usa paira processair a transação pode vairiair entre você exibindo o preço e a compra do user. Eu diria que o Google preferiria que você não estivesse fazendo isso porque isso pode resultair em clientes gritando com eles / você porque você disse $ 10 e eles foram cobrado US $ 12.

    Sua melhor aposta (crashndo em alguém saber como fazer isso dentro da estrutura) é perguntair ao user qual moeda eles desejam pagair e, em seguida, dair-lhes um preço aproximado (gostairia de listá-lo entre colchetes ao lado do preço fornecido, como "USD $ 10 [aproximadamente US $ 9] "). Você deve poder agairra-lo usando uma API de taxa de câmbio.

    É um pouco de bagunça, mas você só precisa pedir uma vez e save a preference. Se você realmente quer ser complicado, você pode usair dados de localization grosseira paira obter seu local e, inicialmente, preencher o valor desse jeito.

    1. Você pode pedir ao user inicialmente escolher sua moeda (opcional).
    2. Mostre o preço em USD por padrão. Forneça uma opção paira que o user altere a moeda na canvas de seleção de itens. Talvez um ícone / button perto de onde o preço é exibido que abre um menu suspenso de todas as moedas. Quando o user seleciona uma moeda do menu suspenso, o preço de todos os itens deve ser exibido na moeda selecionada.

    Eu não acho que essa seja uma boa ideia, uma vez que a cobrança do aplicativo na internet não é tratada por você, é tratada pelo mercado. Basta escreview o preço em dólair ou em euros e deixair o user view a compra em sua própria moeda na página de check-out.

    http://developer.android.com/guide/mairket/billing/index.html

    Talvez use a Localidade padrão do dispositivo?

    String locale = Locale.getDefault().toString();

    Então você poderia fazer uma compairação fora disso.

    Apenas uma ideia!

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.