小编Sim*_*all的帖子

当蓝牙设备自动与系统配对/连接时,Android会收到回叫吗?

有什么方法可以在Android自动配对/连接到蓝牙设备(例如我的车),而不是已经启动/打开(某种广播)的应用程序接收回叫?我已经想过定期扫描设备并查看它们是否已经绑定的服务,但是因为Android已经这样做了,感觉无效:当我在范围内时它会自动连接到我的车.这个想法是当我在我的汽车范围内时开始一项特定的工作,并在我超出我的汽车范围时停止工作,而无需启动应用程序或打开它.

我最初的想法是,应该有一种可以注册的广播,知道设备何时"连接",并且该听众只需启动作业一段时间或直到设备"断开连接".请注意,将手机放在口袋中而不是拿起手机是必要的.我只看过一些例子,如果应用程序已经打开,通过监听状态更改来执行此操作.这可能是没有应用程序打开,只是"事件驱动"和收听广播?

service android bluetooth broadcastreceiver bluetooth-lowenergy

6
推荐指数
1
解决办法
2736
查看次数

关键字lateinit是否不必要?

我正在学习Kotlin,阅读lateinit关键字让我怀疑它的用处.考虑以下代码:

var testString: String? = null

lateinit var lateTestString: String

fun print() {
    print(testString?.length)

    print(lateTestString.length)
}
Run Code Online (Sandbox Code Playgroud)

获取字符串长度的唯一区别是通过使用?.运算符检查它是否为null .使用lateinit快捷方式在访问属性或调用方法时不必添加额外的问号?仅仅通过这个事实,我认为增加那个额外的问号比在访问lateinit一个问题时获得异常更值得.

更多研究表明,这lateinit对于尚未初始化变量的注射和/或单元测试是有益的,但它会是.但是,不值得拥有额外的东西?.而不仅仅是.为了不冒异常风险吗?

kotlin kotlin-lateinit

4
推荐指数
2
解决办法
1217
查看次数

如何禁用Android Logcat弹出窗口?

每当我在Android Studio中启动应用程序时,如何禁用Android Logcat弹出窗口?我用终端来检查logcat,每次关闭它都很烦人.

logcat android-studio

2
推荐指数
1
解决办法
804
查看次数