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

Как Chrome и Firefox договариваются о передаче двух видеопотоков - 1

Среди подводных камней WebRTC один особенный. Это то, как браузеры договариваются между собой о передаче медиа-потоков. Кодеки, битрейты, разрешение видео, – вся вот эта история. Кода медиа-поток один — все хорошо. Но когда их два (а видео со звуком, это, на секундочку, два медиа-потока: один для видео, другой для звука), то мнения браузеров о формате описания ситуации резко разделяются. Сделать видеозвонок из Chrome в Firefox можно довольно легко. А вот видеозвонок со звуком — уже нет. Под катом небольшая история, почему так повелось, что запилили в новой Safari и какой особый путь у Microsoft Edge.
Читать полностью »

Завершаем неделю очередным дайджестом: пробуем ARKit, скрываем номера, локализуем, уменьшаем размеры, реализуем новый UI, ищем проблемы и точки роста. Все это и многое другое в нашей новой подборке!

Дайджест интересных материалов для мобильного разработчика #214 (24 — 30 июля) - 1Читать полностью »

Здравствуйте! Недавно опубликовал свой первый серьезный проект, так что решил поделиться опытом, потому что мне очень пригодились подобные статьи, когда я разрабатывал свое приложение. Но прочитав десятки похожих статей, заметил, что практически ничего не написано о вещах, которые на первый взгляд кажутся не особо важными, но которые на деле очень влияют на продвижение приложения. Всю тему разделю на 5 пунктов, которые оказались важными, но о них редко упоминают. Напомню, что это не туториал, а история лично моего опыта.
Читать полностью »

Android Architecture Components в связке с Data Binding - 1

Не так давно для андроид-разработчиков Google представил новую библиотеку — Android Architecture Components. Она помогает реализовать в приложении архитектуру на основе паттернов MVx (MVP, MVVM etc.). Кроме того, уже давно выпущена другая библиотека от Google — Data Binding Library. Она позволяет прямо в разметке связывать отображение UI-контролов со значениями, содержащимися в объектах. Это важная особенность паттерна MVVM — связывать слой View со слоем ViewModel.

Обе библиотеки направлены на построение архитектуры Android-приложений в MVVM стиле.
Я расскажу, как можно использовать их вместе для создания проекта с архитектурой на основе MVVM.

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

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

Обдумав некоторое время данную задачу, я решил реализовать данное меню на основе стандартного компонента DrawerLayout, в основу которого было вложено 2 root элемента — RelativeLayout для основной разметки окна, а также еще один RelativeLayout как контейнер для бокового меню. Хотелось бы добавить, что именно 2 root элемента должно быть внутри DrawerLayout, подробнее об этом контейнере можно прочесть в официальной документации гугла.
Читать полностью »

Введение

Одним из немаловажных аспектов разработки мобильных приложений является оптимизация размера. Мы все по личному опыту знаем, что чем меньше весит приложение, тем охотнее его скачивают, особенно если под рукой нет точки доступа Wi-Fi, а скорость и/или трафик мобильного интернета оставляют желать лучшего. К тому же, нельзя забывать и о том, что некоторые маркеты ставят ограничение на размер выпускаемого приложения. Например, в App Store продукты размером до 100 МБ доступны для скачивания по мобильному интернету, если же вес приложения превышает этот порог, то скачать его можно только через Wi-Fi. На Play Market же приложение, которое вытягивает больше 100 МБ, нельзя загрузить в принципе. В данной статье мы опишем, к каким методам и хитростям прибегали наши разработчики нативных приложений на iOS для того, чтобы уменьшить вес продукта, и добавим к этому несколько дельных советов, найденных в сети.

Уменьшаем размер приложения: проверенные способы - 1

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

«Рынок становится агрессивнее и хайповее» — Александр Зимин о тенденциях iOS-разработки - 1

Чтобы по-настоящему держать руку на пульсе индустрии, требуется прикладывать немало усилий: внимательно следить и за официальными техническими анонсами, и за неформальными настроениями в сообществе.

В случае с iOS-разработкой эти усилия прикладывает Александр Зимин. С одной стороны, он настолько активно смотрел видеозаписи сессий WWDC 2017, что недавно даже составил для всех гид по ним. С другой, он организует встречи CocoaHeads, выступает на различных конференциях, а на приближающейся московской Mobius ещё и входит в программный комитет — то есть очень много контактирует с сообществом и видит, чем оно живёт.

Поэтому сейчас, когда неумолимо приближаются релизы iOS 11 и Swift 4, мы решили расспросить Александра о текущем состоянии iOS-разработки сразу с двух ракурсов: и «что происходит с технологиями», и «что происходит с людьми».
Читать полностью »

Вопрос локализации является краеугольным камнем для множества команд разработчиков по всему миру. Особенно остро этот вопрос стоит, когда рынок продукта однозначно не определен и команда до конца не знает своего потребителя.

image

Будем откровенны: если ваш продукт ориентирован на широкую аудиторию, то английского языка явно недостаточно. Конечно, существуют узкоспециализированные проекты и сервисы вроде нашего, когда знание главного международного языка не прихоть – необходимость, однако ниша подобных разработок крайне узка. И вот, тысячи команд по всему миру рано или поздно упираются в потолок одного-двух языков: один английский, а второй – родной для команды (если она не англоговорящая). Дальше начинаются споры, ссоры, попытки локализации и последующие пляски с бубном.

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

Xamarin.Forms набирает обороты и, к сожалению, из коробки доступно совсем мало возможностей, все неоходимо добавлять через Dependency service или рендереры. На этой волне стало очень много различных библиотек, добавляющих зачастую базовый функционал.
Мое решение не исключение.

У меня стояла задача сделать небольшое расширение, позволяющее добавить эффект нажатия на почти любой элемент для iOS и Android.

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

TamTam: как мы делали новый мессенджер - 1

Привет! Меня зовут Юрий Буянов, я разработчик мессенджера TamTam. Сегодня я хочу рассказать вам немного о том, как он создавался и как устроен изнутри. TamTam — это новый мессенджер Mail.Ru Group, который был разработан на базе приложения «ОК Сообщения». В 2016 году мы сделали отдельный мессенджер в Одноклассниках для тех, кто часто переписывается в соцсети и кому удобнее это делать с помощью отдельного приложения.

Эксперимент получился удачным, поэтому в начале года мы решили развивать «ОК Сообщения» как отдельный от соцсети мессенджер под собственным брендом TamTam, но уже с набранной стартовой аудиторией. Уже за первые недели после запуска в TamTam появились десятки тысяч каналов, а аудитория продолжила общаться так же активно, как и в «ОК Сообщениях». Это стало возможным в том числе благодаря быстрой работе приложения и нескольким техническим фишкам. О них я расскажу подробнее.

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


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