Back to Mnn

Mobile Download Feature Testing Guide

apps/Android/MnnLlmChat/docs/mobile_use.md

3.5.02.5 KB
Original Source

Mobile Download Feature Testing Guide

This document outlines how to verify the model download functionality and status updates using the Mobile MCP tools.

Prerequisites

  • Ensure the Android emulator or device is connected.
  • Ensure the MnnLlmChat app is installed and running.

Testing Steps

1. Setup & Launch

First, list available devices and ensure your target device is ready.

bash
mobile_list_available_devices

Launch the application:

bash
mobile_launch_app(device="YOUR_DEVICE_ID", packageName="com.alibaba.mnnllm.android")

2. Locate a Model

Navigate to the Model Market. You can use filters to find specific models quickly (e.g., MobileLLM).

Action: Open Filter Menu Find the coordinates for "全部筛选" (Filter All) and click it.

bash
mobile_list_elements_on_screen(device="...")
mobile_click_on_screen_at_coordinates(device="...", x=..., y=...)

Action: Apply Vendor Filter

  1. List elements to find the "MobileLLM" (or other vendor) radio button.
  2. Click the vendor option.
  3. Click the "确认" (Confirm) button at the bottom.

3. Start Download

Find a model that is not yet downloaded (button says "下载" / "Download").

Action: Click Download

bash
mobile_click_on_screen_at_coordinates(device="...", x=BUTTON_X, y=BUTTON_Y)

4. Monitor Progress

You can monitor the download progress via logs or by repeatedly checking the screen status.

Log Monitoring: Check for download progress events:

bash
adb -s YOUR_DEVICE_ID logcat -d | grep "onDownloadProgress"

Screen Monitoring: List elements periodically to see the button text change (e.g., "Preparing..." -> "1.5%" -> "50.0%").

5. Verify Completion Status

Once the download finishes, verify the final UI state.

Expected Result:

  • Button Text: Should change to "对话" (Chat).
  • Status Text: Should show the file size (e.g., "626.72 MB").
  • Negative Check: The status text should NOT contain "(有更新可用)" or "(Update Available)".

Action: Verify Elements

bash
mobile_list_elements_on_screen(device="...")

Check the text field of the corresponding model's status TextView.

Troubleshooting

If the status incorrectly shows "Update Available":

  1. Check adb logcat for onDownloadHasUpdate events.
  2. Verify if the hasUpdate flag was set during the onRepoInfo callback in ModelDownloadManager.
  3. Ensure ModelDownloadManager.onDownloadFileFinished is being called and properly clearing the flag.