Kotlin на Android изменяет библиотечную переменную вместо определения новой переменной - PullRequest
0 голосов
/ 12 ноября 2018

Сегодня я запустил новый проект Android с поддержкой Kotlin.Но как только я запускаю его на своем телефоне, он отключается от Wi-Fi (приложение имеет разрешения INTERNET и ACCESS_NETWORK_STATE, но код сокета пока отсутствует).Вот код:

package org.arch.cast

import android.os.Bundle
import android.support.v7.app.AppCompatActivity

class MainActivity : AppCompatActivity() {

    internal var dummy = 10
    internal var channel = 20

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }
}

Немного поэкспериментировав, я заметил, что одна из моих переменных не помечена как "неиспользуемая", хотя она не использовалась.

Here is the screenshot of variables

Это единственный класс, который проект содержит в настоящее время, никакой другой службы или действия не существует, поэтому ничто не ссылается на переменную канала где-либо в проекте.Я также добавил фиктивную переменную, чтобы показать, что она помечена как неиспользуемая.Я заметил, что проблема была в ее названии, и она на самом деле не определяла его, а изменяла другую переменную из библиотеки, которую я не импортировал.И поскольку это было связано с Wi-Fi, телефон отключался.

Here is the screenshot of autocomplete

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...