有人可以帮忙解释一下为什么以下代码的第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);
    }
}


上面的代码使什么静态?为什么在使用BluetoothDevice的createInsecureRfcommSocketToServiceRecord方法时没有出现相同的错误?

最佳答案

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

BluetoothAdapter adapter = BluetoothAdapter.getDefaultAdapter();
BluetoothSocket sock = adapter.getRemoteDevice(address)
    .createInsecureRfcommSocketToServiceRecord(00001101-0000-1000-8000-00805F9B34FB);

09-30 17:57
查看更多