Android Dev Study
HeifWriter 테스트
Daejeong Kim
2019. 2. 20. 01:29
build.gradle에 추가
implementation 'com.android.support:heifwriter:28.0.0'
AndroidManifest.xml에 추가
<uses-sdk tools:overrideLibrary="android.support.heifwriter" />
돌아는가는데 제대로 구현한 건지 모르겠음. HeifWriter는 샘플을 찾을래도 찾을 수가 없다.
/**
* implementation 'com.android.support:heifwriter:28.0.0'
* in AndroidManifest.xml
* <uses-sdk tools:overrideLibrary="android.support.heifwriter" />
*/
@TargetApi(VERSION_CODES.P)
object HeifHelper {
@WorkerThread
fun saveToHeif(bitmap: Bitmap, path: String, quality: Int, timeoutMs: Long = 10000): Boolean {
return try {
val writer = HeifWriter
.Builder(path, bitmap.width, bitmap.height, HeifWriter.INPUT_MODE_BITMAP)
.setQuality(quality)
.build()
writer.start()
writer.addBitmap(bitmap)
writer.stop(timeoutMs)
writer.close()
true
} catch (ex: Exception) {
DebugUtils.notReached(ex, "HeifHelper")
false
}
}
@WorkerThread
fun decodeBitmap(file: File): Bitmap? {
return try {
ImageDecoder.decodeBitmap(ImageDecoder.createSource(file))
} catch (ex: IOException) {
null
}
}
}