105 lines
3.9 KiB
Bash
Executable File
105 lines
3.9 KiB
Bash
Executable File
#!/bin/bash
|
||
|
||
# Автоматическая сборка, установка APK на LG G6 и мониторинг логов
|
||
# Использование: ./install_to_lg_g6.sh
|
||
|
||
# Принудительно используем Java 17 - ту же версию что в gradle.properties
|
||
export JAVA_HOME="/usr/lib/jvm/java-17-openjdk-amd64"
|
||
export GRADLE_OPTS="-Dorg.gradle.java.home=/usr/lib/jvm/java-17-openjdk-amd64 -Dorg.gradle.jvmargs=-Xmx2048m"
|
||
export PATH="/usr/lib/jvm/java-17-openjdk-amd64/bin:$PATH"
|
||
|
||
# Проверяем что Java 17 доступна
|
||
if [ ! -d "$JAVA_HOME" ]; then
|
||
echo "❌ Java 17 не найдена в $JAVA_HOME"
|
||
echo "Проверим доступные версии Java:"
|
||
ls -la /usr/lib/jvm/
|
||
exit 1
|
||
fi
|
||
|
||
echo "🔧 GodEye APK Builder & Installer для LG G6"
|
||
echo "=============================================="
|
||
echo "🔧 JAVA_HOME: $JAVA_HOME"
|
||
echo "🔧 Java версия: $($JAVA_HOME/bin/java -version 2>&1 | head -1)"
|
||
|
||
APK_PATH="/home/trevor/AndroidStudioProjects/GodEye/app/build/outputs/apk/debug/app-debug.apk"
|
||
LG_G6_DEVICE="LGMG600S9b4da66b"
|
||
APP_PACKAGE="com.example.godeye"
|
||
MAIN_ACTIVITY=".LegacyMainActivity"
|
||
|
||
# Функция для логирования с временными метками
|
||
log() {
|
||
echo "[$(date '+%H:%M:%S')] $1"
|
||
}
|
||
|
||
# Проверяем подключение LG G6
|
||
log "🔍 Проверяю подключение LG G6..."
|
||
if ! adb devices | grep -q "$LG_G6_DEVICE.*device"; then
|
||
echo "❌ LG G6 не найден!"
|
||
echo ""
|
||
echo "📱 Убедитесь что:"
|
||
echo "1. LG G6 подключен USB-кабелем"
|
||
echo "2. Включена отладка по USB"
|
||
echo "3. Разрешена отладка на устройстве"
|
||
echo ""
|
||
echo "Подключенные устройства:"
|
||
adb devices
|
||
exit 1
|
||
fi
|
||
|
||
log "✅ LG G6 найден: $LG_G6_DEVICE"
|
||
|
||
# Собираем проект
|
||
log "🔨 Собираю проект..."
|
||
if ! JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64 ./gradlew assembleDebug --no-daemon; then
|
||
echo "❌ Ошибка сборки проекта!"
|
||
exit 1
|
||
fi
|
||
|
||
# Проверяем существование APK файла
|
||
if [ ! -f "$APK_PATH" ]; then
|
||
echo "❌ APK файл не найден после сборки: $APK_PATH"
|
||
exit 1
|
||
fi
|
||
|
||
log "✅ APK файл успешно собран: $(ls -lh $APK_PATH | awk '{print $5}')"
|
||
|
||
# Устанавливаем APK на LG G6
|
||
log "📱 Устанавливаю APK на LG G6..."
|
||
if adb -s "$LG_G6_DEVICE" install -r "$APK_PATH"; then
|
||
log "✅ APK успешно установлен на LG G6!"
|
||
else
|
||
echo "❌ Ошибка установки APK"
|
||
exit 1
|
||
fi
|
||
|
||
# Очищаем логи
|
||
log "🧹 Очищаю старые логи..."
|
||
adb -s "$LG_G6_DEVICE" logcat -c
|
||
|
||
# Запускаем приложение
|
||
log "🚀 Запускаю приложение GodEye..."
|
||
adb -s "$LG_G6_DEVICE" shell am start -n ${APP_PACKAGE}/${MAIN_ACTIVITY}
|
||
|
||
# Ждем немного для инициализации
|
||
sleep 2
|
||
|
||
log "📊 Запускаю мониторинг логов..."
|
||
log "==============================="
|
||
log "🔍 Отслеживаю все события приложения GodEye"
|
||
log "💡 Для остановки нажмите Ctrl+C"
|
||
log "==============================="
|
||
|
||
# Запускаем мониторинг логов с фильтрацией
|
||
adb -s "$LG_G6_DEVICE" logcat -s GodEye System.out | while read line; do
|
||
# Добавляем цветную индикацию важных событий
|
||
if echo "$line" | grep -q "STEP\|EVENT\|CAMERA\|SESSION\|CONNECT"; then
|
||
echo -e "\033[1;32m[$(date '+%H:%M:%S')] $line\033[0m"
|
||
elif echo "$line" | grep -q "ERROR"; then
|
||
echo -e "\033[1;31m[$(date '+%H:%M:%S')] $line\033[0m"
|
||
elif echo "$line" | grep -q "AUTO-ACCEPT"; then
|
||
echo -e "\033[1;33m[$(date '+%H:%M:%S')] $line\033[0m"
|
||
else
|
||
echo "[$(date '+%H:%M:%S')] $line"
|
||
fi
|
||
done
|