蓝牙聊天示例和上下文参数

时间:2014-11-07 08:34:53

标签: java android bluetooth android-context

我是Android / Java的尝试者,试图了解蓝牙聊天示例的工作原理。它使用线程和处理程序,因此我花了几周时间了解这一点,现在我对这个示例的工作方式有了更清楚的了解。类BluetoothChatService具有以下构造函数:

public BluetoothChatService(Context context, Handler handler) {
       mAdapter = BluetoothAdapter.getDefaultAdapter();
       mState = STATE_NONE;
       mHandler = handler;
}

从主要活动开始:

mChatService = new BluetoothChatService(this, mHandler);

我的问题在于 context 参数。鼠标悬停显示“参数context从未使用过”。所以我的问题是为什么BluetoothChatService类需要一个上下文?

Link to the source

1 个答案:

答案 0 :(得分:0)

不需要上下文,您可以安全地删除Context context,。这也将消除您所看到的警告。

在Android编程中,许多事情都需要Context,而且程序中几乎每个地方都需要它。因此,即使您还没有严格需要它,传递Context实例也是司空见惯的。或者在某个时刻需要它,但是在更改代码并且Context仍然传递之后删除了需求。我怀疑这个例子发生了类似的事情。

目前的Android工具在检测未使用的代码方面比2009年安装Android 2.0 Eclair时的古老工具要好得多,而且这个例子随之而来。