@unif/react-native-hms-scan 0.5.2 → 0.5.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -10,7 +10,7 @@
10
10
  ## 特性
11
11
 
12
12
  - **三种用法** — 成品 `<Scanner>` 扫一扫页(自带权限流 / 状态机 / 主题)、headless `<HmsScanView>` 相机组件(自定义 UI)、`decodeImage(uri)` 从本地图片识别。
13
- - **Android 内置引擎** — 用 Scan SDK-Plus,**非华为机型可用**,不依赖设备装 HMS Core APK;华为 maven 与依赖已内置在库里,宿主无需改 gradle。
13
+ - **Android 内置引擎** — 用 Scan SDK-Plus,**非华为机型可用**,不依赖设备装 HMS Core APK;`scanplus` 由本库声明,宿主需把 Huawei Maven 加到实际参与依赖解析的 `repositories`。
14
14
  - **零云端配置** — 两端**都不需要 AppGallery Connect / agconnect / API Key**。
15
15
  - **14 种码制** — `QR_CODE` / `EAN_13` / `CODE_128` / `PDF417` / `DATA_MATRIX` 等,默认识别全部。
16
16
  - 仅支持 **RN 新架构**;`@unif/react-native-design` 风格统一。
@@ -22,7 +22,17 @@ yarn add @unif/react-native-hms-scan react-native-svg
22
22
  cd ios && pod install
23
23
  ```
24
24
 
25
- `react-native-svg` 是 peer 依赖(`<Scanner>` 图标用它绘制);`<Scanner>` 还依赖 peer `@unif/react-native-design`。宿主需开启新架构。Android 权限、iOS `NSCameraUsageDescription` 等见[文档站 · 安装](https://unif-design.github.io/react-native-hms-scan/docs/getting-started/installation)。
25
+ Android 宿主还必须在实际参与依赖解析的仓库列表中加入 Huawei Maven;库模块自己的 `repositories` 不会传播给 consumer:
26
+
27
+ ```gradle
28
+ allprojects {
29
+ repositories {
30
+ maven { url 'https://developer.huawei.com/repo/' }
31
+ }
32
+ }
33
+ ```
34
+
35
+ `react-native-svg` 是 peer 依赖(`<Scanner>` 图标用它绘制);`<Scanner>` 还依赖 peer `@unif/react-native-design`。宿主需开启新架构。完整 peer dependencies、Android 权限、iOS `NSCameraUsageDescription` 等见[文档站 · 安装](https://unif-design.github.io/react-native-hms-scan/docs/getting-started/installation)。
26
36
 
27
37
  ## 快速开始
28
38
 
@@ -52,13 +62,13 @@ headless `<HmsScanView>`(完全自定义 UI)、图片识别 `decodeImage`、权
52
62
 
53
63
  - **完整文档**(安装 · 平台配置 · API · 平台差异 · 故障排查):https://unif-design.github.io/react-native-hms-scan/
54
64
  - **AI / Agent**(按需 fetch,别凭记忆猜 API):[llms.txt](https://unif-design.github.io/react-native-hms-scan/llms.txt) · [llms-full.txt](https://unif-design.github.io/react-native-hms-scan/llms-full.txt)
55
- - **Agent Skill** `unif-hms-scan`(`unif` plugin):`/plugin marketplace add unif-design/skills` → `/plugin install unif@unif-skills`
65
+ - **Agent Skill** `hms-scan`(`unif` plugin):`/plugin marketplace add unif-design/skills` → `/plugin install unif@skills`
56
66
 
57
67
  ## 兼容性
58
68
 
59
69
  - **React Native** 新架构(Fabric + TurboModule)**必须开启**;在 RN 0.85 上开发与验证。
60
70
  - **Android** minSdkVersion ≥ 24(Android 7.0)。
61
- - **iOS** `ScanKitFrameWork` 扫码功能**仅真机**(模拟器可编译,相机要真机)。
71
+ - **iOS** `ScanKitFrameWork` 相机扫码**仅真机**;simulator 可编译、链接并运行非相机测试。
62
72
 
63
73
  ## 许可
64
74
 
@@ -4,7 +4,7 @@ import { forwardRef } from 'react';
4
4
  import NativeHmsScanView from './HmsScanViewNativeComponent';
5
5
  import { formatsToCsv, parseResultsJson } from "./format.js";
6
6
 
7
- /** 暗光提示 / 手电状态。 */
7
+ /** 平台相关的暗光提示 / 手电状态。 */
8
8
  import { jsx as _jsx } from "react/jsx-runtime";
9
9
  /**
10
10
  * 底层 headless 扫码相机组件:只渲染相机预览并发出扫码结果事件。
@@ -1,8 +1,8 @@
1
1
  import type { ViewProps } from 'react-native';
2
2
  import type { BarcodeFormat, ScanResult } from './types';
3
- /** 暗光提示 / 手电状态。 */
3
+ /** 平台相关的暗光提示 / 手电状态。 */
4
4
  export interface TorchStatus {
5
- /** 环境暗到建议显示手电按钮(仅 Android 上报)。 */
5
+ /** Android:环境暗光提示;iOS:设备是否有手电硬件。 */
6
6
  available: boolean;
7
7
  /** 手电当前是否点亮。 */
8
8
  on: boolean;
@@ -23,7 +23,7 @@ export interface HmsScanViewProps extends ViewProps {
23
23
  code: string;
24
24
  message: string;
25
25
  }) => void;
26
- /** 暗光提示 / 手电状态变化时回调。 */
26
+ /** Android 暗光提示或 iOS 手电硬件 / 点亮状态变化时回调。 */
27
27
  onTorchStatus?: (status: TorchStatus) => void;
28
28
  }
29
29
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"HmsScanView.d.ts","sourceRoot":"","sources":["../../../src/HmsScanView.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAEzD,mBAAmB;AACnB,MAAM,WAAW,WAAW;IAC1B,kCAAkC;IAClC,SAAS,EAAE,OAAO,CAAC;IACnB,gBAAgB;IAChB,EAAE,EAAE,OAAO,CAAC;CACb;AAED,MAAM,WAAW,gBAAiB,SAAQ,SAAS;IACjD,oBAAoB;IACpB,OAAO,CAAC,EAAE,aAAa,EAAE,CAAC;IAC1B,oBAAoB;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,wBAAwB;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,+BAA+B;IAC/B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,4BAA4B;IAC5B,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,IAAI,CAAC;IAC/C,kBAAkB;IAClB,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACjE,wBAAwB;IACxB,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;CAC/C;AAED;;;;;GAKG;AACH,eAAO,MAAM,WAAW,iOAiDtB,CAAC"}
1
+ {"version":3,"file":"HmsScanView.d.ts","sourceRoot":"","sources":["../../../src/HmsScanView.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAEzD,wBAAwB;AACxB,MAAM,WAAW,WAAW;IAC1B,oCAAoC;IACpC,SAAS,EAAE,OAAO,CAAC;IACnB,gBAAgB;IAChB,EAAE,EAAE,OAAO,CAAC;CACb;AAED,MAAM,WAAW,gBAAiB,SAAQ,SAAS;IACjD,oBAAoB;IACpB,OAAO,CAAC,EAAE,aAAa,EAAE,CAAC;IAC1B,oBAAoB;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,wBAAwB;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,+BAA+B;IAC/B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,4BAA4B;IAC5B,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,IAAI,CAAC;IAC/C,kBAAkB;IAClB,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACjE,0CAA0C;IAC1C,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;CAC/C;AAED;;;;;GAKG;AACH,eAAO,MAAM,WAAW,iOAiDtB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unif/react-native-hms-scan",
3
- "version": "0.5.2",
3
+ "version": "0.5.3",
4
4
  "description": "华为 HMS 统一扫码服务 React Native bridge:定制视图扫码 + 图片识别 (Scan SDK-Plus / ScanKitFrameWork,@unif 私有)",
5
5
  "main": "./lib/module/index.js",
6
6
  "types": "./lib/typescript/src/index.d.ts",
@@ -4,9 +4,9 @@ import NativeHmsScanView from './HmsScanViewNativeComponent';
4
4
  import { formatsToCsv, parseResultsJson } from './format';
5
5
  import type { BarcodeFormat, ScanResult } from './types';
6
6
 
7
- /** 暗光提示 / 手电状态。 */
7
+ /** 平台相关的暗光提示 / 手电状态。 */
8
8
  export interface TorchStatus {
9
- /** 环境暗到建议显示手电按钮(仅 Android 上报)。 */
9
+ /** Android:环境暗光提示;iOS:设备是否有手电硬件。 */
10
10
  available: boolean;
11
11
  /** 手电当前是否点亮。 */
12
12
  on: boolean;
@@ -25,7 +25,7 @@ export interface HmsScanViewProps extends ViewProps {
25
25
  onScanResult?: (results: ScanResult[]) => void;
26
26
  /** 相机/解码出错时回调。 */
27
27
  onScanError?: (error: { code: string; message: string }) => void;
28
- /** 暗光提示 / 手电状态变化时回调。 */
28
+ /** Android 暗光提示或 iOS 手电硬件 / 点亮状态变化时回调。 */
29
29
  onTorchStatus?: (status: TorchStatus) => void;
30
30
  }
31
31