Overview

This guide explains how to publish React Native (Expo) applications to the Xiaomi GetApps store without installing the full Android Studio suite. It covers the specific requirements, setup process, and solutions to common problems encountered during submission.

Key Advantage: This method saves you from downloading the full Android Studio (~1GB+) by using only the Android SDK Command Line Tools (~150MB).

Prerequisites

You only need these three essential components:

1. Java JDK (LTS)

Install Java JDK 21 (LTS). For Windows, use the .exe installer. Verify with java -version in CMD.

2. Expo Android Keystore (.jks)

Download from your Expo project using eas credentials command.

3. Android SDK Command Line Tools

Download only the command line tools (~150MB) from the official Android Studio page.

Phase 1: Preparation & Binary Generation

1

Install Java JDK (Required)

Install Java JDK 21 (LTS version). The .exe installer is recommended for Windows users. After installation, verify by opening Command Prompt and typing:

java -version

You should see output similar to: java 21.x.x LTS.

2

Download Expo Android Keystore (.jks)

From your Expo project directory, run the following command:

eas credentials

Then choose: Android > Production > Keystore > Download keystore. Save these details securely:

  • .jks file
  • Keystore password
  • Key alias
  • Key password
Important: These values must match your credentials.json file exactly.
3

Download Xiaomi Empty APK

From the Xiaomi GetApps Console:

  1. Open your app and go to "Qualification Certificate"
  2. Under "Empty APK Signature Verification", click "click here"
  3. Download the file: com.xiaomi.getapps.signature.verification.apk
Critical: Do NOT rename this file under any circumstances.

Phase 2: Setup Android SDK Command Line Tools

1

Download Tools

Go to the official Google Android Studio page and download commandlinetools-win-*_latest.zip for Windows (or the appropriate version for your OS).

2

Extract Correctly (Very Important)

To make the tools work, you must follow this exact folder structure:

  1. Create this folder: C:\Android\cmdline-tools\latest\
  2. Copy the contents of the zip so the final structure is: C:\Android\cmdline-tools\latest\bin\sdkmanager.bat
Note: The folder structure is critical for the tools to function correctly.
3

Install Build Tools

Open Command Prompt (CMD) and run:

cd C:\Android\cmdline-tools\latest\bin
sdkmanager "build-tools;34.0.0"

After installation, the required tools (like apksigner and zipalign) will be located in:

C:\Android\build-tools\34.0.0\

Phase 3: Critical Hurdles & Solutions

Problem 1: Empty APK Signature Verification

Challenge: Xiaomi requires you to sign their empty APK using your app's production key.

Solution

Navigate to your build-tools folder in CMD and run:

apksigner sign --ks [KEYSTORE_FILE] --ks-key-alias [ALIAS] --out com.xiaomi.getapps.signature.verification.apk com.xiaomi.getapps.signature.verification.apk

Important: During this command, you will be prompted for passwords. Use the values from your credentials.json:

  • Keystore password for signer #1: Enter the keystorePassword
  • Key "..." password for signer #1: Enter the keyPassword
Security Note: Characters will not appear as you type for security reasons.

Problem 2: "Non-designated empty package" Error

Challenge: Xiaomi rejected the file because the output name was changed.

Solution

The output filename must be exactly com.xiaomi.getapps.signature.verification.apk. Re-run the command using that specific name for the --out flag.

Problem 3: Signature Scheme Mismatch

Solution

Verify the signature using:

apksigner verify -v com.xiaomi.getapps.signature.verification.apk

The result should show v2 scheme: true and v3 scheme: true.

Problem 4: Industry Qualification Confusion

Challenge: The console asks for "Industry Qualification Certificates."

Solution

For utility apps like an "Age Calculator":

  1. No financial license is required (per India-IN regional guidelines)
  2. Proof of Ownership: Upload a screenshot of the Expo Project Dashboard to prove ownership

Phase 4: Final Submission

1

Review Information

Enter "No login required" or appropriate information based on your app's functionality.

2

Warranty

Check the "Warranty against infringement" box to confirm your app doesn't violate any intellectual property rights.

3

Submit

Click the submit button. Your app will now be in the "Review in progress" state.

App Submitted Successfully!