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

image
Компонент LiveData — предназначен для хранения объекта и разрешает подписаться на его изменения. Ключевой особенностью является то, что компонент осведомлен о жизненном цикле и позволяет не беспокоится о том на каком этапе сейчас находиться подписчик, в случае уничтожения подписчика, компонент отпишет его от себя. Для того чтоб LiveData учитывала жизненный цикл используется компонент Lifecycle, но также есть возможность использовать без привязки к жизненному циклу.

Сам компонент состоит из классов: LiveData, MutableLiveData, MediatorLiveData, LiveDataReactiveStreams, Transformations и интерфейса: Observer.

Класс LiveData, являет собой абстрактный дженериковый класс и инкапсулирует всю логику работы компонента. Соответственно для создания нашего LiveData холдера, необходимо наследовать этот класс, в качестве типизации указать тип который мы планируем в нем хранить, а также описать логику обновления хранимого объекта.
Читать полностью »

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

Идея реализации задумки с помощью внешнего беспроводного Wi-Fi адаптера или «свистка», поддерживающего желанный режим монитора, рушилась десятки раз из-за новых и новых ошибок и потери веры в то, что это вообще возможно, но переросла в данную статью.

Итак, как подключить внешний Wi-Fi адаптер к устройству на Android или бег с препятствиями на дистанции «вставил — netcfg wlan0 up»:
Читать полностью »

Китайский интернет и софт: о наболевшем - 1
Рассказ о том, как выглядит интернет, развивающийся в отрыве от глобальной сети

Я живу в Китае и избегаю китайского интернета: посещаю минимум китайских сайтов, не пользуюсь китайской электронной почтой, стараюсь не устанавливать китайский софт на ПК и приложения на смартфон. Пользоваться же иностранными сервисами и сайтами сложно из-за повсеместных многоуровневых блокировок, которые всё сложнее обходить.

Может, я такой расист и ненавижу Китай? Или я не знаю языка? Или я просто вредный зануда? 
Читать полностью »

Еще в далекие времена, когда балом смартфонов заправляли Nokia и Microsoft, возникла одна характерная особенность мобильной разработки — разношерстность устройств по характеристикам и модификациям операционок. Приходилось тестировать приложение не только на разных версиях ОС, но и на разных физических устройствах. После выхода iOS самих моделей телефонов всегда было мало, поэтому с ними проблем не возникало. А вот в мире Android проблема фрагментации встала во весь рост. Моделей на рынке тысячи, и все время появляются новые, и твое приложение или игра должны гарантированно работать на каждой из них. Добавим еще разные версии прошивок на этих моделях… И поймем, что вручную потребуется куча человеко-часов для проверки каждого релиза.

7 лучших ферм устройств для тестирования мобильных приложений - 1

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

Все из нас видели это:

private String mName;

Это из-за меня.
Я так и сказал — это моя вина.
Эта тема всплывает снова и снова, обсуждение на reddit напомнило, что я никогда не объяснял откуда взялась эта нотация, а также, насколько она неправильно понимается людьми. Поэтому мне бы хотелось воспользоваться возможностью, дабы прояснить некоторые вещи, и я сделаю это в двух частях:

  1. Как появилась m-нотация.
  2. Почему вы, вероятно, не понимаете, что такое венгерская нотация.

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

Создание прототипа адаптивной фитолампы на Arduino

Эта статья будет посвящена созданию прототипа светодиодной лампы для досветки растений. Конечно, это не просто лампа иначе зачем писать об этом на geektimes? Фитолампа управляется с помощью контроллера Arduino и имеет на борту датчик освещенности ( для адаптивной регулировки яркостью), LED драйвер для управления яркостью по средствам ШИМ, радиомодуль 433 Mhz и конечно bluetooth ( по тому что с ним все становится круче...) на самом деле для управления с телефона из разработанного приложения под Android. Также я немного затрону вопрос побора годных светодиодов, источников питания и как они себя показали на протяжении 6 месяцев эксплуатации. С момента зарождения идеи меня интересовал вопрос создания мелкосерийного производства, но об этом ниже.

Умная фитолампа на Arduino - 1

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

Всем привет. Сегодня я расскажу об атласе текстур, шкурках, пройдемся еще раз по работе с версткой. Далее интернационализация и в заключение пара тонкостей по работе с цветом. И в следующем уроке перейдем к модели игры и связыванию игровой логики и элементов UI.

Предыдущие части

Атлас текстур

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

Image(Texture("backgrounds/main-screen-background.png"))

то мы создаем избыточную задержки. В данном случае текстура «backgrounds/main-screen-background.png» будет считана с накопителя в синхронном режиме. Это не всегда является злом. Как правило загрузка одной фоновой картинки не портит впечатления от работы с программой. Но если мы будет каждый элемент нашей сцены считывать таким образом, скорость и плавность приложения могут серьезно просесть.
Читать полностью »

В этот раз у нас все цвета мобайла – дорожные карты iOS- и Android-разработчиков, безопасность, конец Windows Phone, инструменты и дизайн.

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

Security Week 28: а Petya сложно открывался, в Android закрыли баг чипсета Broadcomm, Copycat заразил 14 млн девайсов - 1Прошлогодний троянец-криптолокер Petya, конечно, многое умеет – ломает MBR и шифрует MFT, но сделаться столь же знаменитым как его эпигоны, у него не вышло. Но вся эта история с клонами – уничтожителями данных, видимо, настолько расстроила Януса, автора первенца, что тот взял и выложил закрытый ключ от него.

Однако опубликовал не просто так «нате, владейте!», а решил подойти к процессу творчески и поиграть с «белыми шляпами», запаролив архив и оставив в своем твиттере ссылку на него с подсказкой в виде цитаты из фильма «Золотой глаз». Авось, хотя бы так заметят и запомнят. Автор, видимо, фанат бондианы – отсюда и его никнейм, и название файла с ключом (Natalya), и имена троянцев Petya и Misha. Быстрее всех загадку отгадали в Malwarebytes и выложили содержимое файла:

Congratulations!
Here is our secp192k1 privkey:
38dd46801ce61883433048d6d8c6ab8be18654a2695b4723
We used ECIES (with AES-256-ECB) Scheme to encrypt the decryption password into the "Personal Code" which is BASE58 encoded.

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

image

Много было сказано про «красоту» кода на Java, но на мой взгляд, главное — не инструмент, а умение им пользоваться. Под катом попытка написать декларативный DSL для вёрстки под Android даже не изобретая новый язык программирования!Читать полностью »


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