我有一项理论上可以在没有与其关联的活动(因为“服务”在Android平台上)的情况下工作的服务。Android内部的蓝牙服务
此服务使用蓝牙,特别是注册具有侦听通信的给定名称的蓝牙服务。当然要工作它必须让蓝牙处于活动状态。
正如Bluetooth api文档中所示,我使用BluetoothAdapter.ACTION_REQUEST_ENABLE
来提示用户启用蓝牙,以防它已经不在。其实,这不过是一个活动,因此需要从另一个活动调用,即:
Intent enableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
InstanceOfAnActivity.startActivity(enableIntent);
我想实现的是有服务(其中,例如,在开机启动时)与任何活动完全分离,因此不会让InstanceOfAnActivity
启动弹出窗口,指示用户打开蓝牙。
现在,我知道有BluetoothAdapter.enable()
这个(臭名昭着的)调用,但是由于doc说它不应该直接调用。
那么,任何提示/解决这个困境? (也许是容易的,我只是失去了一些东西......)
这是几个月后的现在,我想知道,如果你能解决这个问题? – 2010-05-12 12:19:02
“漂亮的小工具”如何在没有用户许可的情况下打开蓝牙? – Pachanka 2010-08-28 08:02:57