Pergunta

No meu aplicativo Android, eu tenho um botão com a imagem de plano de fundo de um Amazon.com produto (digamos, uma camisa ou algo assim), e quando clicado eu gostaria de abrir na Amazon app (com.amazon.mShop.android) se já estiver instalado, ao invés de incluir no navegador, e no browser se o aplicativo não está instalado.

Eu tenho sido capaz de encontrar como adicionar um link direto para um determinado Amazon aplicativo de cliente, mas não como link para um item específico que seria aberta com abertas com a Amazon app.

Atualmente, meus clique ouvinte é aberto em um navegador, fazendo o seguinte:

b3.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent intent = new Intent();
            intent.setAction(Intent.ACTION_VIEW);
            intent.addCategory(Intent.CATEGORY_BROWSABLE);
            intent.setData(Uri.parse(urlOfItemOnAmazonSite));
            startActivity(intent);
        }
    })
Foi útil?

Solução

A Amazon desenvolvedor da página inicial é provavelmente o melhor lugar para esta resposta.Este pode ser um bom começo: https://developer.amazon.com/public/apis/earn/in-app-purchasing/docs/deeplink#Link%20Configuration.Aqui eles explicam como construir o Uri você vai precisar usar para definir a Intenção de dados.

Claro, você pode querer ser cuidadoso e enrole startActivity em um try/catch no caso de a Amazon não está instalado e lança uma ActivityNotFoundException

Outras dicas

Você pode simplesmente fazer o seguinte:

b3.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
       Uri uri=Uri.parse(productUrl);
       Intent intent=new Intent(Intent.ACTION_VIEW,uri);
        startActivity(intent);
    }
})

//Nota extrair url da loja de produtos no var productUrl(ou qualquer outro var) e //analisá-lo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top