Рубрика «разработка мобильных приложений» - 137

Уже продолжительное время я размышляю над паттерном RxPM и даже успешно применяю его в «продакшне». Я планировал сначала выступить с этой темой на Mobius, но программный комитет отказал, поэтому публикую статью сейчас, чтобы поделиться с Android-сообществом своим видением нового паттерна.

Все знакомы с MVP и MVVM, но мало кто знает, что MVVM является логическим развитием паттерна Presentation Model. Ведь единственное отличие MVVM от PM – это автоматическое связывание данных (databinding).

В этой статье речь пойдет о паттерне Presentation Model с реактивной реализацией биндинга. Некоторые ошибочно называют его RxMVVM, но корректно будет называть его RxPM, потому что это модификация шаблона Presentation Model.

Этот паттерн удобно использовать в проектах с Rx, так как он позволяет сделать приложение по-настоящему реактивным. Кроме того, он не имеет многих проблем других паттернов. На диаграмме ниже представлены различные варианты и классификации шаблонов представления:

Реактивные приложения с паттерном RxPM. Прощайте​ MVP и MVVM - 1

Читать полностью »

Осталось буквально четыре дня до момента, когда мы закончим принимать заявки на участие во второй «Мобилизации» Яндекса. Она вновь объединит четыре летние школы для начинающих специалистов: Школу менеджмента, Школу мобильного дизайна, Школу разработки интерфейсов и Школу мобильной разработки под Android.

Натив или гибрид? Специалисты Яндекса отвечают на главный вопрос мобильной разработки - 1

Своим опытом и знаниями с участниками будут делиться не только сотрудники Яндекса, которые делают приложения для миллионов пользователей, но и приглашенные специалисты. Мы не обойдемся только теорией. Будет много практики и командной работы над настоящими продуктами. Как всегда, обучение бесплатное, а всем иногородним студентам Яндекс оплатит проезд и проживание. Если вы еще не отправили заявку, есть немного времени это сделать. Занятия стартуют 3 июля и закончатся 23 сентября — в день двадцатилетия Яндекса.

В мобильной разработке одни из самых горячих споров ведутся вокруг нативной и гибридной разработки. Мы решили дать трём преподавателям «Мобилизации» порассуждать на эту тему. Получилось небольшое интервью, которое может быть интересно как новичкам в разработке, так и тем, кто уже определился со своим выбором.
Читать полностью »

Приглашаем на Android Devs Meetup 26 апреля - 1

Приглашаем Android-разработчиков на шестой Android Devs Meetup, который состоится в московском офисе Mail.Ru Group. Мы обсудим фичи мобильной разработки для Android от разработчиков Одноклассников, а также интересные особенности языка программирования, который сейчас интересует многих разработчиков — Kotlin — на примерах из практики JetBrains, Splyt и Avito. В программе встречи четыре доклада, подробности читайте под катом.
Читать полностью »

Вслед за инструкцией по публикации приложения в App Store выкладываем внутренний свод правил Лайв Тайпинг по публикации приложений в Google Play. Вне зависимости от того, насколько ты крутой и опытный проджект-менеджер, всегда есть шанс забыть что-нибудь. Эта инструкция призвана облегчить вам жизнь.

Итак, что нужно сделать PM`y в ходе публикации:

  1. Создать аккаунт в Google Play Developer Console для заказчика, если у заказчика такового нет, или предложить произвести публикацию с нашего аккаунта.
  2. Оформить privacy policy. Оно должно быть опубликовано в Google Play-консоли. Это ответственность клиента, но при желании исполнитель может продавать свою экспертизу по созданию такого документа, продавать его публикацию и хранение в качестве лендинга.
  3. Подготовить маркетинговые материалы (иконка, скриншоты, IPA, баннер, текст, проморолик).
  4. Обеспечить сборку наличием сертификата цифровой подписи.
  5. Настроить оплату за пользование приложения.
  6. Отправить сборку в Google Play.

Все подробности — под катом.

Инструкция по публикации Android-приложения в Google Play - 1
Читать полностью »

Сегодня наши партнеры – разработчики компании Music Paradise – приготовили новый материал для читателей нашего блога. На этот раз ребята подробно расскажут об интеграции Apple Music в собственное приложение. Аналогичный опыт уже был описан на Хабре, однако статья разработчиков Music Paradise призвана не столько познакомить читателей с данным процессом, сколько подробно рассказать о нем и о некоторых важных, но неочевидных моментах при работе с Apple Music.

«С релизом iOS 9.3 яблочная корпорация дала возможность использовать свой сервис Apple Music для воспроизведения музыки. Мы решили опробовать эту возможность в работе над своим приложением Music Paradise Player. Опыт оказался весьма поучительным — в системе обнаружились некоторые подводные камни и слабые места, о которых полезно знать заранее. В этой статье мы постараемся кратко изложить основные моменты работы с Apple Music, а также некоторые особенности этой системы.

Внедрение сервиса Apple Music в iOS-приложение - 1

Читать полностью »

25 апреля в Москве пройдёт 6-ая Международная мобильная конференция MBLT17. Мероприятие соберёт представителей крупнейших международных и российских мобильных продуктов с миллионной аудиторией Google, Shazam, Facebook, Uber, Spiking, Statsbot и др., которые обсудят текущие тенденции и дальнейшие перспективы мобильного рынка. Финальная программа опубликована на сайте.

Неделя до Международной мобильной конференции MBLT17 - 1

В рамках программы участников ожидают доклады на актуальные темы мобильной индустрии, круглые столы по финтеху, созданию чат-ботов и user acquisition, открытые интервью MBLT Talks с Иваном Козловым, вкусный обед от Тинькофф Банк и шумная after-party. Читать полностью »

Возможно, кто-то, прочитав заголовок, спросит: «Зачем что-то делать со своим кодом?! Ведь С++ кроссплатформенный язык!». В целом, это так… но только пока нигде нет завязок на специфичные возможности компилятора и целевой платформы…

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

В итоге получаем приложение, которое, в некоторой степени, «заточено» под конкретный компилятор (и даже под его конкретную версию!) и целевую ОС. Более того, из-за скудности стандартной библиотеки С++ некоторые вещи просто невозможно написать, не воспользовавшись специфичным API системы.

Так было и у нас в Тензоре. Мы писали на MS Visual Studio 2010. Наши продукты были 32-х битными Windows-приложениями. И, само собой, код был пронизан всевозможными завязками на технологии от Microsoft. Однажды мы решили, что пора осваивать новые горизонты: пора научить СБИС работать под Linux и другими ОС, пора попробовать перейти на другое «железо» (POWER).

В данном цикле статей я расскажу, как мы сделали свои продукты настоящими кроссплатформенными приложениями; как заставили их работать на Linux, MacOS и даже под iOS и Android; как запустили свои приложения на множестве аппаратных архитектур (x86-64, POWER, ARM и другие); как научили работать на big-endian машинах.
Как сделать свой С++ код кроссплатформенным? - 1
Читать полностью »

Производительность мобильных приложений — краеугольный вопрос, вне зависимости от рассматриваемой платформы. О том, какую специфику эта проблема имеет под Android, в том числе в ракурсе перехода с виртуальной машины Dalvik на ART, мы поговорили с Александром Ефременковым.

Производительность приложений под Android - 1

Читать полностью »

Paparazzo. Мощный, стильный, свой. Часть I - 1

Не так давно перед нами встала задача кардинальной переработки процесса подачи объявления через мобильное приложение Avito. Результатом должен был стать инструмент, который сделал бы этот процесс быстрым и необременительным для пользователя. Очевидно, что покупатель предпочитает видеть то, за что он собирается заплатить. Поэтому дать продавцу возможность удобного добавления и редактирования фотографий было одним из наших главных приоритетов. О том, как мы добились желаемого, читайте под катом.
Читать полностью »

Здравствуй, Хабр - 1

Тензор уже более 20 лет работает на рынке программного обеспечения. Бухгалтер, который выдает вам зарплату, точно знает, кто мы, и что мы делаем. А вот в IT-сфере мы о себе специально не заявляли. Пришло время это изменить и познакомиться.

Электронная отчетность, электронный документооборот, поиск и анализ закупок, корпоративная соцсеть, видеокоммуникации, управление персоналом – это лишь часть наших сервисов. Мы автоматизируем рабочие процессы и превращаем их в «несколько кликов».

Работать в СБИС можно офлайн, онлайн и в мобильном приложении.

Не будем грузить вас рассказами о нашем продукте. Если интересно, то вот здесь мы в буковках и картинках рассказали о нем все.

Почему мы – интересные и полезные?

Для разработки своих продуктов (online сервисов, desktop и мобильных приложений) мы используем собственный PaaS-фреймворк.

Backend фреймворк мы пишем на С++, при этом прикладной код можно писать как на С++, так и на Python или Javascript, для этого ко всем встроенным типам сделаны bridges. Помимо встроенных типов и системы вызовов (remoting, IPC, inproc), важной частью фреймворка является сервер приложения, который работает быстрее сервера Node.JS на аналогичном железе, но об этом чуть позже в отдельной статье.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js