How to play Arknights on Linux, using MAA and key mapping

Note. This guide is written under Arch Linux

# Android Emulator or Container?

  • Emulator
    • Pros: Safety from good separation with system, cross-platform, user-friendly.
    • Cons: High system resource usage, easily stuck.
  • Container
    • Pros: Good mosaic with system, less resource usage, running fluently.
    • Cons: Complex dependents, more bugs, fewer options

Have a clear mind about the needs and choose one option for running Arknights.

# Emulator

Note. Arknights needs about 3G + 7G storage, above 24G is recommended. RAM has less requirement, but above 8G is still recommended.

# AVD (Android Virtual Device, the project under Android Studio)

AVD originally is used for debugging in Android Studio, but the complete version of Android and functions people also use it as an emulator for games.

Download and Install Android Studio ($ yay -S android-studio in Arch Linux), More Actions > Virtual Device Manager, Create device, and then you could modify emulator by yourself. Android 11 with 16:9 resolution is recommended for MAA.

# Genymotion

Note. Arknights of Bilibili version always break while using Genymotion, you could have a try in your device.

Genymotion offers AppImage (Installer) version that can run directly.

Genymotion is not a free software which have watermark using free version. After register, choose Android 11 and above then install (Android 11 and above have x86_64 structure)

# Container

Waydroid is highly recommended. It is not recommended to use container while using WM that is not run on Wayland. After fixing several bugs of Anbox, I found that numerous API have changed. And Xdroid is too buggy.

  • Waydroid dependence installation

    • linux-zen kernel: Highly recommend for desktop computer for the kernel has several optimizations for gaming. But it will increase battery usage.
    • dkms only: Recommend for laptop. $ yay -S binder_linux-dkms. If missing headers, install $ sudo pacman -S linux-headers
  • Waydroid installation

    • Follow this instruction and install depending on your distro. Then $ waydroid init. If report RE, check dependence installation.
    • waydroid show-full-ui enter Android directly.

# Arknights Installation

Although most emulators and containers are able to install directly through dragging .apk to UI, we could also install it using adb which is required by MAA:

  • adb installation
    • If you use Android Studio, you could find adb under ~/Android/emulator/platform-tools. You could run shell under the path directly. As for others, $ sudo pacman -S android-tools or install adb in other distros.
    • $ adb devices check your emulator or container is in the list. If not, please check Android Debug Bridge is enable in Developer Options in Android.
  • Install Arknights using adb
    • $ adb install foo, foo is the path of .apk package.

# Key Mapping

The logic of pause deployment is that click back 🔙 will change the statue of Pause or Unpause. Thus, after dragging out operator, we pass the pause command then we could deploy while game is pause.

# KeyMapper Android App

After concerning a lot about how to achieve key mapping on PC, why don’t we try to do this on our Android? There are a huge bunch of software, but KeyMapper is the most lightweight and compatible though it pauses developing.

# QtScrcpy

Origins from scrcpy of Genymobile, an open-source software copy screen from Android to PC. QtScrcpy add key mapping function from it.

# Python Script (Using APIs of pynput)

Sample

# MAA

We have described in this link clearly. If you want to add something you could make comment or PR directly.

Built with Hugo
Theme Stack designed by Jimmy