我想编写一个应用程序,通过以下方式监视我配对的蓝牙连接:
如果文件来自配对源,则应存储该文件。如果没有文件被传递并且蓝牙连接中断,我的应用程序将存储一个虚拟文件。
存储文件效果很好,我的主要问题是如何在显示器上没有活动的情况下运行整个过程......
我读了很多有关服务的内容,但大多数都说服务取决于活动/应用程序......是这样吗?
还有其他可能性来实现类似的事情吗?广播接收器怎么样?我该如何编程此功能?
我期待着阅读您的(创意)答案;-)
良好的问候,poeschron
正如您所猜测的,您可以使用BroadcastReceiver
and a Service
。您可以设置广播接收器来处理“蓝牙断开连接”事件,然后关闭该服务来执行某些操作。
在清单中声明您的接收者:
<receiver android:name=".YourReceiver">
<intent-filter>
<action android:name="android.bluetooth.device.action.ACL_DISCONNECTED"/>
</intent-filter>
</receiver>
In your BroadcastReceiver
,你会这样做:
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(BluetoothDevice.ACTION_ACL_DISCONNECTED)) {
context.startService(new Intent(context, YourService.class));
}
}
和你的Service
将处理创建虚拟文件:
@Override
public void onCreate() {
// Create the dummy file, etc...
}
您还需要执行一些操作,例如检查正在断开连接的设备等,但这应该可以帮助您开始。另外,我从未使用过蓝牙堆栈,但我think这是相关的操作名称。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)