蓝牙传输文件代码
添加权限
//需要动态获取权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<uses-permission android:name="android.permission.CAMERA"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
<uses-permission android:name="android.permission.BLUETOOTH"/>
//1界面
public class MainActivity extends AppCompatActivity {
Button button;
ListView listView;
BluetoothManager bluetoothManager;
BluetoothAdapter bluetoothAdapter;
ArrayList<BluetoothDevice> arrayList=new ArrayList<>();
private UUID uuid = UUID.fromString("00001106-0000-1000-8000-00805F9B34FB");
BAdapter adapter;
String[] strings=new String[]{
Manifest.permission.ACCESS_COARSE_LOCATION,
Manifest.permission.ACCESS_FINE_LOCATION,
Manifest.permission.BLUETOOTH,
Manifest.permission.BLUETOOTH_ADMIN,
Manifest.permission.CAMERA,
Manifest.permission.WRITE_EXTERNAL_STORAGE
};
@RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN_MR2)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button=findViewById(R.id.bt_search);
listView=findViewById(R.id.lis);
//判断手机版本号
if (Build.VERSION.SDK_INT>=23){
for (int i = 0; i < strings.length; i++) {
int permission = ActivityCompat.checkSelfPermission(this, strings[i]);
if (permission== PackageManager.PERMISSION_DENIED){
requestPermissions(strings,101);
break;
}
}
}
//蓝牙管理器
bluetoothManager= (BluetoothManager) getSystemService(BLUETOOTH_SERVICE);
bluetoothAdapter=bluetoothManager.getAdapter();
//判断蓝牙是否开启
if (!bluetoothAdapter.isEnabled()){
Toast.makeText(this, "蓝牙没有开启,系统将自动为您打开蓝牙", Toast.LENGTH_SHORT).show();
Intent intent=new Intent();
intent.setAction(BluetoothAdapter.ACTION_REQUEST_ENABLE);
intent.setAction(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE);
intent.putExtra(BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION,2000);
startActivity(intent);
}
//设置上适配器
adapter=new BAdapter(arrayList,this);
adapter.notifyDataSetChanged();
listView.setAdapter(adapter);
//点击跳转
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
BluetoothDevice device = arrayList.get(position);
Intent intent=new Intent(MainActivity.this,Main2Activity.class);
intent.putExtra("device",device);
startActivity(intent);
}
});
//附近设备的集合
arrayList.clear();