gpt4 book ai didi

java - Android:如何将蓝牙连接传递给另一个 Activity ?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:15:10 25 4
gpt4 key购买 nike

我有第一个建立 BT 连接的 Activity。系统会向用户显示一个选项,并根据他们的选择加载不同的 Activity。

问题是,这两项 Activity 都需要 BT 连接,我看不出为了建立另一个连接而破坏一个连接有什么意义。

有没有一种方法可以传递 Activity 之间的连接?

有没有人给我一些例子或者链接?

我试过“class MyApplication extends Application”,但是我不能使用:

super.onCreate(savedInstanceState);
setContentView(R.layout.blablabla);

这可能是一个非常愚蠢的问题,但我才接触 Android +- 2 周。

最佳答案

您是否尝试过使用 Application 对象将蓝牙连接存储在一个对象中并使用您的 Activity 来获取它?

尝试这样的事情。 (注意:我从未在 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;
}
}

这样,您的第一个 Activity 只需执行以下操作:

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

然后,任何时候您的其他 Activity 需要使用该连接时,它们只需调用 getBtDevice(),因为 FirstActivity 已经实例化了它。

关于java - Android:如何将蓝牙连接传递给另一个 Activity ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6872970/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com