0
저는 블루투스를 사용하는 앱을 작성하고 있습니다. 이 클래스를 사용하고 싶지만 오류는 registerreceiver()와 함께 줄에 표시됩니다. 이 방법을 어떻게 사용해야합니까?registerReceiver 메서드를 사용하면 오류가 나타나는 이유는 무엇입니까?
import android.app.Activity;
import android.app.Service;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
public class DiscoveryActivity extends Activity {
IntentFilter discoveryFilter = new IntentFilter(BluetoothAdapter.ACTION_DISCOVERY_FINISHED);
context.registerReceiver(_dicoveryReceiver, discoveryFilter);
IntentFilter foundFilter = new IntentFilter(BluetoothDevice.ACTION_FOUND);
context.registerReceiver(_foundReceiver, foundFilter);
private BroadcastReceiver _foundReceiver = new BroadcastReceiver(){
public void onReceive(Context context, Intent intent){
//keresés eredménye
BluetoothDevice device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);
//eredmény listába tétele
_device.add(device);
//lista megjelenítése
showDevices();
}
};
private BroadcastReceiver _dicoveryReceiver = new BroadcastReceiver(){
public void onReceive(Context context, Intent intent){
unregisterReceiver(_foundReceiver);
unregisterReceiver(this);
_discoveryFinished = true;
}
};
}
이 코드는 그 라인은 다음과 같이해야한다고 말했습니다 튜토리얼을 기반으로합니다 : 로 IntentFilter discoveryFilter = 새로 IntentFilter (BluetoothAdapter.ACTION_DISCOVERY_FINISHED); registerReceiver (_dicoveryReceiver, discoveryFilter); IntentFilter foundFilter = 새로운 IntentFilter (BluetoothDevice.ACTION_FOUND); registerReceiver (_foundReceiver, foundFilter); 아이디어를 사용해야합니까, 아니면 상황을 바꿀 수 있습니까? – erbal
은 튜토리얼에서 언제든지 어떤 값 으로든 문맥이 주어 집니까? 그렇다면 복사 해보십시오. –
무엇이 오류입니까? NullPointer? –