Согласно Javadoc, android.util.Base64.decode () принимает два параметра: текст и «флаги». Эти флаги имеют формат int и (цитирую):
flags контролируют определенные особенности декодированного вывода. Передайте DEFAULT для декодирования стандартного Base64.
Во-первых, спасибо тому, кто решил написать расплывчатый Javadoc. Я вижу, что у Base64 есть несколько строк перечисления, и на практике мы использовали Base64.NO_WRAP в качестве нашего флага. Однако в этом конкретном случае нам нужно использовать два флага: NO_WRAP и URL_SAFE.
Как указать оба флага? Мы пробовали разделить их вертикальной чертой ('|'), но у нас ничего не получилось.
import android.util.Base64;
public class Foo {
public static void main(String[] args) {
String urlSafeBase64EncodedString = getUrlSafeBase64EncodedString();
int flags = ????????; //Need both Base64.NO_WRAP and Base64.URL_SAFE
String decodedString = Base64.decode(urlSafeBase64EncodedString, flags);
}
}
Спасибо за уделенное время.