Here is a simple example of AES CB encryption in android using key and salt. I am not expert in encryption but I found how to do this pretty hard and I thought that maybe it will help somebody else if not , it will help me latter again :).
// decryption method
public static String decryptString(String cypher, String key, String textToDecrypt, String salt) {
    byte[] rawKey = new byte[32];
    java.util.Arrays.fill(rawKey, (byte) 0);
    byte[] keyOk = hmacSha1(salt, key);
    for (int i = 0; i < keyOk.length; i++) {
      rawKey[i] = keyOk[i];
    }
    SecretKeySpec skeySpec = new SecretKeySpec(hmacSha1(salt, key), "AES");
    try {
      Cipher cipher = Cipher.getInstance(cypher);
      cipher.init(Cipher.DECRYPT_MODE, skeySpec);
      byte[] encryptedData = cipher.doFinal(Base64.decode(textToDecrypt, Base64.NO_CLOSE));
      if (encryptedData == null) return null;
      return new String(encryptedData);
    } catch (Exception e) {
      e.printStackTrace();
    }
    return null;
  }
// encryption method
  public static String encryptString(String cypher, String key, String clearText, String salt) {
    byte[] rawKey = new byte[32];
    java.util.Arrays.fill(rawKey, (byte) 0);
    byte[] keyOk = hmacSha1(salt, key);
    for (int i = 0; i < keyOk.length; i++) {
      rawKey[i] = keyOk[i];
    }
    SecretKeySpec skeySpec = new SecretKeySpec(hmacSha1(salt, key), "AES");
    try {
      Cipher cipher = Cipher.getInstance(cypher);
      cipher.init(Cipher.ENCRYPT_MODE, skeySpec);
      byte[] encryptedData = cipher.doFinal(clearText.getBytes());
      if (encryptedData == null) return null;
      return Base64.encodeToString(encryptedData, Base64.NO_CLOSE);
    } catch (Exception e) {
      e.printStackTrace();
    }
    return null;
  }
// key generator method
  public static byte[] hmacSha1(String salt, String key) {
    SecretKeyFactory factory = null;
    Key keyByte = null;
    try {
      factory = SecretKeyFactory.getInstance("PBKDF2WithHmacSHA1");
      KeySpec keyspec = new PBEKeySpec(key.toCharArray(), salt.getBytes(), 1024, 256);
      keyByte = factory.generateSecret(keyspec);
    } catch (NoSuchAlgorithmException e) {
      e.printStackTrace();
    } catch (InvalidKeySpecException e) {
      e.printStackTrace();
    }
    return keyByte.getEncoded();
  }
How to use it:
String encryptedString = encryptString("AES/ECB/PKCS5padding", "yourkeyhere", password, "yoursalthere");
String decryptedString = decryptString("AES/ECB/PKCS5padding", "yourkeyhere", encryptedString, "yoursalthere")
You can print this out and see that it works. :)
