Android Base64

使用Base64加密时,系统提供的API有两种:Java.util.base64和android.util.base64
java.util.base64提供的方法只支持versionCode >= 26 无法完全适用所有版本:
kotlin写法:

var encodedBackUrl = "https://www.baidu.com"
 if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
        encodedBackUrl = java.util.Base64.getEncoder().encodeToString(encodedBackUrl.toByteArray(Charsets.UTF_8))
}

android.util.base64 适用所有版本:

encodedBackUrl = Base64.encodeToString(encodedBackUrl.toByteArray(Charsets.UTF_8),Base64.NO_WRAP)

注意上面的flag并没有用Base64.DEFAULT,默认情况下字符串过长(一般超过76)时会自动在中间加一个换行符'\n'
为了避免编码后的string出现换行符,选用Base64.NO_WRAP

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容