ZXing сканер штрих-кода для веб-приложений - PullRequest
5 голосов
/ 17 ноября 2011

Я пытаюсь использовать http://zxing.appspot.com/scan для вызова сканера штрих-кода из веб-приложения, но не могу заставить его работать. Даже после ненужного обновления и переустановки все, что он делает, это показывает веб-страницу zxing по умолчанию, которая просит меня установить сканер штрих-кода на моем телефоне. Я что-то упустил?

Вот javascript, который я использую для вызова ZXing Scanner. В целях тестирования я даже пытался создать простую гиперссылку HTML, но безуспешно. Я использую Android WebView для загрузки приложения.

window.location.href = 
"http://zxing.appspot.com/scan?ret=http://192.168.1.33:3000/pallet/{CODE}/change_position/"+positionId+"&SCAN_FORMATS=CODE_39";

И это манифест сканера штрих-кода, который идентифицирует и запускает сканер через браузер:

<intent-filter>
    <action android:name="android.intent.action.VIEW"/>
    <category android:name="android.intent.category.DEFAULT"/>
    <category android:name="android.intent.category.BROWSABLE"/>
    <data android:scheme="http" android:host="zxing.appspot.com" android:path="/scan"/>
</intent-filter>

Забавно, http://www.google.com/m/products/scan, который делает то же самое, работает отлично. Любая помощь или идея очень приветствуется! Большое спасибо!

Ответы [ 5 ]

2 голосов
/ 17 ноября 2011

Похоже, что вы отправляете URL-адрес изображения в локальной сети (IP-адрес 192.168 ...), к которому zxing.appspot.com не сможет получить доступ через Интернет.

1 голос
/ 25 июня 2014

Да, вызвать это так:

zxing://scan/?ret=http://192.168.2.9/stock/add.php?barcode={CODE}
1 голос
/ 18 ноября 2011

Я думаю, что поделился некоторыми соображениями в списке рассылки проекта, но у меня появилась еще одна яркая идея:

Вы уверены, что не «сохранили» свои предпочтения по обработке этой ссылки в браузере? Например, когда у вас есть выбор приложения, вас обычно спрашивают, хотите ли вы использовать это приложение навсегда, чтобы открыть ссылку такого рода или Намерение. Может быть, вы сделали это только для этой ссылки и браузера. Перейдите в Приложения и «Сбросить настройки по умолчанию» для всех этих приложений и повторите попытку.

0 голосов
/ 10 января 2019

Просто чтобы поделиться своими данными, используя это из элемента привязки HTML внутри приложения Angular 2+:

  1. ret часть ссылки должна быть закодирована, поэтому просто используйте

 this.callbackUrl = encodeURIComponent(`${currentURL}{CODE}&SCAN_FORMATS=Code 39`);
 this.totalBarCodeUrl = `http://zxing.appspot.com/scan?ret=${this.callbackUrl}`;
  1. HTML будет похож на:

 <a [href]="totalBarCodeUrl"></a>
0 голосов
/ 04 января 2015

Он работает из браузера Android по умолчанию, но не из браузера Google Chrome для меня

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...