Android開発
SQLiteで画像を保存するコード(kotlin)を教えていただきたいです。 日付とコメントとギャラリーから取得した画像を保存するアプリを作成してます。 ギャラリーから取得し表示は出来たのですが、画像の保存だけうまくできませんでした。 下記は現在できているコードです。文字数が多かったので少し省略してます。 override fun onCreate(savedInstanceState: Bundle?) { ︙ //ギャラリーに遷移し画像を取得 selectButton.setOnClickListener { ︙ } selectPicture.launch(intent) } } //選択した画像をImageViewに表示、失敗した場合はエラー表示 private val selectPicture = registerForActivityResult(ActivityResultContracts.StartActivityForResult()){ if (it.resultCode == Activity.RESULT_OK){ val imageView: ImageView = findViewById(R.id.imageView2) imageView.setImageURI(it.data?.data) }else{ Toast.makeText(this, "エラーが発生しました", Toast.LENGTH_LONG).show() } } //日付とコメントと画像を保存 fun onSaveButtonClick(view: View){ val textDate = findViewById<TextView>(R.id.date) val text_date = textDate.text.toString() val textComment = findViewById<EditText>(R.id.Comment) val text_comment = textComment.text.toString() val db = _helper.writableDatabase val byteArrayOutputStream = ByteArrayOutputStream(); bitmap.compress(Bitmap.CompressFormat.PNG,100,byteArrayOutputStream) val bytes = byteArrayOutputStream.toByteArray() //選択されたデータを削除 val sqlDelete = "DELETE FROM sample WHERE date = ?" var stmt = db.compileStatement(sqlDelete) stmt.executeUpdateDelete() val sqlInsert = "INSERT INTO sample (date,comment,image) VALUES (?,?,?)" stmt = db.compileStatement(sqlInsert) stmt.bindString(1, text_date) stmt.bindString(2,text_comment) stmt.bindBlob(3,bytes) stmt.executeInsert() } } 参考にしたサイト https://qiita.com/NaoSekig/items/0d95d631378040c1961a https://qiita.com/date62noka3/items/42f971fb0ee1be2970e8