0

有人可以帮助解释为什么在以下代码的第 6 行(包含在我正在 ADT Eclipse IDE 中处理的 .java 文件中)我得到错误标记:

“无法从 BluetoothAdapter 类型对非静态方法 getRemoteDevice(String) 进行静态引用”

import android.bluetooth.*;

public final class bluetooth{

    void initConnection(String address){
         BluetoothSocket sock = BluetoothAdapter.getRemoteDevice(address).createInsecureRfcommSocketToServiceRecord(00001101-0000-1000-8000-00805F9B34FB);
    }
}

上面的代码中的什么东西是静态的?为什么我在使用createInsecureRfcommSocketToServiceRecordBluetoothDevice 方法时没有遇到同样的错误?

4

1 回答 1

2

您不能在 BluetoothAdapter 类上调用 getRemoteDevice(),它不是静态方法。您需要一个实例,如下所示:

BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();
BluetoothSocket sock = adapter.getRemoteDevice(address)
    .createInsecureRfcommSocketToServiceRecord(00001101-0000-1000-8000-00805F9B34FB);
于 2013-08-26T06:52:33.057 回答