algunas mejoras que le hice al programa:
Bueno, básicamente son 2 métodos, 1 sirve para crear un saldo tipo String (como lo muestra el post1) y el otro es para convertir el String a un arreglo de bytes (para pasarselo al mfc en la app), sirve para quienes aweonadamente cambiaron el saldo y quisieran volver atrás (onda dejar el saldo original), lo que tube que hacer con un par amigos q no querían que cagaran sus pases
private String[] crearSaldo(int i) {
int resto = 65535 - i;
String hexSaldo = Integer.toHexString(i);
if (hexSaldo.length() < 4) {
hexSaldo = "0" + hexSaldo;
}
String revSaldo1 = hexSaldo.substring(0, 2);
String revSaldo2 = hexSaldo.substring(2, hexSaldo.length());
String hexResto = Integer.toHexString(resto);
String revResto1 = hexResto.substring(0, 2);
String revResto2 = hexResto.substring(2, hexResto.length());
String cod1 = revSaldo2 + revSaldo1 + "0000" + revResto2
+ revResto1 + "FFFF" + revSaldo2 + revSaldo1 + "0000"
+ "21DE21DE";
String cod2 = revSaldo2 + revSaldo1 + "0000" + revResto2
+ revResto1 + "FFFF" + revSaldo2 + revSaldo1 + "0000"
+ "22DD22DD";
return new String[] { cod1, cod2 };
}
private byte[] hexStringToByteArray(String s) {
int len = s.length();
byte[] data = new byte[len / 2];
for (int i = 0; i < len; i += 2) {
data[i / 2] = (byte) ((Character.digit(s.charAt(i), 16) << 4)
+ Character.digit(s.charAt(i+1), 16));
}
return data;
}