Курс видеоуроков по созданию android приложения Reminder (Material Design)

Внимание! До конца года вы можете подписаться на все наши продвинутые курсы по созданию андроид-приложений и игр со скидкой 40%. Поспешите воспользоваться предложением.

Курс по созданию приложения Reminder

В уроках курса пошагово объясняется, как создать приложение на андроид в материальном стиле, внедрить рекламу и загрузить в Google Play.

Мы начинаем наш продвинутый курс по созданию реального действующего андроид-приложения Reminder (напоминалка). Курс состоит из 10 уроков по созданию приложения и 2х дополнительных уроков по загрузке вашего приложения в маркет Google Play и монетизации его за счет показа рекламы AdMob. Пример приложения можно посмотреть здесь.

В результате этого курса вы за 12 дней создадите настоящее работающее приложение Reminder, затем, по желанию, загрузите его в Google Play и сможете подключить рекламный баннер AdMob для монетизации вашего приложения.

Функционал приложения

С помощью этого приложения можно будет создавать задачи с напоминаниями в определенное время и в определенный день недели, отмечать их как выполненные и снимать отметку выполнения, или просто создавать записи без напоминания. Можно будет использовать приложение для создания списков — списка покупок, например. Записи на экране будут сортироваться по текущим и выполненным, по срокам: на сегодня, завтра и в более отдаленном будущем. Будет также возможность поиска задач среди текущих и выполненных. Плюс приложение будет оформлено в лучших традициях материального дизайна — с Floating Action Button (FAB) — плавающей кнопкой, скрывающимся тулбаром (ToolBar)RecyclerView, анимацией и прочими фишками.

Подпишитесь на видеокурс, чтобы получить доступ к просмотру уроков

Список уроков курса:


Урок 01

Создаем проект, добавляем CoordinatorLayout и Splashscreen

Реализуем возможность отключения сплешскрина при каждом запуске


Урок 02

Подключаем ToolBar, разделяем экран на вкладки

Реализуем SharedPreferences для сохранения настроек


Урок 03

Добавляем Floating Action Button (FAB), создаем макет диалога с FloatingLabels

Добавляем диалоги выбора даты и времени DatePickerDialog и TimePickerDialog


Урок 04

Строим макет элемента списка, добавляем RecyclerView

Пишем кастомный адаптер


Урок 05

Добавляем CircleView

Реализуем анимацию при выделении пунктов в списке


Урок 06

Реализуем сохранение данных в приложении

Подключение базы данных SQLite


Урок 07

Добавляем контекстное меню для удаления задачи

Подключаем SnackBar


Урок 08

Добавляем SearchView

Реализуем поиск задач в базе данных приложения


Урок 09

Подключаем Notification — оповещение о событиях


Урок 10

Реализуем возможность редактирования задачи

Группировка задач на экране с помощью сепараторов


Урок 11

Добавляем рекламный баннер в наше приложение Reminder


Урок 12

Готовим приложение к публикации

Загружаем в Google Play




Подробнее о Продвинутом курсе разработки android приложения

Комментарии: 49
  1. Игорь

    У кого при релизе приложения выскакивает типа:
    — «Error:Error: Fragments should be static such that they can be re-instantiated by the system, and anonymous classes are not static [ValidFragment]»
    добавить в gradle
    — lintOptions {
    disable ‘MissingTranslation’, ‘ExtraTranslation’, ‘StringFormatInvalid’, ‘ValidFragment’
    }

    1. linguaplanernew@gmail.com

      Это не помогает!

    2. uvep1

      А другие варианты как бороться с «Error: Fragments should be static such that they can be re-instantiated by the system, and anonymous classes are not static» имеются. Кто-то может что-то посоветовать???

    3. admin (автор)

      Готовим новую версию приложения, исходники с решениями появятся на страницах курса.

    4. admin (автор)

      В последнем уроке появилась возможность скачать полные рабочие исходники проекта. Внимание: работоспособность проекта гарантируется только при условии совместимости версий конфигураций сборки вашего проекта с исходниками. Сверяйте файлы build.gradle

  2. Maxim

    Здравствуйте!
    Подскажите, будут ли в ближайшем времени какие-нибудь акции по платным курсам?

  3. Игорь

    Прошу помощи! «дэбажная» версия работает,создаю релиз,вылазит вот такая «шапокляк»
    — … \dailog\AddingTaskDialogFragment.java
    — «Error:Error: Fragments should be static such that they can be re-instantiated by the system, and anonymous classes are not static [ValidFragment]»
    Какой урок я пропустил? Подскажите, где «копать»?

  4. Игорь

    У меня проблема! При вводе символа в строке поиска , приложение вылетает.
    Выдает логи ошибок:
    — android.database.sqlite.SQLiteException: near «?»: syntax error (code 1): , while compiling: SELECT * FROM tasks_table WHERE task_titleLIKE ? AND task_status = ? OR task_status = ? ORDER BY task_date

  5. Василий Т.

    Все я нашел проблему, и как обычно это оказался «человеческий фактор», то есть моя невнимательность.
    Прошу прощения за ложную тревогу.
    Спасибо за хорошие уроки!

  6. Василий Т.

    Вот две первые строчки из лога с ошибкой, остальные не пишу так как их очень много:
    03-01 21:07:29.351 28010-28010/com.backatom1.remainder E/AndroidRuntime: FATAL EXCEPTION: main
    03-01 21:07:29.351 28010-28010/com.backatom1.remainder E/AndroidRuntime: java.lang.ClassCastException: com.backatom1.remainder.MainActivity@b5ab1f68 must implement OnFragmentInteractionListener

    А при вылете в приложении просто пишет «В приложении Reminder произошла ошбка».

    И еще исходный код в классе CurrentTascFragment.java не такой как у меня, хотя я имплементировал те же методы что и в видео, но в моем классе больше имплементированных методов.
    Я попробовал поменять код на такой как в исходниках, и после этого приложение стало запускаться, но опят же при сворачивании приложения оно так же вылетает, никак не могу понять в чем дело.
    Спасибо за помощь.

  7. Василий Т.

    Здравствуйте, у меня проблема, во втором уроке после добавления вкладок приложение стало вылетать с ошибкой, не могу понять в чем проблема, делал все в точности как в видео.
    Помогите пожалуйста.

    1. admin (автор)

      Нужен текст ошибки

  8. Сергей

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

  9. Сегодня закончил!!!
    Все получилось!!!

  10. Подскажите как реализовать вызов Диалогового окна из фрагмента если кнопка находится в фрагменте.
    такой вариант не работает :(
    DialogFragment addingListsDialogFragment = new AddingListsDialogFragment();addingListsDialogFragment.show(getActivity().getFragmentManager().beginTransaction(),»AddingListsDialogFragment»);

  11. Всем привет.Хотел бы рассказать историю про то,как я-17 летний школьник-не до программист,создал своё приложение,но сначала предыстория.
    30 августа,я увидел на канале Start Android видео ролик,рассказывающий про набор на продвинутый видеокурс по созданию реального android приложения. На следующий день я оплатил и записался на него.10 сентября начался видеокурс и опираясь на него, я начал создавать своё индивидуальное приложение .Во время разработки я познакомился с Игорем Морозкиным,который мне очень сильно помогал с преодолением всевозможных проблем и трудностей и которому я ОЧЕНЬ сильно благодарен.И вот 14 октября мы закончили разработку приложения под названием Castroom( https://play.google.com/store/apps/details?id=info.fanandroid.reminder
    )
    Приложение простое,многие из вас могли сделать его за день,ну или за час,а мне,человеку,который только-только познакомился с программированием,было очень сложно.Приложение бесплатное и не имеет рекламы,следовательно,на вас я не смогу никак заработать :D,мне просто хочется донести до людей,по моему мнению,полезное приложение.Поэтому, я хотел бы вас попросить,если не сложно,скачать и дать оценку с отзывом(при оценивании помните,что я только познакомился и только начинаю свой путь в программировании).Ваши идеи,так же можете написать здесь,под этой записью.Спасибо за внимание.

  12. Виталий Непочатов

    Всем привет, урок 12.
    Регистрируем аккаунт андроид-разработчика, подписываем apk и публикуем приложение в Google Play
    http://www.fandroid.info/registriruem-akkaunt-android-razrabotchika-podpisyvaem-apk-i-publikuem-prilozhenie-v-google-play/

  13. Не для рекламы ни в коем случае советую всем тем, кто получает ошибки и что то не так как в уроке выходит — программа для сравнения файлов SourceGear DiffMerge. Там самая первая опция сравнение папок. Так вот укажите для первой папки свою с java классами а для второй скачайте исходники урока на котором остановились, распакуйте куда нибудь и также укажите путь к java классам Виталия. Программа выведет список сверяемых файлов и если два раза щелкнуть по одной из строк, то выводится окно сравнения аналогичных файлов. ТАк можно найти опечатки и расхождения в коде.

    1. Александр

      Я использую KDiff3 в составе Git Extensions для Windows

    2. Александр

      Иногда ещё сравниваю файлы в NotePad++, там для этого есть специальный плагин.

  14. Виталий Непочатов

    Всем привет. Опубликован урок 11.

  15. На реальном устройстве с Андроид 4.1 устройство крашится но с дальнейшим продолжением работы, если не ошибаюсь если создать как в уроке на существующее дату и время, и вроде при срабатывании оповещения тоже вылетает ошибка. В журнале ничего особенного нет. Совет »

    Вместо
    notification.flags |= Notification.FLAG_AUTO_CANCEL
    использовать
    builder.setAutoCancel(true); »
    не помог.

    1. Виталий, когда ожидать урок, не подскажете?

  16. Виталий Непочатов

    Всем привет. Опубликован урок 9.

  17. Виталий Непочатов

    Всем привет. Опубликован урок 8.

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

    1. [id28200168|Виталий], http://pastebin.com/fsN7YN1q

    2. спасибо

    3. все спать можно спокойно)

  19. Виталий Непочатов

    Всем привет. Опубликован урок 6.

  20. после добавления в buildgradle строки «compile ‘com.android.support:support-v­ 13:23.0.1′» при синхронизации выбивает кучу ошибок в файле appbuildintermediatesexplod­ed-aarcom.android.supportapp­compat-v723.0.1resvalues-v2­1values-v21.xml
    ошибки типа:
    Error:(26, 21) No resource found that matches the given name: attr ‘android:layout_alignParentSta­rt’.
    или
    Error:(124, 21) No resource found that matches the given name: attr ‘android:colorAccent’.
    (115штук)
    подскажите как исправить пожалуйста.

    1. [id144347983|Артем],

    2. [id28200168|Виталий], пробовал, эффект тот же

    3. [id28200168|Виталий], так же после удаление этой строки и синхронизации происходит то же самое

  21. Сергей

    Здравствуйте, видеокурс хороший и понятный. Жаль, что нет текстовых версий урока было бы очень удобно.

  22. Виталий Непочатов

    Всем привет. Опубликован урок 4.

  23. Ярослав

    Очень доволен началом! Всё очень доступно и понятно объясняется. Уверен, что к концу курса у многих хватит новых навыков, для того, что бы дополнить приложение на свой вкус. Спасибо за вашу работу.

    1. admin (автор)

      Спасибо, успехов в обучении!

  24. Александр

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

    1. admin (автор)

      Спасибо вам за добрые слова! Постараемся учесть все пожелания.

  25. Вже 6 місяців вивчаю Java та Android, практикуюся в написанні додатків, точніще окремих їх частин. Ще не доводилось це все обєднати і написати реальний додаток. Тому дуже вдячний вам за таку можливість! Кожного вечора з нетерпінням чекаю наступних уроків. Дуже цікаво і просто, хороша ідея з конкурсом, в якому я один з п’яти переможців. Дрібниці, проте скільки емоцій після перемоги :)

  26. Извиняюсь за спам если что, но мой предыдущий комент исчез в недрах паутины… мистика)))).
    Поэтому, я повторюсь о том, что урок замечательный, как и все остальные. Главное, что все показано на практике. Подобного в Интернете просто нет! Либо англоязычное, либо от 400 баксов, либо просто не понятно и не реально повторить на практике. Ваши уроки самые доступные для большинства из нас(чайников) во всех смыслах этого слова!
    Спасибо Виталий! Здоровья Вам!

    1. admin (автор)

      Спасибо, успехов вам!

Добавить комментарий