Поиск по этому блогу

четверг, 25 мая 2017 г.

Работа с Retrofit


image
Сталкиваясь с разными проектами я заметил, что большинство до сих пор используют разные библиотеки, которые реализуют запросы внутри UI или вообще через AsyncTask. Это как по мне глупо, так как для реализации API в приложении есть такая чудесная библиотека, как Retrofit 2.

По данной библиотеке существует огромное количество статей, которые в полной мере описывают работу с ней. Я опишу только то, как я с ней работаю, потому что не знаю почему, но большинство туториалов используют много лишнего кода при работе с ней. 

Приведу описание библиотеки из вики:
Retrofit является REST-клиентов для безопасной работы в Android и Java. Библиотекой удобно пользоваться для запроса к различным веб-сервисам с командами GET, POST, PUT, DELETE. Может работать в асинхронном режиме, что избавляет от лишнего кода.

среда, 24 мая 2017 г.

Создаем CustomView из LinearLayout

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

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

вторник, 8 декабря 2015 г.

Show / Hide FAB Button

Сегодня встретился с такой интересной штукой как FAB Button. Раньше как то пользовался только кастомной кнопкой из разных репозиториев, а тут как то получилось что проект создался сразу с ней, и я столкнулся с проблемой показа ее во время скролла, когда скролили в низ кнопка то появлялась то исчезала, когда возвращались на верх она вообще не появлялась, в общем куча проблем, заказчик истерит «как это так», все истерят, в общем всеобщий апокалипсис. По этому мне пришлось написать кастомный листвью для этого. Решение нашел на хабре, по этому кому надо тот найдет, эту статью, переношу решение сюда для удобства.

Заметка будет очень короткая, но по делу, возможно она спасет много жизней и нервов разработчикам и заказчикам (:

понедельник, 5 октября 2015 г.

Callback'и в Android

Еще решил написать одну заметку по поводу коллбеков. Штука интересная и полезная, без нее редко когда получается что то разумное написать. По этому решил что надо будет написать пару примеров по работе с колбеками.

Плавающая кнопка на подобии как у Messenger

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

суббота, 21 февраля 2015 г.

Фильтр на поле для ввода мобильного номера

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

пятница, 6 февраля 2015 г.

Живые обои с GIF анимацией

Сегодня я хочу вам рассказать как сделать красоту и не набраться гемороя. Обычно живые обои делают какая то фоновая картинка, какой-то живой движущийся объект и летают или появляются кружки или линии. Это все можно сделать стандартным канвасом, а вот как сделать что бы вместо тупых летающих квадратов на экране бегала анимация с nyan котом или например анимация с горящим костром? А просто, нужно всего лишь заюзать тот же канвас, только немного не стандартно.

Как создавать живые обои я рассказывал вам раньше еще в далеком феврале 2012 года. Вот эта статья Создаем живые обои для Android. Но это было давно, да и там рассматривается немного иная ситуация, кому интересно переходите смотрите, правда там почему то картинки убились… Не знаю как восстановить, в исходниках все есть в принципе :)

среда, 21 января 2015 г.

Авторизация в Facebook через FB SDK 3.0 Android

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

Я раньше писал уже про работу с FB, но многое изменилось с того времени (март 2013 года). как ни как почти два года прошло. У фейсбука появилось куча фишек которых в старом апи нет, оно рабочее и в принципе если лень разбираться с новым, хотя он проще и удобней, можно использовать старый, но тогда вы потеряете кучу возможностей по работе с новым апи. 

Авторизация в Twitter Android

Недавно столкнулся с тем что нужно было интегрировать авторизацию и регистрацию через соц сети, если конкретней то через facebook и twitter. Сегодня будет два туториала и два разных проекта, один с авторизацией в Twitter, а второй с авторизацией в Facebook через login button. Но это будут разные посты, очень надеюсь что у меня хватит терпения и нервов на написание ибо меня последнее время все дергают всем от меня что то надо, в общем ниче без меня не могут (:

воскресенье, 18 января 2015 г.

Изменение позиции элемента в списке Android

Я долго искал как сделать список с айтемами которые можно перетаскивать между собой, нашел кучу примеров которые работали но то не сохраняли положение куда переместили или например был пример который непонятно было как интегрировать в код, это библиотека github.com/bauerca/drag-sort-listview, возможно у меня руки кривые но я не смог ее поставить так что бы она работала, вечно что то вылетало и падало… В общем не подходило мне ничего, и я взялся говнокодить тот код который уже нашел до этого, который работал не верно.

В общем я вам сейчас открою страшную тайну как всегда (:

пятница, 16 января 2015 г.

Импортировать Maven репозиторий в Gradle

Столкнулся с такой фигней что надо найти библиотеку для студии, а нигде нет пособия по интеграции ее в студию, скачивать project lib и подключать к проекту не хочется так как это отяжеляет проект и делает его более громоздким.

Но зато часто встречаю когда в репозитории указывают адрес Maven репозитория. Но как же его подключить в Android Studio? А просто!

вторник, 30 декабря 2014 г.

Динамическое создание элементов в Android

Интересная штука создание элементов динамически, вроде создал пару edittext'ов, а как прочесть с них то что ввел вообще не ясно (: Но ничего сегодня я напишу как их и создавать, и как читать из них, и даже как удалять…

понедельник, 24 ноября 2014 г.

Нахождение текущего местоположения

Сегодня будет короткая заметка о том как сделать определение текущего местоположения пользователя. 

Для этого нам понадобится создать сервис который будет в постоянном режиме отслеживать текущее местоположение по GPS.

В этом классе мы создаем сервис включающий класс который получает данные о текущем местоположении, в принципе все стандартно, только не стандартно что это вынесено в отдельный класс — сервис. Дальше мы создаем нужные переменные и получаем нужные данные из LocationListener'a, и записываем их в переменные. Ну а дальше просто возвращаем эти данные в getLatitude и getLongitude.

суббота, 18 октября 2014 г.

Изменить цвет ActionBar, ActionBar.Tabs и ActionBar.PopupMenu

Так бывает складывается что нужно поменять полностью цвет Action bar'a, табов под ним и меню, да и всего на свете. Так вот это оказывается не так то просто (: Я проковырялся дня два пока разобрался со всем этим, и вот сегодня я хочу вам рассказать как да что нужно сделать что бы изменить цвет Action bar'a, табов и popup menu.

пятница, 17 октября 2014 г.

Custom MediaController Android

Так сложилось что мне не подошел стандартный Meedia Controller который используется в VideoView, и поэтому я пошел искать кастомный и нашел на одном из американских сайтах с туториалами. Там как раз рассказывают как создать кастомный MediaController со своими елементами, в общем для меня это было то что нужно, и я решил что эту статью нужно перевести к себе в блог, может она мне еще пригодится, а может не только мне…

Вот так будет выглядеть сам медиаплеер с видео:
image

пятница, 10 октября 2014 г.

Как поменять весь шрифт в приложении

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

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

В общем смотрите что получилось в итоге.

четверг, 8 мая 2014 г.

Подборка полезных библиотек для разработки в Android

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

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

воскресенье, 4 мая 2014 г.

Как подключиться к конкретной WiFi точке в Android

Всем снова привет! Давно я ничего не писал и вот решил сегодня выдать новый перл (: 

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

Так вот собственно как я это сделал сегодня и хочу рассказать.

суббота, 29 марта 2014 г.

Передача данных по Bluetooth между Android и Arduino

Недавно постучался ко мне человек и попросил помочь сделать программку которая сможет контачить к Arduino с Android девайса. Порывшись в интернете я нарыл статью в которой рассказывается как раз то что я искал, и я решил что ее нужно к себе в блог переписать потому что она очень хорошо написана, все равно я собирался разбираться с Arduino.

Далее со слов автора статьи.

понедельник, 24 февраля 2014 г.

Запись видео с экрана Android устройства (версия 4.х)

Для  создания скриншоты экрана достаточно нажать несколько клавиш на вашем устройстве, а вот для записи видео вам придется немного больше сделать, для этого понадобится:

понедельник, 17 февраля 2014 г.

Работа с MS Excel в Android


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

Для работы с MS Excel вам понадобятся библиотеки от Apache, которые называются POI, скачать вы их можете софициальной страницы Apache. Но я вам дам два главных файла которые нам нужны для чтения простого файла таблицы. 

вторник, 24 декабря 2013 г.

Создание экрана блокировки для Android

Всем привет, сегодня я хотел бы рассказать вам как делать экран блокировки для Android, я думаю многие задумывались как это делается, оказывается что не сильно то и сложно. (: Всего лишь нужно создать сервис, бродкаст ресивер и активность которая это будет отображать. Звучит конечно устрашающе но на самом деле все намного проще.

воскресенье, 15 декабря 2013 г.

Переключение между экранами в Android

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

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

пятница, 29 ноября 2013 г.

Парсинг сайта в Android

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

На главном сайте этой библиотеки есть пример работы, но не каждый будет читать что та написано, поэтому я решил что я напишу у себя как это сделать, заодно заметка будет что бы не забыть на будущее (:.

среда, 18 сентября 2013 г.

ViewPager с тремя разными Activity

Сегодня я хочу рассказать как сделать свайп активностями через такую прекрасную вещь как ViewPager. В интернете полно разных статей на эту тему, но не одна не затрагивает как сделать так что бы например у вас есть три активности и их нужно вывести отдельно но при этом что бы их можно было листать как книжку вправо влево. Это все довольно просто получается, достаточно использовать фрагменты и класс FragmentActivity и все становится красиво и просто, и так давайте начнем.

четверг, 5 сентября 2013 г.

Как устанавливать приложения сразу на SD карту

image
Сегодня задался вопросом как сделать так что бы приложение инсталировалось сходу на карту памяти, все оказалось очень просто! В AndroidManifest.xml нужно прописать всего лишь одну строчку, и ваше приложение сможет сходу устанавливаться на карту памяти, вот эта строчка: 

android:installLocation="preferExternal"


А располагаться она должна в теге <manifest> под пакедж неймом и версией программы:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.fpm"
    android:versionCode="1"
    android:versionName="1.0"
    android:installLocation="preferExternal">


Все оказывается очень просто (:

Живой поиск в ListView через EditText

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

понедельник, 25 марта 2013 г.

Работаем с Fragment-ами в Android

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

Примеры стараюсь элементарными делать для понимания их работы, комментарии так же буду стараться приводить к каждой строчке.

понедельник, 11 марта 2013 г.

Создание кастомного ArrayAdapter'a для ListView

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

Facebook API в Android


Здравствуйте, у меня недавно появилась задача написать небольшую программу в которой будет использоваться facebook api и сегодня я хочу рассказать вам собственно как работать с этим api.

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

среда, 13 февраля 2013 г.

Соединяемся с сервером и обрабатываем полученный json

Не думаю что я буду оригинальным в этой теме так как в интернете полным полно примеров которые должны вроде бы как показать как правильно работать, но у меня как у криворукого говнокодера примеры почему-то запускаются только с сайта stackowerflow, поэтому я решил сделать так называемую заметку на будущее если понадобится работать еще с json и с post / get запросами, всегда будет готовый пример / код под рукой. 

понедельник, 4 февраля 2013 г.

Работа с настройками в Android

Сегодня я хочу с вами поделиться некоторым опытом работы с настройками в android. Это будет небольшой туториал для начинающих ну и собсно что-то такое куда можно будет заглянуть накануне когда понадобятся настройки и скопипастить нужный кусок к себе в проект.

четверг, 31 января 2013 г.

Работа с базой данных Android

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

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

Статья рассчитана на тех кто имеет хоть малейшее понятия что такое базы данных и хотя бы раз работал с любой из существующих баз, если же таковых знаний и умений нет то рекомендую хабрахабр для чтения этих статей их там полно. Конкретной статьи не посоветую так как сам с базами больше 4 лет уже работаю, учился не по статьям, а по методу тыка (: Так вот и научился.

Собственно ниже я начинаю рассказывать как сделать красивейшую базу с блекджеком и кхмм… печеньками.

четверг, 3 января 2013 г.

Событие долгого нажатия на карте

Сегодня мне понадобилось сделать событие длинного нажатия на карте, и я подумал что ничего сложного в этом нет, а оказалось что не так все просто… Начал пробовать события onLongClick, onLongPress и остальные события но оно совсем ничего не выдавало, я уже начал беситься и хотел уже забить на это дело, но наткнулся на пример который как раз у меня и заработал в нем все очень просто, давайте его рассмотрим.