Skip to content

knowlage-storage/SmtuSchedule

 
 

Repository files navigation

License: CC BY-NC 4.0

Расписание «СПбГМТУ»

Мобильное приложение, которое знает расписание занятий любой группы, любого преподавателя в любой день семестра.

  • Расписания загружаются (парсятся) прямо с сайта Корабелки;
  • Загрузить можно сколь угодно много расписаний, хоть все;
  • После загрузки расписания можно просматривать автономно (без доступа к интернету);
  • Автодополнение по списку преподавателей при загрузке расписаний;
  • Быстрый переход между расписаниями с сохранением просматриваемой даты;
  • Текущая пара подсвечивается;
  • Выводятся только занятия, которые будут в указанный день (с учетом недели: числитель/знаменатель);
  • Открытый исходный код, при желании приложение можно скомпилировать самостоятельно.

Скриншоты

Лайфхаки

  • Вызвать диалог удаления просматриваемого расписания можно нажав и удержав палец на его заголовке;
  • Для возврата на текущую дату при просмотре расписания можно нажать кнопку «Назад»;
  • Нажатие на имя преподавателя (группу) вызовет переход на его расписание, либо появится предложение загрузить расписание, если это не было сделано ранее;
  • Если расписание на сайте обновилось, достаточно загрузить его еще раз с помощью соответствующего меню, удалять перед этим расписание вручную необязательно.

Установка и настройка

  • В настройках смартфона разрешить установку приложений из неизвестных источников (на данном этапе, пока неясно насколько это приложение будет нужно кому-то, кроме меня, нет смысла выкладывать его в Google Play);
  • Загрузить последнюю версию установочного APK-файла и запустить его;
  • По окончанию установки открыть приложение и в его настройках задать значение параметра «Первый день семестра по числителю».

Совместимость

Поддерживаются смартфоны на Android начиная с версии 5.0 и заканчивая 9.0 (последняя на данный момент). Поддержки iOS нет, и, скорее всего, не будет.

Редактирование

При первом запуске приложение создает во внутренней памяти смартфона директорию с названием «Расписание СПбГМТУ». Все загружаемые в дальнейшем с сайта расписания хранятся в этой директории в виде текстовых файлов в формате JSON. Их можно скопировать на компьютер, отредактировать, а затем закинуть обратно на смартфон. После перезапуска приложения изменения вступят в силу. Простейшее изменение, которое можно внести в расписание – это скрыть занятие. Для этого достаточно поменять значение параметра IsDisplayed с «true» на «false». После внесения изменений код желательно проверить валидатором (например, этим) на предмет синтаксических ошибок. Расписания с ошибками приложение не открывает, о чем выводит соответствующее сообщение.

Обратная связь

Пожелания, вопросы, сообщения об ошибках и все, что касается этого проекта, можно написать мне в личку.
Приложение только вышло, сколько в нем еще ошибок никто не знает, поэтому прошу отнестись с пониманием, если что-то работает не так, как должно.
В случае обнаружения ошибки, особенно, если приложение вылетело, прошу подробно описывать предшествовавшие этому действия. Во всех нештатных ситуациях приложение записывает файл с отладочной информацией в директорию Logs, лежащую в директории приложения. Этот файл необходимо приложить к сообщению об ошибке. Он не содержит никакой приватной информации, кроме модели устройства и версии Android.

Коротко о проекте

На создание приложения ушло четыре месяца, во многом, из-за того что это мой первый опыт в мобильной разработке. Сейчас проект состоит без малого из трех тысяч строк кода, разметки, стилей и других ресурсов интерфейса. Приложение написано на языке C# с использованием библиотек Xamarin.Android, Json.NET и HtmlAgilityPack.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 100.0%