Skip to content

Repository files navigation

📱 TempOrigin

TempOrigin — это мощная и легковесная утилита для Android, созданная специально для смартфонов Vivo и iQOO под управлением OriginOS (поддерживает OriginOS 6, Android 13, 14 и 15+).

Приложение позволяет в один клик разворачивать вторую изолированную систему прямо на вашем телефоне с помощью системного механизма Google DSU (Dynamic System Update), используя оригинальный системный раздел устройства и выделяя под него защищенную виртуальную память (от 2 до 64 ГБ).


🌟 Основные возможности

  • ⚡ Мгновенный запуск DSU: Не требует скачивания тяжелых образов GSI. Система монтирует текущий системный раздел /system как "только чтение", создавая чистый виртуальный /data раздел. Вы получаете абсолютно чистую OriginOS без потери данных основной системы.
  • 🛠️ Интеграция с Shizuku: Автоматический запуск DSU через привилегированный шелл без использования ПК или Root-прав.
  • ⚙️ Отдельное окно настроек (SettingsActivity): Полноценный экран управления параметрами (тема, язык, права Shizuku), разгружающий главный экран.
  • 🎨 Динамический дизайн Material You: Приложение использует современные гайдлайны Material 3, автоматически окрашиваясь в цвета обоев вашего рабочего стола.
  • ✨ Микро-анимации: Плавные переходы цветов и scale-pop эффекты (1.05x) при выборе настроек.
  • 🌐 Реактивная локализация: Моментальный перевод интерфейса (Русский / Английский) прямо «на лету» без перезахода в приложение.
  • 🔍 Обход ограничений SELinux (Android 13+): Умная функция isDsuInstalledRobust опрашивает gsi_tool status напрямую через контекст Shizuku, гарантируя корректное определение установленного DSU вопреки системным запретам.
  • 💻 ADB-инструменты: Для пользователей без Shizuku приложение генерирует и копирует готовые команды запуска и удаления DSU для ручного ввода.

📐 Архитектура проекта

Приложение написано на Kotlin с использованием декларативного фреймворка Jetpack Compose в модульной структуре:

[MainActivity] (Основной экран)
   ├── InfoCard (Информация о системе, API, статусе DSU)
   ├── SettingsCard (Выбор размера изолированной памяти и имени слота)
   ├── InstalledDsuBox (Карточка управления установленной DSU — запуск/удаление)
   └── TopBar (Ярлык быстрого перехода в настройки через Intent)
          │
          ▼
[SettingsActivity] (Экран настроек)
   ├── ShizukuPermissionCard (Интерактивное управление правами Shizuku)
   └── SettingsAndAboutCard (Тонкая настройка темы, языка, ссылки на TG автора)

🚀 Инструкция по компиляции (Сборка с нуля)

Репозиторий содержит сборочный скрипт build_apk.sh, который автоматически разворачивает Gradle, скачивает нужные Build-Tools для Android SDK 34 и компилирует APK.

Способ 1: Автоматическая сборка (Рекомендуется)

Просто запустите скрипт в терминале Linux:

chmod +x build_apk.sh
./build_apk.sh

Скрипт скомпилирует оптимизированный релизный APK-файл и сохранит его по пути: app/build/outputs/apk/release/app-release.apk

Способ 2: Ручная сборка через Gradle

  1. Установите JDK 17 (или выше) и добавьте его в переменные окружения.
  2. В корне проекта выполните сборку отладочной версии (для быстрой разработки):
    ./gradlew assembleDebug
  3. Для сборки финальной оптимизированной версии (с минификацией R8, сжатием ресурсов и весом всего 1.8 МБ):
    ./gradlew assembleRelease

📂 Структура репозитория

TempOrigin/
├── app/
│   ├── src/main/
│   │   ├── java/com/originos/temporigin/
│   │   │   ├── MainActivity.kt        # Главное окно, диагностика и запуск DSU
│   │   │   ├── SettingsActivity.kt    # Отдельное окно настроек и Shizuku
│   │   │   └── ThemeHelper.kt         # Глобальная локализация и Material 3 темы
│   │   ├── res/                       # Ресурсы (иконки, разметка тем)
│   │   └── AndroidManifest.xml        # Манифест приложения с регистрацией окон
│   ├── proguard-rules.pro             # Правила сохранения Shizuku при R8-сжатии
│   └── build.gradle.kts               # Конфигурация компиляции модуля приложения
├── build_apk.sh                       # Автоматический скрипт-компилятор
├── gradle.properties                  # Оптимизация памяти (in-process компиляция)
└── settings.gradle.kts                # Описание структуры модулей Gradle

🤝 Авторство и Telegram

  • Автор проекта: tr1xx
  • Телеграм-канал с проектами: @tr1xx_projects

Разработано с заботой о пользователях OriginOS. Распространение и модификация приветствуются!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages