USB READER PROGRAMMING REFERENCE MANUAL FOR ANDROID PART NUMBER 99875573-1 September 2011 Confidential This document contains the proprietary information of MagTek. Its receipt or possession does not convey any rights to reproduce or disclose its contents or to manufacture, use or sell anything it may describe. Reproduction, disclosure or use without specific written authorization of MagTek is strictly forbidden.
Copyright© 2001-2011 MagTek®, Inc. Printed in the United States of America Information in this document is subject to change without notice. No part of this document may be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose, without the express written permission of MagTek, Inc. MagTek is a registered trademark of MagTek, Inc. REVISIONS Rev Number 1.
SOFTWARE LICENSE AGREEMENT IMPORTANT: YOU SHOULD CAREFULLY READ ALL THE TERMS, CONDITIONS AND RESTRICTIONS OF THIS LICENSE AGREEMENT BEFORE INSTALLING THE SOFTWARE PACKAGE. YOUR INSTALLATION OF THE SOFTWARE PACKAGE PRESUMES YOUR ACCEPTANCE OF THE TERMS, CONDITIONS, AND RESTRICTIONS CONTAINED IN THIS AGREEMENT. IF YOU DO NOT AGREE WITH THESE TERMS, CONDITIONS, AND RESTRICTIONS, PROMPTLY RETURN THE SOFTWARE PACKAGE AND ASSOCIATED DOCUMENTATION TO THE ABOVE ADDRESS, ATTENTION: CUSTOMER SUPPORT.
Table of Contents Section 1. libDynamag Class ............................................................................................. 1 Methods........................................................................................................................... 2 openDevice: ................................................................................................................ 2 closeDevice: ................................................................................................
SECTION 1. libDynamag CLASS Classes libDynamag Description This class allows you to perform reader functions.
Methods openDevice: This function open the reader. - public void openDevice() Parameters None Return Value None closeDevice: This function close the reader. - public void closeDevice(){ Parameters None Return Value None isDeviceConnected This function retrieves the connection status of the reader. - public bool isDeviceConnected() Parameters None Return Value TRUE if the device is connected. Otherwise, return FALSE.
sendCommand This function send command to reader. - public byte[] sendCommand(CharSequence cmd) Parameters Cmd A string command sent to reader. For example, command “0003” (Where “00” is command number, “03” is property ID) will retrieve device serial number from reader. Return Value A response returned from reader. For more details on other commands, please refer to COMMANDS section in “MagneSafe Communication reference manual”.
getMaskedTracks Get stored masked tracks data. - public string getMaskedTracks() Parameters Return Value Return stored masked tracks data string. getTrack1Masked Get stored masked track1 data. - public string getTrack1Masked() Parameters Return Value Return stored masked track1 data string. getTrack2Masked Get stored masked track2 data. - public string getTrack2Masked() Parameters Return Value Return stored masked track2 data string. getTrack3Masked Get stored masked track3 data.
getTrack1 Get stored encrypted track1 data. - public string getTrack1() Parameters Return Value Return stored masked track1 data string. getTrack2 Get stored encrypted track2 data. - public string getTrack2() Parameters Return Value Return stored masked track2 data string. getTrack3 Get stored encrypted track3 data. - public string getTrack3() Parameters Return Value Return stored masked track3 data string. getMagnePrint Get stored MagnePrint.
getDeviceSerial Get stored device serial number. - public string getDeviceSerial() Parameters Return Value Return stored device serial number. getSessionID Get stored session ID. - public string getSessionID() Parameters Return Value Return stored session ID. getKSN Get stored key serial number. - public string getKSN() Parameters Return Value Return stored key serial number. sendCommandWithLength This function send command to reader.
SECTION 2. CODE EXAMPLES Open Device: @Override public synchronized void onResume() { super.onResume(); if (! MagTeklibQwickey.isDeviceConnected()) { MagTeklibQwickey.openDevice(); } } Close Device: @Override public void onStop() { super.onStop(); if (MagTeklibQwickey.isDeviceConnected()) { MagTeklibQwickey.
Handler for Processing Messages From Reader: private class MtHandlerCallback implements Callback { public boolean handleMessage(Message msg) { boolean ret = false; switch (msg.what) { case DEVICE_MESSAGE_CARDDATA_CHANGE: mStringCardDataBuffer = (String)msg.obj; // Process card data ret = true; break; case DEVICE_STATUS_CONNECTED: if (((Number)msg.obj).intValue() == DEVICE_STATUS_CONNECTED_SUCCESS) { // Reader connected successfully } else if (((Number)msg.obj).