Мне нужна помощь в попытке преобразовать изображение imageView для отправки в OutPutFile, но перед отправкой его необходимо прочитать.
Этот код использует статическое изображение. Вместо этого я хочу использовать imageView как картинку, которую я отправляю.
val imageFileName: String = globals.sampN.toString() + "-" + globals.dayNo.toString() + "-" + globals.pictureCount.toString() + ".jpg"
val storageDir: File = getExternalFilesDir(Environment.DIRECTORY_PICTURES)
if(!storageDir.exists()) storageDir.mkdirs()
val imageFile = File(storageDir, imageFileName)
val myOutput:OutputStream = FileOutputStream(imageFile)
val buffer = ByteArray(1024)
val myInput = getAssets().open("NoPhoto.jpg") // <- This is the place where it needs
var length: Int = myInput.read(buffer) // to be replaced with imageView
while (length > 0) {
myOutput.write(buffer, 0, length)
length = myInput.read(buffer)
}
myInput.close()
myOutput.flush()
myOutput.close()
mailBitmap = setScaledBitmap(imageFile.absolutePath)
println("mailBitmap " + mailBitmap.toString())
пока что я получил растровое изображение для работы с этой строкой кода, но я все еще застрял в той части, где он отправляет файл изображения куда-то значимому
val imageFileName: String = globals.sampN.toString() + "-" + globals.dayNo.toString() + "-" + globals.pictureCount.toString() + ".jpg"
val storageDir: File = getExternalFilesDir(Environment.DIRECTORY_PICTURES)
if(!storageDir.exists()) storageDir.mkdirs()
photoImageView.buildDrawingCache()
val imageFile = File(storageDir, imageFileName)
val myOutput:OutputStream = FileOutputStream(imageFile)
/* val buffer = ByteArray(1024)
val myInput = photoImageView.getDrawable() as Bitmap
var length: Int = myInput.read(buffer)
while (length > 0) {
myOutput.write(buffer, 0, length)
length = myInput.read(buffer)
}
myInput.close()
myOutput.flush()
myOutput.close()*/
mailBitmap = photoImageView.getDrawingCache()
println("mailBitmap " + mailBitmap.toString())