Que tal rodar aplicativos Android no seu sistema operacional GNU/Linux ? Finalmente o Anbox chega ao Debian e seus derivados via empacotamento convencional, não é Snap, se é o que procura confira os detalhes nessa matéria.
OBS: Nessa matéria iremos usar pacotes de terceiro, caso não concorde com essa pratica, não siga a matéria.
Anbox é um APP baseada em contêiner para inicializar um sistema Android completo em um sistema GNU/Linux.
Em outras palavras: o Anbox permitirá que você execute o Android no seu sistema GNU/Linux sem a lentidão da virtualização.
Anbox usa namespaces Linux (usuário, pid, uts, net, mount, ipc) para rodar um sistema Android completo em um container e fornecer aplicativos Android em qualquer plataforma baseada em GNU / Linux.
O Android dentro do contêiner não tem acesso direto a nenhum hardware. Todo o acesso de hardware está passando pelo daemon anbox no host. Ele reutiliza o que o Android implementou no emulador baseado em QEMU para renderização acelerada do OpenGL ES. O sistema Android dentro do contêiner usa canais diferentes para se comunicar com o sistema host e envia todos os comandos de acesso a hardware por meio deles.
Fonte
Para Debian Stretch veja abaixo como habilitar o backports.
Para instalar de o comando abaixo no terminal.
Nesse caso iremos usar os módulos disponibilizados no GitHub.
Faça o download com o comando no terminal.
Entre no diretório de instalação.
Instale com o comando.
Não são todos os APP que funcionam, mas muitos funcionam :)
Angry birds funciona de boa.
Mas não desanime caso na Play Store diga que o APP é incompatível ao seu dispositivo,
você pode baixar o .apk e instalar com o adb, fiz isso com o WhatsApp e funcionou perfeitamente.
Agora é com você, explore o Anbox :)
Mesmo fechando o Anbox os módulos continuam rodando e consumindo um pouco de recursos do seu hardware.
Mas você pode matar o processo facilmente com o comando abaixo no terminal.
Para voltar a usar o Anbox sem precisar reiniciar a maquina, reinicie os serviços com o comando abaixo no terminal.
OBS: Nessa matéria iremos usar pacotes de terceiro, caso não concorde com essa pratica, não siga a matéria.
Anbox
Anbox é um APP baseada em contêiner para inicializar um sistema Android completo em um sistema GNU/Linux.
Em outras palavras: o Anbox permitirá que você execute o Android no seu sistema GNU/Linux sem a lentidão da virtualização.
Anbox usa namespaces Linux (usuário, pid, uts, net, mount, ipc) para rodar um sistema Android completo em um container e fornecer aplicativos Android em qualquer plataforma baseada em GNU / Linux.
O Android dentro do contêiner não tem acesso direto a nenhum hardware. Todo o acesso de hardware está passando pelo daemon anbox no host. Ele reutiliza o que o Android implementou no emulador baseado em QEMU para renderização acelerada do OpenGL ES. O sistema Android dentro do contêiner usa canais diferentes para se comunicar com o sistema host e envia todos os comandos de acesso a hardware por meio deles.
Fonte
Instalação
OBS: Disponível via repositório oficial para Debian Stretch ( Backports ), Debian Buster, Ubuntu 18.10 ( Multiverse ).Para Debian Stretch veja abaixo como habilitar o backports.
Debian Backports
Para instalar de o comando abaixo no terminal.
sudo apt install anbox android-tools-adb android-tools-fastboot git wget curl lzip tar unzip squashfs-tools
Modulo do Kernel (linux)
Atualizado em 05 de Agosto de 2021
Precisamos instalar o modulo para o kernel, considero o uso de uma ppa mais confortável ao iniciante, mas a PPA está inativa e os módulos dela não são compatíveis aos kernels atuais.
Nesse caso iremos usar os módulos disponibilizados no GitHub.
Faça o download com o comando no terminal.
git clone https://github.com/anbox/anbox-modules.git
Entre no diretório de instalação.
cd anbox-modules
Instale com o comando.
sudo ./INSTALL.sh
Imagem Android
Precisamos fazer o download de uma imagem do sistema Android, para isso de os comandos abaixo no terminal.
Entre no diretório das imagens do Anbox.
cd /var/lib/anbox/
Faça o download da ultima imagem até o momento ( Caso prefira escolher uma imagem diferente entre aqui ).
sudo wget https://build.anbox.io/android-images/2018/07/19/android_amd64.img
Optei por renomear a imagem manualmente para que você fixe que ele deve ter o nome de "android.img", do contrario não ira funcionar.
Renomeie a imagem.
Renomeie a imagem.
mv /var/lib/anbox/android_amd64.img /var/lib/anbox/android.img
Ao final reinicie a maquina para carregar os módulos instalados.
sudo reboot
Instalação de APP no Anbox
Para instalar APP, faça o download do .apk que deseja instalar, abra o Anbox e de o comando abaixo para fazer a instalação do .apk.
Sintaxe do comando.
adb install /endereço/do/.apk
Sintaxe do comando.
adb install /endereço/do/.apk
Exemplo o apk da Caixa que está na minha pasta de downloads.
adb install /home/lobo/Downloads/Caixa_3.2-32_minAPI15.apk
Ai está o APP da Caixa instalado.
APP da Caixa rodando.
Para instalar o Play Store e vários APP precisamos de suporte ARM na imagem do Anbox.
Pesquisando na net achei um script no forum Manjaro perfeito para o Anbox do Debian, diferente do Snap.
O script ira descompactar a anbox.img, fazer o download da Gapps ARM, adicionar a imagem anbox descompactada e gerar uma nova imagem, isso tudo de forma automatizada para facilitar a sua vida.
Faça o download do script
APP da Caixa rodando.
Suporte Play Store e suporte ARM
Para instalar o Play Store e vários APP precisamos de suporte ARM na imagem do Anbox.
Pesquisando na net achei um script no forum Manjaro perfeito para o Anbox do Debian, diferente do Snap.
O script ira descompactar a anbox.img, fazer o download da Gapps ARM, adicionar a imagem anbox descompactada e gerar uma nova imagem, isso tudo de forma automatizada para facilitar a sua vida.
Faça o download do script
wget https://www.dropbox.com/s/wyr4p3brfosxl12/install-playstore.sh
Torne o script executavel.
chmod +x ~/install-playstore.sh
Execute o script.
sudo ./install-playstore.sh
Aguarde o final e ao final reinicie a maquina.
sudo reboot
Ai está a loja de APP.
Não são todos os APP que funcionam, mas muitos funcionam :)
Angry birds funciona de boa.
Mas não desanime caso na Play Store diga que o APP é incompatível ao seu dispositivo,
você pode baixar o .apk e instalar com o adb, fiz isso com o WhatsApp e funcionou perfeitamente.
Agora é com você, explore o Anbox :)
Inconveniente
Mesmo fechando o Anbox os módulos continuam rodando e consumindo um pouco de recursos do seu hardware.
Mas você pode matar o processo facilmente com o comando abaixo no terminal.
sudo killall anbox
Para voltar a usar o Anbox sem precisar reiniciar a maquina, reinicie os serviços com o comando abaixo no terminal.
sudo systemctl restart anbox-container-manager.service ; systemctl --user restart anbox-session-manager.service
Pode usar novamente o seu Anbox ;)
Confira abaixo a integração dos APP Android com o desktop.
Ao instalar um APP no Anbox um atalho para o APP é criado em seu menu do sistema.
Você pode acessar os dados salvos no Android rodando no Anbox, basta acessar o diretório /var/lib/anbox/data/media/0/ como root.
Sintaxe do comando que pode ser usado.
sudo gerenciador_de_arquivos /endereço/
No Gnome
XFCE4
LXDE
Mate
Cinnamon
No meu caso é KDE Plasma e como o Dolphin não roda como root, eu uso o Thunar
Uma pergunta feita em uma rede social, "O Anbox consome mais memória que o Genymotion ?" a resposta é não, mas consome mais CPU.
O Genymotion usa para virtualização o VirtualBox e o Anbox o QEMU que consome bem menos recursos de hardware.
Consumo com o Genymotion de 2.59 GB de memória Ram.
Consumo com o Anbox 1.7 GB de memória Ram e um consumo de +- 50% de CPU
Integração com o desktop
Confira abaixo a integração dos APP Android com o desktop.
Ao instalar um APP no Anbox um atalho para o APP é criado em seu menu do sistema.
Dados salvos no Android
Você pode acessar os dados salvos no Android rodando no Anbox, basta acessar o diretório /var/lib/anbox/data/media/0/ como root.
Sintaxe do comando que pode ser usado.
sudo gerenciador_de_arquivos /endereço/
No Gnome
sudo nautilus /var/lib/anbox/data/media/0/
XFCE4
sudo thunar /var/lib/anbox/data/media/0/
LXDE
sudo pcmanfm /var/lib/anbox/data/media/0/
Mate
sudo caja /var/lib/anbox/data/media/0/
Cinnamon
sudo nemo /var/lib/anbox/data/media/0/
No meu caso é KDE Plasma e como o Dolphin não roda como root, eu uso o Thunar
sudo thunar /var/lib/anbox/data/media/0/
Comparativo de uso de hardware
Uma pergunta feita em uma rede social, "O Anbox consome mais memória que o Genymotion ?" a resposta é não, mas consome mais CPU.
O Genymotion usa para virtualização o VirtualBox e o Anbox o QEMU que consome bem menos recursos de hardware.
Consumo com o Genymotion de 2.59 GB de memória Ram.
Consumo com o Anbox 1.7 GB de memória Ram e um consumo de +- 50% de CPU
Olá, fui instalar o software no Debian e me deparei com o seguinte:
ResponderExcluirroot@destroyer:~# apt install anbox-modules-dkms
Lendo listas de pacotes... Pronto
Construindo árvore de dependências
Lendo informação de estado... Pronto
Os seguintes pacotes foram instalados automaticamente e já não são necessários:
libappindicator1 libdbusmenu-gtk4 libindicator7
Utilize 'apt autoremove' para os remover.
Os NOVOS pacotes a seguir serão instalados:
anbox-modules-dkms
0 pacotes atualizados, 1 pacotes novos instalados, 0 a serem removidos e 6 não atualizados.
É preciso baixar 38,2 kB de arquivos.
Depois desta operação, 214 kB adicionais de espaço em disco serão usados.
Obter:1 http://ppa.launchpad.net/morphis/anbox-support/ubuntu cosmic/main amd64 anbox-modules-dkms all 13~cosmic1 [38,2 kB]
Baixados 38,2 kB em 0s (49,4 kB/s)
A seleccionar pacote anteriormente não seleccionado anbox-modules-dkms.
(Lendo banco de dados ... 313391 ficheiros e directórios actualmente instalados.)
A preparar para desempacotar .../anbox-modules-dkms_13~cosmic1_all.deb ...
A descompactar anbox-modules-dkms (13~cosmic1) ...
Configurando anbox-modules-dkms (13~cosmic1) ...
Loading new anbox-1 DKMS files...
Building for 4.9.0-8-amd64
Building initial module for 4.9.0-8-amd64
Done.
ashmem_linux:
Running module version sanity check.
- Original module
- No original module exists within this kernel
- Installation
- Installing to /lib/modules/4.9.0-8-amd64/updates/dkms/
binder_linux.ko:
Running module version sanity check.
- Original module
- No original module exists within this kernel
- Installation
- Installing to /lib/modules/4.9.0-8-amd64/updates/dkms/
depmod...
DKMS: install completed.
root@destroyer:~# cd /var/lib/anbox/
-bash: cd: /var/lib/anbox/: Arquivo ou diretório não encontrado
Parece que a pasta não existe ou foi criada. Não encontrei referência de onde ela foi parar :(
Raphael voce conseguiu resolver esse problema ai?? No meu caso aconteceu a mesma coisa, eu percebi que a pasta anbox estava dentro de /var/lib/dkms/anbox/, movi ela para a pasta lib mas ainda continua nao dando certo. Se vc conseguiu arrumar e puder me falar como fez eu agradeço.
ExcluirSe o dir não existe, crie
Excluirmkdir /var/lib/anbox
Tem que instalar o anbox para ela ser criada
ResponderExcluirCom o suporte para ARM, o Mobdro já instala e correr novamente. Porém não liga a nenhum canal ou stream.
ResponderExcluirO Firefox para Android funciona correctamente, e acede à Internet.
Estou a usar a versão Debian 9 do Anbox.
Ele pede rede wifi, nesse caso use genymotion
ExcluirMuito bom, funcionou perfeitamente no debian 9.8, o unico porém é que eu tive que adiconar o repositório sid no meu sistema pra conseguir baixar o anbox, mas nada de mais, tá perfeito. Obrigado pelo tutorial
ResponderExcluirPra que usar o unstable se o pacote está no backports ? O que faltou foi vc seguir a matéria, ler com atenção. De forma alguma misture o unstable com stable, isso é loucura.
ExcluirRicardo, bom dia, tenho procurado soluções para rodar apps no linux, genymotion configuro beleza, instalo o android porem alguns apps( justamente os que quero) da mensagem de incompativel... no anbox tbm nao consigo rodar o app.... mas parabens pelo seu blog.. ja me ajudou mto. =)
ResponderExcluirOs APP que rodam são muitos, mas ser o que vc quer vai depender da compatibilidade, se não rosa, use em um smartfone.
ExcluirOlá boa noite, tenho uma dúvida como posso excluir um app que não desejo mais. Ter no meu anbox, com o comando adb posso fazer isso ?
ResponderExcluirDesde de já agradeço por compartilhar seu conhecimento e pela estrutura que o site oferece !
Igual no android
ExcluirEm imagem para Android ao digitar o primeiro comando: cd /var/lib/anbox/ , o terminal responde: No such file or directory
ResponderExcluirSimples, vc não seguiu a matéria, não instalou o Anbox recomendado e ou está com o por snap.
ExcluirSegui sim passo a passo cada item
ResponderExcluirCara não tem como não ter o diretório, vc não instalou o anbox e se tem instalado é o por snap. poste um print da saida apt search anbox | grep installed
ExcluirPortugues Version:
ResponderExcluirOi. Eu sou Carlos Ferreyra, de Santiago del Estero, Argentina.
Eu segui o seu tutorial, Verbatim.
No entanto, embora eu tenha conseguido instalar o Anbox, também o Google PlayStore e até conseguimos fazer o download de vários jogos e outros aplicativos, nem os "Angry Birds Friends" nem o "Angry Birds 2", que são jogos, funcionam para mim , para o qual instalei o AnBox principalmente, para minha filha brincar. Mas em suas imagens, o Angry Birds 2 aparece !!!
Esclareço que tenho o Zorin Linux 15, que é baseado no Debian e Ubuntu, se bem me lembro.
Spanish Version:
Hola. Soy Carlos Ferreyra, desde Santiago del Estero, Argentina.
He seguido tu Tutorial, al Pie de la Letra.
Sin embargo, si bien logre instalar Anbox, tambien el PlayStore de Google y hasta he logrado Bajar varios Juegos y alguna que otra aplicacion, No me funcionan ni el "Angry Birds Friends", ni el "Angry Birds 2", que son los juegos, por los que instale AnBox principalmente, para que juegue mi hija. Pero en tus imagenes, aparece el Angry Birds 2 !!!
Aclaro que tengo Zorin Linux 15, que esta basado en Debian y Ubuntu, si mal no recuerdo.
print da saida: (Impresion de la Salida:)
usuario2020@SRVRPC:~$ sudo thunar /var/lib/anbox/data/media/0/
[sudo] contraseña para usuario2020:
Gtk-Message: 12:58:40.221: GtkDialog mapped without a transient parent. This is discouraged.
Thunar: No se pudo abrir «/var/lib/anbox/data/media/0/»: Error al obtener la información del archivo «/var/lib/anbox/data/media/0»: No existe el archivo o el directorio
usuario2020@SRVRPC:~$ apt search anbox | grep installed
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
usuario2020@SRVRPC:~$
Alguns APP não rodam e os que rodam depende de o seu hardware suportar.
ExcluirPrezado, boa tarde:
ResponderExcluirEu uso o Debian 10 e tive o seguinte problema após os passos anteriore:
root@dino:~# apt install anbox-modules-dkms
E: Não foi possível obter trava /var/lib/dpkg/lock-frontend - open (11: Recurso temporariamente indisponível)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?
Você tem alguma sugestão do que eu precisaria fazer?
obrigado
Quando ocorrer esse erro é o sistema buscando atualização, aguarde uns minutos que volta ao normal.
Excluirmeu anbox não executa, dá esse erro no linux mint debian edition:anbox launch
ResponderExcluir[ 2021-03-12 05:08:55] [launch.cpp:169@operator()] The intent you provided is invalid. Please provide a correct launch intent.
[ 2021-03-12 05:08:55] [launch.cpp:170@operator()] For example to launch the application manager, run:
[ 2021-03-12 05:08:55] [launch.cpp:171@operator()] $ anbox launch --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity
renan-linux@itautec-st4262:~$ anbox launch --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity
[ 2021-03-12 05:10:06] [launch.cpp:214@operator()] Session manager failed to become ready
O que fazer?
O comando que vc está usando não é dessa matéria, deveria perguntar onde pegou esse comando ou seguir essa matéria e só.
ExcluirO repositório ppa:morphis/anbox-support acredito não existir mais.
ResponderExcluir