Android Open Source - RFID_ME_GUI_APP F R A G_ Config






From Project

Back to project page RFID_ME_GUI_APP.

License

The source code is released under:

%PDF-1.4 %???? 39 0 obj <</Length 2480 /Subtype /XML /Type /Metadata >> stream <?xpacket begin='?' id='W5M0MpCehiHzreSzNTczkc9d'?> <x:xmpmeta x:xmptk="3.1-701" xmlns:x="adobe:ns:meta/"> <rdf:RDF x...

If you think the Android project RFID_ME_GUI_APP listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.mti.rfid.minime;
//  w w  w .java 2 s .  c om
import android.os.Bundle;
import android.preference.CheckBoxPreference;
import android.preference.EditTextPreference;
import android.preference.ListPreference;
import android.preference.Preference;
import android.preference.Preference.OnPreferenceChangeListener;
import android.preference.PreferenceFragment;
import android.preference.PreferenceScreen;
import android.util.Log;
import android.widget.TextView;
import android.widget.Toast;

public class FRAG_Config extends PreferenceFragment{
  public PreferenceScreen prefScr;
  
    private UsbCommunication mUsbCommunication = UsbCommunication.getInstance();
  private MtiCmd mMtiCmd;

  private TextView mUsbState;

  public static FRAG_Config newInstance() {
    FRAG_Config f = new FRAG_Config();
    return f;
  }
  
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
        addPreferencesFromResource(R.xml.frag_config);
        
        prefScr = getPreferenceScreen();

    initListPreference("cfg_region");
    initListPreference("cfg_tag_mode");
    initEditTextPreference("cfg_pwr_level");
    initEditTextPreference("cfg_sen");
    initListPreference("cfg_link_freq");
    initListPreference("cfg_session");
    initListPreference("cfg_coding");
    initEditTextPreference("cfg_q_begin");
    initEditTextPreference("cfg_tid_length");
    initEditTextPreference("cfg_user_length");
    initCheckBoxPreference("cfg_sleep_mode");
    initEditTextPreference("cfg_inventory_times");
    initEditTextPreference("cfg_web_url");
    
    if(savedInstanceState == null) {
          if(getUsbState()){
        getReaderRegion();
        getTagMode();
        getPowerLevel();
        get18c6Config();
        setPowerState();
      } else {
        Toast.makeText(getActivity(), "The Reader is not connected", Toast.LENGTH_SHORT).show();
      }
    }
  }

  
  private void initListPreference(final String strPrefName) {
        ListPreference lPref = (ListPreference) prefScr.findPreference(strPrefName);
        lPref.setSummary(lPref.getValue());
        
    lPref.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
      @Override
      public boolean onPreferenceChange(Preference preference, Object newValue) {
        ListPreference lPref = (ListPreference) preference;
        String strPref = newValue.toString();
          
        lPref.setValue(strPref);
        lPref.setSummary(strPref);
        
        if(strPrefName.equals("cfg_region"))
          setReaderRegion();
        else if(strPrefName.equals("cfg_tag_mode"))
          setTagMode();
        else if(strPrefName.equals("cfg_link_freq") || strPrefName.equals("cfg_session") || strPrefName.equals("cfg_coding"))
          set18c6Config();
        setPowerState();
        return false;
      }
    });
  }
  
  
  private void initEditTextPreference(final String strPrefName){
    EditTextPreference etPref = (EditTextPreference) prefScr.findPreference(strPrefName);
        etPref.setSummary(etPref.getText());
    etPref.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
      @Override
      public boolean onPreferenceChange(Preference preference, Object newValue) {
        EditTextPreference etPref = (EditTextPreference) preference;
        String strPref = newValue.toString();
        
        etPref.setText(strPref);
        etPref.setSummary(strPref);
        
        if(strPrefName.equals("cfg_pwr_level"))
          setPowerLevel();
        else if(strPrefName.equals("cfg_sen") || strPrefName.equals("cfg_q_begin"))
          set18c6Config();
        else if(strPrefName.equals("cfg_inventory_times")) {
//          setInventoryTimes();
        }
        setPowerState();
        return false;
      }
    });
  }


  private void initCheckBoxPreference(final String strPrefName) {
        CheckBoxPreference cbPref = (CheckBoxPreference) prefScr.findPreference(strPrefName);
        
    cbPref.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
      @Override
      public boolean onPreferenceChange(Preference preference, Object newValue) {
        if(strPrefName.equals("cfg_sleep_mode")) {
          if(getUsbState()){
            mMtiCmd = new CMD_PwrMgt.RFID_PowerEnterPowerState(mUsbCommunication);
            CMD_PwrMgt.RFID_PowerEnterPowerState finalCmd = (CMD_PwrMgt.RFID_PowerEnterPowerState) mMtiCmd;
            if((Boolean)newValue)
              finalCmd.setCmd(CMD_PwrMgt.PowerState.Sleep);
            else
              finalCmd.setCmd(CMD_PwrMgt.PowerState.Standby);
              }
        }
        return true;
      }
    });
  }
  
  
  private void setReaderRegion() {
    mMtiCmd = new CMD_ModConf.RFID_RadioSetRegion(mUsbCommunication);
    CMD_ModConf.RFID_RadioSetRegion finalCmd = (CMD_ModConf.RFID_RadioSetRegion) mMtiCmd;
    
    ListPreference lPref = (ListPreference) prefScr.findPreference("cfg_region");

    if(finalCmd.setCmd((byte)lPref.findIndexOfValue(lPref.getValue()))) {
      lPref.setSummary(lPref.getValue());
    } else {
      getReaderRegion();
      // #### some module not support for this feature ####
//      Toast.makeText(getActivity(), "The region is not support.", Toast.LENGTH_SHORT).show();
    }
  }
  
  private void getReaderRegion() {
    mMtiCmd = new CMD_ModConf.RFID_RadioGetRegion(mUsbCommunication);
    CMD_ModConf.RFID_RadioGetRegion finalCmd = (CMD_ModConf.RFID_RadioGetRegion) mMtiCmd;

    if(finalCmd.setCmd()) {
      ListPreference lPref = (ListPreference) prefScr.findPreference("cfg_region");
        
      lPref.setValueIndex(finalCmd.getRegion());
      lPref.setSummary(lPref.getValue());
    } else {
      // #### process error ####
    }
  }

  private void setTagMode() {
    ListPreference lPref = (ListPreference) prefScr.findPreference("cfg_tag_mode");
    
    mUsbCommunication.setTagMode(lPref.findIndexOfValue(lPref.getValue()));
  }

  private void getTagMode() {
    ListPreference lPref = (ListPreference) prefScr.findPreference("cfg_tag_mode");
    
    lPref.setValueIndex(mUsbCommunication.getTagMode());
    lPref.setSummary(lPref.getValue());
  }

  
  private void setPowerLevel() {
    mMtiCmd = new CMD_AntPortOp.RFID_AntennaPortSetPowerLevel(mUsbCommunication);
    CMD_AntPortOp.RFID_AntennaPortSetPowerLevel finalCmd = (CMD_AntPortOp.RFID_AntennaPortSetPowerLevel) mMtiCmd;
    
    EditTextPreference etPref = (EditTextPreference) prefScr.findPreference("cfg_pwr_level");

    if(finalCmd.setCmd(Byte.parseByte(etPref.getText()))) {
      etPref.setSummary(etPref.getText());
    } else {
      getPowerLevel();
      // #### some module not support for this feature ####
//      Toast.makeText(getActivity(), "The Power is out of range.", Toast.LENGTH_SHORT).show();
    }
  }
  
  private void getPowerLevel() {
    mMtiCmd = new CMD_AntPortOp.RFID_AntennaPortGetPowerLevel(mUsbCommunication);
    CMD_AntPortOp.RFID_AntennaPortGetPowerLevel finalCmd = (CMD_AntPortOp.RFID_AntennaPortGetPowerLevel) mMtiCmd;

    if(finalCmd.setCmd()) {
      EditTextPreference etPref = (EditTextPreference) prefScr.findPreference("cfg_pwr_level");
        
      etPref.setText(String.valueOf(finalCmd.getPowerLevel()));
      etPref.setSummary(etPref.getText());
    } else {
      // #### process error ####
    }
  }
  
  private void set18c6Config() {
    EditTextPreference etPref;
    ListPreference lPref;
    
    mMtiCmd = new CMD_Iso18k6cTagAccess.RFID_18K6CSetQueryParameter(mUsbCommunication);
    CMD_Iso18k6cTagAccess.RFID_18K6CSetQueryParameter finalCmd = (CMD_Iso18k6cTagAccess.RFID_18K6CSetQueryParameter) mMtiCmd;
    
    etPref = (EditTextPreference) prefScr.findPreference("cfg_sen");
    byte bSensitivity = Byte.parseByte(etPref.getText());
    
    lPref = (ListPreference) prefScr.findPreference("cfg_link_freq");
    byte bLinkFreq = 0x0;
    switch(lPref.findIndexOfValue(lPref.getValue())) {
      case 0:
        bLinkFreq = 0x00; break;
      case 1:
        bLinkFreq = 0x06; break;
      case 2:
        bLinkFreq = 0x08; break;
      case 3:
        bLinkFreq = 0x09; break;
      case 4:
        bLinkFreq = 0x0C; break;
      case 5:
        bLinkFreq = 0x0F; break;
    }

    lPref = (ListPreference) prefScr.findPreference("cfg_session");
    byte bSession = (byte)lPref.findIndexOfValue(lPref.getValue());
    
    lPref = (ListPreference) prefScr.findPreference("cfg_coding");
    byte bCoding = (byte)lPref.findIndexOfValue(lPref.getValue());
    
    etPref = (EditTextPreference) prefScr.findPreference("cfg_q_begin");
    byte bQBegin = Byte.parseByte(etPref.getText());

    if(finalCmd.setCmd((byte)0x01, bLinkFreq, (byte)0x01, bCoding,
        (byte)0x01, bSession, (byte)0x00, (byte)0x00,
        (byte)0x01, bQBegin, (byte)0x01, bSensitivity)) {
    } else {
      // #### process error ####
    }
  }
  
  private void get18c6Config() {
    EditTextPreference etPref;
    ListPreference lPref;
    
    mMtiCmd = new CMD_Iso18k6cTagAccess.RFID_18K6CSetQueryParameter(mUsbCommunication);
    CMD_Iso18k6cTagAccess.RFID_18K6CSetQueryParameter finalCmd = (CMD_Iso18k6cTagAccess.RFID_18K6CSetQueryParameter) mMtiCmd;
    
    if(finalCmd.setCmd()) {
      String strTmp;
      
      etPref = (EditTextPreference) prefScr.findPreference("cfg_sen");
      strTmp = String.valueOf(finalCmd.getSensivity());
      etPref.setText(strTmp);
      etPref.setSummary(strTmp);
      
      lPref = (ListPreference) prefScr.findPreference("cfg_link_freq");
      switch(finalCmd.getLinkFrequency()) {
        case 0x00:
          lPref.setValueIndex(0); break;
        case 0x06:
          lPref.setValueIndex(1); break;
        case 0x08:
          lPref.setValueIndex(2); break;
        case 0x09:
          lPref.setValueIndex(3); break;
        case 0x0C:
          lPref.setValueIndex(4); break;
        case 0x0F:
          lPref.setValueIndex(5); break;
      }
      lPref.setSummary(lPref.getValue());

      lPref = (ListPreference) prefScr.findPreference("cfg_session");
      lPref.setValueIndex(finalCmd.getSession());
      lPref.setSummary(lPref.getValue());
            
      lPref = (ListPreference) prefScr.findPreference("cfg_coding");
      lPref.setValueIndex(finalCmd.getCoding());
      lPref.setSummary(lPref.getValue());
            
      etPref = (EditTextPreference) prefScr.findPreference("cfg_q_begin");
      etPref.setText(String.valueOf(finalCmd.getQBegin()));
      etPref.setSummary(etPref.getText());

    } else {
      // #### process error ####
    }
  }
  
  private void setPowerState() {
    if(getUsbState()) {
      mMtiCmd = new CMD_PwrMgt.RFID_PowerEnterPowerState(mUsbCommunication);
      CMD_PwrMgt.RFID_PowerEnterPowerState finalCmd = (CMD_PwrMgt.RFID_PowerEnterPowerState) mMtiCmd;
      CheckBoxPreference cbPref = (CheckBoxPreference) prefScr.findPreference("cfg_sleep_mode");

      if(cbPref.isChecked())
        finalCmd.setCmd(CMD_PwrMgt.PowerState.Sleep);
      else
        finalCmd.setCmd(CMD_PwrMgt.PowerState.Standby);
      
      try {
        Thread.sleep(200);
      } catch (InterruptedException e) {}
        }
  }

  private void setInventoryTimes() {
    EditTextPreference etPref = (EditTextPreference) prefScr.findPreference("cfg_inventory_times");
    if(Integer.parseInt(etPref.getSummary().toString()) > 50) {
      etPref.setText("50");
      etPref.setSummary("50");
    } 
  }
  
  private boolean getUsbState() {
        mUsbState = (TextView) getActivity().findViewById(R.id.tv_usbstate);
        return mUsbState.getText().equals("Connected");
  }
}




Java Source Code List

com.mti.rfid.minime.CMD_AntPortOp.java
com.mti.rfid.minime.CMD_FwAccess.java
com.mti.rfid.minime.CMD_Iso18k6cTagAccess.java
com.mti.rfid.minime.CMD_ModConf.java
com.mti.rfid.minime.CMD_PwrMgt.java
com.mti.rfid.minime.CmdHead.java
com.mti.rfid.minime.FRAG_About.java
com.mti.rfid.minime.FRAG_Config.java
com.mti.rfid.minime.FRAG_Details.java
com.mti.rfid.minime.FRAG_Tag.java
com.mti.rfid.minime.FRAG_Web.java
com.mti.rfid.minime.FrameActivity.java
com.mti.rfid.minime.MsgStatus.java
com.mti.rfid.minime.MtiCmd.java
com.mti.rfid.minime.RfidContainer.java
com.mti.rfid.minime.Soap.java
com.mti.rfid.minime.UsbCommunication.java