Привет! Сегодня в нашем блоге Макс Туев, архитектор Surf, одной из наших сертифицированных студий. Ребята занимаются заказной разработкой, поэтому сроки важны не меньше, чем качество кода. Подходы и технологии, которые тормозят разработку, здесь не подходят. Хороший пример такого — RecyclerView.Adapter. Под катом Макс расскажет, как сэкономить время и нервы. Слово Максу.
Читать полностью »
Рубрика «разработка мобильных приложений» - 104
Головная боль от RecyclerView.Adapter — выход есть
2017-12-20 в 12:53, admin, рубрики: adapter, android, Google, java, mobile, Блог компании Google, дизайн мобильных приложений, мобильная разработка, разработка мобильных приложений, Разработка под androidКак Android запускает MainActivity
2017-12-19 в 21:51, admin, рубрики: activity, java, MAIN, MainActivity, метод main(), перевод, разработка мобильных приложенийНедавно я провел исследование о main() методе в Java и то, как он служит точкой входа для любого приложения Java. Это заставило меня задуматься, а как насчет Android-приложений? Есть ли у них основной метод? Как они загружаются? Что происходит за кулисами до выполнения onCreate()? Майкл Бэйли очень подробно рассказал о том, как работает Main Thread, так что это быстрый обзор его доклада плюс дополнительная информация из Android Open Source Project (AOSP).
В этой статье мы рассмотрим:
- Что происходит от нажатия на иконку приложения до запуска MainActivity
- Найдем основной метод приложения и узнаем, как основной поток (он же UI, он же Main Thread) получает свое назначение.
- Рассмотрим роль, которую играют Looper & Handler в передаче сообщений, которые в конечном итоге приводят к созданию вашей Activity.
Что происходит при запуске приложения
При запуске любого приложения, многое происходит глубоко внутри на уровне ядра, например начальная загрузка Zygote, загрузка классов в JVM, а для JVM — найти основной метод static void main(String args []) и вызывать его. В случае Android JVM находит основной метод main() в ActivityThread. Затем он вызывает main(), после чего ядро передает управление вашему приложению. Итак, мы нашли точку входа — ActivityThread, но прежде чем подробно изучить это, давайте посмотрим на дорожную карту процесса, чтобы визуализировать всю операцию.
Читать полностью »
WebRTC: как два браузера договариваются о голосовых и видеозвонках
2017-12-18 в 10:57, admin, рубрики: javascript, voximplant, WebRTC, Блог компании Voximplant, Программирование, Разработка веб-сайтов, разработка мобильных приложений
Спойлер: никак. За них это делает разработчик.
Когда много лет назад начали убивать Flash, пострадали не только браузерные игры. Flash традиционно была сильна в голосовых и видеозвонках: прямой доступ к микрофону, камере, динамикам, возможность работать с UDP-пакетами. В HTML5 заменой стала технология WebRTC. Та самая, которая несколько месяцев назад наконец-то приземлилась в Safari и Edge. Теперь можно звонить с веб-страницы, открытой на iPhone, на другую веб-страницу, например, открытую в Firefox Quantum на линуксе.
Одна из «фишек» WebRTC, которой не было у Flash — это возможность P2P-соединений между браузерами. Но чтобы peer-to-peer работал, программисту придется помучиться. О том, как браузеры договариваются куда слать UDP-пакеты, и что при этом должен сделать разработчик — под катом.
Читать полностью »
Зимняя стажировка для мобильных разработчиков в Redmadrobot
2017-12-18 в 9:50, admin, рубрики: redmadrobot, Блог компании REDMADROBOT, мобильная разработка, разработка мобильных приложений, Разработка под android, разработка под iOS, стажировкаПривет! Мы открываем набор на четвертую стажировку для разработчиков в московском офисе Redmadrobot. Старт 18 января 2018 года, продолжительность программы 7-8 недель. Сбор заявок до 24 декабря.
Читать полностью »
Полезное дизайнеру: бесплатные новинки для оптимизации дизайн-процессов. Выпуск 2-й
2017-12-17 в 14:26, admin, рубрики: animation, Bootstrap, canvas, color, design, design principles, development, font, Git, iOS, JS, mockup, plugin, React, sketch, tools, ui kit, usability, веб-дизайн, интерфейсы, разработка, Разработка веб-сайтов, разработка мобильных приложенийЗа последнее время мне удалось найти множество интересных мини-продуктов и небольших инструментов / утилит, которые призваны ускорить ваш дизайн-процесс. В этом выпуске вы найдете 14 ссылок на разные релизы, авторы которых вносят значительный вклад в развитие профессионального сообщества дизайнеров и разработчиков.
Читать полностью »
Простая реализация Token для взаимодействия мобильного приложения с WebAPI
2017-12-17 в 12:50, admin, рубрики: api, C#, httpclient, Visual Studio, webapi, xamarin, xamarin.forms, разработка мобильных приложенийС недавнего времени занялся разработкой мобильных приложений с помощью Xamarin.Forms в связи с производственной так сказать необходимостью. Не буду конечно рассказывать про танцы с бубнами чтобы написать и запустить на эмуляторе приложение «Hello, World!», но главное разработка пошла достаточно плавно.
Благо и понимание задачи было — а именно — взаимодействие мобильного приложения с базой данных внутренней CRM системы в компании, добавить сотрудникам мобильности, но при этом не забывать и о безопасности. Было принято решение создать WebAPI, ибо чтобы работать с уже привычными ASMX веб-сервисами в Xamarin нужно плясать с бубнами.
Как сказал выше, в том числе хотелось сделать «связующее звено» достаточно безопасным, а значит мобильное приложение должно иметь авторизацию (до кучи и удобства с возможностью сохранения авторизации и автоматического входа.
Не хотелось глубоко копаться в реализации WebAPI с авторизацией на уровне Token, а хотелось сделать что-то попроще, тем более пока «гуглил» видел что такого желания у людей с избытком, но все отсылы отвечающих были либо к стандартным механизмам, либо использования каких-нибудь пакетов из NuGet, чего хотелось бы по максимуму избежать.
В базе собственной CRM и так уже есть вся информация для авторизации и городить что-то лишнее тупо не хотелось.
В итоге, после долгих мытарств, поисков и т.п. — думаю у меня получилось достаточно неплохое решение, которым мне и хочется поделится с сообществом.
Читать полностью »
Советы по созданию современного Android-приложения. Лекция Яндекса
2017-12-17 в 12:27, admin, рубрики: checkstyle, dagger, dagger 2, findbugs, fresco, glide, gson, immutable, jodatime, lint, logansquare, lombok, moshi, picasso, pmd, roboguice, sonarqube, universal image loader, Блог компании Яндекс, разработка мобильных приложений, Разработка под androidМы продолжаем публиковать материалы Школы мобильной разработки 2017 года. На очереди — большая лекция Android-разработчика Дмитрия Никитина из команды Яндекс.Почты. Дмитрий рассказывает, как подойти к созданию проекта с нуля, не потеряться среди множества библиотек и на что обратить внимание при выборе того или иного решения.
— Все вы как минимум пару месяцев программируете под Android. Возможно, кто-то программирует пару лет и уже от корки до корки прочитал developer.android.com. А возможно, нет. Но вы все наверняка знаете, как можно сделать многие вещи как минимум одним из способов. Но не секрет, что этих способов может быть много, у каждой команды они могут быть свои, и часто тот или иной способ выбран исключительно по историческим причинам.
Сегодня я хочу сделать небольшой обзор того, какие вообще есть альтернативы и средства разработки и на чем стоит акцентировать внимание при выборе той или иной библиотеки.
Читать полностью »
Дайджест интересных материалов для мобильного разработчика #234 (11 декабря — 17 декабря)
2017-12-17 в 11:32, admin, рубрики: App Store, AR, arkit, firebase, IAP, in-app purchases, kotlin, Блог компании Everyday Tools, машинное обучение, продвижение мобильных приложений, разработка игр, разработка мобильных приложений, Разработка под android, разработка под iOS, распознавание лицВ новом дайджесте мы пишем про то, что у Facebook и Snapchat практически одновременно запустились AR-редакторы, про то, как правильно готовить разработку, про рефакторинг и ROM-ы, про дверь в лето для кошек от Microsoft и многое другое.
Как мы вооружили мерчандайзеров и наладили тотальный контроль качества дистрибуции: кейс
2017-12-14 в 9:26, admin, рубрики: android, B2B, java, Блог компании EastBanc Technologies, мерчендайзинг, разработка мобильных приложений, Разработка под android, ритейлКаждая компания хочет, чтобы её товары стояли на полках всех магазинов — чистенькие, с нормальным сроком годности, этикеткой к покупателю, на проходном месте и на удобной высоте. Бери и неси на кассу. Но жизнь, как говорится, вносит свои коррективы. Поэтому мерчандайзер регулярно объезжает магазины, чтобы проверить, как всё расставлено на самом деле.
У нашего заказчика есть продукция, которую он производит и поставляет в розничные магазины по всей России. Мерчандайзеры — его глаза и руки. Не хватало только удобного технологического инструмента, который поможет контролировать представленность товара, а случись что — оперативно сообщать о сбоях, чтобы как можно быстрее всё исправить.
Мы сделали решение на базе мобильного приложения и портала, которые оцифровали работу мерчандайзера. Ниже опишем подробности, поделимся примерами кода и техническими идеями, которые помогли упростить работу пользователей и снизили риски недобросовестного отношения и мошенничества. Мы решили рассказать всё это, потому что самим интересно посмотреть со стороны, как оцифровывается процесс с бумаги — это словно построить самолет на кульмане или в 3D-виде.
Построение процесса бизнес-анализа в проектах по разработке BI-приложений с продвинутой визуализацией
2017-12-14 в 5:57, admin, рубрики: big data, аналитика, бизнес-приложения, Большие данные, визуализация, визуализация данных, виртуализация, разработка мобильных приложений, разработка приложенийDisclaimer
Все мы видим, что сфера продвинутой аналитики набирает обороты и все больше специалистов интересуются данной областью. При этом понятной и доступной информации о построении процесса бизнес-анализа при разработке аналитических приложений в открытых источниках не так много. Поэтому очень сложно определиться с правильным рецептом (последовательностью действий) в рамках данного направления. В связи с этим я решил систематизировать ключевые ингредиенты и поделиться с вами пошаговой инструкцией, которая описывает действия аналитика по проработке предметной области и превращении туманной задачи «сделай то, не знаю что» в детальные требования к будущему приложению.