package Ġcom . hal cy on mobile . multi plat for mp lay ground . shared . util Ċ Ċ import Ġandroid . content . Content Resolver Ċ import Ġandroid . net . Uri Ċ Ċ actual Ġtype alias ĠImage File Ġ= ĠImage Uri Ċ Ċ actual Ġfun ĠImage File . toByteArray () Ġ= Ġcontent Resolver . open InputStream ( uri )?. use Ġ{ ĊĠĠĠ Ġit . read Bytes () Ċ } Ġ?: Ġthrow ĠIllegalStateException (" Couldn 't Ġopen ĠinputStream Ġ$ uri ") Ċ Ċ class ĠImage Uri ( val Ġuri : ĠUri , Ġval Ġcontent Resolver : ĠContent Resolver ) Ċ Ċ fun ĠUri . to Image File ( content Resolver : ĠContent Resolver ): ĠImage File Ġ{ ĊĠĠĠ Ġreturn ĠImage File ( this , Ġcontent Resolver ) Ċ }