Как подключить источник к android.jar
Я новичок в Android. Я работаю в ОС Windows с Eclipse IDE. У моего простого приложения есть счетчик, который заполняет список из столбца базы данных. Когда я нажимаю на spinner Class, редактор файлов говорит, что источник не найден, а файл android.jar не имеет вложения источника.
Я загрузил исходный код и поместил его в это место:
android-sdk-windows\platforms\android-8
Затем я прикрепил этот источник следующими шагами:
щелкните правой кнопкой мыши project = > build path = > configure build path = > libraries = > source attachment = > укажите путь к исходному коду, загруженному.
Но у меня не было никакого решения для моего отладки. Опять же, при нажатии на прядильщик открывается отладка, что файл android.jar не имеет вложения источника.
Ответы
Ответ 1
Чтобы прикрепить исходный код для android.jar, вы можете следовать руководству по ссылке ниже:
http://android.opensourceror.org/2010/01/18/android-source/
Обязательно выберите правильную версию платформы.
Если вы встречаете трудности с помощью spinner, попробуйте получить код примера и посмотрите, как он работает:
http://developer.android.com/resources/samples/get.html
Удачи.:)
Update
Этот ответ довольно устарел, пожалуйста, рассмотрите другие ответы.
Ответ 2
Теперь это очень просто!
Перейдите в Window- > Android SDK Manager и установите "Источники для Android SDK".
Теперь попробуйте щелкнуть элемент управления Android, и вы получите обычную страницу с отсутствием источника. Нажмите "Прикрепить источник" и выберите опцию для выбора внешней папки.
Теперь перейдите к /home/me/android-sdks/sources/android-16
(или где установлен ваш SDK, это значение по умолчанию) и нажмите ok.
Он должен подумать, а затем отобразить источник! Йеай!
Ответ 3
Если вам не нужны более старые источники API, вам, вероятно, лучше всего ответит Timmmm. Если вам нужны источники старше 14 лет, прочитайте...
В Eclipse просто перейдите к
Справка → Установить новое программное обеспечение
затем добавьте сайт обновления
http://adt-addons.googlecode.com/svn/trunk/source/com.android.ide.eclipse.source.update/
и пройдите через установки для его установки.
Это с радостью предоставит источники для всех установленных версий API и отлично работает для меня.
Здесь есть еще несколько документов
http://code.google.com/p/adt-addons/
найдите заголовок Источники Android
Ответ 4
Если добавление папки android-sdks/sources/android-17
в качестве внешнего источника не работает (как в моем случае), вы можете попытаться создать в ней папку android-sdks/platforms/android-17/sources/android-17
источников копирования и перезапустить eclipse (у меня есть eclipse Juno Service Release 1). Только так работает для меня.
Шаги для этого для Android-17:
- Перейдите в папку установки
adroid-sdk
, для меня это d:\ws\android-sdks\
- Скопируйте
android-17
папку с источниками из android-sdks\sources\android-17\
в android-sdks\platforms\android-17\sources\
(вам нужно создать папку sources
здесь вручную), так что конечный путь к источникам должен быть: android-sdks\platforms\android-17\sources\android-17\
- перезапустите eclipse, он должен автоматически подключать источники для android-17
UPD: это же решение с symlinks
:
Windows Vista + (спасибо @saleemrashid1 за упоминание mklink
в комментариях):
1. cd platforms\android-17
2. mklink /D "sources\android-17" "..\..\..\sources\android-17"
Для Unix-базовых ОС (комментарий @Joe):
он отлично работает, чтобы создать каталог и символические ссылки "sources/android-XX"
на "../../../sources/android-XX":
mkdir platforms/android-19/sources &&
ln -s ../../../sources/android-19 platforms/android-19/sources/android-19.
Ответ 5
Что сработало для меня, следует за ответом, найденным в программном обеспечении Android Murach. Я застрял, пытаясь отлаживать и пытался работать в течение примерно 3 часов, прежде чем перейти к следующей странице (буквально), где он сказал: "Иногда Eclipse будет отображать сообщение, не найденное источником, потому что..." (-headdesk -)
Мое решение состояло в том, чтобы включить фильтрацию шага и добавить пакеты, которые я хотел пропустить при отладке. Очевидно, Eclipse иногда проходит через все библиотеки исходного кода, когда все, что вам нужно, - это пройти через ваш код. Вы можете обойти это, добавив пакеты, которые вы хотите пропустить в фильтр. По словам Мураха, вы просто делаете это путем проб и ошибок, начиная с выбора всех пакетов и их добавления. По мере продолжения отладки вы можете обнаружить, что вам нужно добавить в фильтр больше пакетов.
Конкретные этапы:
1. Включить шаговую фильтрацию; нажмите кнопку на панели инструментов сверху, которая выглядит так: http://i57.tinypic.com/x3iccp.png
2. Перейдите в окно → Настройки, затем в диалоговом окне "Настройки" выберите "Java" → "Отладка" → "Фильтрация по шагам"
3. Выберите все пакеты.
4. Чтобы добавить дополнительные фильтры, нажмите "Добавить фильтр", введите имя пакета с. * В конце и нажмите "ОК" . Мурач рекомендует добавлять эти общие пакеты, чтобы начать:
--android. *
--com.android. *
--com.google. *
--dalvik. *
--libcore. *
--org.apache. *
Чтобы добавить один из этих пакетов, нажмите "Добавить фильтр", введите "android. *" И нажмите "ОК" . В моих настройках Step Filter у меня были все следующие пакеты.
android., android.app., com.android., com.google., com.ibm., com.sun., dalvik., java., javax., jrockit., libcore., org.apache., org.omg., sun., sunw. *, ((и этот последний является классом, а не пакетом)) java.lang.ClassLoader
У меня были "Use Step Filters", которые были отмечены в верхней части диалогового окна, и "Step through filters" проверили внизу. Нажмите "Применить", затем "ОК" , чтобы закрыть диалоговое окно. Он должен работать.
Удачи!
Ответ 6
Я добавил appengine sdk и некоторые другие источники, и это уничтожило мой ADT: - (
Я видел, что для android-16 и android-17 библиотеки платформ, загруженные SDK Manager, начали переходить в. /sdk/sources, а до добавления appenginge sdk SDK Manager отправил платформы на. /sdk/platforms.
Похоже, что это изменение происходит из-за appengine sdk, но для ADT API-интерфейсы платформ должны быть доступны. /sdk/platforms
Путь./sdk/sources выглядит как более общее местоположение Java и, вероятно, является "правильным" путем. Таким образом, Android, как обычно, является проблемой. Я был уверен, что с этого момента мне нужны оба. /sdk/sources и./sdk/platforms, в зависимости от того, что я компилировал.
Итак, я переместил все из. /sdk/sources в./sdk/platform, удалил. /sdk/sources, а затем создал ссылку "cd sdk && Источники ln -s платформы
Теперь все работает, -)
Ответ 7
Для меня единственным решением, которое работало, был ответ fsbmain. Престижность ему. Я не могу прокомментировать его решение из-за моего низкого счетчика репутации. Но я хочу поделиться своими знаниями;)
Я работаю над окнами и не хочу копировать все исходное дерево в другое место. И снова скопируйте обновления и т.д. Поэтому я использовал возможность вставить символическую ссылку, которая работает с Windows Vista как шарм (или, как Linux). Для Linux вы должны посмотреть комментарий Джо в ответ fsbmain.
Предположим, что у вас есть платформа в D:\sdk\platform\android-19. Теперь вам нужно создать подкаталог sources и после этого создать относительную ссылку на папку реальных источников.
D:\sdk\platforms\android-19>mkdir sources
D:\sdk\platforms\android-19>cd sources
D:\sdk\platforms\android-19\sources>mklink /D android-19 ..\..\..\sources\android-19
Теперь перезапустите Eclipse... Done!