Android-источник не компилируется? - PullRequest
0 голосов
/ 06 июня 2010

Итак, я просматривал код из различных частей Android-мерзавца, но когда я пытаюсь загрузить и скомпилировать многие из них (камеру, медиаплеер и т. Д.), Они ссылаются на классы и части SDK, которые просто отсутствуют. Доступно даже с моей версией SDK, обновленной до 2.2. (например, опция конфигурации растрового изображения inNativeAlloc)

Есть ли причина, по которой их нет в SDK, выданном разработчикам?

Ответы [ 2 ]

2 голосов
/ 18 июня 2010

Если вы хотите скомпилировать приложения из проекта Android с открытым исходным кодом (ASOP), такие как браузер, камера, медиаплеер и т. Д. Вы должны строить на Linux или Mac. Вы не можете скомпилировать исходный код в Windows.

См. Получите исходный код Android для получения информации о создании источника и требованиях к требованиям ОС

0 голосов
/ 06 июня 2010

Есть ли причина, по которой это не в выданном разработчикам SDK?

Есть несколько возможностей, в зависимости от того, что "это".

У меня сложилось впечатление, что в большинстве случаев они просто еще не дошли до этого. Под "дошли до этого" я подразумеваю, что они не завершили классы и сигнатуры методов, которые они хотят придерживаться навсегда. Основная команда Android старается свести к минимуму количество разрывов API между выпусками, и в целом это удается (поломка имеет тенденцию быть более измененным поведением, чем изменениями сигнатур методов). Получение участия всех заинтересованных сторон для данного куска кода требует немалых усилий. В Android есть тонна кода, некоторые из которых, вероятно, могли бы поместиться в SDK, но на эту рутинную работу отводится лишь так много времени, по сравнению с продвижением возможностей Android.

В некоторых случаях ответом является безопасность - что, помимо отсутствия стабильного API, они еще не знают, как хотят его защитить, поэтому они делают его доступным исключительно для разработчиков прошивок.

В некоторых случаях ответом может быть производительность - для них настроены необходимые сценарии использования, но есть другие, которые сторонние разработчики могут попробовать, но не оптимизированные.

Я уверен, что есть и другие возможные причины.

...