{"_id":"@cubeking/react-native-qr-scanner","_rev":"9-05992adc189cd584ffea79ce560631b5","time":{"1.0.0":"2020-12-08T02:15:21.824Z","1.0.1":"2020-12-08T02:15:21.824Z","1.0.2":"2020-12-08T02:15:21.824Z","created":"2020-12-08T02:30:59.118Z","1.0.3":"2020-12-08T02:30:59.442Z","modified":"2022-04-05T02:09:51.611Z","1.3.3":"2020-12-09T01:31:39.045Z","1.3.4":"2020-12-09T01:57:14.310Z","1.3.5":"2020-12-09T02:29:57.879Z"},"name":"@cubeking/react-native-qr-scanner","dist-tags":{"latest":"1.3.5"},"versions":{"1.0.3":{"name":"@cubeking/react-native-qr-scanner","version":"1.0.3","description":"this is qrcode scanner.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://github.com/cubeking/react-native-qr-scanner.git"},"keywords":["react-native-qr-scanner"],"devDependencies":{"react":">=15.0.0","react-native":">=0.24.0"},"author":{"name":"cubeking"},"license":"ISC","bugs":{"url":"https://github.com/cubeking/react-native-qr-scanner/issues"},"homepage":"https://github.com/cubeking/react-native-qr-scanner#readme","gitHead":"18e5eaf792855da35882144c620af336e1a76f61","_id":"@cubeking/react-native-qr-scanner@1.0.3","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-EDdFo92qqYhEI4/DRzcyTO2NP/ZzLgsV481yHJsHLhYmFpn6F7bH2lts1hAa6wxEYG6P5XLxIB9X/FGR41B1EA==","shasum":"eacf28e2aceba1aa590c6bd6327270b747f06492","tarball":"https://registry.npmjs.org/@cubeking/react-native-qr-scanner/-/react-native-qr-scanner-1.0.3.tgz","fileCount":52,"unpackedSize":500163,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfzuVjCRA9TVsSAnZWagAAfPsP/1zEotlwq5rbXmKlNjG4\n9eq2pfWefWkN+R9M1fSpMw8qBB9bcuBsn8ufHGTQHu7MKKfgNnPBsYjaT9cp\n4MlQ6VH9LhAqQJCWjeFFn1VoXkiQKXbxtRbtjXi2dZ7hx3mG41imyFUoB0nc\nNpaCXYik0aCR0RcKreydkgXvS9JauI3LuIgNwYp8FNxfYjxp1X5vh3gX8rIn\nSB/1CDDXVjeYeE+7ZJX1emXTuziUyk457OgOwcNx0IxaCaM1tFvdbjU4Pmok\n+1r0Ie/jxY2uhtqonDnQH6hP9nzHsEr8N8UU6/aIV1IftLx6AGLsAqJFYc2K\n+RO8G6a1EYX8QQuqT1ad/K0an2vCc0WLUY8RMMZS5XBjCAo84dVMKjH35hEk\nkmBNTiNw/JZDi5uh3p4QNOgI1Ws/XI0lSxizxExyhbUb7t00kXSH/E3uVzrc\ncFjZCcj0YHJziYKGbt8/DWXXpzGs1Iapn38gSax2+4i8+d7BhC0IL441J4dG\n/icq+6weJp3DHRJXd/WgQeJGozAWLnMOil2ktFoq3j+Z42zIQgj8RIkdU4/g\nw+/nUUa8jOFcbGs8o8ciMNjyOee6DvGxsF4/i5pXMzn2EdZAZEj+NUQByQ5l\nSNTN+x2Cs3ryi7rmrDX2PxsEpJIcekUqk110A/IZesw8bE7atHdhmE0M9hha\nuDLX\r\n=jApZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDCHUvEcwxikam14HCMCYD1U7GX7g34sVy2lD8isAyUjwIhAKp9QmiuQRCMf8cs+J17JC5XerCW0ZG3kRyuyk93aDlV"}]},"_npmUser":{"name":"cubeking","email":"1048271001@qq.com"},"directories":{},"maintainers":[{"name":"cubeking","email":"1048271001@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-native-qr-scanner_1.0.3_1607394659178_0.38488124347716113"},"_hasShrinkwrap":false},"1.3.3":{"name":"@cubeking/react-native-qr-scanner","version":"1.3.3","description":"this is qrcode scanner.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://github.com/cubeking/react-native-qr-scanner.git"},"keywords":["react-native-qr-scanner"],"devDependencies":{"react":">=15.0.0","react-native":">=0.24.0"},"author":{"name":"cubeking"},"license":"ISC","bugs":{"url":"https://github.com/cubeking/react-native-qr-scanner/issues"},"homepage":"https://github.com/cubeking/react-native-qr-scanner#readme","gitHead":"18e5eaf792855da35882144c620af336e1a76f61","_id":"@cubeking/react-native-qr-scanner@1.3.3","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-J3zPBUOac7TqKnFlO7b6sDnGV6ibJdpfLdfChAR8tr0x9j87SPGcRQ6kVNJ/X975hDbZ5fP3VgoROAcWwhyqcA==","shasum":"b1beae5baecbea7850f3311489b190dcdf81b158","tarball":"https://registry.npmjs.org/@cubeking/react-native-qr-scanner/-/react-native-qr-scanner-1.3.3.tgz","fileCount":52,"unpackedSize":500243,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf0Cj7CRA9TVsSAnZWagAATnsQAI9ZZv8U6If59u8x+2vr\nCvh/9uEKSE67oQ7qA74ZU5QHAvDuAW/TrP9AuyALkhYZZtJe/+aZaudFDShs\nFT8lAYuOqblzQwvjEyA72WctAZQ6u2oki6RbnFzaS/SGpGKJSAagS7+80BdK\nclqYErFNXZofg7jHjZBu6NBKhsblJq1t8qlR1vJeMDUSFJzLvJLgH3hv33aM\nIe/hg0WF1/fGtcOD+JaMXllugCUau6uZQdx2r68uOOYRdyUUvfDRKHwmUE/O\nlBOnFfcNVIwPB4NEAGpF5BI1kFWkj5PCwRUkRec/ieyntDo11xWKL9nV/sQO\n/Lf4vuTHiBfONyetQc06C6mzmdws8kP761Tx6JScAKohsBKbPE3w2nKqfUdW\nqnbMrt4o0A4i6vtyE+RBJfN7t+KaAU0FZ/zf6iuOKdI54IzBf19DZVHBIb2E\nDhWUFFJ5D5ik73npceQL69KrUHpDPwRYeTYn3pCGETkkv9y80J1iO1J1U/wm\nI3rbA5WYxZ4fbXTSNIM65opCr4qKep/etltUHl3l/f0RqjbINrBFRxfWJCeX\nmjpyPcfzDkNDslC1B967pF7iwVyV1737qtPAipl4pC9o8slbse01I34FqAfR\niqCDi27gee48w7n928fHH6RZVcY2F+9GrerxmYMbnNQLVpLK/MFJQsyCoE8t\njGIP\r\n=zqgF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCBMJ/WeS8R0dOkKOSvnU3ZhdApELB2HGuL1bbsCYTPpQIhAOeL7QwYyhm/4QxqKdITQTFGHrynl+BBnH8szfNPDhPg"}]},"_npmUser":{"name":"cubeking","email":"1048271001@qq.com"},"directories":{},"maintainers":[{"name":"cubeking","email":"1048271001@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-native-qr-scanner_1.3.3_1607477498827_0.19975090321776"},"_hasShrinkwrap":false},"1.3.4":{"name":"@cubeking/react-native-qr-scanner","version":"1.3.4","description":"react native qrcode scanner. support 0.60.0, pod install","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://github.com/cubeking/react-native-qr-scanner.git"},"keywords":["react-native-qr-scanner"],"devDependencies":{"react":">=15.0.0","react-native":">=0.24.0"},"author":{"name":"cubeking"},"license":"ISC","bugs":{"url":"https://github.com/cubeking/react-native-qr-scanner/issues"},"homepage":"https://github.com/cubeking/react-native-qr-scanner#readme","gitHead":"18e5eaf792855da35882144c620af336e1a76f61","_id":"@cubeking/react-native-qr-scanner@1.3.4","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-MWdiE5kcet4uNa6i5jFC8gdLT3b+8sZ/uQL8oxvDWp2lel1/mV7HjH8Yhx/pgfa2zgni1FXLYjCNcmhBsUxn7Q==","shasum":"7a8eee466d664217283cf3cc6e147ecf13440119","tarball":"https://registry.npmjs.org/@cubeking/react-native-qr-scanner/-/react-native-qr-scanner-1.3.4.tgz","fileCount":52,"unpackedSize":500276,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf0C76CRA9TVsSAnZWagAADwQP/iSL4wK9Q4mpBT6nY6iW\n3InXkaG8Na3+FfnThyhGPeLi1tuVTaAOSIJk4mUxhYkRCE4WhDG0UkZK7ku+\nHawrfTMe39vvSCgLfqgKhQNExNf9oL5TTZnytQhLGwC64LvqQ2KOZnJnqb3+\nkMyo7crhcZKcjR8p2NBsqjWVUjkffbma28yiMKfrFAXlFDcg7FfG6AJKhN8H\nj/+gEM3tHBTzmZiIr7zKu3VRz5pZAzOG0a+G81T3lxSvCnH7H0ujLo5TZWS1\nrQYHJiyqAHJMaxS7j14F/g9w9PhvDQ+anEetANgArzh87+NHzZSOs4hovjTB\nagWPW1mzVh2q+H99p1cM/VQu2wQLn62aUDkF8Eh9Db1xWxAhhGcFy6AjfDog\n3CjwfHOVUsweeaj91/wrHtOYIkr8lD4Cp3DL0QPLU38OjnpG7FZxrTCXOr6e\nCpluRg9ICC1rOlmaHJ+YK6G2wpqMnJICP+PK29y6cHmx1aDC0n2UlJPmWCZf\nzsJTKYVexaMkLI4pf0WtZkBo9UIzNa0jk3tzY4szL2op8ejTrA6izsDDCnB0\nStzVzcy65oAE0Li6jTn1zOWvZkdtMKPsoGKeBY9Akg1jBMvFAqrcwUj2NVYp\ncYrsY3HcbtW1khX/P960qflrMbgepNAK+P4B1uNgbwrPCP8p/qMUmCgbNW8o\nqqnD\r\n=laZ6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID01sShOAEAiW8kYZbH9FCzeIe3iBLUz9ryf+M5OXJwuAiAizkiQPRqEtBu3jeiS1NBxvlxsAFGDC10U1owxgxi8Ew=="}]},"_npmUser":{"name":"cubeking","email":"1048271001@qq.com"},"directories":{},"maintainers":[{"name":"cubeking","email":"1048271001@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-native-qr-scanner_1.3.4_1607479034150_0.520301375242562"},"_hasShrinkwrap":false},"1.3.5":{"name":"@cubeking/react-native-qr-scanner","version":"1.3.5","description":"react native qrcode scanner. support 0.60.0, pod install, react-native的二维码扫描组件，支持扫描区域的限制以及扫描区域的偏移","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://github.com/cubeking/react-native-qr-scanner.git"},"keywords":["react-native-camera","react-native-qr-scanner","react-native-qrcode"],"devDependencies":{"react":">=15.0.0","react-native":">=0.24.0"},"author":{"name":"cubeking"},"license":"ISC","bugs":{"url":"https://github.com/cubeking/react-native-qr-scanner/issues"},"homepage":"https://github.com/cubeking/react-native-qr-scanner#readme","gitHead":"6036cdd6b4324802ac4a57f06ca64b4a8348724a","_id":"@cubeking/react-native-qr-scanner@1.3.5","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-6jmquva6/9mVHdGxHtz5+FGICSHn+VhToBAs9H7wyywrKxcjZlPUX6apP/LxI5xd8/VPgczEwVUfDNPJ7mq2gw==","shasum":"3dc6ef48202f9eab86d56b18aa5e734a6af451f3","tarball":"https://registry.npmjs.org/@cubeking/react-native-qr-scanner/-/react-native-qr-scanner-1.3.5.tgz","fileCount":53,"unpackedSize":628609,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf0DamCRA9TVsSAnZWagAAryEP/jtYyWGp2BQROUnZIBOW\nYrNBbJjuvKrJGXRh2fSJWLq43KBhvhxHizlrMXq9wHCdyLNcxE3GosAX9QNX\nHRkKodH8zSbwdtLiQF+vzFZyoanFADopVkXruUNOx5MUselqD/AYNvh1mn0r\ncLPsPDUu0SjYZCKHfs1lmmOo50r9uGCAEhENa1VYf/lnM9S0wQiM7d/THkqv\nDZnU2G24/agyQZ0B2aI+djUZOmHfn1/PBTygc4V8kph40jGwW7Atx3sp8wS7\nuy5/+5AoXQxwRyH4XIT31cTtIJSGzjySU82kcXDjHAp4sfDaqIKBD9Zbdp6N\nQXjvKgGpiipFp+f2754tCtvoYUoKJW0zk2iHFpFyeA04MUS3dywZZgl2ORoY\nOxJ2Z2a6LtRoIduXX7/EZEYXqEFfm7X7dB3RsCuNHLLfPv+DQOIhbBzhlh21\nSax8/WQr6WxskJR65hQHhfEnASXRZslHMxDz94wupgB4G5YZXIw49egGD2QX\njUJyiI5rAc5RSetM9preKoicMg5cEOM8vnUP+0GS0z4dFoOZegyXcm6umNbm\nrq3QrAFuf66swzr3RXtdaYdbzLBKbhs1DsT+FETmpm+6se3Ov4OsNOpq+y/7\nToY4U0D1HZDrrLIhnYZMjRrjzjozLxql+mzjwBp+NmwkEqMEz1r5ZScufxsh\nnOio\r\n=80Lz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAw06kcogdneqIa8NvSqI9tiy/MQ4zN377qwZlS2MbkDAiEA9qRB7/TLvPsqIqS91/NuKTcwmHRA6XrctK1VGA3tnz0="}]},"_npmUser":{"name":"cubeking","email":"1048271001@qq.com"},"directories":{},"maintainers":[{"name":"cubeking","email":"1048271001@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-native-qr-scanner_1.3.5_1607480997694_0.7127800514987015"},"_hasShrinkwrap":false}},"maintainers":[{"name":"cubeking","email":"1048271001@qq.com"}],"description":"react native qrcode scanner. support 0.60.0, pod install, react-native的二维码扫描组件，支持扫描区域的限制以及扫描区域的偏移","homepage":"https://github.com/cubeking/react-native-qr-scanner#readme","keywords":["react-native-camera","react-native-qr-scanner","react-native-qrcode"],"repository":{"type":"git","url":"git+https://github.com/cubeking/react-native-qr-scanner.git"},"author":{"name":"cubeking"},"bugs":{"url":"https://github.com/cubeking/react-native-qr-scanner/issues"},"license":"ISC","readme":"# react-native-qr-scanner\n[![NPM Version](https://img.shields.io/npm/v/react-native-qr-scanner.svg?style=flat)](https://www.npmjs.com/package/react-native-qr-scanner)\n  [![License](http://img.shields.io/npm/l/react-native-qr-scanner.svg?style=flat)](https://github.com/shifeng1993/react-native-qr-scanner/blob/master/LICENSE)\n\n一个react-native的二维码扫描组件，支持扫描区域的限制以及扫描区域的偏移。支持react native 0.60.0以上, 修复https://www.npmjs.com/package/react-native-qr-scanner xcode pod install问题\n\n## 效果\n\n![Image text](https://github.com/cubeking/react-native-qr-scanner/blob/master/img/1061607479739_.pic_hd.jpg)\n\n## 安装步骤：\n\n### 安装依赖\n```bash\nnpm install react-native-camera @cubeking/react-native-qr-scanner --save\n\n```\n\n### link依赖到native \n```bash\nreact-native link react-native-camera && @cubeking/react-native-qr-scannerr\n```\n\n### 添加相机权限：\n- ios在 `ios/projectName/Info.plist`:\n```xml\n<key>NSCameraUsageDescription</key>\n<string/>\n<key>NSPhotoLibraryUsageDescription</key>\n<string/>\n<key>NSMicrophoneUsageDescription</key>\n<string/>\n<key>NSPhotoLibraryAddUsageDescription</key>\n<string/>\n```\n- android在 `android/app/src/main/AndroidManifest.xml`:\n```xml\n<uses-permission android:name=\"android.permission.CAMERA\" />\n<uses-permission android:name=\"android.permission.RECORD_AUDIO\"/>\n<uses-permission android:name=\"android.permission.READ_EXTERNAL_STORAGE\" />\n<uses-permission android:name=\"android.permission.WRITE_EXTERNAL_STORAGE\" />\n<uses-permission android:name=\"android.permission.VIBRATE\"/>\n```\n\n#### 修复相机组件找不到google()方法的错误\n\nhttps://github.com/react-native-community/react-native-camera/blob/master/docs/GradleUpgradeGuide.md\n\n## 使用组件\n\n### 扫描\n```javascript\nimport React, {Component} from 'react';\nimport {Platform, StyleSheet, Text, View, TouchableOpacity} from 'react-native';\nimport {QRscanner} from '@cubeking/react-native-qr-scanner';\n\nexport default class Scanner extends Component {\n  constructor(props) {\n    super(props);\n    this.state = {\n      flashMode: false,\n      zoom: 0.2\n    };\n  }\n  render() {\n    return (\n      <View style={styles.container}>\n        <QRscanner onRead={this.onRead} renderBottomView={this.bottomView} flashMode={this.state.flashMode} zoom={this.state.zoom} finderY={50}/>\n      </View>\n    );\n  }\n  bottomView = ()=>{\n    return(\n    <View style={{flex:1,flexDirection:'row',backgroundColor:'#0000004D'}}>\n      <TouchableOpacity style={{flex:1,alignItems:'center', justifyContent:'center'}} onPress={()=>this.setState({flashMode:!this.state.flashMode})}>\n        <Text style={{color:'#fff'}}>点我开启/关闭手电筒</Text>\n      </TouchableOpacity>\n    </View>\n    );\n  }\n  onRead = (res) => {\n    console.log(res);\n  }\n}\nconst styles = StyleSheet.create({\n  container: {\n    flex: 1,\n    backgroundColor: '#000'\n  }\n});\n```\n\n### 识别\n```javascript\nimport React, {Component} from 'react';\nimport {Platform, StyleSheet, Text, View, TouchableOpacity} from 'react-native';\nimport {QRreader} from 'react-native-qr-scanner';\nimport ImagePicker from 'react-native-image-picker';\n\nexport default class Scanner extends Component {\n  constructor(props) {\n    super(props);\n    this.state = {\n      reader: {\n        message: null,\n        data: null\n      }\n    };\n  }\n  render() {\n    return (\n      <View style={styles.container}>\n        <TouchableOpacity onPress={()=>{\n          this.openPhoto();\n        }}>\n          <Text style={{marginTop: 20}}>打开相册识别二维码</Text>\n        </TouchableOpacity>\n        <View>\n        {!this.state.reader? <Text>{!this.state.reader.message?'':`${this.state.reader.message}`}</Text>: <Text>{!this.state.reader.message?'':`${this.state.reader.message}:${this.state.reader.data}`}</Text>}\n        </View>\n      </View>\n    );\n  }\n  \n  openPhoto(){\n    console.log('ImagePicker');\n    ImagePicker.launchImageLibrary({}, (response) => {\n      console.log('Response = ', response);\n    \n      if (response.didCancel) {\n        console.log('User cancelled image picker');\n      }\n      else if (response.error) {\n        console.log('ImagePicker Error: ', response.error);\n      }\n      else if (response.customButton) {\n        console.log('User tapped custom button: ', response.customButton);\n      }\n      else {\n        if(response.uri){\n          var path = response.path;\n          if(!path){\n              path = response.uri;\n          }\n          QRreader(path).then((data)=>{\n            this.setState({reader: {\n              message: '识别成功',\n              data: data\n            }});\n            // 十秒后自动清空\n            setTimeout(() => {\n              this.setState({reader: {\n                message: null,\n                data: null\n              }})\n            }, 10000);\n          }).catch((err)=>{\n            this.setState({reader: {\n              message: '识别失败',\n              data: null\n            }});\n          });\n          \n      }\n      }\n    });\n  }\n}\nconst styles = StyleSheet.create({\n  container: {\n    flex: 1,\n    backgroundColor: '#fff'\n  }\n});\n```\n\n## 运行示例\n```bash\n$ cd example\n$ yarn\n$ react-native run-ios  或者 $ react-native run-android  \n```\n示例中代码已link过，所以不用link\n\n### QRscanner\n| 属性                | 类型    | 默认值          | 备注 |\n| -------------      | ------- | -------------  | ------------- |\n| isRepeatScan       | boolean    | false          |   是否允许重复扫描  |\n| zoom          | number    | 0          |   相机焦距 范围0-1  |\n| flashMode          | bool    | false          |   开启手电筒  |\n| onRead             | func    | (res)=>{}      | 扫描回调 |\n| maskColor          | string  | '#0000004D'    | 遮罩层颜色  |\n| borderColor        | string  | '#000000'      | 边框颜色  |\n| cornerColor        | string  | '#22ff00'      | 扫描框转角的颜色  |\n| borderWidth        | number  | 0              | 扫描框的边框宽度  |\n| cornerBorderWidth  | number  | 4              | 扫描框转角的border宽度  |\n| cornerBorderLength | number  | 20             | 扫描框转角的宽度高度  |\n| rectHeight         | number  | 200            | 扫描框高度  |\n| rectWidth          | number  | 200            | 扫描框宽度  |\n| finderX             | number  | 0            | 扫描框X轴偏移量  |\n| finderY             | number  | 0            | 扫描框Y轴偏移量  |\n| isCornerOffset     | bool    | true           | 边角是否偏移  |\n| cornerOffsetSize   | number  | 1              | 偏移量  |\n| bottomHeight       | number  | 100            | 底部预留高度  |\n| scanBarAnimateTime | number  | 2500           | 扫描线时间  |\n| scanBarColor       | string  | '#22ff00'      | 扫描线颜色  |\n| scanBarImage       | any     | null           | 扫描线图片  |\n| scanBarHeight      | number  | 1.5            | 扫描线高度  |\n| scanBarMargin      | number  | 6              | 扫描线左右margin  |\n| hintText           | string  | '将二维码/条码放入框内，即可自动扫描'| 提示字符串  |\n| hintTextStyle      | object  | {color: '#fff',fontSize: 14,backgroundColor: 'transparent'} | 提示字符串样式  |\n| hintTextPosition   | number  | 130            | 提示字符串距离容器底部的值  |\n| renderTopView      | func    | () =>{}        | render顶部View  |\n| renderBottomView   | func    | ()=><View style={{flex:1,backgroundColor:'#0000004D'}}/> | render底部View  |\n| isShowScanBar      | bool    | true           | 是否显示扫描线  |\n| topViewStyle       | object  | null           | render顶部容器样式  |\n| bottomViewStyle    | object  | null           | render底部容器样式  |    \n\n### QRreader\nQRreader(path:uri)是一个promise对象，接受一个uri图片路径参数，\n返回成功识别的对象，失败则返回错误\n\n\n## 历史版本特性\n#### 1.3.3  修复ios, pod install问题, 支持0.60.0以上版本。\n#### 1.3.2  因android扫描区域计算有诸多问题，所以注释掉android计算扫描区域，恢复android设备的全屏扫描。\n#### 1.3.1  修复ios打包发生的找不到库的错误,降低相册二维码识别的ios最低版本支持\n#### 1.3.0  修复android扫描的一个bug，加入相册二维码识别，感谢lewin大神的开源二维码识别。\n#### 1.2.4  限制扫码类型，修复android报错\n#### 1.2.2  添加是否允许重复扫描的api\n#### 1.2.1  修复android的报错以及android扫描区域的bug\n#### 1.2.0  修改底层依赖相机组件，添加扫描区域，并设置XY轴偏移量\n#### 1.1.3  完善文档\n#### 1.1.2  git保留demo示例，npm包去掉demo示例\n#### 1.1.1  修改文档错误地方，新增demo示例\n#### 1.1.0  修复bug，新增手电筒api\n#### 1.0.0  上传基础组件\n","readmeFilename":"README.md"}