Как прикрепить источник к android.сосуд


Я новичок в Android. Я работаю в ОС Windows с Eclipse IDE. Мое простое приложение имеет счетчик, который заполняет список из столбца базы данных. Когда я нажимаю на класс spinner, редактор файлов говорит, что источник не найден и android.jar не имеет привязанности к источнику.

Я скачал исходный код и поместить его в этом месте:

android-sdk-windowsplatformsandroid-8

затем я прикрепил этот источник следующими шагами:

щелкните правой кнопкой мыши проект = > build path=> configure build path= > libraries = > source attachment = > укажите путь к загруженному исходному коду.

но, я не получил никакого решения для моей отладки. Опять же, при нажатии на спиннер он открывает отладку, что android.jar не имеет привязанности к источнику.

7 73

7 ответов:

чтобы прикрепить исходный код для android.jar, вы можете следовать учебнику по ссылке ниже: http://android.opensourceror.org/2010/01/18/android-source/ Убедитесь, что вы выбрали правильную версию платформы.

Если вы встречаетесь трудно с spinner, попробуйте получить пример кода и посмотреть, как это работает: http://developer.android.com/resources/samples/get.html

удачи. :)

обновление

этот ответ вполне устарели, пожалуйста, рассмотрим другие ответы.

теперь это очень просто!

перейдите в окно - > Android SDK Manager и установите "Sources for Android SDK".

теперь попробуйте управлять-нажмите некоторые Android identify, вы получите обычную страницу "без источника прилагается". Нажмите кнопку "Добавить источник" и получите возможность выбрать внешнюю папку.

теперь найдите /home/me/android-sdks/sources/android-16 (или там, где установлен ваш SDK; это по умолчанию), и нажмите ok.

Он должен подумать на мгновение, а затем отобразить источник! Да!

Если вам не нужны более старые источники 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 Источники

если добавить папку android-sdks/sources/android-17 как внешний источник не работает (как в моем случае) вы можете попробовать создать папку android-sdks/platforms/android-17/sources/android-17 скопируйте источники в него и перезапустите eclipse (у меня есть Eclipse Juno Service Release 1). Только этот способ работает для меня.

шаги, чтобы сделать это для android-17:

  1. перейти к adroid-sdk установить папку, для меня это d:\ws\android-sdks\
  2. скопировать источники android-sdks\sources\android-17\ до android-sdks\platforms\android-17\sources\ (вы должны создать папку sources здесь вручную) папка таким образом, окончательный путь к источникам должен быть:android-sdks\platforms\android-17\sources\android-17\
  3. перезагрузите eclipse, он должен автоматически подключать источники для android-17

UPD: то же самое решение с symlinks:

Windows Vista+ (спасибо @saleemrashid1 за упоминание mklink в комментарии):

1. cd platforms\android-17
2. mklink /D "sources\android-17" "..\..\..\sources\android-17"

для ОС Unix-base (@Joe comment):

он отлично работает для создания каталога и симлинк "sources / android-XX" к." ./../../ источники / android-XX":

mkdir platforms/android-19/sources && 
ln -s ../../../sources/android-19 platforms/android-19/sources/android-19. 

то, что сработало для меня, следует за ответом, найденным в программировании Android Мураха. Я застрял, пытаясь отладить и попытался проработать его около 3 часов, прежде чем перейти к следующей странице (буквально), где он сказал: "Иногда Eclipse будет отображать источник не найдено сообщение, потому что...."(-headdesk-)

мое решение состояло в том, чтобы включить фильтрацию шагов и добавить пакеты, которые я хотел пропустить при отладке. Очевидно, что Eclipse иногда проходит через все библиотеки исходного кода, когда все, что вы хотите, чтобы шаг через код. Вы можете обойти это, добавив пакеты, которые вы хотите пропустить в фильтре. По словам Мураха, вы просто делаете это методом проб и ошибок, начиная с выбора всех пакетов и их добавления. По мере продолжения отладки может потребоваться добавить в фильтр дополнительные пакеты.

конкретные шаги: 1. Включите фильтрацию шагов; нажмите кнопку на панели инструментов вверху, которая выглядит следующим образом: http://i57.tinypic.com/x3iccp.png 2. Перейдите в окно - > "Настройки", затем в диалоговом окне предпочтения выберите Java-->отладка-->шаг фильтрации 3. Выберите все пакеты. 4. Чтобы добавить дополнительные фильтры, нажмите кнопку "Добавить фильтр", введите имя пакета .* в конце и нажмите кнопку ОК. Мурах рекомендует добавить эти общие пакеты для начала: --андроид.* --com.андроид.* --com.гуглить.* -- дальвик.* --libcore.* --орг.апаш.* Поэтому, чтобы добавить один из этих пакетов, нажмите "Добавить фильтр", введите " android.*", и нажмите кнопку ОК. Я закончил тем, что все следующие пакеты в моих настройках фильтра шага.

android., android.приложение., com.андроид., com.гуглить., com.компания IBM., com.солнце., далвик., java., javax., jrockit., libcore., орг.апаш., орг.о мой бог., солнца., sunw.* , ((и это последний класс, а не пакет)) java.ленг.ClassLoader

У меня был " использовать шаговые фильтры" проверено в верхней части диалогового окна, и "шаг через фильтры" внизу. Нажмите кнопку "Применить", затем" ОК", чтобы закрыть диалоговое окно. Это должно сработать.

удачи!

Я добавил AppEngine sdk и некоторые другие источники, и это уничтожило мой ADT : - (

Я видел, что для android-16 и android-17 библиотеки платформы, загруженные SDK Manager, начали собираться ./sdk / sources тогда как до моего добавления appenginge sdk, SDK Manager отправил платформы./ sdk / платформы.

похоже, что изменение происходит в результате AppEngine sdk ,но для ADT API платформы должны быть def./ sdk / platforms

путь ./sdk / sources кажется более общим местоположением java и, вероятно, является "правильным" путем. Таким образом, Android, как обычно, проблема. Я был уверен, что с этого момента мне понадобится и то, и другое ./ sdk / sources and ./ sdk / платформы, в зависимости от того, что я компилировал.

Итак ,я все переехал./ sdk / sources to ./ sdk / platform, удалено ./sdk / sources а затем создал ссылку 'cd sdk & & ln-s platform sources'

теперь все работает; -)

для меня единственным решением, которое сработало, был ответ fsbmain. Слава ему. Я не могу прокомментировать его решение из-за моей низкой репутации счетчика. Но я хочу поделиться своими знаниями ;)

Я работаю над windows и не хочу копировать все исходное дерево в другое место. И скопируйте снова на обновления и т. д. Поэтому я использовал возможность вставить символическую ссылку, которая работает с Windows Vista, как шарм (или как Linux). Для Linux вы должны посмотреть на Комментарий Джо под ответом fsbmain.

предполагая, что у вас есть платформа в D:\sdk\platforms\android-19. Теперь вы должны сделать подкаталог источник и после этого создать относительную ссылку на реальные источники папку.

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 ... Готово!