Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/remobile/react-native-battery-status
https://github.com/remobile/react-native-battery-status
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/remobile/react-native-battery-status
- Owner: remobile
- License: mit
- Created: 2015-11-12T00:54:57.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2018-05-09T08:41:49.000Z (over 6 years ago)
- Last Synced: 2024-11-06T14:46:21.702Z (3 months ago)
- Language: Objective-C
- Size: 13.7 KB
- Stars: 15
- Watchers: 2
- Forks: 6
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-react-native - react-native-battery-status ★11 - A battery-status for react-native (Components / System)
- awesome-react-native - react-native-battery-status ★11 - A battery-status for react-native (Components / System)
- awesome-react-native - react-native-battery-status ★11 - A battery-status for react-native (Components / System)
- awesome-react-native - react-native-battery-status ★11 - A battery-status for react-native (Components / System)
- awesome-react-native-ui - react-native-battery-status ★3 - A battery-status for react-native (Components / System)
README
# React Native BatteryStatus (remobile)
A cordova battery status listener for react-native, support for ios and android## Installation
```sh
npm install @remobile/react-native-battery-status --save
```
### Installation (iOS)
* Drag RCTBatteryStatus.xcodeproj to your project on Xcode.
* Click on your main project file (the one that represents the .xcodeproj) select Build Phases and drag libRCTBatteryStatus.a from the Products folder inside the RCTBatteryStatus.xcodeproj.
* Look for Header Search Paths and make sure it contains both $(SRCROOT)/../../../react-native/React as recursive.### Installation (Android)
```gradle
...
include ':react-native-battery-status'
project(':react-native-battery-status').projectDir = new File(settingsDir, '../node_modules/@remobile/react-native-battery-status/android')
```* In `android/app/build.gradle`
```gradle
...
dependencies {
...
compile project(':react-native-battery-status')
}
```* register module (in MainApplication.java)
```java
......
import com.remobile.batteryStatus.RCTBatteryStatusPackage; // <--- import......
@Override
protected List getPackages() {
......
new RCTBatteryStatusPackage(), // <------ add here
......
}```
## Usage
### Example
```js
var React = require('react');
var ReactNative = require('react-native');
var {
StyleSheet,
View,
Image
} = ReactNative;var BatteryStatus = require('@remobile/react-native-battery-status');
var Button = require('@remobile/react-native-simple-button');module.exports = React.createClass({
getInitialState () {
return {
status: '',
};
},
onBatteryStatus(info) {
this.setState({status: JSON.stringify({onBatteryStatus: info})});
},
onBatteryLow(info) {
this.setState({status: JSON.stringify({onBatteryLow: info})});
},
onBatteryCritical(info) {
this.setState({status: JSON.stringify({onBatteryCritical: info})});
},
register() {
BatteryStatus.register({
onBatteryStatus: this.onBatteryStatus,
onBatteryLow: this.onBatteryLow,
onBatteryCritical: this.onBatteryCritical,
});
},
unregister() {
BatteryStatus.unregister();
},
render() {
return (
register
unregister
{this.state.status}
);
},
});var styles = StyleSheet.create({
container: {
flex: 1,
justifyContent: 'space-around',
alignItems: 'center',
backgroundColor: 'transparent',
},
});
```### HELP
* look https://github.com/apache/cordova-plugin-battery-status### thanks
* this project come from https://github.com/apache/cordova-plugin-battery-status### see detail use
* https://github.com/remobile/react-native-template