Por que não consigo executar aplicativos Android no linux genérico? [fechadas]

1

Eu sei sobre projetos como o archon, e vários emuladores existem, mas parece estranho que eu possa rodar programas do Windows, mas não programas do Android sob um kernel do Linux.

    
por Alex Davies 26.03.2016 / 22:51

2 respostas

3

Existem vários recursos do kernel exclusivos do Android. Você pode ver uma lista aqui . O grande parece ser o fichário . Para obter uma "distribuição" do Android em execução no Linux, seu kernel precisa primeiro implementar vários desses recursos.

Na verdade, a integração com um desktop Linux ainda é mais difícil.

O subsistema gráfico não é compatível com o X11, então não há como desenhar um aplicativo Android em um desktop Linux padrão.

    
por 27.03.2016 / 00:14
2

Estritamente falando, o kernel do Linux fornece pouco mais que uma interface direta para o hardware em que está sendo executado. Há uma pilha inteira de APIs, programas, aplicativos, etc., específicos do telefone Android, dos quais os aplicativos Android dependem. Além disso, o Android não é executado em um kernel genérico do Linux, mas é executado em um que foi altamente personalizado pelo Google com o objetivo específico de executar o SO.

Mesmo que seja tecnicamente possível reproduzir toda a pilha necessária para que os aplicativos Android sejam executados em outro sistema, ela seria inchada e extremamente ineficiente. O tamanho da tela é limitado, o conceito de "sistema de janelas" não existe em um dispositivo móvel Alguns dos hardwares simplesmente não estão lá, cartão SIM, GPS, etc

Há um emulador que engana os aplicativos, fornecendo-lhes os bits extras de que precisam. Mas ele usa o OpenJDK nativo em sua máquina para que eles funcionem bem. Pense nisso como um ambiente de teste e não um emulador.

    
por 26.03.2016 / 23:54