128 lines
4.0 KiB
Markdown
128 lines
4.0 KiB
Markdown
# MobileMkch
|
||
|
||
Мобильный клиент для борды mkch.pooziqo.xyz
|
||
|
||
## Возможности
|
||
|
||
- Просмотр всех досок Мкача
|
||
- Просмотр тредов в каждой доске
|
||
- Просмотр деталей треда и комментариев
|
||
- Поддержка изображений и видео
|
||
- Темная/светлая тема
|
||
- Навигация с кнопкой "Назад" (index lore)
|
||
- Улучшенный заголовок с статическими кнопками
|
||
- Система настроек с сохранением:
|
||
- Тема (темная/светлая)
|
||
- Последняя посещенная доска
|
||
- Автообновление
|
||
- Показ файлов
|
||
- Компактный режим
|
||
- Поддержка Android и iOS (с сохранением настроек (блять нахуй я туда полез))
|
||
- **Оптимизации для мобильных устройств:**
|
||
- Кэширование данных для быстрой загрузки
|
||
- Дебаунсинг UI обновлений
|
||
- Оптимизация потребления батареи
|
||
- Агрессивная сборка мусора на мобильных
|
||
- Ограничение частоты сетевых запросов
|
||
- **Многостраничность для списка тредов:**
|
||
- Настраиваемый размер страницы (5-20 тредов)
|
||
- Навигация между страницами
|
||
- Ограничение тредов для больших досок
|
||
- **Управление кэшем:**
|
||
- Очистка кэша досок
|
||
- Очистка кэша тредов для всех досок
|
||
- Очистка кэша деталей тредов
|
||
- Очистка всего кэша
|
||
|
||
## Сборка
|
||
|
||
### Desktop
|
||
|
||
```bash
|
||
go build
|
||
./MobileMkch
|
||
```
|
||
|
||
### Android
|
||
|
||
1. Установите Android Studio (включает SDK и NDK):
|
||
```bash
|
||
# macOS
|
||
brew install --cask android-studio
|
||
|
||
# Или скачайте с https://developer.android.com/studio
|
||
```
|
||
|
||
2. Установите Fyne CLI:
|
||
```bash
|
||
go install fyne.io/fyne/v2/cmd/fyne@latest
|
||
```
|
||
|
||
3. Настройте переменные окружения:
|
||
```bash
|
||
export ANDROID_HOME=$HOME/Library/Android/sdk
|
||
export ANDROID_NDK_HOME=$ANDROID_HOME/ndk
|
||
```
|
||
|
||
4. Соберите APK:
|
||
```bash
|
||
fyne package --os android --app-id com.mkch.mobile
|
||
```
|
||
|
||
5. Установите на устройство:
|
||
```bash
|
||
adb install MobileMkch.apk
|
||
```
|
||
|
||
### iOS
|
||
|
||
1. Установите Xcode из App Store
|
||
|
||
2. Установите Fyne CLI:
|
||
```bash
|
||
go install fyne.io/fyne/v2/cmd/fyne@latest
|
||
```
|
||
|
||
3. Соберите IPA:
|
||
```bash
|
||
fyne package --os ios --app-id com.mkch.mobile
|
||
```
|
||
|
||
4. Откройте в Xcode:
|
||
```bash
|
||
open MobileMkch.xcodeproj
|
||
```
|
||
|
||
5. Подпишите и установите через Xcode или TestFlight
|
||
|
||
**✅ iOS И Android сборка протестирована и работает!**
|
||
|
||
|
||
## Требования
|
||
|
||
- Go 1.24+
|
||
- Fyne v2.6.2
|
||
- Android SDK (для Android)
|
||
- Xcode (для iOS)
|
||
|
||
## Технологии
|
||
|
||
- Go 1.24+
|
||
- Fyne v2.6.2
|
||
- HTTP клиент для API
|
||
|
||
## Структура
|
||
|
||
- `main.go` - точка входа
|
||
- `api/client.go` - HTTP клиент для mkch API
|
||
- `models/models.go` - структуры данных
|
||
- `settings/settings.go` - система настроек
|
||
- `cache/cache.go` - система кэширования с поддержкой пагинации
|
||
- `ui/` - пользовательский интерфейс
|
||
- `manager.go` - управление экранами
|
||
- `boards_screen.go` - список досок
|
||
- `threads_screen.go` - треды доски
|
||
- `thread_detail_screen.go` - детали треда
|
||
- `settings_screen.go` - экран настроек
|
||
- `optimization.go` - утилиты оптимизации
|
||
- `mobile_optimizations.go` - оптимизации для мобильных устройств |