Совсем недавно мне нужно было сделать приложение в котором была необходима поддержка функционала работы с пользовательскими контактами на базовом уровне и, как наверное любой начинающий Android разработчик, я прибывал в небольшом ступоре после поверхностного изучения нового Contacts API. Во время работы я нашел совсем не много информации на эту тему (кроме самой документации конечно), а на русском языке, как мне показалось, она и вовсе отсутствует. Поэтому я и решил написать эту статью и поделиться своим опытом с другими. В ней я постараюсь охватить только основы работы с контактами в Android, не затрагивая более глубокие вопросы и вопросы синхронизации, которые по моему заслуживают отдельной статьи.
vovtil @vovtil
User
Жизненный цикл UIViewController'a
10 min
157K
Причиной написания данной поста является то, что, как оказалось, можно преспокойно программировать под iOS полгода, и не знать полностью о жизненном цикле UIViewcontroller'ов. И на небольших проектах это даже получается. Однако, когда приходится иметь дело с серьезным, достаточно большим проектом, то появляются определенные проблемы с нехваткой памяти, «неправильной» и «непонятной» работой контроллеров, пропажей данных, и еще со многими типичными проблемами, о которых будет написано ниже.
Так вот. В данном посте, я еще раз расскажу о жизненном цикле UIViewController'ов, расскажу о том, что и где стоит делать, и в каком случае. Пост ориентирован на разработчиков разных уровней, так что кто-то узнает для себя что-то новое, а кто-то найдет
Всех заинтересовавшихся, прошу
+58
Конфигурирование J2SE и J2EE приложений: стандартные способы и их альтернативы
8 min
14KВ наше время существует множество вариантов построения Java-приложений и задачи их конфигурирования решаются по разному.
В статье будут рассмотрены техники и особенности конфигурирования J2SE и J2EE приложений с применением стандартных средств JDK, а также альтернативы этим способам.
В статье будут рассмотрены техники и особенности конфигурирования J2SE и J2EE приложений с применением стандартных средств JDK, а также альтернативы этим способам.
+17
Пишем простое приложение с использованием GoogleMap и прокачанным SimpleCursorAdapter
8 min
11KРазработка приложений под платформу Android становится все более и более массовой. Так, мне недавно довелось заниматься разработкой клиентской части такого приложения, фактически с нуля разбираясь в премудростях этого дела, опираясь лишь на базовые знания Java.
Здесь на примере простого приложения, которое позволяет выбрать станцию метро из списка и отобразить её на карте, показаны некоторые полезные фичи работы с адаптером для ListView, реализованы простейшая работа гуглокарты и взаимодействие с встроенной БД.
Весь проект можно скачать на github по ссылке в конце статьи.
Здесь на примере простого приложения, которое позволяет выбрать станцию метро из списка и отобразить её на карте, показаны некоторые полезные фичи работы с адаптером для ListView, реализованы простейшая работа гуглокарты и взаимодействие с встроенной БД.
Весь проект можно скачать на github по ссылке в конце статьи.
+17
Эмулятор данных с GNSS приемника по протоколу NMEA
2 min
17KВведение

Возникла у меня необходимость тестировать приложение, использующее данные GNSS по протоколу NMEA.
+23
Получаем изображение с оптического сенсора комьютерной мыши с помощью Arduino
3 min
237K
Для решения одной из задач мне потребовалось программно получать и обрабатывать изображения небольшого участка поверхности бумаги с очень близкого расстояния. Не получив достойного качества при использовании обычной USB камеры и уже на пол пути в магазин за электронным микроскопом, я вспомнил одну из лекций, на которой нам рассказывали как устроены различные девайсы, в том числе и компьютерная мышка.
+375
Способы обхода паролей BIOS
3 min
573KНевзирая на то, что BIOS является мощным средством защиты, существуют способы обхода установленного в ней пароля.
Иногда любопытные или стремящиеся максимально защитить свои данные пользователи ставят пароли на всём, на чём только можно, но нередко эти пароли ими забываются. Тяжело переносится забытие пароля на BIOS (пароль на загрузку системы), зачастую это может привести к покупке новой материнской платы, однако этого можно избежать воспользовавшись слабостями архитектуры построения ЭВМ и преднамеренно оставленными разработчиками «чёрными ходами».
Иногда любопытные или стремящиеся максимально защитить свои данные пользователи ставят пароли на всём, на чём только можно, но нередко эти пароли ими забываются. Тяжело переносится забытие пароля на BIOS (пароль на загрузку системы), зачастую это может привести к покупке новой материнской платы, однако этого можно избежать воспользовавшись слабостями архитектуры построения ЭВМ и преднамеренно оставленными разработчиками «чёрными ходами».
-18
Пишем простейший сервис от кражи Android-коммуникатора
8 min
22KЗдравствуйте. Некоторое время назад я начал изучение программирования под Android. Начитавшись различной тематической литературы, как это обычно бывает, решил опробовать свои силы на этом поприще. Идея написания именно этого сервиса возникла еще в 2009 году, когда реклама на «РУ.ТВ» пестрила фразами — «Узнай местоположение абонента», «Перехват СМС» и т.п. Не нужно иметь ученую степень чтобы понять, что все это обычный «развод на деньги». К тому же, внимательный зритель обратит внимание на слово «игра», якобы невзначай оброненное в тексте. Смекнув, что подобного рода услуга возможна, я решил попробовать написать программу, которая будет перехватывать входящие/исходящие СМС, список звонков и определять местоположение. Но позиционировать ее как СМС-перехватчик, в рамках действующего законодательства, было, мягко говоря, незаконно. В связи с чем идея была заброшена, и я переключился на иные проекты до нынешних времен.
+10
Методы нахождения границ изображения
2 min
61K Алгоритм выделения границ или иначе обнаружения границ работают после того, как качество изображения улучшено перечисленными выше методами. Эти алгоритмы можно подразделить на два класса:
1) подчеркивающие, усиливающие, выделяющие границы;
2) строящие контуры автоматически.
1) подчеркивающие, усиливающие, выделяющие границы;
2) строящие контуры автоматически.
+35
Alpha-blending за одно умножение на пиксель на Windows Mobile
4 min
3.7KТе, кто занимался графикой на Windows Mobile, наверняка слышали о графической библиотеке GapiDraw. Если заглянуть в их Feature List, то в разделе High Performance можно обнаружить следующие слова: «drawing surfaces with opacity will only require one multiplication per pixel». То есть, они утверждают, что для рисования полупрозрачных картинок требуется всего по одному умножению на каждый пиксель.
В данной статье я попытаюсь объяснить, как это возможно.
В данной статье я попытаюсь объяснить, как это возможно.
+47
Программирование Windows Phone 7. Лекция 2. Ориентация
1 min
836Всем привет.
Я продолжаю серию уроков по программированию Windows Phone 7. В этой лекции вы узнаете об ориентации приложения, расположении элементов, о некоторых новых свойствах элементов и о событиях.
Приятного просмотра:
Предыдущие лекции:
Лекция 1. Введение
Спасибо за внимание! Подписывайтесь на мой канал Vimeo
и официальную страницу ВКонтакте, чтобы первыми узнать о выходе нового видео.
+2
Про ABBYY FlexiCapture Engine, мобильные устройства и налоговые декларации
2 min
5.1K
+14
Знакомство с XNA и написание первой музыкальной игры
13 min
49KTutorial

Для того, чтобы познакомить вас с XNA ближе, я предлагаю написать простую «музыкальную» 2D игрушку. Остальное под катом.
+50
XNA Draw или пишем систему частиц. Часть I
6 min
29KTutorial
И опять, привет хабравчанам!
Буквально несколько дней назад — начал цикл статей, о том, как можно создавать крутые игры с помощью XNA Framework, своей студии у меня нет, поэтому ограничимся только 2D играми.
На этот раз — мы более подробно рассмотрим Draw и напишем свою первую систему частиц.

На этот раз — мы более подробно рассмотрим Draw и напишем свою первую систему частиц.
+57
Пишем живые обои с часами
4 min
25K
+73
Как писать квайны
4 min
40KВведение
Многие программисты считают написание квайнов (программ, выводящих свой исходный код) непосильной задачей. И действительно — все эти цепные квайны и квайны различного порядка, при взгляде на которые можно потеряться в, казалось бы, бессмысленном наборе символов…
Однако, на самом деле, написать квайн на каком-либо языке не так сложно, как кажется. Сейчас я расскажу, как сделать это на различных языках программирования. Более того, мы не будем использовать «хаки» интерпретеруемых языков вроде операции вывода исходного кода и функций типа eval и напишем квайны на интерпретируемых и компилируемых языках.
+76
JavaScript Gaming: Часть 1. Box2d и основы Физики
28 min
24K
Вместо предисловия.
Я всегда любил и буду любить компьютерные игры. Есть в них какая-то своя внутренняя магия, которая всегда привлекает и завораживает одновременно. За всю свою жизнь я переиграл в десятки игр, начиная с ветеранов Wolfenstein и Dune 2 и заканчивая современными блокбастерами. И теперь, добивая очередной хит и наблюдая за финальным роликом и титрами, в голове все чаще и чаще мелькает мысть «А что, если?..»
А ведь действительно, что если взять и написать собственную игру? Конечно же понятно, что ААА-тайтл сделать в одиночку не получится, и это годы работы и прочая и прочая, но ведь осилит дорогу идущий? Так уж получилось, что в Desktop-программироании я откровенно слаб, и вариантов для практикующего веб-разработчика не так уж много. Но за последние годы все кардинально изменилось, и теперь уже у браузера много общего с кофеваркой, а javascript может спокойно удовлетворять даже нужды военных ведомств, не то что мои собственные.
Вот как раз во время очередных раздумий и достаточно серьезной простуды мне попалась на глаза статья о Box2d в игрологе Ant.Karlov'а. Зачитавшись и замечтавшись я очень быстро нашел JS-порт этой библиотеки, и старая шальная идея сделать что-то маленькое и, главное — свое, начала донимать меня с новыми силами.
В общем, меньше патетики, больше дела. Надеюсь, вам будет интересно. Да простят меня суровые боги за использование Angry Birds в КПДВ ^_^
+147
Пишем виджет, использующий API Яндекс.Метрики
10 min
13K
Сегодня я хочу немного рассказать об использовании этого API и о том, как на его основе создать простой widget для Android-устройств.
+64
Фильтруем людей или как заблюрить одного человека на видео
5 min
2.7KДобрый день. Хочу предложить вам небольшую статью о своей работе с кинектом.
Сейчас я делаю небольшую часть рекламного проекта, где используется кинект. Одной из задач является «наложение фильтра» на одного человека в толпе. Об этом и поговорим.
Сейчас я делаю небольшую часть рекламного проекта, где используется кинект. Одной из задач является «наложение фильтра» на одного человека в толпе. Об этом и поговорим.
+33
Учимся программировать игры на XNA для Windows Phone 7 «Mango» — начало
9 min
18KВ свете недавнего анонса HTC о скором появлении телефонов на Windows Phone 7 «Mango» на российском рынке, особую актуальность приобретает разработка приложений для Windows Phone — ведь именно сейчас есть возможность насытить Windows Phone Marketplace приложениями, близкими нашему русскому сердцу. Это одна из причин, по которой мы сегодня (5 сентября) проводим Windоws Phone 7 Camp, и призываем вас приходить, смотреть онлайн-трансляцию и браться за Visual Studio прямо сейчас.

На этом мероприятии я только что рассказал про программирование игр на XNA для телефона, и в этой связи хотел бы посвятить этому несколько статей на хабре. В сегодняшней статье я покажу вам, как написать простую игру «морской бой» — а в следующих статьях мы добавим в неё звук, интеграцию XNA с Silverlight, использование сенсоров (акселерометра) и т.д. Для любителей смотреть видео — процесс написания игры также описан в этом скринкасте.

На этом мероприятии я только что рассказал про программирование игр на XNA для телефона, и в этой связи хотел бы посвятить этому несколько статей на хабре. В сегодняшней статье я покажу вам, как написать простую игру «морской бой» — а в следующих статьях мы добавим в неё звук, интеграцию XNA с Silverlight, использование сенсоров (акселерометра) и т.д. Для любителей смотреть видео — процесс написания игры также описан в этом скринкасте.
+28
Information
- Rating
- Does not participate
- Location
- Москва и Московская обл., Россия
- Date of birth
- Registered
- Activity