ENUMERATE_SCANNERS
デバイスで使用可能なスキャナの番号付きリスト (インデックス) を生成します。スキャナとそのパラメータは、現在アクティブなプロファイルに基づいて設定されます。
IMPORTANT: スキャナ インデックスが定められていないデバイスもあります。インデックスは、サポートされている内部または外部、あるいはその両方のスキャナの数によって異なります。対象となるスキャナは、スキャナ インデックス生成時にデバイスにインストールまたは接続されているものになります。
関数プロトタイプ
Intent i = new Intent(); i.setAction("com.symbol.datawedge.api.ACTION"); i.putExtra("com.symbol.datawedge.api.ENUMERATE_SCANNERS", "");
パラメータ
ACTION [String]: "com.symbol.datawedge.api.ENUMERATE_SCANNERS"
戻り値
スキャナの列挙リストは、ブロードキャスト インテント (com.symbol.datawedge.api.ACTION_ENUMERATEDSCANNERLIST) を介して返されます。スキャナのリストは、文字列配列として返されます (以下を参照してください)。
バンドル エクストラ
SCANNER_NAME [String]:
SCANNER_INDEX [String]:
SCANNER_CONNECTION_STATE [String]:
SCANNER_IDENTIFIER [String]: デバイスでサポートされている各スキャナのスキャナ情報バンドル (DataWedge 6.5 で導入)。どちらのパラメータも DataWedge 6.6 以降でサポートされており、コードでインデックスも参照されている場合は、スキャナ識別子の値が優先されます。
指定可能な値:
- AUTO - スキャナ自動選択
- INTERNAL_IMAGER - 内蔵イメージャ スキャナ
- INTERNAL_LASER - 内蔵レーザー スキャナ
- INTERNAL_CAMERA - 内蔵カメラ スキャナ
- SERIAL_SSI ET50/ET55 用のプラグ接続可能な Z バック スキャナ
- BLUETOOTH_SSI - RS507 Bluetooth スキャナ
- BLUETOOTH_RS5100 - RS5100 Bluetooth スキャナ
- BLUETOOTH_RS6000 - RS6000 Bluetooth スキャナ
- BLUETOOTH_DS2278 - DS2278 Bluetooth スキャナ – 一部のデバイスには該当しません。詳細は「スキャナの選択」を参照してください
- BLUETOOTH_DS3678 - DS3678 Bluetooth スキャナ – 一部のデバイスには該当しません。詳細は「スキャナの選択」を参照してください
- BLUETOOTH_DS8178 – DS8178 Bluetooth スキャナ–一部のデバイスには該当しません。「スキャナの選択」を参照してください
- BLUETOOTH_LI3678 – LI3678 Bluetooth スキャナ–一部のデバイスには該当しません。「スキャナの選択」を参照してください
- BLUETOOTH_ZEBRA - Zebra Bluetooth ハンドヘルド スキャナの総称 (DS3678、LI3678、DS8178など)
- PLUGABLE_SSI - シリアル SSI スキャナ RS429 (WT6000 用)
- PLUGABLE_SSI_RS5000 - シリアル SSI スキャナ RS5000 (WT6000 用)
- USB_SSI_DS3608 - DS3608 プラグ接続可能 USB スキャナ
- USB_TGCS_MP7000 - MP7000 食料品スキャナ スケール
- USB_ZEBRA - 汎用 Zebra USB スキャナ
コード例
スキャナの列挙
// // Call before sending the enumeration query // public void registerReciever(){ IntentFilter filter = new IntentFilter(); filter.addAction("com.symbol.datawedge.api.RESULT_ACTION");//RESULT_ACTION filter.addCategory(Intent.CATEGORY_DEFAULT); registerReceiver(enumeratingBroadcastReceiver, filter); } // // Send the enumeration command to DataWedge // public void enumerateScanners(){ Intent i = new Intent(); i.setAction("com.symbol.datawedge.api.ACTION"); i.putExtra("com.symbol.datawedge.api.ENUMERATE_SCANNERS", ""); this.sendBroadcast(i); } public void unRegisterReciever(){ unregisterReceiver(enumeratingBroadcastReceiver); } // // Create broadcast receiver to receive the enumeration result // private BroadcastReceiver enumeratingBroadcastReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); Log.d(TAG, "Action: " + action); if(action.equals("com.symbol.datawedge.api.RESULT_ACTION")){ // // enumerate scanners // if(intent.hasExtra("com.symbol.datawedge.api.RESULT_ENUMERATE_SCANNERS")) { ArrayList<Bundle> scannerList = (ArrayList<Bundle>) intent.getSerializableExtra("com.symbol.datawedge.api.RESULT_ENUMERATE_SCANNERS"); if((scannerList != null) && (scannerList.size() > 0)) { for (Bundle bunb : scannerList){ String[] entry = new String[4]; entry[0] = bunb.getString("SCANNER_NAME"); entry[1] = bunb.getBoolean("SCANNER_CONNECTION_STATE")+""; entry[2] = bunb.getInt("SCANNER_INDEX")+""; entry[3] = bunb.getString("SCANNER_IDENTIFIER"); Log.d(TAG, "Scanner:" + entry[0] + " Connection:" + entry[1] + " Index:" + entry[2] + " ID:" + entry[3]); } } } } } };
スキャナ詳細の取得
// RESULT_ACTION_EXTRA_ENUMERATE_SCANNERS if(intent.hasExtra("com.symbol.datawedge.api.RESULT_ENUMERATE_SCANNERS")) { Log.d(TAG, ">>> RESULT_ACTION_EXTRA_ENUMERATE_SCANNERS <<<"); ArrayList<Bundle> scannerList = (ArrayList<Bundle>) intent.getSerializableExtra("com.symbol.datawedge.api.RESULT_ENUMERATE_SCANNERS"); if((scannerList != null) && (scannerList.size() > 0)) { for ( Bundle bunb: scannerList) { String ScannerName = bunb.getString("SCANNER_NAME"); int ScannerIndex = bunb.getInt("SCANNER_INDEX")); Boolean ScannerConnectionState = bunb.getBoolean("SCANNER_CONNECTION_STATE"); String ScannerId = bunb.getString("SCANNER_IDENTIFIER"); } } } 関連項目:
Zebra Support Central | インテグレータ ガイド、製品マニュアル、ソフトウェア ダウンロードおよびサポート
LaunchPad | Zebra 開発者コミュニティ
インテント | Android 開発者
インテントおよびインテント フィルタ | Android 開発者
Android インテント | チュートリアル