赞
踩
学习自: 使用BleLib的轻松搞定Android低功耗蓝牙Ble 4.0开发详解
项目需要添加一个蓝牙设备并实现监听,所以记录一下学习的过程并记录一下自己遇到过的坑吧。首先,用BLE的话我们就先学习一下使用BleLib。
BleLib是Android低功耗蓝牙4.0及以上开发的辅助库,一行代码解决Ble初始化、扫描、连接、特性读写、设置通知等操作。
首先:添加依赖需要去build.gradle文件中添加如下代码:
dependencies {
compile 'com.junkchen.blelib:blelib:1.0.4'
}
然后注意到,项目的gradle里面是有两个build.gradle文件的。
此处注意应选择括号里标注Module的那个。
还不是很明白绑定服务具体指的是什么意思,反正现照葫芦画瓢加上去吧。后续再好好学习一下服务具体是个啥吧。留下了没文化的眼泪
private BleService mBleService; private boolean mIsBind; private ServiceConnection serviceConnection = new ServiceConnection() { @Override public void onServiceConnected(ComponentName name, IBinder service) { mBleService = ((BleService.LocalBinder) service).getService(); if (mBleService.initialize()) { if (mBleService.enableBluetooth(true)) { mBleService.scanLeDevice(true); Toast.makeText(BleScanActivity.this, "Bluetooth was opened", Toast.LENGTH_SHORT).show(); } } else { Toast.makeText(BleScanActivity.this, "not support Bluetooth", Toast.LENGTH_SHORT).show(); } } @Override public void onServiceDisconnected(ComponentName name) { mBleService = null; mIsBind = false; } }; private void doBindService() { Intent serviceIntent = new Intent(this, BleService.class); bindService(serviceIntent, serviceConnection, Context.BIND_AUTO_CREATE); } private void doUnBindService() { if (mIsBind) { unbindService(serviceConnection); mBleService = null; mIsBind = false; } }
当服务绑定后可进行初始化操作,判断该机是否支持蓝牙,调用如下方法:
mBleService.initialize();//Ble初始化操作
该方法会返回一个boolean值,返回true表示初始化成功,支持蓝牙;返回false表示初始化操作失败,则后续的所有操作都不能进行。
先搞这么多,后面没太想明白怎么接收信息。。。换一个思路搞一下。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。