Удалить README_SERVER_BUILD.md
This commit is contained in:
@@ -1,232 +0,0 @@
|
|||||||
# Конвертор координат GPS → APRS, Maidenhead
|
|
||||||
|
|
||||||
## Описание проекта
|
|
||||||
|
|
||||||
Приложение Android для конвертации GPS координат в различные форматы:
|
|
||||||
- Десятичные координаты (широта/долгота)
|
|
||||||
- Градусы, минуты, секунды (DMS)
|
|
||||||
- APRS формат
|
|
||||||
- Maidenhead (QTH локатор)
|
|
||||||
|
|
||||||
**Технологии:**
|
|
||||||
- Kotlin
|
|
||||||
- Jetpack Compose (Material 3)
|
|
||||||
- Android SDK 34
|
|
||||||
- Min SDK: 21
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Структура проекта
|
|
||||||
|
|
||||||
```
|
|
||||||
vs2/
|
|
||||||
├── app/
|
|
||||||
│ ├── src/main/
|
|
||||||
│ │ ├── java/com/example/aprs/
|
|
||||||
│ │ │ ├── MainActivity.kt # Основной экран
|
|
||||||
│ │ │ └── LocationUtils.kt # Утилиты конвертации
|
|
||||||
│ │ ├── res/
|
|
||||||
│ │ │ ├── values/
|
|
||||||
│ │ │ │ ├── strings.xml
|
|
||||||
│ │ │ │ ├── themes.xml
|
|
||||||
│ │ │ │ └── ic_launcher_background.xml
|
|
||||||
│ │ │ └── mipmap-*/ # Иконки приложения
|
|
||||||
│ │ ├── AndroidManifest.xml
|
|
||||||
│ │ └── build.gradle.kts
|
|
||||||
│ └── build/outputs/apk/debug/ # Скомпилированный APK
|
|
||||||
├── build.gradle.kts
|
|
||||||
├── gradle.properties
|
|
||||||
├── settings.gradle.kts
|
|
||||||
└── gradlew # Gradle wrapper
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Требования к серверу
|
|
||||||
|
|
||||||
### Необходимое ПО:
|
|
||||||
- **Java JDK 17** (`/usr/lib/jvm/java-17-openjdk-amd64`)
|
|
||||||
- **Git** (опционально)
|
|
||||||
- **SSH доступ** с паролем или ключом
|
|
||||||
|
|
||||||
### Проверка окружения на сервере:
|
|
||||||
```bash
|
|
||||||
java -version
|
|
||||||
# Должно показать: openjdk version "17.x.x"
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Инструкция по компиляции на сервере
|
|
||||||
|
|
||||||
### 1. Подключение к серверу
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Подключение по SSH
|
|
||||||
ssh ua1zbe@192.168.1.46
|
|
||||||
# Введите пароль: ktdbycrbq1980
|
|
||||||
```
|
|
||||||
|
|
||||||
### 2. Загрузка проекта на сервер
|
|
||||||
|
|
||||||
#### Вариант A: Через rsync (рекомендуется)
|
|
||||||
```bash
|
|
||||||
# С локальной машины
|
|
||||||
rsync -avz -e ssh /home/ua1zbe/my_aprs_project/vs2/ ua1zbe@192.168.1.46:~/my_aprs_project/vs2/
|
|
||||||
```
|
|
||||||
|
|
||||||
#### Вариант B: Через git
|
|
||||||
```bash
|
|
||||||
# На сервере
|
|
||||||
cd ~
|
|
||||||
git clone <repository-url> my_aprs_project/vs2
|
|
||||||
```
|
|
||||||
|
|
||||||
### 3. Сборка APK
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Подключение к серверу
|
|
||||||
ssh ua1zbe@192.168.1.46
|
|
||||||
|
|
||||||
# Переход в директорию проекта
|
|
||||||
cd ~/my_aprs_project/vs2
|
|
||||||
|
|
||||||
# Установка JAVA_HOME
|
|
||||||
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
|
|
||||||
|
|
||||||
# Очистка и сборка
|
|
||||||
./gradlew clean assembleDebug
|
|
||||||
|
|
||||||
# Или только сборка (быстрее)
|
|
||||||
./gradlew assembleDebug
|
|
||||||
```
|
|
||||||
|
|
||||||
### 4. Результат сборки
|
|
||||||
|
|
||||||
APK файл будет создан в:
|
|
||||||
```
|
|
||||||
/home/ua1zbe/my_aprs_project/vs2/app/build/outputs/apk/debug/app-debug.apk
|
|
||||||
```
|
|
||||||
|
|
||||||
Размер: ~12-14 MB
|
|
||||||
|
|
||||||
### 5. Проверка сборки
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Проверка существования APK
|
|
||||||
ls -lh ~/my_aprs_project/vs2/app/build/outputs/apk/debug/app-debug.apk
|
|
||||||
|
|
||||||
# Информация о сборке
|
|
||||||
./gradlew buildEnvironment
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Установка на устройство
|
|
||||||
|
|
||||||
### Вариант A: Через ADB (USB)
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Скачать APK с сервера
|
|
||||||
scp ua1zbe@192.168.1.46:~/my_aprs_project/vs2/app/build/outputs/apk/debug/app-debug.apk /home/ua1zbe/my_aprs_project/vs2/
|
|
||||||
|
|
||||||
# Установить на устройство
|
|
||||||
adb install -r /home/ua1zbe/my_aprs_project/vs2/app-debug.apk
|
|
||||||
```
|
|
||||||
|
|
||||||
### Вариант B: Прямая установка с сервера
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# На сервере (если есть ADB и подключено устройство)
|
|
||||||
adb install ~/my_aprs_project/vs2/app/build/outputs/apk/debug/app-debug.apk
|
|
||||||
```
|
|
||||||
|
|
||||||
### Вариант C: Через файловый менеджер
|
|
||||||
|
|
||||||
1. Скачать APK с сервера через SFTP/SCP
|
|
||||||
2. Передать на телефон
|
|
||||||
3. Установить через файловый менеджер
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Полезные команды Gradle
|
|
||||||
|
|
||||||
```bash
|
|
||||||
# Очистка сборки
|
|
||||||
./gradlew clean
|
|
||||||
|
|
||||||
# Сборка debug версии
|
|
||||||
./gradlew assembleDebug
|
|
||||||
|
|
||||||
# Сборка release версии
|
|
||||||
./gradlew assembleRelease
|
|
||||||
|
|
||||||
# Запуск тестов
|
|
||||||
./gradlew test
|
|
||||||
|
|
||||||
# Проверка зависимостей
|
|
||||||
./gradlew dependencies
|
|
||||||
|
|
||||||
# Остановка Gradle daemon
|
|
||||||
./gradlew --stop
|
|
||||||
|
|
||||||
# Сборка с логом
|
|
||||||
./gradlew assembleDebug --info
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Решение проблем
|
|
||||||
|
|
||||||
### Ошибка: "Could not connect to Kotlin compile daemon"
|
|
||||||
```bash
|
|
||||||
# Остановить Gradle и попробовать снова
|
|
||||||
./gradlew --stop
|
|
||||||
./gradlew clean assembleDebug
|
|
||||||
```
|
|
||||||
|
|
||||||
### Ошибка: "minSdkVersion cannot be smaller than version 21"
|
|
||||||
```bash
|
|
||||||
# Jetpack Compose требует API 21+
|
|
||||||
# Проверить app/build.gradle.kts:
|
|
||||||
# minSdk = 21
|
|
||||||
```
|
|
||||||
|
|
||||||
### Ошибка: "resource not found" для иконок
|
|
||||||
```bash
|
|
||||||
# Проверить наличие директорий mipmap
|
|
||||||
ls app/src/main/res/mipmap-*/
|
|
||||||
|
|
||||||
# Пересоздать иконки при необходимости
|
|
||||||
```
|
|
||||||
|
|
||||||
### Ошибка: "BUILD FAILED - Manifest merger failed"
|
|
||||||
```bash
|
|
||||||
# Очистить сборку
|
|
||||||
./gradlew clean
|
|
||||||
# Проверить AndroidManifest.xml на ошибки
|
|
||||||
```
|
|
||||||
|
|
||||||
### Долгая компиляция
|
|
||||||
```bash
|
|
||||||
# Использовать daemon (по умолчанию включён)
|
|
||||||
./gradlew assembleDebug --daemon
|
|
||||||
|
|
||||||
# Или увеличить память
|
|
||||||
export GRADLE_OPTS="-Xmx2g"
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Быстрая сборка (one-liner)
|
|
||||||
|
|
||||||
```bash
|
|
||||||
ssh ua1zbe@192.168.1.46 "cd ~/my_aprs_project/vs2 && export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64 && ./gradlew assembleDebug" && scp ua1zbe@192.168.1.46:~/my_aprs_project/vs2/app/build/outputs/apk/debug/app-debug.apk /home/ua1zbe/my_aprs_project/vs2/ && adb install -r /home/ua1zbe/my_aprs_project/vs2/app-debug.apk
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Контакты
|
|
||||||
|
|
||||||
Автор: UA1ZBE
|
|
||||||
Дата: Март 2026
|
|
||||||
Reference in New Issue
Block a user