Android 值在函数中给定值后变为null
我试图创建一个scanner SDK,但遇到了一个问题,我在一个函数中创建了一个类变量值,该函数重写了Kotlin中的另一个类 我在Kotlin中尝试了NOTNULL断言运算符和safe call运算符。我已经用Android 值在函数中给定值后变为null,android,kotlin,null,android-context,Android,Kotlin,Null,Android Context,我试图创建一个scanner SDK,但遇到了一个问题,我在一个函数中创建了一个类变量值,该函数重写了Kotlin中的另一个类 我在Kotlin中尝试了NOTNULL断言运算符和safe call运算符。我已经用println方法测试了代码的各个方面,以证明情况确实如此 我还尝试删除“private”修饰符 请注意,我已经更改了一些不相关的名称(更改是显而易见的) 我希望manager和barcodeReader不为null该值在该点可以为null的原因是您异步初始化它。您不能保证在第二个if之
println
方法测试了代码的各个方面,以证明情况确实如此
我还尝试删除“private”修饰符
请注意,我已经更改了一些不相关的名称(更改是显而易见的)
我希望
manager
和barcodeReader
不为null
该值在该点可以为null的原因是您异步初始化它。您不能保证在第二个if之前执行AidcManager.CreatedCallback
---`onCreate`---`createAidc`---`secondIf`---------------`call callback here`
\ /
------ some async work here---
另请参见首先打印的内容-work2
或work1
。
因此,这是完全正常和预期的
---`onCreate`---`createAidc`---`secondIf`---------------`call callback here`
\ /
------ some async work here---