- 10 приложений, которые нужно сразу установить на Android-смартфон
- MX Player Pro — смартфон как всеядный «видак»
- ES Проводник — очистка смартфона от мусора и передача файлов по Wi-Fi
- WPS Office — Word, Excel и все-все-все
- Виджеты погоды/новостей — чтобы не включать телевизор
- Shazam — узнать, какая песня играет
- Пишем своё первое приложение на Android
- Предисловие
- Подготовка к разработке
- Создание Android-приложения
- Запуск и тестирование приложения
- Заключение
- UPD: Устранение возможных ошибок
10 приложений, которые нужно сразу установить на Android-смартфон
MX Player Pro — смартфон как всеядный «видак»
Одна из причин, по которой смартфоны заполучили огромные широкоформатные экраны, — это просмотр видео. Процессоры сегодня умеют почти не потреблять энергию, когда смартфон работает в режиме видеоплеера, а по количеству форматов, которые «тянет» типичный Android-смартфон, он даже круче компьютеров. В теории, он справится и с древними видеороликами начала 90-х, и с новым 4K-видео.
В теории, потому что стандартные видеоплееры в смартфонах сделаны по принципу «лишь бы что-нибудь как-нибудь воспроизводилось». Если вас угораздит записать пачку фильмов с компьютера на смартфон, чтобы просмотреть их в дороге, есть риск обнаружить, что половина видеозаписей либо не открываются, либо воспроизводятся без картинки и/или звука.
MX Player — отличный всеядный видеоплеер на Android
Всё это поправимо установкой по-настоящему всеядного плеера. Таких много, но MX — один из самых авторитетных и навороченных среди себе подобных. Он воспроизводит любое видео и музыку в очень экономном режиме даже на старых смартфонах, умеет делать громкость в видеозаписях в два раза выше, чем стандартный плеер (в фильмах с тихой звуковой дорожкой это очень кстати), переключаться между несколькими видами озвучки, масштабировать кадр «щипком», как в фотографиях, и открывать видео из сайтов в удобном Android-плеере.
Сам по себе MX Player бесплатен, но нафарширован рекламой. Версия без рекламы уже стоит денег. Немного хлопот доставляет только то, что из-за жадности держателей патентов поддержку формата AC3 (многоканальный звук в современных фильмах) нужно загружать и «прикручивать» отдельно. Но поверьте на слово — плеер очень хорош и заслуживает таких хлопот.
ES Проводник — очистка смартфона от мусора и передача файлов по Wi-Fi
Давным-давно, когда Android был «полуфабрикатом», в нём не было толковых файловых менеджеров. Для того, чтобы бравировать перед владельцами Айфонов фактом «смотрите, у меня всё по папочкам разложено, как на компьютере!», нужно было загружать отдельное приложение для управления файлами.
Те времена давно прошли, и теперь банальные программы для того, чтобы переименовать, переместить или копировать файлы, есть в каждом смартфоне. А вот качественных среди них нет.
ES Проводник поможет передать файлы по Wi-Fi и очистить систему от мусора
ES Проводник был одним из первых заслуживающих внимания файловых менеджеров на Android, сегодня он разросся вширь и умеет намного больше, чем нужно рядовому пользователю. Но активному пользователю андроидофона точно понадобятся следующие «вкусности»:
- Возможность открывать файлы из локальной сети. Например, из общей папки на вашем компьютере/ноутбуке, или из жёсткого диска/флэшки, которые вы воткнули в роутер.
- Работа с архивами. Когда-нибудь вам отправят пачку фотографии, документ для Word/Excel внутри .zip, .rar или ещё чего пострашнее. ES Проводник сможет открыть такие архивы без проблем.
- Анализ накопителя. Если смартфон набит файлами под завязку, при этом не очень понятно, с чего вдруг место так резко закончилось, достаточно нажать клавишу «анализ» в ES, после чего он покажет, сколько места в памяти занимают картинки/музыка/приложения и игры/документы, расставит их от крупных к мелким и позволит удалить «мусор» прямо в этом же меню. Почти безальтернативная по своему удобству функция.
- Передача файлов между смартфонами на скорости Wi-Fi. Вряд ли вы так уж часто отправляете фотографии, музыку и видео на соседние мобильники, как в эпоху полифонических рингтонов, но Bluetooth с тех пор как был, так и остался унылым и медленным способом связи, а нормальный универсальный способ передавать файлы через Wi-Fi не придумали. Точнее, придумали, но только между одинаковыми приложениями. Если у вас и вашего товарища есть ES Проводник, вы можете в два нажатия отправить крупногабаритные файлы на максимально возможной между мобильниками скорости — в файловом менеджере на этот случай припасена функция «отправитель».
WPS Office — Word, Excel и все-все-все
За время существования смартфонов файлы стандартов Microsoft Office (Word, Excel, PowerPoint и др.) сначала были «неподъёмной» экзотикой, потом откровением, с которым все пытались править тексты на крохотных экранах. Сегодня никаких чудес в просмотре и мелком редактировании текста в документах и презентациях нет. Другое дело, что такие файлы (+ документы формата Adobe PDF) будут слетаться к вам на e-mail со всех сторон, а открыть их на смартфоне будет не с чего. Можно, конечно, хранить интригу до тех пор, пока вы не доберётесь к настольному ПК, но разумнее потратить несколько десятков мегабайт памяти на готовый набор для открытия и редактирования всего «офисного».
WPS Office — Word, Excel и PowerPoint в кармане
WPS Office (бывший Kingsoft Office, если кому интересно) — не самый крутой офисный пакет из себе подобных, зато он бесплатный, безглючный, быстрый и не обделён возможностями даже в сравнении с дорогостоящими альтернативами. Рекомендуем.
Виджеты погоды/новостей — чтобы не включать телевизор
Как и в случае с файловыми менеджерами, смартфоны не обделены информаторами о температуре за окном и последних новостях, но качество стандартных виджетов почти всегда оставляет желать лучшего. Поэтому советуем разукрасить рабочий стол информационными деталями других разработчиков.
Внешний вид и функциональность виджетов — всегда вкусовщина, но на наш взгляд наименее броские и при этом функциональные варианты погоды и новостей сегодня предлагает Яндекс. Побочный эффект заключается в постоянном «впаривании» поиска, приложения «Такси» и других продуктов компании.
Погода и новости сделают рабочий стол смартфона всегда интересным зрелищем
Сначала разглядывать на рабочем столе заголовки и прогноз погоды вместо «обоев» будет непривычно, но поверьте на слово — очень скоро вы начнёте получать удовольствие от того, что будете знать все главные события в мире раньше телезрителей и читателей новостей в интернете. Углубляться только в политические конфликты тоже не обязательно — любители автомобилей или электронных устройств могут получать информацию только по своим любимым темам.
Shazam — узнать, какая песня играет
Каждый день вы слышите музыку, среди которой есть песни, от которых вас будто бьёт током. Потому что вот под эту самую песню вы в детстве носились под ёлкой/собирались на первое свидание/устраивались на работу/ещё что-нибудь, но из текста на иностранном по-прежнему не понятно, о чём речь, а ещё вы не помните, кто вообще исполняет эту песню и как она называется.
С новыми смартфонами это больше не проблема — достаёте из широких штанин вашу «лопату» на Андроид, нажимаете клавишу. Смартфон слушает композицию и называет исполнителя и название песни спустя несколько секунд. Вот для чего нужно приложение под названием Shazam.
Источник
Пишем своё первое приложение на Android
Предисловие
Подготовка к разработке
Установка среды разработки Eclipse
Тут всё просто. Идём в раздел Downloads на официальном сайте и качаем версию Classic. Далее просто распакуйте архив, куда вам хочется, я же решил это сделать в почетную директорию C:\Eclipse
Установка ADT плагина к Eclipse
Запускаем Eclipse, и открываем диалог установки плагина через меню Help → Install new software. В поле Work with вписываем адрес загрузки плагина dl-ssl.google.com/android/eclipse (если не получилось, то плагин можно скачать и установить вручную по ссылке http://developer.android.com/sdk/eclipse-adt.html), далее в таблице ниже появится Developer Tools, отмечаем его и идем далее.
После успешной установки, можно перезапустить среду Eclipse.
Установка среды для Java: JDK и JRE
Если у вас еще не установлены Java Development Kit (JDK) и Java Runtime Environment (JRE), то их необходимо установить. Сделать это можно на сайте Oracle. Скачайте и установите JDK и JRE.
Установка Android SDK
Дело осталось за малым — это скачать и установить свежий Android SDK. Это делается на сайте для Android разработчиков. Я лично установил SDK опять-таки в почётную директорию C:\Android. После этого необходимо добавить платформы и прочие дополнительные элементы SDK. Я добавил все доступные версии, так как планирую делать приложения и для ранних платформ, а также USB-драйвер и примеры приложений.
Подготовка к разработке завершена. Теперь следующий этап — создание приложения.
Создание Android-приложения
Перед тем как создать своё первое приложение, можно создать виртуальное Android-устройство, чтобы быстро тестировать на нём свой свеженаписанный софт. Вначале я хочу сказать вам несколько слов по поводу Android Virtual Device (AVD). Это виртуальный смартфон с ОС Android, на котором вы с легкостью сможете запускать созданную вами программу. Как можно заметить, преимущество Android Virtual Device состоит в том, что наглядно можно увидеть как будет работать Ваша программа на разных смартфонах с Android, а не покупать весь модельный ряд и тестировать приложение на каждом из них.
Приступим к созданию виртуального устройства Android. Следуем в меню по пути Window → Android SDK and AVD Manager.
Выбираем New в правой части окна, в появившемся окне вписываем имя виртуального устройства, платформу (допустим Android 2.1), размер карты памяти (допустим 512 Mb), тип дисплея (допустим HVGA). Затем жмем внизу на кнопку Create AVD.
Теперь создадим проект. Для этого идем по пути в меню File → New → Other, в появившемся списке Android → Android Project.
В качестве примера расскажу о разработке одной моей простейшей программы UfaTermometr, показывающей текущую температуру с датчиков, расположенных на одном из объектов местной энерго-компании.
После создания проекта, слева вы увидите дерево директорий. Перво-наперво загрузим свою иконку приложения, а точнее 3 иконки под разные варианты. В папку drawable-hdpi грузим png-картинку с прозрачным фоном размером в 72×72, в drawable-mdpi соответственно 48×48 и в drawable-ldpi самую маленькую размером 36×36. Делать это можно простым перетаскиванием файлов прямо на дерево. Следующим шагом будут элементы управления. В моей программе было необходимо всего три элемента интерфейса: ImageView (просто картинка логотип приложения), Button (обновить значение температуры) и TextView (вывод значения температуры). Все эти элементы управления нужно описать в специальном xml-файле. В дереве он расположен по адресу res → layout → main.xml. Во-многом разметка элементов управления сходна с вёрсткой веб-страниц, тут есть и padding, и margin, и аналог align. Код main.xml моего приложения:
xml version =«1.0» encoding =«utf-8» ? >
LinearLayout xmlns:android =«schemas.android.com/apk/res/android»
android:orientation =«vertical»
android:layout_width =«fill_parent»
android:layout_height =«fill_parent»
>
ImageView android:layout_width =«fill_parent»
android:layout_height =«wrap_content»
android:src =»@drawable/droid»
android:layout_gravity =«center_horizontal|center»
android:layout_margin =«0px»
/>
Button
android:id =»@+id/refrbutton»
android:layout_width =«wrap_content»
android:layout_height =«wrap_content»
android:gravity =«center_horizontal»
android:layout_gravity =«center_horizontal|center»
android:textSize =«30px»
android:padding =«20px»
android:layout_marginTop =«10dip»
android:text =«Обновить»
/>
TextView
android:layout_width =«fill_parent»
android:layout_height =«wrap_content»
android:text =». »
android:textSize =«100dip»
android:gravity =«center_horizontal»
android:id =»@+id/temper»
android:textColor =»#EEE3C4″
/>
LinearLayout >
Подробно останавливаться на разметке элементов управления не буду, так как это всё достаточно подробно описано в мануале и вообще интуитивно понятно, особенно тому, кто имел дело с html/css-вёрсткой и/или разработкой в какой-либо визуальной среде (например, Delphi). Единственное, обратите внимание как я загрузил произвольное изображение в ImageView. В поле src указывается путь, начинающийся с символа @ и далее указываете адрес по дереву. В папке res я заблаговременно создал подпапку drawable и «закинул» туда логотип, а затем просто указал ImageView путь. Легко? По мне так очень.
Непосредственно код приложения располагается по пути src → «ваше название package» → «название приложения».java.
По-умолчанию создается «болванка» главного класса и от неё уже дальше можно плясать. Не буду останавливаться на тонкостях такого простого кода как у меня в примере, но поясню, что логика работы объясняется тремя простыми шагами:
- Загрузить HTML-страницу со значениями температуры
- С помощью регулярок «вытащить» температуру
- Показать в TextView значение температуры
Заметьте, что когда приложению требуются какие-то системные разрешения, нужно указывать их в манифесте AndroidManifest.xml. В данном конкретном случае мы используем подключение к Интернет, соответственно добавляем строчку в указанный выше xml-файл.
Собственно сам код, реализующий указанную выше логику работы:
package app.test.ufatermometr;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
import android.widget.Button;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
import java.util.regex.*;
public class UfaTermometr extends Activity
<
@Override
public void onCreate(Bundle savedInstanceState)
<
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final Button button = (Button) findViewById(R.id.refrbutton);
button.setOnClickListener( new Button.OnClickListener() <
public void onClick(View v) // клик на кнопку
<
RefreshTemper();
>
>);
RefreshTemper(); // при запуске грузим температуру сразу
>;
//—————————————————————-
public String GetTemper(String urlsite) // фукция загрузки температуры
<
String matchtemper = «» ;
try
<
// загрузка страницы
URL url = new URL(urlsite);
URLConnection conn = url.openConnection();
InputStreamReader rd = new InputStreamReader(conn.getInputStream());
StringBuilder allpage = new StringBuilder();
int n = 0;
char [] buffer = new char [40000];
while (n >= 0)
<
n = rd.read(buffer, 0, buffer.length);
if (n > 0)
<
allpage.append(buffer, 0, n);
>
>
// работаем с регулярками
final Pattern pattern = Pattern.compile
( » [^-+0]+([-+0-9]+)[^ [^(а-яА-ЯёЁa-zA-Z0-9)]+([а-яА-ЯёЁa-zA-Z ]+)» );
Matcher matcher = pattern.matcher(allpage.toString());
if (matcher.find())
<
matchtemper = matcher.group(1);
>
return matchtemper;
>
catch (Exception e)
<
>
return matchtemper;
>;
//—————————————————————-
public void RefreshTemper()
<
final TextView tTemper = (TextView) findViewById(R.id.temper);
String bashtemp = «» ;
bashtemp = GetTemper( «be.bashkirenergo.ru/weather/ufa» );
tTemper.setText(bashtemp.concat( «°» )); // отображение температуры
>;
>
После того как приложение написано, можно уже его отлаживать и тестировать.
Запуск и тестирование приложения
Вспоминаем про нашу виртуальную машину и запускаем привычной кнопкой или менюшкой Run → Run
Вот такую картину мы можем затем созерцать:
Теперь, если вы хотите поделиться приложением, то нужно собрать apk-файл. Для этого воспользуемся меню File → Export и в списке Android → Export Android application. Далее выберите проект, затем создайте хранилище ключей keystore и ключ key, для этого нужно будет заполнить несколько полей с всякого рода справочной информацией. Получившийся apk-файл можно распространять и даже выложить в Android Market, но для этого придется зарегистрироваться и уплатить $25, что в общем-то немного, особенно для стоящего проекта. Но регистрация в Маркете, пожалуй, тема отдельной статьи.
Заключение
В заключении хотелось бы сказать, что безусловно разработка приложений для Android приятна, достаточно проста и интересна. Конечно, мы рассмотрели лишь верхушку айсберга, но я надеюсь, что в умах тех из вас, кто раньше не пробовал делать ничего подобного «загорелась лампочка» и вполне возможно, что когда-то вашим приложением будут пользоваться миллионы.
Источники, ссылки
UPD: Устранение возможных ошибок
ERROR: Unable to open class file C:\workspace\Test\gen\com\example\test\R.java: No such file or directory
emulator: ERROR: no search paths found in this AVD’s configuration. Weird, the AVD’s config.ini file is malformed. Try re-creating it
— это следствие того, что у Вас кириллица в имени пользователя. Решается: идем в Компьютер → Свойства системы → Дополнительные параметры системы → Переменные среды. Создаем новую переменную с именем ANDROID_SDK_HOME и значением – путем, где находится папка AVD (например, C:\Android\). Создаем, далее ищем там же переменную Path, открываем и в поле значений через точку с запятой добавляем путь до папки tools Android SDK (например, C:\Android\tools). Сохраняем. Запускаем Eclipse, запускаем программу.
UPD 05.10.2011, во что превратилось данное приложение можно лицезреть на следующих скринах:
Это результат развития той самой болванки, которая выше дана в качестве примера.
Разработка и создание Android-приложений
Создание сайтов
Источник