javascript - BleManager 反应原生
问题描述
我BleManager
在 React-Native 中遇到了问题。我认为我有正确的进口
import BleManager from 'react-native-ble-manager';
我尝试Blemanager
用这个命令开始。
我尝试了很多东西,但没有一个能正确运行。
我只想启动Blemanager
. 我有正确的 build.gradle 。我看到了几个功能,但它们都不起作用。
我不知道我是否正确使用了该功能。我没有找到任何好的文档...
import { Stylesheet, View, Text, Button, TouchableOpacity,FlatList, Alert } from 'react-native'
import donnee from '../Donnee/data'
import DataItem from './DataItem'
import FilmDetail from './FilmDetail';
import BleManager from 'react-native-ble-manager';
import React, { useState, useEffect } from 'react';
//import BleManager from 'react-native-ble-plx';
const width_proportion = '60%';
const Lwidth_proportion = '30%';
const maxwidth="100%";
const heightinside="12%";
const paddleft = '10%';
class Search extends React.Component {
render() {
function scan (){
BleManager.start({ showAlert: false }).then((value) => {
console.log("Module initialized", value);
});
}
return (
<View>
<View style={styles.entete}></View>
<View>
<TouchableOpacity style = {styles.filtrebtn} onPress={() => this.props.navigation.navigate("FilmDetail")}>
<Text style = {styles.textfiltre}>FILTRES</Text>
</TouchableOpacity>
<TouchableOpacity style = {styles.scan} onPress={() => scan()}>
<Text style = {styles.textscan}>SCAN</Text>
</TouchableOpacity>
</View>
<View>
<FlatList
data={donnee}
keyExtractor={(item) => item.id.toString()}
renderItem={({item}) =><DataItem donnees={item}/> } />
</View>
</View>
)
}
}
export default Search
但是当我运行我的应用程序时,它说
承诺未处理的拒绝(id:0):TypeError:null不是对象(评估'bleManager.start'
解决方案
const SearchScreen = ({navigation}) => {
const [isScanning, setIsScanning] = useState(false);
useEffect(() => {
BleManager.start({showAlert: false});
console.log("Module initialized");
}
}, []);
const startScan = () => {
if (!isScanning) {
BleManager.scan([], 10, false)
.then(results => {
console.log('Scanning...');
setIsScanning(true);
})
.catch(err => {
console.error(err);
});
console.log('The bluetooth is already enabled or the user confirm');
}
navigation.navigate('homeScreen', {position: position});
};
推荐阅读
- c++ - 在这些例子中,哪些是需要转换的?
- javascript - 如何从控制台应用程序修改域的本地存储内容?
- post - Flutter - Handle status code 302 in POST request
- android - Android Jetpack Navigation 组件问题,将启动片段作为根目的地
- openssl - openssl / libressl ocsp 响应者缺少对过期/吊销证书的响应
- css - Angular 6 ngFor 卡分两列
- mongodb - MongoDB 更新嵌套字段
- java - Couchbase & Spring query error: "Query returning a primitive type are expected to return exactly 1 result, got X"
- node.js - 将 Mongoose 结果推入数组
- asp.net-mvc - DataSource.Read prevents BindTo for Kendo ComboBox