package com.example.mybluetooth;
import java.util.ArrayList;
import android.app.Activity;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothDevice;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.database.DataSetObserver;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.Toast;
public class MainActivity extends Activity {
private ArrayList<String> date = new ArrayList<String>();
private ListView listView = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
IntentFilter filter = new IntentFilter(BluetoothDevice.ACTION_FOUND);
registerReceiver(ScanBroadcastReceiver, filter);
listView = new ListView(this);
BluetoothAdapter btadapter = BluetoothAdapter.getDefaultAdapter();
if(!btadapter.isEnabled()){
Intent intent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
startActivityForResult(intent,1);
}
btadapter.startDiscovery();//开始扫描设备
try {
Thread.currentThread().sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
listView.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_expandable_list_item_1, date));
System.out.println(date.size());//为什么是零呢 listView已经可以输出了啊 //说明有数据的啊 这边有个问题 希望有人能知道啊
super.setContentView(listView);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if(resultCode == this.RESULT_OK){
Toast.makeText(this, "开启蓝牙成功", Toast.LENGTH_SHORT).show();
return ;
}
Toast.makeText(this, "开启蓝牙失败", Toast.LENGTH_SHORT).show();
}
private BroadcastReceiver ScanBroadcastReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if(BluetoothDevice.ACTION_FOUND.equals(action)){//扫描到设备
BluetoothDevice device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE);//获得远程蓝牙设备
MainActivity.this.date.add(device.getName()+" "+device.getAddress());
}
}
};
}
开启蓝牙 和 蓝牙搜索实现
最新推荐文章于 2023-12-26 09:56:23 发布