• Самая правильная имлементация сплеш-скрина

    • Перевод
    • Tutorial
    Вообще, это перевод моей статьи с medium.com, оригинал лежит тут, подписывайтесь, ставьте лайки, как говорится.

    В целом, я видел уже достаточно много статеек на тему как же правильно запилить сплеш на Android, однако все они имеют одну проблему – разрабы забывают о том, что нативные приложения могут вовсе и не иметь единой точки входа – с этим я столкнулся еще в 2009 когда только начинал свой путь разработчика. Представьте себе что вы разрабатываете какой-нибудь клиент для какой-нибудь социалки и кроме android.intent.action.MAIN в вашем манифесте может быть еще с десяток Activity, через которые можно запустить апп – шаринг картинок, текста, нотификации. И по-хорошему везде нужен сплеш!
    Читать дальше →
  • Как написать JS-библиотеку на ScalaJS

    • Tutorial
    Scala.js открывает огромный мир фронтенд технологий для Scala разработчиков. Обычно проекты, использующие Scala.js, это веб- или nodejs-приложения, но бывают случаи, когда вам просто нужно создать JavaScript-библиотеку.

    Есть некоторые тонкости в написании такой Scala.js библиотеки, но они покажутся знакомыми для JS разработчиков. В этой статей мы создадим простую Scala.js библиотеку (код) для работы с Github API и сосредоточимся на идиоматичности JS API.

    Но сначала наверняка вы хотите спросить, зачем вообще может понадобиться делать такую библиотеку? Например, если у вас уже есть клиентское приложение написанное на JavaScript и оно общается с бэкендом на Scala.

    Вряд ли у вас получится написать ее с чистого листа с помощью Scala.js, но можно написать библиотеку для взаимодействия между вами и фронтенд разработчиками, которая позволит:
    • спрятать сложную или неочевидную клиентсайд логику в ней и предоставить удобное API;
    • в библиотеке вы сможете работать с моделями из backend приложения;
    • изоморфный код из коробки и можете забыть про проблемы синхронизации протоколов;
    • у вас будет публичный API для разработчиков, как у Facebook’s Parse.

    Также это отличный выбор для разработки Javascript API SDK, благодаря всем этим преимуществам.

    Недавно я столкнулся с тем что у нашего REST JSON API два разных браузерных клиента, поэтому разработка изоморфной библиотеки была хорошим выбором.
    Читать дальше →
  • День с Ice Cream Sandwich

      На днях на xda-developers появилась сборка Android 4.0 — Ice Cream Sandwich. Изучив комментарии понял что сборка достаточно стабильная за некоторыми исключениями, но было одно но — на моем Nexus One его пока нет, да тут еще заодно и новость пробежала о том что на первый гугловский телефон таких радостей ждать не стоит. Что делать я думал где-то час, потом сел в машину и поехал за Nexus S, но история не об этом, а о том как я сегодня целый день активно пользовался ICS.

      Внимание под катом много красивых картинок (реально очень много)
      Читать дальше →
    • Пишем виджет ХабраКарма ex-CarmaWidget для Android

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

        image

        Принцип таков:
        • Класс — настройки для виджета, который запускается при добавлении последнего на рабочий стол.
        • Класс — провайдер информации для виджета, в котором живут все таймеры.
        • База данных — для хранения информации о пользователе.
        • Два layout'а — для виджета и настройщика.


        Читать дальше →
      • Простой Тайм Менеджер для Android. Часть 2

          В этой части мы будем доделывать приложение «Менеджер Времени» из первой части.

          Сразу выражаю огромную благодарность Belkin и всем тем, кто плюсанул первую часть, вы помогли мне с инвайтом)

          Хочу обратить ваше внимание на то, что я отказался от использование сервиса, как изначально задумывалось. Сами посудите, запускать процесс только для того, чтоб каждую секунду увеличивать таймер — глупость. Решение простое: перед каждой остановкой программы, сохраняем время, а после запуска вычитаем его из текущего времени, получая число секунд.

          План действий:
          • Багфиксы предыдущей версии.
          • Модификация кода, для постоянной работы приложения, а не только для запущенного Activity
          • Уведомления
          • Закинем все это дело на маркет


          Сразу хочу извиниться и похвалиться) Извиняюсь за то что заставил вас долго ждать, а похвалиться тем, что на днях Android принес мне первые ну ооооочень хорошие деньги и я на радостях купил себе xbox и проиграл в него все выходные, поэтому и задержался)

          Итак, поехали!
          Читать дальше →