AsyncTask.java не может разрешить символ для Nullable, Mainthread, WorkerThread

Я новичок в студии Android, но у меня возникла эта ошибка, и я не могу запустить свой проект. Я видел много ответов, в которых предлагается добавить зависимость поддержка-аннотации, но я использую appcompat, поэтому мне это не нужно. Есть предположения?

AsyncTask.java не может разрешить символ для Nullable, Mainthread, WorkerThread

Appcompat не включает зависимость аннотаций

OneCricketeer 08.04.2018 23:16

Почему ваш класс Java находится в пакете android.os?

CommonsWare 08.04.2018 23:17
developer.android.com/studio/write/annotations.html
OneCricketeer 08.04.2018 23:18

@Commons Я думаю, что это исходный код AsyncTask

OneCricketeer 08.04.2018 23:19

да, это исходный код AsyncTask

specbk 08.04.2018 23:22

Поскольку это не ваш класс и не является частью того, что компилируется в вашем проекте, почему вы думаете, что именно поэтому вы не можете запустить свой проект? Какие у Вас симптомы?

CommonsWare 08.04.2018 23:24
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.String.length()' on a null object reference это основная причина. Но я думал, что оба как-то связаны?
specbk 08.04.2018 23:31

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

CommonsWare 08.04.2018 23:41
1
8
1 431
2

Ответы 2

У вас есть библиотека поддержки Android?

Для этого добавьте это в свой файл build.gradle модуля «app»:

dependencies {
    ...
    implementation "com.android.support:support-annotations:27.1.0"
}

Затем синхронизируйте проект.

Иногда вы можете сделать это автоматически, нажав Alt + Enter над сообщением об ошибке и выбрав решение.

если вы используете библиотеку поддержки, импорт должен упоминать их: import android.support.annotation.Nullable

Irodoku 08.04.2018 23:41

Используйте Alt + Пробел, чтобы показать предложения (после точки) возможного импорта.

Irodoku 08.04.2018 23:43

Вам нужно получить библиотеки, которые содержат импорт, в вашем файле gradle сборки вашего модуля добавьте строку внутри тега зависимостей:

api 'com.android.support:support-annotations:X.X.X'

или же

implementation 'com.android.support:support-annotations:X.X.X'

Где X.X.X - это версия остальных ваших библиотек поддержки.

Вам следует прочитать эта статья, в котором более подробно объясняется, как это реализовать.

Другие вопросы по теме