117 lines
4.0 KiB
Markdown
117 lines
4.0 KiB
Markdown
|
|
# 📱 Инструкция по тестированию APK на реальном телефоне
|
|||
|
|
|
|||
|
|
## 1️⃣ Подключи телефон к компьютеру
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# Включи на телефоне: Настройки → О телефоне → Нажми 7 раз на "Номер сборки"
|
|||
|
|
# Затем: Настройки → Для разработчиков → Включи "Отладка по USB"
|
|||
|
|
|
|||
|
|
# Проверь подключение:
|
|||
|
|
adb devices -l
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 2️⃣ Удали старую версию (если есть)
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
adb uninstall com.umbrix.app
|
|||
|
|
adb uninstall com.hiddify.app.test
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 3️⃣ Установи новый APK
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# Универсальный APK (работает на всех телефонах):
|
|||
|
|
adb install -r /home/vodorod/dorod/hiddify-original-v2.5.7/build/app/outputs/flutter-apk/app-debug.apk
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 4️⃣ Запусти приложение и собери логи
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# Очисти логи:
|
|||
|
|
adb logcat -c
|
|||
|
|
|
|||
|
|
# Запусти приложение вручную на телефоне
|
|||
|
|
|
|||
|
|
# Собери логи (если крашится):
|
|||
|
|
adb logcat -d > ~/umbrix_crash.log
|
|||
|
|
|
|||
|
|
# Или сразу смотри ошибки:
|
|||
|
|
adb logcat | grep -E "FATAL|AndroidRuntime|crash|umbrix|Umbrix"
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 5️⃣ Если появляется ошибка INSTALL_FAILED_NO_MATCHING_ABIS
|
|||
|
|
|
|||
|
|
Это значит неправильная архитектура. Проверь:
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# Узнай архитектуру телефона:
|
|||
|
|
adb shell getprop ro.product.cpu.abi
|
|||
|
|
|
|||
|
|
# Если телефон ARM64 (arm64-v8a):
|
|||
|
|
adb install -r build/app/outputs/flutter-apk/app-arm64-v8a-debug.apk
|
|||
|
|
|
|||
|
|
# Если старый ARM (armeabi-v7a):
|
|||
|
|
adb install -r build/app/outputs/flutter-apk/app-armeabi-v7a-debug.apk
|
|||
|
|
|
|||
|
|
# Универсальный (тяжелее, но работает везде):
|
|||
|
|
adb install -r build/app/outputs/flutter-apk/app-debug.apk
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 6️⃣ Частые проблемы
|
|||
|
|
|
|||
|
|
### Краш при запуске:
|
|||
|
|
|
|||
|
|
**Причина**: Package name изменился, но нативные библиотеки не пересобрались
|
|||
|
|
|
|||
|
|
**Решение**:
|
|||
|
|
```bash
|
|||
|
|
cd /home/vodorod/dorod/hiddify-original-v2.5.7
|
|||
|
|
flutter clean
|
|||
|
|
cd android && ./gradlew clean && cd ..
|
|||
|
|
flutter pub get
|
|||
|
|
flutter build apk --debug
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### Ошибка "No matching ABIS":
|
|||
|
|
|
|||
|
|
**Причина**: APK собран для другой архитектуры (x86 для эмулятора, ARM для телефона)
|
|||
|
|
|
|||
|
|
**Решение**: Используй `app-debug.apk` (универсальный, 193 MB)
|
|||
|
|
|
|||
|
|
### Приложение установилось, но не запускается:
|
|||
|
|
|
|||
|
|
**Решение**: Собери логи:
|
|||
|
|
```bash
|
|||
|
|
adb logcat -c
|
|||
|
|
# Запусти приложение на телефоне
|
|||
|
|
adb logcat -d | grep -E "FATAL|Exception" > ~/crash.log
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 📍 Где лежат APK файлы:
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
/home/vodorod/dorod/hiddify-original-v2.5.7/build/app/outputs/flutter-apk/
|
|||
|
|
├── app-debug.apk (193 MB) ← ИСПОЛЬЗУЙ ЭТОТ (универсальный)
|
|||
|
|
├── app-arm64-v8a-debug.apk (119 MB) ← Для современных телефонов
|
|||
|
|
├── app-armeabi-v7a-debug.apk (113 MB) ← Для старых телефонов
|
|||
|
|
└── app-x86_64-debug.apk (118 MB) ← Только для эмуляторов
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 🔍 Как понять почему крашится:
|
|||
|
|
|
|||
|
|
1. Установи APK
|
|||
|
|
2. Запусти приложение
|
|||
|
|
3. Собери логи: `adb logcat -d > crash.log`
|
|||
|
|
4. Найди строки с `FATAL EXCEPTION` или `AndroidRuntime`
|
|||
|
|
5. Покажи мне эти строки
|
|||
|
|
|
|||
|
|
## ✅ Что изменилось в Umbrix:
|
|||
|
|
|
|||
|
|
- ✅ Package ID: `com.hiddify.app.test` → `com.umbrix.app`
|
|||
|
|
- ✅ App name: "Hiddify" → "Umbrix"
|
|||
|
|
- ✅ Icons: новые иконки Umbrix (зелёно-синий щит с черепахой)
|
|||
|
|
- ✅ URL scheme: `hiddify://` → `umbrix://`
|
|||
|
|
- ✅ Все URL изменены на umbrix.net
|
|||
|
|
- ✅ Вкладка "Прокси" → "Локации"
|
|||
|
|
- ✅ Privacy policy и Terms созданы
|