ActionBar Sherlock — как его добавить в проект (1 часть)

Всем привет!

Мы тут делали вот этот проект и решили использовать ActionBar. И вроде бы написали весь код, вроде все хорошо, однако при тестировании на устройстве с Android 2.х у нас возникли некоторые неприятности: несмотря на использование в проекте библиотеки поддержки (та, которая Android Support Library), ActionBar работает только на устройствах с новым API 🙁 То есть начиная с 11 версии кажется (если не прав, поправьте). Итак, суть: статья о том, что делать если ActionBar не работает на Android 2.х?

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

Выбор пал на ActionBarSherlock — как на наиболее часто используемый судя по результатам поиска в гугле. Давайте посмотрим, что такое ActionBarSherlock — на сайте разработчиков на главной странице написано, что это обертка над Android Support Library, которая позволяет использовать паттерн ActionBar на всех платформах начиная со 2-й. При этом на старых версиях библиотека использует свой код, а на тех, где ActionBar поддерживается — используется ActionBar из системы. Читать далее

Вам понравилось? Было полезно? Поделитесь!

Опубликовать в Facebook
Опубликовать в Google Buzz
Опубликовать в Google Plus
Опубликовать в LiveJournal
Опубликовать в Мой Мир
Опубликовать в Одноклассники
Опубликовать в Яндекс
Рубрика: Android | Оставить комментарий

А мы запустили новый сервис!

Всем привет!

Мы тут вот запустили новый сервис для Android, счас делаем для iOS 🙂 Будьте добры попробуйте!

Вам надоело фотографировать друзей для адресной книги?
Вы хотите знать как вы будете выглядеть на экранах Ваших друзей во время звонка?
Если да, тогда это приложение — то что вам нужно!
Все гениальное просто! Вы устанавливаете это приложение. Затем вы выбираете ваше любимое фото в этом приложении.
А затем приглашаете ваших друзей установить Volto. И вот начинается магия!
В вашей адресной книге будут появляться фотографии ваших друзей, а у них появится ваша фотография!

Вот сайт http://volto.me а вот ссылка на маркет. Пишите все пожелания сюда или на 4pda.ru. Пока что это бета версия, но с вашей помощью мы я думаю сделаем так, что этим будут пользоваться все 🙂

Google-Play-Badge

 

 

Вам понравилось? Было полезно? Поделитесь!

Опубликовать в Facebook
Опубликовать в Google Buzz
Опубликовать в Google Plus
Опубликовать в LiveJournal
Опубликовать в Мой Мир
Опубликовать в Одноклассники
Опубликовать в Яндекс
Рубрика: Android | Оставить комментарий

Словарь медицинских терминов

Всем привет!

Мы тут недавно разработали словарь анатомических терминов для студенотов медицинских ВУЗов. Контент словаря был предоставлен Шураковой Г. В.

Словарю присвоен гриф УМО Министерства здрафоохранения РФ.

Рекомендован для внедрения во все медицинские вузы РФ.

Словарь разработан на базе Северо-Осетинской Государственной медицинской академии.

Шуракова Г.В., к.ф н., зав. уч. кафедры иностранных языков СОГМА

Скачать можно здесь: https://play.google.com/store/apps/details?id=ru.msofter.meddict

Вам понравилось? Было полезно? Поделитесь!

Опубликовать в Facebook
Опубликовать в Google Buzz
Опубликовать в Google Plus
Опубликовать в LiveJournal
Опубликовать в Мой Мир
Опубликовать в Одноклассники
Опубликовать в Яндекс
Рубрика: Android | Оставить комментарий

Программируем клиент для блога на WordPress (часть 3 SAX XML parsing)

Всем кто читает привет!

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

Итак, мы с вами уже реализовали серверную часть которая в зависимости от передаваемых ей в URL параметров возвращает нам либо некий xml файлик, либо html страничку с определенным постом из базы данных. Теперь давайте научимся разбирать этот xml файлик (запихивать его содержимое в базу мы слава Ктулху  уже умеем).

Сегодня пойдем дельше и попробуем разобрать (распарсить) полученный от сервера xml файл. Вообще надо заметить, что в java вообще и в Android в частности существует два варанта для работы с XML. Первый вариант — это DOM (Document Object Model). Он предполагает загрузку в память всего XML файла, и затем мы можем перемещаться по файлу, получать информацию о узлах и контенте, который в нем хранится. Второй вариант — SAX (Simple API for XML) — это событийно-ориентированный парсер. На вход такого парсера подается некий XML файл и затем мы обрабатваем те или иные события возникающие в ходе чтения этого файла парсером. Событиями могут быть, например, новый открывающий тег, новый закрывающий тег, и т.д. Именно такой подход мы и будем использовать, как наименее ресурсоемкий.

Для реализации такого парсера нам требуется создать класс, наследующий у класса org.xml.sax.helpers.DefaultHandler. У этого класса есть целая куча методов которые мы можем переопрелелить. Например startDocument() — вызываемый при начале документа endDocument() — вызываемый когда парсер доходит до конца документа, startElement() — обрабатывает начало нового тега, endElement() — обрабатывает закрывающий тег и так далее. Подробнее вы можете посмотреть здесь. нам с вами необходимо использовать только два из них. Итак вот код класса:

package ru.davidmd.zabavareader;

import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;

public class ParserHandler extends DefaultHandler {
	dbExtender db;

	ParserHandler(dbExtender db) {
		this.db = db;
	}

	@Override
	public void startElement(String namespaceURI, String localName,
			String qName, Attributes atts) throws SAXException {
		if (localName.toLowerCase().equals("header")) {
			String title = atts.getValue("title");
			String content = atts.getValue("content");
			String date = atts.getValue("date");
			int id = Integer.parseInt(atts.getValue("id"));
			String guid = atts.getValue("guid");
			db.addpost(title, content, date, id, guid);

		}
	}

	@Override
	public void endDocument() {
		try {
			super.endDocument();
		} catch (SAXException e) {
			e.printStackTrace();
		}
	}
}

А теперь давайте смотереть что мы здесь натворили. Во первых конструктор в который мы передаем ссылку на объект класса dbExtender из прошлого урока. Во вторых у нас имеется метод startElement() в котором мы обрабатываем элемент. Сначала мы проверяем если текущий тег имеет название «header» то затем получаем все атрибуты тега и записываем их в базу данных. Ну и в третьих я зачем-то переопределил метод endDocument() но честно говоря это абсолютно лишнее 🙂 и его можно смело отсюда выкинуть :).

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

На сегодня пожалуй хватит. Есть вопросы? Пишите в комментах!

Вам понравилось? Было полезно? Поделитесь!

Опубликовать в Facebook
Опубликовать в Google Buzz
Опубликовать в Google Plus
Опубликовать в LiveJournal
Опубликовать в Мой Мир
Опубликовать в Одноклассники
Опубликовать в Яндекс
Рубрика: Android, Новичку, Программирование | Метки: , , , , , | 8 комментариев

Тайм менеждер за один час

Всем привет!

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

Итак приложение должно быть таким:

1. Иметь возможность переключать одним нажатием один из трех режимов: работа, сон отдых.

2. Сохранять информацию о выбранном режиме даже когда из программы вышли, или телефон перезагружен.

3. Иметь более-менее приятный интерфейс.

Читать далее

Вам понравилось? Было полезно? Поделитесь!

Опубликовать в Facebook
Опубликовать в Google Buzz
Опубликовать в Google Plus
Опубликовать в LiveJournal
Опубликовать в Мой Мир
Опубликовать в Одноклассники
Опубликовать в Яндекс
Рубрика: Android, Новичку, Программирование | Метки: , , , , , , , , | 7 комментариев

Программка — Анти ГИБДД

Всем привет!

Сегодня меня остановили инспектора ГИБДД и оштрафовали за якобы нечитаемый госномер. А я к сожалению не знал как правильно себя вести в такой ситуации. Вот и решил написать небольшую программку в помошь тем, когд остановили доблестные вымогатели 🙂

Скачать ее можно в маркете https://play.google.com/store/apps/details?id=ru.davidmd.gibdd

Читать далее

Вам понравилось? Было полезно? Поделитесь!

Опубликовать в Facebook
Опубликовать в Google Buzz
Опубликовать в Google Plus
Опубликовать в LiveJournal
Опубликовать в Мой Мир
Опубликовать в Одноклассники
Опубликовать в Яндекс
Рубрика: Android | Метки: , , , , | 6 комментариев

Выгрузка яндекс-карт на компьютер

Всем привет!

Вчера мне нужно было найти растровую карту своего города, и оказалось что с этим у нас проблема. Пришлось написать такую вот маленькую утилитку, которая позволяет выгрузить кусочек yandex карты с разными настройками. http://api.yandex.ru/maps/doc/staticapi/ — это собсно описание апи яндекс карт которым я пользовался. Программа пожалуй жутко неудобная, но вполне функциональная. По крайней мере я с ее помошью карту сделал достаточно быстро (ну ладно, не очень быстро, но все же!) Если у кого будут по ней вопросы, спрашивайте. yampdlr — псаобствено сама программка.

Вам понравилось? Было полезно? Поделитесь!

Опубликовать в Facebook
Опубликовать в Google Buzz
Опубликовать в Google Plus
Опубликовать в LiveJournal
Опубликовать в Мой Мир
Опубликовать в Одноклассники
Опубликовать в Яндекс
Рубрика: Не в тему | Метки: , | 1 комментарий

Программируем клиент для блога на WordPress (часть 2 — база данных)

Всем привет!

В прошлой статье мы писали серверную часть на php и, поскольку я не получил сильных пинков по поводу ее содержания, теперь займемся нашим клиентом для блога на WordPress под Android. И сегодня мы будем работать с базой данных. На сколько мне известно, (а известно мне не много) единственной базой данных, имеющейся в распоряжении разработчика на Android SDK является SQLite. Что это за зверь такой? В отличие от привычных нам всем mysql и прочих баз данных SQLite — это не серверное приложение, это СУБД встраиваемая прямо в Ваше приложение и обеспечивающая доступ к базе данных хранящейся в определенном файле. Т.е. ваше приложение не нуждается в соединении с сервером. Читать далее

Вам понравилось? Было полезно? Поделитесь!

Опубликовать в Facebook
Опубликовать в Google Buzz
Опубликовать в Google Plus
Опубликовать в LiveJournal
Опубликовать в Мой Мир
Опубликовать в Одноклассники
Опубликовать в Яндекс
Рубрика: Android | 3 комментария

Программируем клиент для блога на WordPress (Часть 1 — сервер)

Всем привет!

Тут возникла необходимость написать простенький клиент для блога, работающего на WordPress для андроида. Функционал пока что крайне не велик — просматривать содержимое статей с определенного web-сайта. Задача, как оказалось, вполне тривиальна и подходит для начинающих кодеров вроде нас.

Попутно мы разберемся со следующими вещами:

1) Как подключаться к SQLite базе данных под Android.

2) Как закачать файл с удаленного сервера

3) Как пользоваться компонентом WebView

4) Как работает класс AsyncTask

5) Как в простейшем виде использовать SaxParser

6) Дополнительно, вероятно, узнаем что я ничего не смыслю в php 🙂

Читать далее

Вам понравилось? Было полезно? Поделитесь!

Опубликовать в Facebook
Опубликовать в Google Buzz
Опубликовать в Google Plus
Опубликовать в LiveJournal
Опубликовать в Мой Мир
Опубликовать в Одноклассники
Опубликовать в Яндекс
Рубрика: Android | Метки: , , , , , , , , | 3 комментария

Что нужно знать для того чтобы начать программировать под Android

Всем привет! Долго долго ничего не писал! Решил исправить.

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

Вам понравилось? Было полезно? Поделитесь!

Опубликовать в Facebook
Опубликовать в Google Buzz
Опубликовать в Google Plus
Опубликовать в LiveJournal
Опубликовать в Мой Мир
Опубликовать в Одноклассники
Опубликовать в Яндекс
Рубрика: Android, Java основы языка, Новичку | Метки: , , , , | 23 комментария