вторник, 16 апреля 2013 г.

NetBeans, Andorid и логи эмулятора.

Если при отладке приложения в эмуляторе нет вывода логов, то их можно просто открыть из меню Window -> Output -> ADB Log

вторник, 9 апреля 2013 г.

NetBeans, Android и загрузка apk

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

А все потому, но нужно запустить adb в качестве сервера, иначе NetBeans просто не сможет установить ваше приложние в эмуляторе. Т.е. при попытке выполнить приложение откроется эмулятор, а приложения там нет.
Запускается так
_путь_к_SDK_Android_/platform-tools/adb start-server

Netbeans и Android SDK

Подробной инструкции здесь нет, скорее краткий конспект.
Основная информация взята здесь http://forums.netbeans.org/post-143696.html правда в ней урл на плагин устарел.

***
Придется обновить NetBeans до версии не ниже 7.2 (собирался давно это сделать, но теперь придется обязательно). Берем тут https://netbeans.org/downloads/
На текущий момент доступна версия 7.3  -- netbeans-7.3-linux.sh
запускаем инсталлятор
sh netbeans-7.3-linux.sh
Достаточно крупное обновление версии, так что проще переустановить.

Попутно инсталятор пожаловался на слегка устаревшую версию JDK.
Свежие версии традиционно тут http://www.oracle.com/technetwork/java/javase/downloads/index.html
Как поставить в Debian http://mldav.blogspot.com/2012/02/debian-java-sun-jdk7.html


***
Качаем сам Android SDK  http://developer.android.com/sdk/index.html
Теперь (2014.01) SDK находится в разделе "USE AN EXISTING IDE"

для Linux это будет что-то вроде android-sdk_.....-linux.tgz
распаковываем и запускаем ./tools/android

В Tools выбираем  "Android SDK Platform-tools" и так же отмечаем нужные API. Жмем "Install xx packages"

отмечаем согласие с лицензиями "Accept License" и жмем "Install"



В прежние времена на 64битной системе утилита adb откзалась запускаться и выдала что-то вроде:
./adb: error while loading shared libraries: libncurses.so.5
для ее запуска понадобились два пакета "32битных" : lib32ncurses5 и lib32stdc++6
Создаем новый эмулятор - идем в  Tools -> Manag AVDs...  -> New
и заполняем все необходимые поля - версия API, размер SD карты. Имеет смысл выбрать Snapshot - быстрее будет грузиться из "снимка" системы.
Тут же можем и протестировать эмулятор кликнув "Statr", имеет смысл задать чекбокс "Launch from snapshot" - загрузка из снапшота и "Save to snapshot", затем при следующих стартах галку в "Save to snapshot" снять, дабы не портить готовый снапшот.

 ======================
 ***
Плагин для NetBeans
Tools->Plugins->Settings  - там добавляем новый источник обновлений плагинов - жмем кнопку "Add" и добавляем URL http://nbandroid.org/release72/updates/updates.xml

Описание проекта плагина - http://www.nbandroid.org/p/installation.html
Затем переходим на вкладку "Avalable Plugins", находим в списке "Android" отмечаем чекбокс и жмем кнопку "Install". Соглашаемся с лицензией и смиряемся с тем, что плагины не подписаны, т.е. жмем "Continue".
Так же можно установить плагин NBAndroid Extenstions, правда потребуется подписка от http://www.nbandroid.org

Укажем путь к android-sdk
Tools -> Options -> Miscellaneous -> Android 

Попробуем создать новый проект:
File -> New -> Android -> Android Project  
Обращая внимание на забавное предупреждение "Package name must have at least two parts (Android Bug)"
И еще не забыть добавить импорт
import ваш_пакет.R;
и пересобрать проект - clean and build
или без импорта сразу попробовать пересобрать.
В параметре Run поменять вызов активити

И важно не забыть запустить adb в качестве сервера, иначе NetBeans просто не сможет установить ваше приложние в эмуляторе. Т.е. при попытке выполнить приложение откроется эмулятор, а приложения там нет.
Запускается так
_путь_к_SDK_Android_/platform-tools/adb start-server