Robotium: пожалуйста, установите совместимый уровень Android API (15 или выше)
Пытаясь запустить новый тест robotium, я получаю эту ошибку. Кто-нибудь знает как это исправить?
У меня есть все необходимые API. (15 и много более высоких API). Что мне не хватает?
Это часть моего файла Gradle:
android {
compileSdkVersion 25
buildToolsVersion "25.0.2"
defaultConfig {
applicationId "com.centervue.exam"
minSdkVersion 19
targetSdkVersion 25
// DO NOT PUT HERE VERSION NAME, THX. Change the Manifest
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
ndk {
moduleName "exam_filter"
ldLibs "log", "jnigraphics"
}
renderscriptTargetApi 18
renderscriptSupportModeEnabled true
}
[...]
ОБНОВЛЕНИЕ: после изменения каждой версии библиотеки поддержки с 25+ или + по крайней мере на 25.+, чтобы избежать смешанных библиотек... это работает и запускается. Хотя теперь я получаю это сообщение:
Метод JavaCompile.setDependencyCacheDir() устарел и планируется удалить в Gradle 4.0. Инкрементная компиляция Java является инкубационной функцией. FAILURE: сборка не удалась, исключение. * Что пошло не так: возникла проблема при настройке корневого проекта executorproject. > org.gradle.api.internal.tasks.DefaultTaskInputs$TaskInputUnionFileCollection не может быть приведен к org.gradle.api.internal.file.collections.DefaultConfigurableFileCollection * Try: Запустите с параметром --stacktrace, чтобы получить трассировку стека. Запустите с параметром --info или --debug, чтобы получить больше вывода журнала. СТРОИТЬ НЕ УДАЛЕНО Общее время: 1.883 сек
Любая идея? Мы почти на месте, я думаю.
2 ответа
На панели вашего проекта / Android нажмите F4, чтобы открыть структуру проекта. Выберите Расположение SDK и убедитесь, что путь расположения Android SDK фактически совпадает с установкой SDK, в которую вы загрузили свои API.
Убедитесь, что на эмуляторе или на устройстве установлено хотя бы API 15 (
>= ICE_CREAM_SANDWICH_MR1
)Убедитесь, что в вашем SDK доступен тот же API, что и на вашем устройстве:
Руководство пользователя: Убедитесь, что уровень Android API подключенного устройства или эмулятора доступен в Android SDK Manager.
Откройте файл Module Gradle и убедитесь, что
compileSdkVersion
&targetSdkVersion
(и возможноminSdkVersion
&buildToolsVersion
) Версии есть как минимум 15(Для будущих читателей) Убедитесь, что у вас настроен тест для запуска, в противном случае у вас нет возможности
Чтобы решить эту проблему, помимо того, что сказал Ник Кардосо, я:
- создал новый AVD и оттуда установил все библиотеки AVD из 25 библиотек. API Google включены. Это не сработало.
- Я попытался открыть Файл> Настройки> Системные настройки> Android SDK > Нажал кнопку "Изменить" рядом с расположением SDK и переустановил Android SDK из представления, которое открывается оттуда.
- Я проверил каждую библиотеку поддержки в своих зависимостях, переместив их с:+ или 25+ по крайней мере на 25.+, чтобы избежать несоответствия версий библиотек.
Теперь у меня больше нет этой проблемы (но у меня есть та, которая описана в описании).