How to Use Q1 Buttons in Applications

From wizarPOS

Keyboard description

Key Value Description
Period KeyEvent.KEYCODE_PERIOD The black dot button on the right-bottom of keyboard.
QRCode 232 The orange button on the middle-bottom of keyboard
Back KeyEvent.KEYCODE_ESCAPE The red X button on the left-bottom of keyboard
Scann 229 The orange button on the left of the LED
Delete KeyEvent.KEYCODE_DEL The yellow triangle button on the right-top of keyboard
Enter KeyEvent.KEYCODE_ENTER The green circle button on the right-bottom of keyboard

The others are digital buttons which are defined in the Android system. See android.view.KeyEvent.

Scan button and QR Code button

The scan button and QR code button can quickly launch the scan application. If you press one of the buttons, the system will search for all the applications installed in the system and will launch the application with the scan intent-filter. If there are many applications, the system will provide a list for users to choose, and the selected application will start. The code for the scan intent-filter is as follows:

   <action android:name="android.intent.action.SCAN" />
   <category android:name="android.intent.category.DEFAULT" />

When there is no application in the system to define the scan intent-filter, pressing the scan button or QR code button will not work.

Sample

There are two ways to use the Scanner Key and the QRCode Key:

  • To start scanner application quickly. The application must define the intent-filter of scanner in its’ android manifest file, the category and the action definition are as below:
   <activity
   android:name="com.XX.activity.MainActivity"
   android:label="@string/app_name" >
    <intent-filter>
      <action android:name="android.intent.action.SCAN" />
      <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
   </activity>
  • Use like the other keys, when press the key , the activated and top task will get the key value and do as its logic source code. Firstly the application must override the function of onKeydown, as follows:
 /** Key code constant: left scan key. */
 public static final int KEYCODE_SCAN_LEFT        	= 229;

 /** Key code constant: right scan key. */
 public static final int KEYCODE_SCAN_RIGHT        = 230;

 /** Key code constant: qr key. */
 public static final int KEYCODE_QR        		= 232;

 public boolean onKeyDown(int keyCode, KeyEvent event) { 
  // listen the key code
  if (keyCode == KEYCODE_SCAN_LEFT|| keyCode ==KEYCODE_SCAN_RIGHT|| keyCode ==KEYCODE_QR) {
  //do something, for example:scanner……
    return true;
  }
  return super.onKeyDown(keyCode, event);
}