30 марта 2015 г.

Подсветка парных скобок в Eclipse

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

E0001

Лично мне такая подсветка скобок не очень нравится. Поэтому я озаботился тем как бы сделать это так, чтобы подсвечивались только сами скобки ну и/или фон скобок.

Решение было найдено! Теперь выглядит это все вот так у меня

E0002

E0006

Это делает замечательный плагин Bracketeer.

E0003

Ставится от сюда http://chookapp.github.com/ChookappUpdateSite/

Или из Marketplace http://marketplace.eclipse.org/content/bracketeer-cc-cdt

E0005

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

Кроме того у него есть нужная и симпатичная панелька инструментов, которая позволяет отключать или включать его функционал на лету

E0004

В общем очень рекомендую.

28 марта 2015 г.

JDK и JRE

Как известно JRE входит в состав JDK, но стандартный установщик JDK, зачем-то отдельно ставит еще JRE в отдельную папку, хотя так же самая версия JRE уже есть в каталоге JDK.

JDKandJRE

Поэтому JRE как отдельную инсталляцию можно смело снести с ПК, дабы не занимала место 154Мб, что не мало, если допустим система у вас стоит на SDD диске. Зачем два раза хранить на диске одно и то же? Ведь та же самая JRE лежит внутри JDK.

26 марта 2015 г.

Настройка IntelliJ IDEA и Gradle

Сегодня обновил IntelliJ IEDEA с версии 14.0.3 на версию 14.1. И после этого началась …

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

I00017

На этом мое терпение лопнуло и я решил разобраться с Gradle раз и на всегда!

Идем на сайт Gradle и качаем дистриб. На данный момент это версия 2.3, а IDEA качала с этого же сайта более старую версию 2.2.1

I00019

Дистриб из себя представляет просто архив gradle-2.3-all.zip. Я его разархивировал в C:\gradle-2.3

I00020

Далее идем в настройки IntelliJ IDEA и делаем раз, два, три, четыре…

I00021

Теперь, чтобы старые файлы Gradle не занимали место, все их можно удалить из каталога

C:\Users\<User Name>\.gradleIntelliJIdea

Хотя это я у себя настроил такой каталог, у вас может быть просто .gradle

Но и после этого Gradle еще сильно тормозил собирая проекты. Чтобы придать ему ускорение, надо немного изменить файл настроек gradle.properties в проекте

I00022

После всех этих манипуляций, при попытку установить (запустить) приложение на виртуальное устройство может выскочить ошибка

I00024

INSTALL_FAILED_UID_CHANGED

Это можно вылечить подправив параметр applicationId в файлике проекта

I00023

Про эту ошибочку можно еще почитать тут и чтобы понять что происходит тут.

Вкратце это произошло потому, что приложение не корректно было удалено и оставило свою папку в каталоге /data/data

Так же эту проблему можно решить удалив каталог программы с устройства через adb shell.

Утилитка adb живет по пути C:\android-sdk-windows\platform-tools ну по крайней мере у меня, у вас может быть другой путь. Запускаем ее в командной строке с параметром devices

I00025

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

Далее запускаем shell на устройстве

I00027

И далее смотрим содержимое каталога /data/data командой ls /data/data

I00028

Вывод у этой команды достаточно длинный, так как выводятся все приложения установленные на устройстве

Ну и далее удаляем каталог программы, которая не может установиться по запуску из IntelliJ IDEA

I00029

Удаляем командой rm –r , так как могут быть вложенные каталоги.

На заметку некоторые adb команды

adb devices – список устройств которые уже прикреплены к компьютеру
adb install <packagename.apk> – позволяет установить приложение на устройство
adb remount – размонтирует систему в режим записи – позволяет менять системные файлы на устройстве используя ADB
adb push <localfile> <location on your phone> – позволяет загружать файлы в файловую систему устройства
adb pull <location on your phone> <localfile> – позволяет скачивать файлы с файловой системы устройства
adb logcat – начинает дампить отладочную информацию с устройства в консоль – полезно для отладки приложений
adb shell <command> – бросает вас в базовые shell команды linux'а без параметров, или позволяет непосредственно запускать команды

Ну и на последок ссылка на альма-матер по adb http://developer.android.com/tools/help/adb.html

Хотя там, почему-то далеко не все команды adb перечислены.

Полную справку по командам можно получить через сам adb. Просто дав эту команду безе параметров.

Обновление IntelliJ IDEA 14.0.3 на 14.1

IntelliJ Idea 14.0.3 сообщила сегодня о возможности обновления.

I00001

I00002

И нас перенаправляют на страницу для скачивания на сайте IntellJ IDEA

I00003

Качаем файлик и запускаем установку. При этом версия 14.0.3 стоит на компе, чтобы из нее можно было перенести настройки. Посмотрим как IntelliJ IDEA это сделает.

I00004

I00005

I00006

Снесли старую версию

I00007

И ставим новую

I00008

I00009

I00010

I00011

Понеслась установка

I00012

Установилось!

I00013

Запускаем IntelliJ IDEA

I00014

Проверяем плагины

I00015

Все вроде на месте и как было в предыдущей версии.

I00016

При попытке запустить тестовое приложение IntelliJ IDEA зачем-то пытается снова скачать дистриб Gradle, хотя он уже есть. И причем качаем не самый свежий. На сайте Gradle уже версия 2.3

I00017

И вот эта вещь меня уже сильно припарила в IntelliJ IDEA! На кой ляд спрашивается тащить этот не маленький дистриб если он уже есть на компе?

Читаем в следующей статье как настроить IntelliJ IDEA и Gradle, скачанный с сайта Gradle, а не тот что IntelliJ IDEA тянет сама.

22 марта 2015 г.

Проблема компиляции в IntelliJ IDEA при смене версии Android SDK Build-tools

Та же ошибка, что была описана в прошлой статье о Android Studio, может вылететь и в IntelliJ IDEA.

S0014

Это лечится так же, заменой версии build-tools в файле настроек Gradle

S0015

Проблема компиляции в Android Studio при смене версии Android SDK Build-tools

Если обновить Android SDK Build-tools до текущей версии и удалить старую версию, то ваши старые проекты в Andoid Studio перестанут собираться.

S0001

Если старый проект был настроен на сборку при помощи допустим Android SDK Build-tools 21.1.2, то при компиляции будет выдаваться вот такая ошибка:

S0002

Вылечить это можно двумя способами. Первый это установить обратно SDK Build-tools 21.1.2. Второй поправить файл настроек Gradle. Первый более простой, второй, на мой взгляд, более правильный.

Для этого выбираем Android view (1) и далее файл build-gradle (Module: app) как на рисунке и правим его.

S0003

Приводим его к вот такому виду

S0004

И запускаем проект

S0005

Все работает, НО! Это еще не все! Если вы были внимательны, то в dependencies у нас осталась старая версия (21.0.3), если же мы заходим поменять это на новую (22.0.1), то вылетит куча разных ошибок.

S0006

S0007

Это менять уже чуть посложнее но тоже можно, если осторожно.

Посмотрим сперва почему вылетает эта ошибка

S0008

Но тут вообще все очень не просто. Gradle – это еще тот подарочек! Но разобраться можно.

Если постараться просто поменять названия директорий в соответствии с версией 22.0.1, то есть сделать так, как подсказывает логика

S0009

S0010

И поменять названия папок как показано на скрине, то вылетят еще вот такие ошибки после компиляции

S0011

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

Там мы увидим примерно такое:

S0012

И так чтобы все вообще заработало правильным образом надо привести проект к следующему виду

S0013

И снова запускаем проект

S0005

И снова все работает