/** 校验IC卡密码 每次写卡之前都需要校验密码 */ public void chkPwd(String cardPwd) { byte[] key_buffer = new byte[50]; int rc; CastHelper.AsciiToHex(cardPwd, key_buffer); rc = reader.csc_4442(0, 3, key_buffer); if (rc == 0) { ToastHelper.showShort(mActivity, "密码正确"); } else { ToastHelper.showShort(mActivity, "密码错误"); } }
/** * 将给定字符串写入到IC卡中指定位置 * * @param offset * @param cardData */ public void writeCard(int offset, String cardData, String cardPwd) { if (reader.ic_init(mActivity, 0, 0) == 0) { chkPwd(cardPwd); byte[] data_buffer = new byte[256]; CastHelper.AsciiToHex(cardData, data_buffer); int rc; rc = reader.swr_4442(0, offset, cardData.length() / 2, data_buffer); if (0 == rc) { ToastHelper.showShort(mActivity, "写卡成功"); } else { ToastHelper.showShort(mActivity, "写卡失败"); } } reader.ic_exit(0); }