Например студия пытается заменить мои сравнения foo != null на foo равный null и сломала код. Иногда возникают странные замены, например, super.onNewIntent(intent) в активности заменяет ComponentActivity.onNewIntent(intent).
Это ненормально, и я не уверен, с какой версии это началось, но в более старых версиях этой проблемы не было. Я пытался найти ответ в Google и спросить ChatGPT, но ничего не нашел. Где отключить эту настройку?
UPD. Как воспроизвести?
- Откройте два экземпляра Android Studio (окна) с разными проектами.
- Создайте TestActivity в первом проекте:
Код: Выделить всё
private var appIntent: Intent? = null override fun onNewIntent(intent: Intent) { super.onNewIntent(intent) if(appIntent != null){ start(intent) } } private fun start(intent: Intent){} - В окне Android Studio выберите файл TestActivity.kt и скопируйте ctrl+c.
Вставьте файл (ctrl+v) в папку другого проекта в другом окне Android Studio. - В результате я получаю неработающий код:
Код: Выделить всё
override fun onNewIntent(intent: Intent) { ComponentActivity.onNewIntent(intent) if(appIntent equals null){ start(intent) } }
Подробнее здесь: https://stackoverflow.com/questions/791 ... ing-a-file