我正在开发一个收集数据的表盘。为了节省电池,我将数据存储到 SQLite 数据库中。我想检测智能手表何时插入,以便将数据库从手表发送到手机。我已经成功实现了一个发送数据的服务。
我添加了一个广播接收器,如果插入了手表,它应该开始传输数据。编辑:它被添加为扩展类中的成员WearableListenerService
。
private BroadcastReceiver batReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
Log.d(TAG, "TEST");
}
};
我的问题是onReceive
没有被调用。我已将意图过滤器添加到清单中:
<service android:name="si.ijs.maj.tictest.DBTService">
<intent-filter>
<!-- other stuff -->
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.ACTION_POWER_CONNECTED" />
<action android:name="android.intent.action.ACTION_POWER_DISCONNECTED" />
</intent-filter>
</service>
tl; dr:我的问题是 BroadcastReceiver 不做任何接收。