EDIT December 29, 2018
I found something named anbox. From their github :
Anbox is a container-based approach to boot a full Android system on a
regular GNU/Linux system like Ubuntu. In other words: Anbox will let
you run Android on your Linux system without the slowness of
virtualization.
Anbox uses Linux namespaces (user, pid, uts, net, mount, ipc) to run a
full Android system in a container and provide Android applications on
any GNU/Linux-based platform.
The Android inside the container has no direct access to any hardware.
All hardware access is going through the anbox daemon on the host.
We're reusing what Android implemented within the QEMU-based emulator
for OpenGL ES accelerated rendering. The Android system inside the
container uses different pipes to communicate with the host system and
sends all hardware access commands through these.
This is interesting. But I haven't tested it yet, but some articles on the net refers to that. You guys may want to take a look. Meanwhile, I'll update this answer later when I've tried them.
=============================================================
Original answer below.
You can either :
- Run ARChon Runtime for Chrome. It is an android runtime, made for Google Chrome. More info Click here. (You will need to convert APK to archon package with android phone. Also not all apps are compatible. I guarantee a headache, Prepare your paracetamol.)
- Run android-x86 in a VirtualBox or similar. More information Here. You may hit performance issues because emulated GPU anyway.
- Use Genymotion. More information here. Basicly something like BlueStacks, but also have multiple device support and most importantly, supports ubuntu. (I can't comment for performance, but in windows, it is great! Also it supports multi touch screens - again on Windows. can't comment on ubuntu.)
For exactly like wine, where you aren't emulating the whole OS, I think ARChon is the most accurate answer. But I'm pretty sure you will hit too much issues and probably just give up like me.
We all know Android is based on Linux kernel. But that doesn't mean that's the same thing. Android doesn't use X server like your desktop.
So AFAIK, there are no solution so far. Sorry.