AndroidX 加密库在加密后无法保存文件的解决方法如下:
val context: Context = ...
val file: File = ...
val encryptedFile = EncryptedFile.Builder(
context,
file,
masterKeyAlias,
EncryptedFile.FileEncryptionScheme.AES256_GCM_HKDF_4KB
).build()
val outputStream = encryptedFile.openFileOutput()
outputStream.use { outputStream ->
// 写入加密后的数据到 outputStream
outputStream.write(encryptedData)
}
上述代码中,masterKeyAlias
是一个密钥别名,用于加密和解密文件。encryptedData
是需要加密的数据。
val file: File = ...
val cipher: Cipher = ...
val outputStream = CipherOutputStream(FileOutputStream(file), cipher)
outputStream.use { outputStream ->
// 写入加密后的数据到 outputStream
outputStream.write(encryptedData)
}
上述代码中,cipher
是一个已初始化的加密算法,用于加密数据。encryptedData
是需要加密的数据。
需要注意的是,这种方法需要自己处理加密和解密操作,并且需要安全地保存密钥。
上一篇:android修改数据库数据
下一篇:AndroidX库的迁移