Pleco in Anbox

#1
Has anyone tried installing Pleco in Anbox yet? I installed Anbox in Archlinux without a problem using the AUR package anbox-git.
After loading the necessary kernel modules and starting the systemd services, I checked for hardware compatibility:
Bash:
$ sudo modprobe binder_linux
$ sudo modprobe ashmem_linux
$ sudo systemctl start anbox-container-manager.service
$ systemctl --user start anbox-session-manager.service
$ anbox check-features
  Your computer does meet all requirements to run Anbox
Starting the emulation also works flawlessly:
Bash:
$ anbox launch --package=org.anbox.appmgr --component=org.anbox.appmgr.AppViewActivity
launches an Android 7.1.1 emulation in a window. All the pre-installed standard apps seem to work. I didn’t try anything that requires network functionality, as the bridge is supposedly buggy or not working at all.
On the matter of which apps should work, the official statement is:
As we provide a complete Android system generally all applications are supposed to work. However there are a few exceptions:
  • If your application depends on particular hardware functionality like WiFi, Bluetooth or telephony, we need additional work to bridge those over from the host system. As of right now the only thing you can do is to ensure your application behaves correct when these functionalities are not available.
  • Anbox uses the freeform mode introduced with Android 7 which allows a multi-window system. Your applications needs to play well within the freeform mode to work well in Anbox. You can find more details in the Android Developer Documentation.
Currently, the only way to install apps into this system is to use the Android Debug Bridge. ADB recognizes the emulated device:
Bash:
$ adb devices
  List of devices attached
  emulator-5558   device
I downloaded Plecodict from https://pleco.com/getandroid and tried to install it but got an error:
Bash:
$ adb install ./plecodroid-180703-website.apk
  adb: failed to install plecodroid-180703-website.apk: Failure [INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113]
Is that because I run Anbox on x86 Architecture?
 
#2
Hello Wan,

I think you took the right guess. Searching the all-useful Google for the "INSTALL_FAILED_NO_MATCHING_ABIS" search word yields the following post from Stack Overflow:

https://stackoverflow.com/questions/24572052/install-failed-no-matching-abis-when-install-apk

There, it states:

"INSTALL_FAILED_NO_MATCHING_ABIS is when you are trying to install an app that has native libraries and it doesn't have a native library for your cpu architecture. For example if you compiled an app for armv7 and are trying to install it on an emulator that uses the Intel architecture instead it will not work."

I think "native libraries" means compiled libraries for an architecture. Anything else is perhaps in Java bytecode. So, either you can extend Anbox with ARM emulation, or you would need another emulator?

Best Greetings,

Shun
 
#3
Yes, I had seen the question on stack overflow, and in another place, someone asked about that error in the specific context of anbox, but I wasn't sure.
I raised the issue here because I hoped that maybe Mike knows a workaround.
 

mikelove

皇帝
Staff member
#5
Not aware of any workaround except to install an ARM emulator of some sort - we don't support X86 anymore because some of the partners that we license libraries from have stopped supporting it and so we wouldn't be able to release a fully functional version of Pleco for X86. (and in fairness, X86-on-Android is kind of in its dying throes anyway - hanging on mostly on Chromebooks, but given the spectacular benchmarks that are appearing for the A12X on the new iPad Pros I expect most of those will migrate to ARM as well in the next year or two once Mediatek/Qualcomm start releasing tablet-class chips on the latest TSMC process)
 
#6
I gave installing libhoudini a shot, but didn’t want to mess around too much. Couldn’t get it to work and don’t want to spend too much time on this. Oh well, ARChon it is, then...
 
Top