• Британская высшая школа дизайна и MBLTdev представят трек для дизайнеров

      17 ноября в Москве на конференции MBLTdev 16 пройдет трек для дизайнеров мобильных приложений. Проектирование интерактивных интерфейсов, изучение технологий и инструментов, и конечно, эксперименты с кодом в рамках лекций и воркшопов в течение всего дня.



      Читать лекции и делиться практическими знаниями будут ведущие преподаватели курса дизайна мобильных приложений Британской высшей школы дизайна — специалисты известных компаний, обладающие значительным опытом работы в сфере UX/UI сервисных приложений и цифровых продуктов, мобильных разработок и маркетинга.

      Своё участие уже подтвердили:
      Читать дальше →
    • В Казани стартовали курсы Study Jam для Android-разработчиков

      1 марта в Казани стартовал открытый курс для начинающих Android-разработчиков Android StudyJams. Освоить материалы курса помогают профессионалы и активные члены GDG Kazan – ведущие разработчики e-Legion. Как всё прошло – смотрите сами. Фотоотчёт с довольными лицами смотрите в официальной группе.


      Подробности
    • Построение Android приложений шаг за шагом, часть вторая



        В первой части статьи мы разработали приложение для работы с github, состоящее из двух экранов, разделенное по слоям с применением паттерна MVP. Мы использовали RxJava для упрощения взаимодействия с сервером и две модели данных для разных слоев. Во второй части мы внедрим Dagger 2, напишем unit тесты, посмотрим на MockWebServer, JaCoCo и Robolectric.
        Читать дальше →
      • Android VIPER на реактивной тяге

        • Tutorial


        Чем больше строк кода написано, тем реже хочется дублировать код, а чем больше проектов реализовано, тем чаще обходишь старые, хоть и зачастую любимые, грабли, и начинаешь все больше интересоваться архитектурными решениями.
        Читать дальше →
      • Итоги 2015 года для Android-разработчиков

          2015 год закончился, а это значит, что настала пора подвести итоги. Что же важного, полезного и интересного для Android-разработчиков произошло в ушедшем году — читайте в нашем блоге.


          Читать дальше →
          • +23
          • 18.9k
          • 9
        • Android архитектура клиент-серверного приложения

          • Tutorial
          Клиент-серверные приложения являются самыми распространенными и в то же время самыми сложными в разработке. Проблемы возникают на любом этапе, от выбора средств для выполнения запросов до методов кэширования результата. Если вы хотите узнать, как можно грамотно организовать сложную архитектуру, которая обеспечит стабильную работу вашего приложения, прошу под кат.


          Читать дальше →
        • Хотите управлять продуктом? О чем молчат все менеджеры по продукту

          • Translation
          Безусловно, каждый в команде разработчиков делает всё возможное для выпуска крутого продукта. Но в случае неудачи все шишки сыплются на одного человека — менеджера по продукту. Конечно, на орехи достанется не только ему. Но именно для менеджера по продукту эта неудача — не просто «рабочий момент», а крест на всей проделанной работе.

          Как вообще становятся менеджерами по продукту? Кто этот человек на самом деле? Чем именно он занимается целыми днями, из-за чего переживает? Как, в конце концов, строятся его взаимоотношения с продуктом, коллегами, пользователями и объективной реальностью? Мы перевели для вас статью об этом.

          Перевод статьи выполнен компанией-локализатором Alconost.

          image
          Читать дальше →
        • Дайджест интересных материалов для мобильного разработчика #110 (29 июня-5 июля)

            В очередном дайджесте выход новых версий Qt, Cordova и iOS, уроки создания контента для Google Play, A/B тестирования и разработки уровней для игр «три в ряд», «Twitch для программирования» и множество других интересных материалов.

            Читать дальше →
          • Самая большая проблема в веб-разработке


              Привет, Хабр мы — команда TrackDuck, сервиса, который позволяет визуально комментировать «живые» веб-сайты и изображения. Идея продукта появилась на свет 9 месяцев назад. Мы встретились втроем на хакатоне Garage48 в Минске и объединила нас общая проблема — отсутствие качественной коммуникация с клиентами и заказчиками в веб-разработке. Казалось бы, все просто, сделал проект, выложил его на dev сервер или отправил дизайн заказчику, заказчик посмотрел, прислал в ответ комментарии разработчику, который исправил их и получил деньги за свою работу. Но все знают — в жизни все сложнее и в разы печальнее.
              Читать дальше →
            • GPS-монитор под андроид «KidsTrack»

                Задача: наступает лето, дети все больше времени проводят где-то на улице, и я бы хотел знать, где они находятся. Идеальный вариант — я просто даю им с собой старый андроидный телефон, и затем наблюдаю за ними по карте на большом домашнем мониторе.
                В этой статье я расскажу, почему и как я написал свое первое приложение для Андроид с функциями GPS «KidsTrack», и какие открытия при этом сделал. Статья будет полезна тем, кто недавно начал программировать под Android.

                Читать дальше →
              • Как Aviasales на Material Design переходил

                  В июне 2014 года на конференции Google I/O вместе с новой версией операционной системы Android 5 была представлена целая философия дизайна от Google — Material Design.



                  Разрабатывая прежние Android-версии Aviasales, мы далеко не во всем «слушали» Google. Теперь же, с выходом Android 5, было решено опробовать новые гайдлайны, и о наших впечатлениях я расскажу ниже.
                  Читать дальше →
                • Организация архитектуры взаимодействия Activity и Service

                    Приветствую!

                    Сегодня я решил поведать Вам мой способ организации activity-service interaction в Android приложениях. Мотивирован топик тем, что достаточно часто можно встретить приложения, в которых, скажем, поход на сервер организовывается внутри активити в AsyncTask. При этом часто встречается верная мысль, что это надо делать в сервисах, но нигде в оф. документации нет ни слова об организации правильной архитектуры двустороннего взаимодействия между ними.

                    Поэтому я методом проб и ошибок пришел к архитектуре, лично для меня покрывающей все необходимые вопросы.

                    Об этом методе я буду рассказывать далее.
                    Читать дальше →
                  • Knork: простейшая альтернатива ButterKnife в 160 строк кода

                      Хабрапривет!

                      Ниже речь пойдет о view injection, костылестроении, аннотациях, рефлексии, о жалкой попытке превзойти Джейка Уортона и о том, что свой велосипед ближе к телу.

                      Что же такое view injection? Это способ избежать вот такого рутинного кода:

                      Button button = (Button) findViewById(R.id.button);
                      button.setOnClickListener(new View.OnClickListener() {
                        public void onClick(View v) {
                          // ...
                        }
                      });
                      
                      

                      Если использовать view injection с помощью, скажем, ButterKnife, написанного Джейком Уортоном (Jake Wharton), то код становится прозрачнее:

                      @InjectView(R.id.button) Button mButton;
                      
                      @OnClick(R.id.button)
                      public void onButtonClick() {
                        // ...
                      }
                      
                      

                      Но при ближайшем рассмотрении оказывается, что и ButterKnife не идеален.
                      Читать дальше →
                    • Встреча мобильных разработчиков Казани 8 апреля

                        Уже завтра, 8 апреля в Казани пройдет встреча мобильных разработчиков.

                        Встреча пройдет в Высшей школе ИТИС Казанского Федерального Университета и соберет всех, кто хочет повысить свой уровень знаний в области мобильной разработки для iOS и Android.
                        image
                        На встрече выступят:
                        • Рустем Саиткулов, Digital Zone «Обзор библиотек для реализации паттернов Material Design»
                        • Александр Черный, indie–разработчик «Создание детских интерактивных книг»
                        • Даниил Сердюков, e-Legion «Кодогенерация на этапе компиляции»
                        • Алексей Алешков и Артур Корчагин, Webparadox «Functional Reactive Programming на пальцах»

                        Встреча бесплатная, необходима регистрация.
                      • Анимации c помощью Transitions API

                          Привет!

                          На хабре ещё не была освещена тема Transitions API для анимаций, которые появились в Android начиная с 4.4 (KitKat) и продолжили свое развитие в 5.0 (Lollipop). В своей статье я расскажу о том, как упростить работу с анимациями с их использованием и как применять их на любом устройстве с версией Android 4.0 и выше.


                          Читать дальше →
                        • Работа с геозонами (geofences) в Android


                          Добрый день, хабровчане. Сегодня я хотел бы рассказать о Location APIs в общем и о геозонах (geofences) в частности, которые были представлены на Google I/0 2013 (видео и презентация). Не смотря на то, что событие произошло более полугода назад, на хабре до сих пор нет вменяемой информации об этом (только одно упоминание). Постараюсь немного исправить ситуацию.
                          Читать дальше →
                          • +16
                          • 19k
                          • 7
                        • 300 потрясающих бесплатных сервисов

                          • Translation


                          Автор оригинальной статьи Ali Mese добавил ещё 100 новых бесплатных сервисов. Все 400 потрясающих сервисов доступны здесь. И еще подборку +500 инструментов от 10 марта 2017 г. смотрите здесь.



                          A. Бесплатные Веб-Сайты + Логотипы + Хостинг + Выставление Счета

                          • HTML5 UP: Адаптивные шаблоны HTML5 и CSS3.
                          • Bootswatch: Бесплатные темы для Bootstrap.
                          • Templated: Коллекция 845 бесплатных шаблонов CSS и HTML5.
                          • Wordpress.org | Wordpress.com: Бесплатное создание веб-сайта.
                          • Strikingly.com Domain: Конструктор веб-сайтов.
                          • Logaster: Онлайн генератор логотипов и элементов фирменного стиля (new).
                          • Withoomph: Мгновенное создание логотипов (англ.).
                          • Hipster Logo Generator: Генератор хипстерских логотипов.
                          • Squarespace Free Logo: Можно скачать бесплатную версию в маленьком разрешении.
                          • Invoice to me: Бесплатный генератор счета.
                          • Free Invoice Generator: Альтернативный бесплатный генератор счета.
                          • Slimvoice: Невероятно простой счет.

                          Читать дальше →
                        • Синхронизация в Android приложениях. Часть первая

                          • Tutorial
                          image
                          На дворе 2014 год, доля Android JellyBean перевалила за 60%, появились новые тренды в дизайне. В общем, случилось много всего интересного. Но синхронизация данных с сервером осталось неотъемлемой частью большинства приложений. Существует много способов реализации ее в приложении. Android предоставляет нам SyncAdapter Framework, который позволяет автоматизировать и координировать этот процесс и предоставляет множество плюшек в довесок.

                          Account


                          Для начала нам потребуется собственный аккаунт на устройстве. Сначала, я думаю, стоит ответить на вопрос, зачем? Действительно, зачем?

                          Краткое резюме преимуществ:
                          • Поддержка фоновых механизмов вроде SyncAdapter
                          • Стандартизация способа авторизации
                          • Поддержка различных токенов (прав доступа)
                          • Шаринг аккаунта с разграничением привилегий (возможность использовать один аккаунт для различных приложений, как это делает Google)

                          Шаги для получения плюшек:
                          1) Создание Authenticator'а
                          2) Создание Activity для логина
                          3) Создание сервиса для общения с нашим аккаунтом

                          Читать дальше →
                        • Синхронизация в Android приложениях. Часть вторая

                          • Tutorial
                          account
                          Коллеги, добрый день. Продолжим тему, начатую в прошлой статье, где мы рассмотрели механизм создания аккаунта на устройстве. Это было первым необходимым условием для использования SyncAdapter Framework'а.

                          Вторым условием является наличие ContentProvider'а, процесс написания которого разжеван в документации. Признаться честно, мне не очень нравится как там это описано: все кажется громоздким и сложным. Поэтому немного повелосипедим и еще разок пережуем эту тему. Можно было бы обойтись и провайдером-заглушкой, но мы люди серьезные и будем использовать всю мощь этого инструмента.

                          В комментариях к предыдущей части промелькнула просьба рассмотреть случай, когда нам не нужна авторизация, а только синхронизация. Такой случай и рассмотрим. В качестве примера возьмем и напишем простую rss читалку для чтения нашего любимого хабра и не только. Да вот так банально.

                          В приложении будет возможность добавлять/удалять ленты, просматривать список новостей и открывать их в браузере. Визуализировать процесс синхронизации и ее запуск будем с помощью добавленного недавно в support-library класса SwipeRefreshLayout. Почитать, что это и как использовать, можно тут.

                          Чтобы настраивать автоматическую синхронизацию через определенные интервалы времени, нам потребуется экран настроек этого добра. Желательно, чтобы доступ к нему был не только из приложения, но и из системного экрана нашего аккаунта (как на скриншоте к статье). Используем для этого PreferenceFragment'ы. С функциональностью определились, приступим.
                          Читать дальше →
                          • +32
                          • 38.1k
                          • 2
                        • AppCompat v21 — Material Design для пре-Lollipop устройств

                          • Translation
                          image
                          17 октября был опубликован Android 5.0 SDK, который принес новые виджеты и материальный дизайн. Мы расширили библиотеки поддержки, чтобы вы могли использовать ваши последние разработки и на предыдущих версиях Android. Это изменения включают в себ крупное обновление для AppCompat, а так же библиотеки RecyclerView, CardView и Palette.

                          В этом посте мы взглянем, что нового появилось в AppCompat и как это использовать для поддержки материального дизайна в ваших приложениях.
                          Читать дальше →