1

Googleでは、javacriptで直接Windows.Devices.PointOfService APIを使用して、2つの異なるWindows 10モバイルデバイスでバーコードスキャナを操作しています。claimBarcodeScanner.SetActiveSymbologiesAsyncのjavascript実装は機能していますか?

両方のデバイスで、スキャンエンジンの有効化、無効化、およびソフトスタートと停止を正常に実行できます。しかし、setActiveSymbologiesAsyncはjavascriptで何もしないようです。 .NET/C#APIで動作します。

各デバイスは、デフォルトのシンボルセットのように見えるものだけをスキャンします。

誰もその経験がありますか?

私はこのようにそれを呼び出しています:

var syms = [ Windows.Devices.PointOfService.BarcodeSymbologies.code128 ]; 
claimedScanner.setActiveSymbologiesAsync(syms); 

答えて

-1

問題は、JavaScriptの配列はアジャイルではないということである、とsetActiveSymbologiesAsyncなどの方法が間違ってそれらを扱います。 (同じ問題があるPointOfService名前空間には他の方法がありますが、基本的に非同期で、文字列の配列を受け入れるメソッドを探してください)

ありがとうございました。チームは、この修正プログラムは、Anniversary Updateで修正される予定であると私に伝えています。それまでは、この回避策を試すことができます。

function createAgileStringArray() { 
    var contact = new Windows.ApplicationModel.Contacts.Contact(); 
    return contact.dataSuppliers; 
} 

var syms = createAgileStringArray(); 
syms.push(Windows.Devices.PointOfService.BarcodeSymbologies.code128); 
claimedScanner.setActiveSymbologiesAsync(syms); 

は基本的に、我々は我々が実際に接触を気にしないので、ダミーの連絡先を作成するが、唯一の私たちはそれに付属しているアジャイル文字列配列再利用することができます:dataSuppliersを。

回避策を自分でテストするためのバーコードスキャナはありません。それが動作するかどうか私に教えてください。

+0

私はそれを試して、setActiveSymbologiesAsyncを呼び出すときにメソッドが見つかりませんでした。私は、異なる配列型がそのメソッド呼び出しで動作するとは思わない。しかし、アイデアをありがとうございます。 – JRB

+0

@JRB私のデバイスをAniversaryに更新することはできません。 Windows.ApplicationModel.Contacts.Contact.dataSuppliersを使用しても機能しません。 アイデア –

関連する問題