React Native Bluetooth Low Energy library
npm install react-native-ble-qz

React Native Bluetooth Low Energy library using RxBluetoothKit and RxAndroidBle as it's backend libraries.
This is a specified version.
manufactureData is modified to array
I have add Screen on/off event to this module
Example apps are available in Google Play and App Store!
 
---

---
0.4.0
- Device ID properties were renamed as they are not UUIDs on Android (breaking change):
* Device.uuid -> Device.id
* Service.deviceUUID -> Service.deviceID,
* Characteristic.deviceUUID -> Characteristic.deviceID
- Changed signature of onDeviceDisconnected, as Device object is always available.
- Updated to Swift 3.0
- Updated to RxAndroidBle 1.1.0 and RxBluetoothKit 3.0.6
- Documentation was moved to ./doc folder and now is generated by ESDoc.
- Fixed state() invalid return type. Implemented state() and onStateChange() for Android.
- Added optional parameter to onStateChange() function.
- Fixed monitorCharacteristicForDevice() for Android when characteristic accepts indications only.
- Updated AndroidManifest.xml configuration.
Documentation can be found under ./doc folder.
iOS:
* Add react-native-ble-plx to a project as a dependency in package.json file.
For example "react-native-ble-plx": "Polidea/react-native-ble-plx" will install
latest version from Polidea's Github repository.
* Make sure that you have Carthage installed on your system.
* Execute npm install to fetch and install a library.
* Open iOS project located in ./ios folder.
* Move BleClient.xcodeproj located in .node_modules/react-native-ble-plx/ios
using drag & drop to Libraries folder in your project.
* In general settings of a target add libBleClient.a to Linked Frameworks and Libraries.
* In Build Settings/Search Paths/Framework search paths add path: $(SRCROOT)/../node_modules/react-native-ble-plx/ios/BleClientManager/Carthage/Build/iOS.
* In Build Settings/Build Options/Always Embed Swift Standard Libraries set to Yes.
* In Build Phases click on top left button and add New Run Script Phase.
* Shell command: /usr/local/bin/carthage copy-frameworks
* Input Files:
* $(SRCROOT)/../node_modules/react-native-ble-plx/ios/BleClientManager/Carthage/Build/iOS/BleClientManager.framework
* $(SRCROOT)/../node_modules/react-native-ble-plx/ios/BleClientManager/Carthage/Build/iOS/RxSwift.framework
* $(SRCROOT)/../node_modules/react-native-ble-plx/ios/BleClientManager/Carthage/Build/iOS/RxBluetoothKit.framework
* Minimal supported version of iOS is 8.0
Android:
* Add react-native-ble-plx to a project as a dependency in package.json file.
For example "react-native-ble-plx": "Polidea/react-native-ble-plx" will install
latest version from Polidea's Github repository.
* Execute npm install to fetch and install a library.
* Open Android project located in ./android folder.
* In settings.gradle add following lines:
``groovy`
include ':react-native-ble-plx'
project(':react-native-ble-plx').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-ble-plx/android')build.gradle
* In of app module add following dependency:`groovy`
dependencies {
...
compile project(':react-native-ble-plx')
...`
* Additionaly make sure that min SDK version is at least 18:groovy`
android {
...
defaultConfig {
minSdkVersion 18
...
* In MainApplication.getPackages import and add BleModule package:`java
import com.polidea.reactnativeble.BlePackage;
...
public class MainApplication extends Application implements ReactApplication {
...
@Override
protected List
return Arrays.
new MainReactPackage(),
new BlePackage()
);
}
`AndroidManifest.xml
* In add Bluetooth permissions and update :`xml
...
``