蓝牙连接的碎片与服务



我正在学习Android,我想制作一个通过蓝牙连接的应用程序,我希望我的应用程序中至少有3个屏幕共享蓝牙连接,目前我有显示设备并进行连接的代码,但我不知道如何在所有屏幕之间传递蓝牙连接。我一直在搜索并基本上阅读了大约两种解决方案,一种是为所有蓝牙代码提供服务,另一种是使用片段,我真的不知道什么是解决我的问题的最好或最简单的解决方案,有人对这个问题有什么建议吗?谢谢你的帮助。

您是否尝试过使用Application对象将蓝牙连接存储在对象中,并使用Activities获取它?

试试这样的东西。(注意:我从未在Android上使用过蓝牙,所以我不知道该使用哪些相关的类。在这种情况下,我将使用BluetoothDevice,因为根据库文档,它似乎是正确的类(

public class MyApplication extends Application {
BluetoothDevice device;
...
public synchronized BluetoothDevice getBtConnection() {
if (device == null) {
// construct a BluetoothDevice object and put it into variable device
}
return device;
}
}

这样,你的第一个活动就必须这样做:

public class FirstActivity extends Activity {
private BluetoothDevice device;
...
@Override
protected void onCreate(Bundle b) {
super(b);
...
device = ((MyApplication) getApplication()).getBtDevice();
...
}
...

}

然后,每当您的其他活动需要使用该连接时,他们只需要调用getBtDevice((,因为FirstActivity已经实例化了它。

我希望你们的要求是满的。谢谢

最新更新