public static byte[] decode(String s, int flags) { boolean websafeDesired = true; if (getSdkVersion() >= 8) { int newFlags = URL_SAFE; if ((flags & NO_PADDING) != 0) { newFlags = URL_SAFE | NO_PADDING; } if ((flags & URL_SAFE) != 0) { newFlags |= 8; } return Base64.decode(s, newFlags); } boolean paddingDesired; if ((flags & NO_PADDING) == 0) { paddingDesired = true; } else { paddingDesired = false; } if ((flags & URL_SAFE) == 0) { websafeDesired = false; } if (websafeDesired) { return Base64.decodeWebSafe(s); } return Base64.decode(s); }