У меня есть следующий оператор в Java
private BroadcastReceiver mBroadcastReceiver = new BroadcastReceiver(){
@Override
public void onReceive(Context context, Intent intent) {
unregisterReceiver(mBroadcastReceiver);
}
};
и я попытался преобразовать в код Kotlin, и у меня есть
private var mBroadcastReceiver:BroadcastReceiver =
object:BroadcastReceiver(){
override fun onReceive(context: Context, intent: Intent) {
unregisterReceiver(mBroadcastReceiver)
stopSelf()
}
}
но у меня есть следующая ошибка в
unregisterReceiver(mBroadcastReceiver)
Variable mBroadcastReceiver must be initialized




попробуйте передать this вместо mBroadcastReceiver в функцию:
unregisterReceiver(this)
Оно работает! я чувствую себя болваном, я забыл это и использую это вместо этого (фейспалм)