Beispiel #1
0
        @Override
        public void onClick(View v) {
          // TODO 自动生成的方法存根

          String string = "";
          int len = 0;
          string = pass.getText().toString();
          if (string.length() < 0) {
            Toast.makeText(Register.this, "注册码不能为空!", Toast.LENGTH_SHORT).show();

          } else {
            try {
              len = SYS.crc_r(androidID.getBytes(bm), androidID.getBytes(bm).length);
              len = len % 99;
            } catch (UnsupportedEncodingException e) {
              // TODO 自动生成的 catch 块
              e.printStackTrace();
            }

            String s = String.format("%02d", len);
            String pasString =
                androidID.substring(1, 2)
                    + s
                    + androidID.substring(9, 10)
                    + androidID.substring(5, 6)
                    + androidID.substring(6, 7);
            System.out.println("密码:" + pasString);
            if (pasString.equals(string)) {

              SQLiteDatabase dw =
                  LoginOpenHelper.getInstance(mContext, log.DB_NAME).getWritableDatabase();
              ContentValues values = new ContentValues();
              values.put("mm", string);
              String where = "zcm = ? ";
              String[] whereValue = {androidID};
              dw.update("ZC", values, where, whereValue);
              log.isRes = true;
              Register.this.finish();
              Intent intent = new Intent();
              intent.setClass(Register.this, YGDL.class);
              startActivity(intent);
            } else {
              Toast.makeText(Register.this, "注册码错误", Toast.LENGTH_SHORT).show();
            }
          }
        }
Beispiel #2
0
        public void handleMessage(Message msg) {

          super.handleMessage(msg);
          switch (msg.what) {
            case 54:
              byte[] writeBuf = (byte[]) msg.obj;
              String writeMessage = new String(writeBuf);
              System.out.println(writeMessage);
              break;
            case 17: // 获取接收到的数据
              String name = msg.getData().getString("REC");
              String num = "";
              int len = 0;
              String sqlString =
                  new String().format("talk%s%s%s%s,", "□", androidID, "□条码,", barString);
              String sql =
                  new String().format("talk%s%s%s%s,%s", "□", androidID, "□", barString, "无-");
              String[] string = null;
              String[] buf = null;
              if (isSearchinf) {
                isSearchinf = false;
                if (SYS.indexofString(name, sqlString)) {
                  buf = SYS.splitString(name.trim(), "■");
                  try {
                    len = SYS.crc_r(buf[0].getBytes(bm), buf[0].getBytes(bm).length);
                    len = len % 99;
                    if (len == Integer.parseInt(buf[1].trim())) {
                      string = SYS.splitString(buf[0], ",");

                      b1.setText(string[2]);
                      b2.setText(string[4]);
                      b3.setText(string[6]);
                      b4.setText(string[8]);
                      b5.setText(string[10]);
                      b6.setText(string[12]);
                      b7.setText(string[14]);
                      b8.setText(string[16]);
                      b9.setText(string[18]);
                      b10.setText(string[20]);
                      inf1.setText(string[3]);
                      inf2.setText(string[5]);
                      inf3.setText(string[7]);
                      inf4.setText(string[9]);
                      inf5.setText(string[11]);
                      inf6.setText(string[13]);
                      inf7.setText(string[15]);
                      inf8.setText(string[17]);
                      inf9.setText(string[19]);
                      inf10.setText(string[21]);

                      isSearchOK = true;
                    } else {
                      isSearchOK = false;
                    }
                  } catch (UnsupportedEncodingException e) {
                    // TODO 自动生成的 catch 块
                    e.printStackTrace();
                    isSearchOK = false;
                  }
                } else if (SYS.indexofString(name, sql)) {
                  isSearchOK = false;
                  SearchINF(barcode.getText().toString());
                  isSearchOK = false;
                } else {
                  isSearchOK = false;
                }
              } else {
                isSent = false;
                if (Running >= 20) num = "01";
                else num = String.format("%02d", Running + 1);
                String bufx = "talk" + "□" + androidID + "□" + num + "□";
                try {
                  len = SYS.crc_r(bufx.getBytes(bm), bufx.getBytes(bm).length);
                  len = len % 99;
                  bufx = bufx + "■" + String.format("%02d", len) + "■";
                  if (bufx.equals(name)) {
                    SQLiteDatabase dbe =
                        LoginOpenHelper.getInstance(mContext, log.DB_NAME).getWritableDatabase();
                    ContentValues values = new ContentValues();
                    values.put("ISsent", "0"); // 这个表示的是已传
                    dbe.update("SENT", values, "BAR=? and BH=?", new String[] {SentData, BH});
                    Log.e("条码:", SentData);
                    SentData = "";
                    BH = "";
                    if (Running >= 20) Running = 1;
                    else Running++;
                    if (MainActivity.sentpovit < MainActivity.sentall) MainActivity.sentpovit++;
                    yc.setText("已传:" + MainActivity.sentpovit + "");
                    wc.setText("未传:" + (MainActivity.sentall - MainActivity.sentpovit) + "");
                  } else {
                    if (Running > 20) Running++;
                  }
                } catch (UnsupportedEncodingException e) {
                  // TODO 自动生成的 catch 块
                  e.printStackTrace();
                  if (Running > 20) Running++;
                }
              }

              break;
            case 1: // 这个是蓝牙状态的,用蓝牙名称来区分是蓝牙枪还是打印机
              String btname = msg.getData().getString(MainActivity.DEVICE_NAME);
              switch (msg.arg1) {
                case BluetoothChatService.STATE_CONNECTED:
                  if (SYS.indexofString(btname, BTNAME) || SYS.indexofString(btname, "HC")) {
                    btzt.setText(R.string.title_connected_to);
                    RKScan.Isbt = true;
                  } else {
                    RKScan.isPrint = true;
                    printTextView.setText(R.string.printer_connected_to);
                  }
                  break;
                case BluetoothChatService.STATE_CONNECTING:
                  if (SYS.indexofString(btname, BTNAME) || SYS.indexofString(btname, "HC"))
                    btzt.setText(R.string.title_connecting);
                  else {
                    printTextView.setText(R.string.printer_connecting);
                  }
                  break;
                case BluetoothChatService.STATE_LISTEN:
                  if (SYS.indexofString(btname, BTNAME) || SYS.indexofString(btname, "HC")) {
                    RKScan.Isbt = false;
                    btzt.setText(R.string.title_not_connected);
                  } else {
                    RKScan.isPrint = false;
                    printTextView.setText(R.string.printer_not_connected);
                    // printerTextView.setText(R.string.printer_connecting);
                  }
                  break;
                case BluetoothChatService.STATE_NONE:
                  if (SYS.indexofString(btname, BTNAME) || SYS.indexofString(btname, "HC")) {
                    btzt.setText(R.string.title_not_connected);
                    RKScan.Isbt = false;
                  } else {
                    RKScan.isPrint = false;
                    printTextView.setText(R.string.printer_not_connected);
                  }
                  break;
              }
              break;
            case 4:
              // 保存该连接装置的名字
              String name1 = msg.getData().getString(MainActivity.DEVICE_NAME);
              System.out.println("蓝牙名称是:" + name1);
              if (SYS.indexofString(name1, BTNAME) || SYS.indexofString(name1, "HC")) {
                btzt.setText(R.string.title_connected_to);
                RKScan.Isbt = true;
              } else {
                RKScan.isPrint = true;
                printTextView.setText(R.string.printer_connected_to);
              }
              break;
            case 16:
              switch (msg.arg1) {
                case 0:
                  ConnectButton.setText(R.string.Noconnected);
                  // vibrator.vibrate(800);
                  isconnect = false; // 网络连接失败
                  break;
                case 1:
                  ConnectButton.setText(R.string.Noconnected);
                  // vibrator.vibrate(800);
                  isconnect = false;
                  break;
                case 2:
                  ConnectButton.setText(R.string.connectting);
                  break;
                case 3:
                  ConnectButton.setText(R.string.SKconnected);
                  isconnect = true;
                  break;
                case 7:
                  ConnectButton.setText(R.string.Noconnected);
                  isconnect = false;
                  break;
                case 6:
                  if (isSearchinf) {
                    isSearchinf = false;
                    SearchINF(barcode.getText().toString());
                  }
                  if (isSent) {
                    if (Running > 21) Running++;
                  }
                  break;
                default:
                  break;
              }
              break;
            case 13:
              byte[] readBuf = (byte[]) msg.obj;
              try {
                String s = new String(readBuf, 0, msg.arg1, bm);
                recvMessageserver += s;
                if (recvMessageserver
                    .substring(recvMessageserver.length() - 1, recvMessageserver.length())
                    .equals("\n")) {
                  recvMessageClient = recvMessageserver;
                  String bar = "";
                  String bufString = "";
                  bar = SYS.BTistrue(recvMessageserver);
                  recvMessageserver = "";
                  if (bar.length() > 0) {
                    btSent = true;
                    MainActivity.playScanOK(mContext);
                    recvMessageClient = "";
                    barcode.setText(bar);
                    barString = bar;
                    inf1.setText("");
                    inf2.setText("");
                    inf3.setText("");
                    inf4.setText("");
                    inf5.setText("");
                    inf6.setText("");
                    inf7.setText("");
                    inf8.setText("");
                    inf9.setText("");
                    inf10.setText("");
                    bufString =
                        "QUERY□"
                            + barcode.getText().toString()
                            + "□"
                            + "DH001"
                            + "□"
                            + "UD"
                            + "□"
                            + "CK001";
                    /*发送查询指令*/
                    if (isconnect) {
                      isSearchinf = true;
                      mysocket.writeData(SYS.SenData(bufString, fwq, androidID));
                    } else {
                      SearchINF(barcode.getText().toString());
                    }
                  } else {
                    String btpowerString = SYS.BTisPOWER(recvMessageClient);
                    if (btpowerString.length() > 0) {
                      MainActivity.BTPOWER = btpowerString;
                      BTpower.setText(R.string.power);
                      BTpower.append(MainActivity.BTPOWER + "");
                      BTpower.append("%");
                    } else {
                      /*dis.setText("");
                      			sView.scrollTo(0,dis.getMeasuredHeight());
                      SYS.disPlay(sView, dis,R.string.SB+"\n");*/
                      return;
                    }
                  }
                  BTpower.setText(R.string.power);
                  BTpower.append(MainActivity.BTPOWER + "");
                  BTpower.append("%");
                }
              } catch (UnsupportedEncodingException e) {
                // TODO 自动生成的 catch 块
                e.printStackTrace();
              }
              break;
            case 38:
              Log.i("基本资料进来", Running + "");
              SentData = "";
              BH = "";
              // LoginOpenHelper tb=new  LoginOpenHelper(JBZL.this,"AndroidPosJxc.db", null, 1);
              SQLiteDatabase db =
                  LoginOpenHelper.getInstance(mContext, log.DB_NAME).getReadableDatabase();
              Cursor cursor = null;
              try {
                cursor =
                    db.query(
                        "SENT",
                        new String[] {"BAR", "ISsent", "BH"},
                        "ISsent= ?",
                        new String[] {"1"},
                        null,
                        null,
                        null);
                if (cursor != null) {
                  if (cursor.getCount() != 0 && cursor.moveToFirst()) {
                    SentData = cursor.getString(cursor.getColumnIndex("BAR"));
                    BH = cursor.getString(cursor.getColumnIndex("BH"));
                    if (MainActivity.sentall > MainActivity.sentpovit && isconnect && !isSent) {
                      Log.i("发送的数据:", SentData + ":" + BH);
                      mysocket.writeData(SYS.SenData(SentData, fwq, androidID, Running));
                      isSent = true;
                    } else {
                      return;
                    }
                  }
                } else {
                  Log.i("没有啊", "*****");
                }
              } catch (Exception e) {
                Log.i("也没有啊", "*****");
                // return ;
              } finally {
                if (cursor != null) {
                  cursor.close();
                }
              }
              break;
            default:
              break;
          }
        }