Ответ 1
Это не очень специфический Android, он специфичен для Java.
Несколько инструментов, о которых я знаю:
- PMD - официальный сайт
- FindBugs - официальный сайт
Более полный список инструментов можно найти на wikipedia.
Есть ли какие-либо инструменты для анализа статического кода для Android, которые собирают простые вещи, такие как NullPointerExceptions, из попыток доступа к объекту, который может быть пустым (не проверяя его в первую очередь)...
Инструменты, такие как resharper на проектах С#, делают это довольно хорошо, поэтому я предполагаю, что есть аналогичные инструменты для Android Java...
Это не очень специфический Android, он специфичен для Java.
Несколько инструментов, о которых я знаю:
Более полный список инструментов можно найти на wikipedia.
С ADT 16 существует инструмент build-int Android Lint для статического анализа кода. http://tools.android.com/tips/lint/
Для статического анализа приложений для Android вы можете использовать следующую комбинацию:
Специфические для Android:
IccTA (от создателей FlowDroid)
Попробуйте IntelliJ IDEA от Jetbrains (создателя resharper). В нем много проверок кода Java, таких как resharper и поддержка разработки приложений для Android.
AndroidStudio - это тонкий слой поверх IntelliJ IDEA, который, по словам zloyrobot, имеет множество проверок. Проблема в том, что существует так много проверок, что сложно сузить ваши запросы, чтобы подобрать только действительно хорошие вещи. Я разработал профиль для этой цели и описал, как его использовать здесь: http://superliminal.com/computing/idea_static_analysis.html