我制作了一个简单的智能手表应用程序,可以连接到手机以发送一些数据。但是,它不断绑定和解绑,导致很多滞后。日志猫表演
01-10 22:26:17.780 13094-17893/com.verbraeken.joost V/WearableLS: bindService: com.verbraeken.joost/.WearListenerService
01-10 22:26:17.783 13094-17893/com.verbraeken.joost V/WearableLS: unbindService: com.verbraeken.joost/.WearListenerService
在清单中,服务声明为:
<service android:name="WearListenerService">
<intent-filter>
<action android:name="com.google.android.gms.wearable.DATA_CHANGED"/>
<action android:name="com.google.android.gms.wearable.MESSAGE_RECEIVED"/>
<action android:name="com.google.android.gms.wearable.CAPABILITY_CHANGED"/>
<action android:name="com.google.android.gms.wearable.CHANNEL_EVENT"/>
<data android:path="/WEAR_ORIENTATION" android:host="*" android:scheme="wear"/>
</intent-filter>
</service>
该服务本身确实扩展了WearableListenerService,并且只具有onMessageReceived方法。
服务每秒绑定/取消绑定大约 50 次的原因可能是什么?
这是服务的默认行为(绑定和取消绑定),基于文档 - 发送和同步数据:
可穿戴听众服务(用于服务)
扩展可穿戴侦听器服务可让您侦听服务中的重要数据层事件。系统管理 WearableListenerService 的生命周期,在需要发送数据项或消息时绑定到服务,在不需要工作时取消绑定服务。
请检查您的实现,以验证您遇到的错误(每秒绑定/取消绑定 x 次)。
希望这有帮助。