2012-01-09 5 views
1

Android에서 블루투스를 사용하는 법을 배우고 있습니다.Android 블루투스가 지원되지 않습니다.

private static final int REQUEST_ENABLE_BT = 0; 
private static final int REQUEST_DISCOVERABLE_BT = 0; 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    final TextView out=(TextView)findViewById(R.id.out); 
    final Button button = (Button) findViewById(R.id.button1); 
    final Button button1 = (Button) findViewById(R.id.button2); 
    final Button button2 = (Button) findViewById(R.id.button3); 
    final BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); 
    if (mBluetoothAdapter == null) { 
     out.append("device not supported"); 
    } 
    button.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View v) { 
      if (!mBluetoothAdapter.isEnabled()) { 
       Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); 
       startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT); 
      } 
     } 
    }); 
    button1.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View arg0) { 
      if (!mBluetoothAdapter.isDiscovering()) { 
        Context context = getApplicationContext(); 
        CharSequence text = "MAKING YOUR DEVICE DISCOVERABLE"; 
        int duration = Toast.LENGTH_SHORT; 
        Toast toast = Toast.makeText(context, text, duration); 
        toast.show(); 
       Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE); 
       startActivityForResult(enableBtIntent, REQUEST_DISCOVERABLE_BT); 
      } 
     }    
    }); 
    button2.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View arg0) {  
      mBluetoothAdapter.disable(); 
      Context context = getApplicationContext(); 
       CharSequence text = "TURNING_OFF BLUETOOTH"; 
       int duration = Toast.LENGTH_SHORT; 
       Toast toast = Toast.makeText(context, text, duration); 
       toast.show(); 
      } 
    }); 
} 

를하지만 나에게 말하고있다 : 나는 매니페스트 파일

<uses-permission android:name="android.permission.BLUETOOTH" /> 
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/> 

메인 코드에서이 권한을 준 여기에있다

를 지원하지

장치를 버튼을 클릭하면 앱이 강제로 닫히고 내 안드로이드의 문제점은 무엇인가? oid 에뮬레이터? 블루투스를 지원하지 않는

답변

1

에뮬레이터,

if (mBluetoothAdapter == null) { 
     out.append("device not supported"); 
    } 

안드로이드 에뮬레이터 Bluetooh을 지원하지 않기 때문이다 그 때

+0

나는 샘플 코드에 대한 테스트입니다 에뮬레이터와 나는 안드로이드 전화가 없어 그래서 그것을 고칠 수있는 방법이 무엇입니까 ?? –

+0

죄송합니다. 수정하는 것이 좋습니다. – idiottiger

+0

에뮬레이터에서 프로젝트를 만들었습니까? –

3

당신은 당신의 응용 프로그램에서 블루투스를 사용하기 전에 에뮬레이터의 몇 가지 제한 사항에 대한 this를 읽을 필요가있다.

0

블루투스가 지원되지 않는 경우 에뮬레이터에 대한 qemu -bt 옵션이있는 이유와 블루투스를 통한 USB 키보드 에뮬레이션이있는 이유는 무엇입니까? 블루투스가 지원되도록 표시되도록 블루투스를 사용하도록 설정해야합니다. BOARD_HAVE_BLUETOOTH를 추가하는 것 이외에 특정 구성이나 특정 대상이 필요할 수 있습니다. = BoardConfig.mk에 true가 있습니까?

어떻게 블루투스를 구성하여 에뮬레이터에서 사용할 수 있습니까?

bt [: hci-type] 유형이 '-bt hci'옵션과 동일한 형식으로 지정된 Bluetooth 동글은 허용 된 HCI 유형을 참조하십시오. 유형을 지정하지 않으면 HCI 논리가 -bt hci, vlan = 0에 해당합니다. 이 USB 장치는 HCI의 USB 전송 계층을 구현합니다. 사용 예제 :

QEMU [... 옵션 ...] -usbdevice BT : HCI, VLAN = 3 -bt 장치 : 키보드, VLAN = 3

http://wiki.qemu.org/download/qemu-doc.html#usb_005fdevices

관련 문제