Рубрика «android» - 57

Введение

При Андроид разработке мы используем разные архитектурные решения(паттерны). Например Mvp, Mvvm, Mvi и т.д… Каждый из этих паттернов решает несколько важных задач и поскольку они не идеальны они нам оставляют кое-какие нерешенные задачи. К примеру этих задач относятся навигация внутри приложения(routing), передача информации с экрана на экран(говоря экран я имею ввиду Activity, Fragment или View), Сохранение состояний приложения при смене конфигурации(configuration change).

В нашей компании мы тоже столкнулись с этими задачами, кое-какие были решены легким путем но первый из них так и не нашел конкретное решение, перепробовав различные методы его решения мы написали свою библиотеку Flowzard.

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

Как проверить, ведет ли какое-нибудь приложение на Android-смартфоне фото- или видеорепортаж, хотя ему это ни разу ни к чему? Нижепредлагаемый вариант совсем не идеален, но не требует «рута» или кастомной прошивки.
Что требуется установить:

  • ADB (например, в составе Android SDK Platform Tools);
  • драйвер для телефона (при необходимости).

Включаем на телефоне режим отладки через USB и подключаем телефон к USB-порту компьютера.
Открываем командную строку в каталоге, в который установились «тулзы».
Проверяем, что подключение успешно:

adb devices

ADB vs Spy Cam - 1

Запускаем оболочку:

adb shell

ADB vs Spy Cam - 2

Затем вводим следующие «магические» символы:

while true; do ps `while ! (dumpsys media.camera | grep -E "PID") do  done | grep -o "[^: ]*$"` | grep -o "[^S ]*$" ; date; sleep 1; done

ADB vs Spy Cam - 3
Читать полностью »

Основы внедрения зависимостей

В этой статье я расскажу об основах внедрения зависимостей (англ. Dependency Injection, DI) простым языком, а также расскажу о причинах использования этого подхода. Эта статья предназначена для тех, кто не знает, что такое внедрение зависимостей, или сомневается в необходимости использования этого приёма. Итак, начнём.

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

При работе над Android-проектом, представляющий собой платформу для создания приложений для просмотра видео-контента, возникла необходимость динамического конфигурирования product flavors с выносом информации о signing configs во внешний файл. Подробности под катом.

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

Здравствуйте, уважаемыее, решил перевести статью с медиума по выбору смартфона. Это моя первая публикация на Хабре, так что прошу не судить строго).

Определяем свой сценарий использования

Очередная статья о том, как выбрать себе смартфон - 1

Довольно часто наши решения о покупке чего-либо основаны на мнениях людей, на которых мы рассчитываем или за которыми мы следим в социальных сетях, и брендах/устройствах, которые эти люди предпочитают.

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

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

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

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

Недавно решил попробовать реализовать идею о том, как можно делиться местоположением через API ВКонтакте с друзьями в режиме, приближенном к реальному времени. На выходе получилось кроссплатформенное Qt-приложение для iOS/Android, веб-приложение для ВКонтакте и парочка pull request'ов для VK API. В этой статье я хотел бы поделиться некоторыми неочевидными моментами реализации, которые, может быть, будут кому-то интересны. Итак, заинтересовавшихся прошу под кат.
Читать полностью »

Разработка аналога FindFace одним школьником - 1

История от первого лица
Как сделать аналог FindFace в одиночку и не сойти с ума
И почему так делать не надо
Читать полностью »

Подводные камни идентификации Android-устройства - 1

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

Гугл говорит, что идентифицировать устройство очень просто. Но мы же говорим об Android:)

Данная статья ориентирована на приложения или библиотеки, которые не хотят привязываться к гугловым сервисам.

Итак, давайте погрузимся в это чудесное приключение по получению уникального идентификатора устройства.
Читать полностью »

image

Сообщество «Google Developers Group» в Петербурге основано в 2006 году. Однако подвести итоги года мы решили впервые. GDG проводит IT конференции и митапы для разработчиков Android, Kotlin, Scala, Firebase, Dart и Assistant. В 2018 году мы провели 17 конференций и митапов. Под катом вы найдете не только итоги и отзывы о мероприятиях, а еще все материалы и записи классных докладов!

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

Практический пример создания собственного View-компонента

Мне нравится Dribbble. Там есть много крутых и вдохновляющих дизайн-проектов. Но если вы разработчик, то часто чувство прекрасного быстро сменяется на отчаяние, когда вы начинаете думать о том, как реализовать этот крутой дизайн.

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

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


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