![require(esm) Backported to Node.js 20, Paving the Way for ESM-Only Packages](https://cdn.sanity.io/images/cgdhsj6q/production/be8ab80c8efa5907bc341c6fefe9aa20d239d890-1600x1097.png?w=400&fit=max&auto=format)
Security News
require(esm) Backported to Node.js 20, Paving the Way for ESM-Only Packages
require(esm) backported to Node.js 20, easing the transition to ESM-only packages and reducing complexity for developers as Node 18 nears end-of-life.
react-native-sunmi-inner-scanner
Advanced tools
http://docs.sunmi.com/htmls/index.html?lang=zh##V1文档资源 根据商米V1文档开发的扫码for React Native.
http://docs.sunmi.com/htmls/index.html?lang=zh##V1文档资源 根据商米V1文档开发打印接口 (React native plugin Referring the sunmi V1 scanner document and demos)
_ Caution: this is not the official project. I share it because I am working on this device but no any official support in react-native It's welcome to ask any question about the usage,problems or feature required, I will support ASAP._
====================================================================================== Installation:
Step 1. install with npm: Checks In the NPM
npm i react-native-sunmi-inner-scanner --save
or you may need to install via the clone address directly:
npm install https://github.com/januslo/react-native-sunmi-inner-scanner.git --save
Step 2:
Links this plugin to your project.
react-native link react-native-sunmi-inner-scanner
or you may need to link manually
include ':react-native-sunmi-inner-scanner'
project(':react-native-sunmi-inner-scanner').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-sunmi-inner-scanner/android')
compile project(':react-native-sunmi-inner-scanner')
import com.sunmi.scanner.SunmiInnerScannerPackage;
...
@Override
protected List<ReactPackage> getPackages() {
return Arrays.<ReactPackage>asList(
new MainReactPackage(),
new SunmiInnerScannerPackage()
);
}
Step 3: refer in the javascript: *Using the default inner scanner:
import SunmiInnerScanner from 'react-native-sunmi-inner-scanner';
*Customer your preview with the SunmiScannerView
import {SunmiScannerView} from 'react-native-sunmi-inner-scanner';
Usage: You may need to refer the excamples from the 'examples' folder of the source code.
*Using SunmiInnerScanner
you can open the scanner with default options:
async _openDefaultScanner(){
let result = await SunmiInnerScanner.openScanner();
this.setState({result: JSON.stringify(result)}
,()=>{
console.log(this.state.result);
});
}
or you can specify the options:
async _openScannerWithOptions(){
let options={
showSetting:true,
showAlbum:true,
paySound:true,
payVibrate:true,// V1 not support
}
let result = await SunmiInnerScanner.openScannerWithOptions(options);
this.setState({result: JSON.stringify(result)}
,()=>{
console.log(this.state.result);
});
}
*Using SunmiScannerView
render() {
return <View style={styles.container}>
<Text>Scan Result: {this.state.result}</Text>
<View>
<SunmiScannerView style={styles.scanner} onCodeScan={(data)=>{
this.setState({
result:JSON.stringify(data)
})
}
}>
</SunmiScannerView>
<View style={styles.finder}></View>
</View>
</View>
}
providing the properties definition for referring:
static propTypes = {
...View.propTypes,
xDensity: PropTypes.oneOfType([
PropTypes.number
]),
yDensity: PropTypes.oneOfType([
PropTypes.number
]),
mutilScanEnable: PropTypes.oneOfType([
PropTypes.number
]),
inverseEnable: PropTypes.oneOfType([
PropTypes.number
]),
onCodeScan: React.PropTypes.func
};
static defaultProps = {
xDensity: 2,
yDensity: 2,
mutilScanEnable: 0,
inverseEnable: 1,
onCodeScan: function (result) {
console.log(result);
},
scanInterval:1000, // interval of scan operation after last record was recongized.
mute:0 // mute the "bee" sound on success. 1 - mute;0 - not mute
}
FAQs
http://docs.sunmi.com/htmls/index.html?lang=zh##V1文档资源 根据商米V1文档开发的扫码for React Native.
The npm package react-native-sunmi-inner-scanner receives a total of 5 weekly downloads. As such, react-native-sunmi-inner-scanner popularity was classified as not popular.
We found that react-native-sunmi-inner-scanner demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
require(esm) backported to Node.js 20, easing the transition to ESM-only packages and reducing complexity for developers as Node 18 nears end-of-life.
Security News
PyPI now supports iOS and Android wheels, making it easier for Python developers to distribute mobile packages.
Security News
Create React App is officially deprecated due to React 19 issues and lack of maintenance—developers should switch to Vite or other modern alternatives.