android:手机之间蓝牙通信(一)
2016-04-20 10:28
435 查看
功能:
1、蓝牙开启、关闭、可搜索到(有些设备开启蓝牙后系统会自动设置设备可以被搜索到,但是有的不会设置,所以在打开蓝牙后最好自己判断一下)。
2、获取本机蓝牙名称、地址,修改本机蓝牙名称。
PS:首先关键部分:AndroidManifest.xml添加权限
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
//安卓6.0后需要再加上下面两个权限才能搜索到设备,不然搜索不到
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
1、基础功能:打开蓝牙设备、关闭蓝牙设备
XML
JAVA
关于头文件,直接使用Ctrl+Shift+o快捷键添加就可以了。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202009/01/341c76b76ace74fe83a14c2b23d4172e)
2、获取本机蓝牙名称、地址,修改名称,添加按钮事件然后类似1
获取本机蓝牙名称
toast(mBluetoothAdapter.getName());
获取本机蓝牙地址
toast(mBluetoothAdapter.getAddress ());
设置本机蓝牙名称
String add = et1.getText().toString();//一个编辑框,获取编辑框内容
mBluetoothAdapter.setName(add);
完善中,后期会上传源码。
1、蓝牙开启、关闭、可搜索到(有些设备开启蓝牙后系统会自动设置设备可以被搜索到,但是有的不会设置,所以在打开蓝牙后最好自己判断一下)。
2、获取本机蓝牙名称、地址,修改本机蓝牙名称。
PS:首先关键部分:AndroidManifest.xml添加权限
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
//安卓6.0后需要再加上下面两个权限才能搜索到设备,不然搜索不到
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
1、基础功能:打开蓝牙设备、关闭蓝牙设备
XML
<Button android:id="@+id/Button1" android:layout_width="wrap_content" android:layout_height="40dip" android:text="打开蓝牙" /> <Button android:id="@+id/Button2" android:layout_width="wrap_content" android:layout_height="40dip" android:text="关闭蓝牙" />
JAVA
public class MainActivity extends ActionBarActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button mt1 = (Button)this.findViewById(R.id.Button1); Button mt2 = (Button)this.findViewById(R.id.Button2); final BluetoothAdapter mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); mt1.setOnClickListener(new OnClickListener()//打开蓝牙 { public void onClick(View v) { if (mBluetoothAdapter == null) { toast("本机没有找到蓝牙硬件或驱动!"); return; } // 如果本地蓝牙没有开启,则开启 else if (!mBluetoothAdapter.isEnabled()) { Intent intent=new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); startActivityForResult(intent, RESULT_FIRST_USER); mBluetoothAdapter.enable(); if (mBluetoothAdapter.getScanMode() != BluetoothAdapter.SCAN_MODE_CONNECTABLE_DISCOVERABLE) //设置为搜索可见300秒 { Intent discoverableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE); discoverableIntent.putExtra(BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION, 300); startActivity(discoverableIntent); } } } }); mt2.setOnClickListener(new OnClickListener()//关闭蓝牙 { public void onClick(View v) { if (mBluetoothAdapter == null) { toast("本机没有找到蓝牙硬件或驱动!"); return; } else if (mBluetoothAdapter.isEnabled()) { mBluetoothAdapter.disable(); } } }); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == 1) { if (resultCode == RESULT_OK) { toast("蓝牙已经开启"); } else if (resultCode == RESULT_CANCELED) { toast("不允许蓝牙开启"); return; } } } public void toast(String str) { Toast.makeText(MainActivity.this, str, Toast.LENGTH_SHORT).show(); } }
关于头文件,直接使用Ctrl+Shift+o快捷键添加就可以了。
2、获取本机蓝牙名称、地址,修改名称,添加按钮事件然后类似1
获取本机蓝牙名称
toast(mBluetoothAdapter.getName());
获取本机蓝牙地址
toast(mBluetoothAdapter.getAddress ());
设置本机蓝牙名称
String add = et1.getText().toString();//一个编辑框,获取编辑框内容
mBluetoothAdapter.setName(add);
完善中,后期会上传源码。
相关文章推荐
- Android开发-API指南-<manifest>
- android listview 滑动卡顿问题解决
- android之开机跳过锁屏界面自启动应用
- Android looper handler
- Android开发-API指南-<instrumentation>
- Android应用启动优化:一种DelayLoad的实现和原理(上篇)(转载)
- 【Android】自定义View实现信封红蓝边/收货地址线条
- 安卓性能优化之视图优化
- Android四大控件之Fragment的使用
- Android学习笔记(二)——Layout属性
- Android打包APK后禁止通过DMMS的Logcat查看程序输出的调试信息
- Android AndroidManifest.xml配置文件
- 关于 Android 进程保活,你所需要知道的一切
- Android--多线程之Handler
- Android亮屏和熄屏控制
- Android属性动画使用详解
- android百度地图定位到非洲,解决办法
- Android的桌面图标切图大小
- Android 自定义左右菜单
- Android消息提示框Toast