hunter-open-sdk 1.0.2 → 1.0.4

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.
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.default = void 0;
7
+ exports.GetAndroidSn = void 0;
8
8
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
9
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
10
10
  var _usb = require("usb");
@@ -159,29 +159,35 @@ var getWinSn = /*#__PURE__*/function () {
159
159
  * @param {Object} params - 参数
160
160
  * @param {Function} callBack - 回调函数
161
161
  */
162
- var GetAndroidSn = function GetAndroidSn(params, callBack) {
162
+ var GetAndroidSn = exports.GetAndroidSn = function GetAndroidSn(params, callBack) {
163
163
  console.log('GetAndroidSn params', params);
164
164
  _usb.usb.on('attach', /*#__PURE__*/function () {
165
165
  var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(device) {
166
166
  return _regenerator.default.wrap(function _callee3$(_context3) {
167
167
  while (1) switch (_context3.prev = _context3.next) {
168
168
  case 0:
169
+ saasCallBack({
170
+ data: {
171
+ eventName: 'type_usb_android_device_result',
172
+ eventCode: 0
173
+ }
174
+ });
169
175
  if (!(0, _utils.isMac)()) {
170
- _context3.next = 3;
176
+ _context3.next = 4;
171
177
  break;
172
178
  }
173
179
  // mac获取sn
174
180
  getMacSn(device, callBack);
175
181
  return _context3.abrupt("return");
176
- case 3:
182
+ case 4:
177
183
  if (!(0, _utils.isWin)()) {
178
- _context3.next = 6;
184
+ _context3.next = 7;
179
185
  break;
180
186
  }
181
187
  // win获取sn
182
188
  getWinSn(device, callBack);
183
189
  return _context3.abrupt("return");
184
- case 6:
190
+ case 7:
185
191
  case "end":
186
192
  return _context3.stop();
187
193
  }
@@ -192,5 +198,4 @@ var GetAndroidSn = function GetAndroidSn(params, callBack) {
192
198
  };
193
199
  }());
194
200
  _usb.usb.on('detach', function () {});
195
- };
196
- var _default = exports.default = GetAndroidSn;
201
+ };
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.default = void 0;
7
+ exports.GetGeneralReport = void 0;
8
8
  var _path = _interopRequireDefault(require("path"));
9
9
  var _utils = require("../utils/utils.global");
10
10
  // 预定义worker
@@ -62,7 +62,7 @@ function getReport(params) {
62
62
  }
63
63
 
64
64
  // 获取报告
65
- function GetGeneralReport(params, callBack) {
65
+ var GetGeneralReport = exports.GetGeneralReport = function GetGeneralReport(params, callBack) {
66
66
  // 如果是在主进程,则直接获取报告
67
67
  if (isInMainProcess()) {
68
68
  var reportRes = (0, _utils.getGeneralReportCallKit)(params);
@@ -73,5 +73,4 @@ function GetGeneralReport(params, callBack) {
73
73
  initWorker();
74
74
  addWorkerListener(callBack);
75
75
  getReport(params);
76
- }
77
- var _default = exports.default = GetGeneralReport;
76
+ };
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.default = void 0;
7
+ exports.GetSaaSReport = void 0;
8
8
  var _path = _interopRequireDefault(require("path"));
9
9
  var _utils = require("../utils/utils.global");
10
10
  // 预定义worker
@@ -62,7 +62,7 @@ function getReport(params) {
62
62
  }
63
63
 
64
64
  // 获取报告
65
- function GetSaaSReport(params, callBack) {
65
+ var GetSaaSReport = exports.GetSaaSReport = function GetSaaSReport(params, callBack) {
66
66
  // 如果是在主进程,则直接获取报告
67
67
  if (isInMainProcess()) {
68
68
  var reportRes = (0, _utils.getSaaSReportCallKit)(params);
@@ -73,5 +73,4 @@ function GetSaaSReport(params, callBack) {
73
73
  initWorker();
74
74
  addWorkerListener(callBack);
75
75
  getReport(params);
76
- }
77
- var _default = exports.default = GetSaaSReport;
76
+ };
package/lib/index.js CHANGED
@@ -1,14 +1,13 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
6
  exports.default = void 0;
8
7
  var _registerEvent = require("./registerEvent");
9
- var _getGeneralReport = _interopRequireDefault(require("./getGeneralReport"));
10
- var _getSaaSReport = _interopRequireDefault(require("./getSaaSReport"));
11
- var _getAndroidSn = _interopRequireDefault(require("./getAndroidSn"));
8
+ var _getGeneralReport = require("./getGeneralReport");
9
+ var _getSaaSReport = require("./getSaaSReport");
10
+ var _getAndroidSn = require("./getAndroidSn");
12
11
  var Sentry = require("@sentry/browser");
13
12
  Sentry.init({
14
13
  dsn: "https://8a5296c59083430fbac0756f56ddbf5d@sentry.zhuanzhuan.com/2300",
@@ -19,7 +18,7 @@ console.log('Sentry initialized');
19
18
  var _default = exports.default = {
20
19
  registerEvent: _registerEvent.RegisterEvent,
21
20
  unregisterEvent: _registerEvent.UnregisterEvent,
22
- getGeneralReport: _getGeneralReport.default,
23
- getSaaSReport: _getSaaSReport.default,
24
- getAndroidSn: _getAndroidSn.default
21
+ getGeneralReport: _getGeneralReport.GetGeneralReport,
22
+ getSaaSReport: _getSaaSReport.GetSaaSReport,
23
+ getAndroidSn: _getAndroidSn.GetAndroidSn
25
24
  };
@@ -19,10 +19,6 @@ var Sentry = require("@sentry/browser");
19
19
  // saas回调
20
20
  var saasCallBack;
21
21
 
22
- // 驱动安装状态
23
- var isDriverInstalling = false;
24
- var isDriverReady = false;
25
-
26
22
  // usb监听
27
23
  var usbListener = null;
28
24
 
@@ -72,7 +68,7 @@ var DevicePair = /*#__PURE__*/function () {
72
68
  }
73
69
  pairRes = JSON.parse(devicePair);
74
70
  Code = pairRes.Code, Data = pairRes.Data;
75
- if (!(Code == 0 && Data.imei)) {
71
+ if (!(Code == 0 && (Data.imei || Data.serialNumber))) {
76
72
  _context.next = 12;
77
73
  break;
78
74
  }
@@ -202,146 +198,124 @@ var updateDllFileCheck = function updateDllFileCheck() {
202
198
  * 检查并安装驱动
203
199
  */
204
200
  var checkAndInstallDriver = function checkAndInstallDriver() {
205
- if (!(0, _utils.isWin)()) {
206
- isDriverReady = true; // Mac不需要驱动,直接设置为就绪
207
- return;
208
- }
209
- (0, _winDriver.checkHasDriver)().then(function (res) {
210
- if (res) {
211
- isDriverReady = true; // 已有驱动,设置为就绪
201
+ return new Promise(function (resolve, reject) {
202
+ if (!(0, _utils.isWin)()) {
203
+ resolve();
212
204
  return;
213
205
  }
214
-
215
- // 没有驱动,开始下载安装
216
- isDriverInstalling = true;
217
- (0, _winDriver.downloadDriver)(function (percent) {
218
- saasCallBack({
219
- data: {
220
- eventName: 'type_need_install_driver',
221
- eventCode: 0,
222
- eventContent: JSON.stringify({
223
- percent: percent // 下载进度
224
- })
225
- }
226
- });
227
- }).then(function () {
228
- // 成功
229
- console.log('驱动下载并安装成功');
230
- isDriverInstalling = false;
231
- isDriverReady = true;
232
- saasCallBack({
233
- data: {
234
- eventName: 'type_install_driver_result',
235
- eventCode: 0 // 0 成功 -1 失败
236
- }
206
+ (0, _winDriver.checkHasDriver)().then(function (res) {
207
+ if (res) {
208
+ resolve();
209
+ return;
210
+ }
211
+ (0, _winDriver.downloadDriver)(function (percent) {
212
+ saasCallBack({
213
+ data: {
214
+ eventName: 'type_need_install_driver',
215
+ eventCode: 0,
216
+ eventContent: JSON.stringify({
217
+ percent: percent // 下载进度
218
+ })
219
+ }
220
+ });
221
+ }).then(function () {
222
+ // 成功
223
+ console.log('驱动下载并安装成功');
224
+ saasCallBack({
225
+ data: {
226
+ eventName: 'type_install_driver_result',
227
+ eventCode: 0 // 0 成功 -1 失败
228
+ }
229
+ });
230
+ resolve();
231
+ }).catch(function (err) {
232
+ // 失败
233
+ console.error('驱动下载或安装失败', err);
234
+ Sentry.captureException('驱动下载或安装失败:' + JSON.stringify(err));
235
+ saasCallBack({
236
+ data: {
237
+ eventName: 'type_install_driver_result',
238
+ eventCode: -1 // 0 成功 -1 失败
239
+ }
240
+ });
241
+ reject();
237
242
  });
238
243
  }).catch(function (err) {
239
- // 失败
240
- console.error('驱动下载或安装失败', err);
241
- Sentry.captureException('驱动下载或安装失败:' + JSON.stringify(err));
242
- isDriverInstalling = false;
243
- saasCallBack({
244
- data: {
245
- eventName: 'type_install_driver_result',
246
- eventCode: -1 // 0 成功 -1 失败
247
- }
248
- });
244
+ console.error('驱动检测失败', err);
245
+ Sentry.captureException('驱动检测失败:' + JSON.stringify(err));
246
+ reject();
249
247
  });
250
- }).catch(function (err) {
251
- console.error('驱动检测失败', err);
252
- Sentry.captureException('驱动检测失败:' + JSON.stringify(err));
253
248
  });
254
249
  };
255
- var RegisterEvent = exports.RegisterEvent = function RegisterEvent(params, callBack) {
256
- saasCallBack = callBack;
250
+ var RegisterEvent = exports.RegisterEvent = /*#__PURE__*/function () {
251
+ var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(params, callBack) {
252
+ return _regenerator.default.wrap(function _callee3$(_context3) {
253
+ while (1) switch (_context3.prev = _context3.next) {
254
+ case 0:
255
+ saasCallBack = callBack;
257
256
 
258
- // 检查是否需要更新dll
259
- updateDllFileCheck();
257
+ // 检查是否需要更新dll
258
+ updateDllFileCheck();
260
259
 
261
- // 在插线之前就检测驱动状态
262
- checkAndInstallDriver();
263
- usbListener = new usbmux.createListener().on('attached', /*#__PURE__*/function () {
264
- var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(udid) {
265
- return _regenerator.default.wrap(function _callee2$(_context2) {
266
- while (1) switch (_context2.prev = _context2.next) {
267
- case 0:
268
- if (udid) {
269
- _context2.next = 2;
270
- break;
271
- }
272
- return _context2.abrupt("return");
273
- case 2:
274
- // 插入设备通知
260
+ // 在插线之前就检测驱动状态
261
+ _context3.next = 4;
262
+ return checkAndInstallDriver();
263
+ case 4:
264
+ usbListener = new usbmux.createListener().on('attached', /*#__PURE__*/function () {
265
+ var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(udid) {
266
+ return _regenerator.default.wrap(function _callee2$(_context2) {
267
+ while (1) switch (_context2.prev = _context2.next) {
268
+ case 0:
269
+ if (udid) {
270
+ _context2.next = 2;
271
+ break;
272
+ }
273
+ return _context2.abrupt("return");
274
+ case 2:
275
+ // 插入设备通知
276
+ saasCallBack({
277
+ data: {
278
+ eventName: 'type_usb_device_result',
279
+ udid: udid,
280
+ eventCode: 0
281
+ }
282
+ });
283
+ // 有驱动,直接运行脚本
284
+ DevicePair(udid, params);
285
+ case 4:
286
+ case "end":
287
+ return _context2.stop();
288
+ }
289
+ }, _callee2);
290
+ }));
291
+ return function (_x3) {
292
+ return _ref3.apply(this, arguments);
293
+ };
294
+ }()).on('detached', function (udid) {
295
+ // 拔出设备
275
296
  saasCallBack({
276
297
  data: {
277
298
  eventName: 'type_usb_device_result',
278
299
  udid: udid,
279
- eventCode: 0
300
+ eventCode: -1
280
301
  }
281
302
  });
282
- if ((0, _utils.isWin)()) {
283
- // windows检查驱动 mac不需要
284
- // 检查驱动是否就绪
285
- if (isDriverReady) {
286
- // 驱动就绪,直接进行配对
287
- DevicePair(udid, params);
288
- } else if (isDriverInstalling) {
289
- // 驱动正在安装中,通知用户等待
290
- saasCallBack({
291
- data: {
292
- eventName: 'type_usb_device_result',
293
- udid: udid,
294
- eventCode: -2,
295
- // -2 表示驱动安装中,请等待
296
- eventContent: JSON.stringify({
297
- message: '驱动正在安装中,请稍后重试'
298
- })
299
- }
300
- });
301
- } else {
302
- // 驱动未安装,重新触发安装流程
303
- checkAndInstallDriver();
304
- saasCallBack({
305
- data: {
306
- eventName: 'type_usb_device_result',
307
- udid: udid,
308
- eventCode: -3,
309
- // -3 表示需要安装驱动
310
- eventContent: JSON.stringify({
311
- message: '需要安装驱动,正在处理中'
312
- })
313
- }
314
- });
315
- }
316
- } else {
317
- // 有驱动,直接运行脚本
318
- DevicePair(udid, params);
319
- }
320
- case 4:
321
- case "end":
322
- return _context2.stop();
323
- }
324
- }, _callee2);
325
- }));
326
- return function (_x) {
327
- return _ref2.apply(this, arguments);
328
- };
329
- }()).on('detached', function (udid) {
330
- // 拔出设备
331
- saasCallBack({
332
- data: {
333
- eventName: 'type_usb_device_result',
334
- udid: udid,
335
- eventCode: -1
303
+ }).on('error', function (err) {
304
+ console.log('usb连接错误:', err);
305
+ Sentry.captureException('usb连接错误:' + JSON.stringify(err));
306
+ var errMsg = "usb\u8FDE\u63A5\u9519\u8BEF\uFF1A".concat(err);
307
+ throw new Error(errMsg);
308
+ });
309
+ case 5:
310
+ case "end":
311
+ return _context3.stop();
336
312
  }
337
- });
338
- }).on('error', function (err) {
339
- console.log('usb连接错误:', err);
340
- Sentry.captureException('usb连接错误:' + JSON.stringify(err));
341
- var errMsg = "usb\u8FDE\u63A5\u9519\u8BEF\uFF1A".concat(err);
342
- throw new Error(errMsg);
343
- });
344
- };
313
+ }, _callee3);
314
+ }));
315
+ return function RegisterEvent(_x, _x2) {
316
+ return _ref2.apply(this, arguments);
317
+ };
318
+ }();
345
319
  var UnregisterEvent = exports.UnregisterEvent = function UnregisterEvent() {
346
320
  usbListener && usbListener.destroy();
347
321
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hunter-open-sdk",
3
- "version": "1.0.2",
3
+ "version": "1.0.4",
4
4
  "description": "采货侠SaaS版本桌面端sdk",
5
5
  "scripts": {
6
6
  "start": "zz dev",