Como o Google Play funciona se um aplicativo é compatível com o meu dispositivo?

17

Eu tenho um tablet Android "genérico" e, muitas vezes, quando instalo um aplicativo, o Google Play diz que ele é incompatível com meu dispositivo. Isso acontece mesmo em aplicativos populares como Twitter, Instagram, Evernote, Foursquare e até Google Maps!

Eu sei que funciona, porque se eu copiar o APK do meu telefone Motorola para este tablet e instalá-lo manualmente, ele funcionará bem (pelo menos no Instagram e no Twitter).

Não estou tentando fazer o Instagram funcionar no meu tablet. Estou tentando encontrar uma maneira de instalar os aplicativos da Play Store.

O Google Play afirma que os aplicativos são incompatíveis

Como e onde o Google Play executa uma verificação de compatibilidade no meu dispositivo? Eu suspeito que o cheque está falhando de alguma forma. Quero poder instalar aplicativos que funcionem no meu dispositivo e impedir que o Google Play me impeça.

Aquele cara brasileiro
fonte
2
Os aplicativos não são bloqueados por causa do país do meu dispositivo, eu sei disso porque, quando são bloqueados por causa do país, a mensagem é diferente i.imgur.com/B69bn.png e nem aparece no Google Play, Eu tenho que abrir a página na minha área de trabalho.
Aquele cara brasileiro
1
Tanto o meu telefone Motorola Defy quanto o meu tablet Genesis rodam o Android 4 (Cyanogenmod 9 no caso do meu telefone, rom desconhecido no caso do tablet).
Aquele cara brasileiro

Respostas:

10

Quando os desenvolvedores criam aplicativos, eles precisam especificar quaisquer requisitos de hardware / software em um arquivo chamado androidmanifest.xmlfile.

Estes podem ser requisitos de hardware ou software, como se o aplicativo precisar de GPS ou recursos de telefonia - ou se funcionará apenas em uma determinada versão do Android.

Quando você usa o Google Play, ele envia os 'recursos' do seu dispositivo para o servidor e filtra os aplicativos de acordo.

O motivo mais provável de ser considerado incompatível pelo Google Play é que ele está configurado para exigir uma determinada resolução de tela - ou talvez os padrões do modo retrato / paisagem.

Alguns tablets têm baixa resolução e também informam ao google play que não podem entrar no modo retrato.

Também pode ser, seu tablet sendo genérico, que ele não possui o GPS ou os sensores necessários, conforme o arquivo mais solicitado, e o mercado está impedindo a instalação por causa disso.

Vou descobrir o que o aplicativo instagram precisa (veja o manifesto) e editar essa resposta para você.

EDITAR:

De acordo com o manifesto do Instagram, o único item 'obrigatório' é a versão glEs - no mínimo 131072. Também pode ser por causa da configuração de país / operadora de seus tablets.

O Twitter precisa de um mínimo do Android 2.1 e também pode precisar de um vibrador, pois usa a permissão vibrar.

Liam W
fonte
1
Não, não é por causa do país do meu dispositivo, nem da operadora. Ele não possui operadora (sem recursos de GSM ou telefone) e, quando algum aplicativo é bloqueado por causa do país, a mensagem exibida é diferente - i.imgur.com/B69bn.png
aquele brasileiro
@ ruda.almeida Apenas cobrindo todos os limites ...
Liam W
Não tem problema, eu estava apenas fornecendo mais dados, obrigado por seus esforços!
Esse brasileiro
1
@ ruda.almeida Se um aplicativo solicitar a permissão de telefonia (para enviar / receber textos), também precisará de hardware de telefonia.
Liam W
0

Sei que você não acha que isso se deve ao seu país. NO ENTANTO, notei que sua captura de tela estava em outro idioma que não o inglês. Eu sou um desenvolvedor de Android, por isso estou meio familiarizado com a localização . Basicamente, os aplicativos têm certeza de localesque "representa uma combinação de idioma / país / variante. As localidades são usadas para alterar a apresentação de informações como números ou datas para se adequar às convenções na região que descrevem" (consulte isso no site de desenvolvimento do Android ). Isso chamou minha atenção:

O código Java de um aplicativo se refere a apenas duas cadeias, text_a e text_b. Este aplicativo inclui um arquivo de recurso localizado (res / values-en / strings.xml) que define text_a e text_b em inglês. Este aplicativo também inclui um arquivo de recurso padrão (res / values ​​/ strings.xml) que inclui uma definição para text_a, mas não para text_b:

Este aplicativo pode ser compilado sem problemas. Um IDE como o Eclipse não destacará nenhum erro se um recurso estiver ausente. Quando esse aplicativo é iniciado em um dispositivo com o código de idioma definido como inglês, o aplicativo pode ser executado sem problemas, porque res / values-en / strings.xml contém as duas seqüências de texto necessárias. No entanto, o usuário verá uma mensagem de erro e um botão Forçar fechamento quando esse aplicativo for iniciado em um dispositivo definido para um idioma diferente do inglês. O aplicativo não será carregado.

Observe a parte sobre como o aplicativo pode ser compilado sem problemas, mas também pode mostrar uma mensagem de erro e Forçar fechamento se o dispositivo tiver um código de idioma que não seja suportado por esse aplicativo. Sei que não é isso que está acontecendo com você, mas pode estar relacionado ao seu problema, porque o Google Play verá que seu dispositivo pode estar definido como um local para o qual o aplicativo em questão não suporta ou possui um conjunto específico de recursos. O Google Play pode ocultar o aplicativo do seu dispositivo, mesmo que funcione corretamente devido aos recursos padrão que o desenvolvedor provavelmente escreveu, no entanto, o Google Play pode decidir que não deseja arriscar um cliente irritado por causa de um problema no Forçar fechamento. esconda-o completamente de você. Novamente, isso é apenas uma idéia e percebo que você vê uma mensagem diferente por incompatibilidade com seu país. Espero que isto ajude.

pontada
fonte
1
Interessante, eu não fazia ideia disso (e suspeito que alguns desenvolvedores também desconhecem). No entanto, meu telefone e tablet estão configurados para funcionar no mesmo idioma. Eu sei que existem alguns atributos diferentes do sistema para definir idioma, país, localidade etc., tenho alguns aplicativos do sistema que o exibem, vou executá-lo e adicionar as informações à minha pergunta.
Esse brasileiro
1
Ainda bem que pude abrir uma nova porta para você. Você pode querer verificar as duas páginas de desenvolvedor que forneci, porque algo pode aparecer lá para ajudá-lo.
ninge
1
As verificações de compatibilidade do Google Play não são baseadas em localidades. Além disso, é prática comum que o desenvolvedor tenha os recursos de um código de idioma (como inglês) como padrão, portanto, em um código de idioma não suportado, ele usará apenas os recursos padrão.
Dan Hulme