How-To Guides · Clash Technical Blog

Using Clash on Android: APK Installation, Subscription Import, and Reliable Background Operation

Check Android APK architecture, installation source, VPN permission, and subscription updates separately. After foreground access works, test background operation through locking and network changes. Adjust the current client’s battery and autostart permissions only if it disconnects while locked.

  • Android
  • Background operation
  • Per-app routing
On this page

An installer that cannot be parsed, a signature mismatch, and a proxy that disconnects after the screen locks call for different settings. Before replacing the installer, check its source, architecture, and the existing app so you do not delete a configuration still in use. After installation succeeds, update and activate the subscription. Check background restrictions only once foreground access works.

Android APK: Release Source, System Version, and Architecture

Get the Android APK from the project repository’s Release or a download page explicitly provided by the project, and check the release notes for supported Android versions. Similarly named Clash clients may be older projects, repackaged builds, or maintained projects; verify the actual project before downloading.

Choose the architecture from the table below. If uncertain, use the project’s universal package, which is usually larger.

If “there was a problem parsing the package” appears, do not disable all system protections. First verify the architecture, download completeness, and system version.

Labels shown before installation

LabelMeaning
arm64-v8aMost recent 64-bit ARM phones and tablets
armeabi-v7aOlder 32-bit ARM devices
x86_64Some emulators or a small number of x86 devices
universalContains several architectures and is suitable when you cannot determine which one

Installation-Source Permission, Signature Conflicts, and Security Prompts

When you open an APK in a browser or file manager, Android asks to allow that app to install software from unknown sources. Open the corresponding system setting and temporarily authorize only the current browser or file manager; disable the permission after installation.

If the system reports a signature mismatch, another source's app with the same package name is probably installed. Back up local configuration and identify the old app before deciding to uninstall it; do not overwrite a package with a completely different signature. If Play Protect or a vendor security warning appears, recheck the Release and file instead of permanently disabling protection.

Update the Subscription and Activate the Current Profile

Subscription workflow on Android

  1. Add a remote subscription

    Paste the Clash- or Mihomo-compatible HTTPS address supplied by the provider.

  2. Update immediately

    Observe the status code, parsing errors, and update time.

  3. Enable this configuration

    Ensure that the current Profile is not a sample file or old subscription.

  4. Expand the primary policy group

    Pin one node and use Rule mode first.

Some apps import from the clipboard, a QR code, or URL Scheme. Whichever method you use, check the update time, policy groups, and nodes. If only a subscription name appears and nodes are empty, check download or parsing errors, the current Profile, and whether every node was filtered out.

If the update button keeps spinning, do not add duplicate entries. Compare Wi-Fi and mobile data and look for timeout, TLS, 401/403, or parse error in logs. With no response, check the network. For 401/403, check the account or credentials; for parse error, check the format. Follow the server message for other HTTP statuses.

The subscription link contains a token. After sending it to the phone through a chat app, promptly delete any public message containing the complete URL. If it was posted in a group, reset the address in the service panel.

Start the VPN Connection and Check the Client Notification

Return to the client and start the service. Android shows a “connection request” or similar VPN confirmation, then a key or VPN icon appears in the status bar. This system prompt means only that the app may create a VPN entry; it does not prove the selected node works.

A phone can normally have only one active VPN at a time. If another VPN, ad blocker, or firewall also occupies the system VPN, the new client may fail to start or replace the existing connection. Stop the other VPN-based app before testing.

Signs that the system entry point is ready

  • The VPN confirmation comes from the currently installed client
  • A system VPN icon appears in the status bar
  • If notifications are allowed, the notification shade shows the client’s foreground service
  • Other VPN-based apps have stopped

Verify Browser Requests and the Node in the Foreground

Keep the client in the foreground, start the system VPN, and visit a familiar site in the browser. Return to the client's connections or log screen and find the target domain, matched rule, and node. A green latency number alone does not prove that the browser request used the configuration.

The VPN icon appears, but connection records are empty

Check whether per-app proxying excludes the browser and whether another VPN has taken over.

The connection shows DIRECT

The current rule selected direct access; determine whether that matches the intended configuration.

The connection uses a node and then shows timeout

Pin another node and compare Wi-Fi with mobile data.

The subscription screen shows parse error

Address response format or core compatibility; VPN permission cannot fix it.

Disconnections While Locked: Battery Limits, Persistent Notifications, and Autostart

If it works in the foreground but stops after the screen locks, check whether the background process is still running. Under Android “App info > Battery” or the vendor’s equivalent, allow the client to run in the background and adjust battery optimization as needed. Foreground services submit an ongoing notification, but its visibility also depends on notification permission; its absence alone does not prove the service stopped.

Xiaomi, Huawei, OPPO, vivo, Samsung, and other systems use different labels, such as autostart, background activity, sleeping apps, or unrestricted battery use. Change only the current client’s settings; do not disable power saving for the whole phone.

A cleanup tool terminates the app automatically
Add the current client to its protected list so it is not cleared whenever the screen locks.
It does not reconnect automatically after restarting the phone
Check whether the client offers connect-at-startup and whether the system permits autostart.

Per-App Proxy: Are Selected Apps Proxied or Bypassed?

Android clients commonly offer two directions: “Proxy selected apps only” or “Bypass selected apps.” If the direction and list are reversed, browsers, games, or messaging apps never enter connection records and make the node look dead.

Disable per-app routing for a comparison, then enable it and add one or two target apps. Proxied apps should have connection records. Excluded apps normally connect directly, but may lose access if the system’s “Block connections without VPN” option is enabled. Check the list against actual results, not just checkmarks.

How to interpret per-app results

SettingExpected result
Proxy selected apps onlyOnly apps in the list enter Clash
Bypass selected appsWhen non-VPN connections are not blocked, listed apps connect directly and other apps enter Clash
Feature disabledScope is determined by system VPN capture and rules together

Lock for Five to Ten Minutes, Then Switch Between Wi-Fi and Mobile Data

Keep a fixed node, lock the phone for five to ten minutes, then unlock it, open the same page, and inspect new connection records. Switch between Wi-Fi and mobile data and repeat the request. If the VPN icon remains and both requests use the expected outbound route, the client still works in these states. If notifications are allowed, also check that the ongoing notification remains.

If it stops only after changing networks, reconnect in the client so VPN uses the current network. If it is closed every time the screen locks, check battery restrictions and autostart. If the service stays running but requests report timeout, check the node and DNS. Follow the matching symptom; reinstalling the APK is unnecessary.

References