Ответ 1
Нет, разница в том, что с настройками по умолчанию Android Base64 включает терминаторы строк. Чтобы получить тот же результат, что и при кодировании Apache, используйте Base64.NO_WRAP.
Пример A (с использованием org.apache.commons.codec.binary.Base64):
Base64.encodeBase64("foobar".getBytes());
Пример B (с использованием android.util.Base64):
Base64.encode("foobar".getBytes(), Base64.DEFAULT);
Они производят одну и ту же строку?
Нет, разница в том, что с настройками по умолчанию Android Base64 включает терминаторы строк. Чтобы получить тот же результат, что и при кодировании Apache, используйте Base64.NO_WRAP.