Я скопировал / создал код ниже согласно документам CameraKit. но когда я нажимаю кнопку, ничего не происходит!
Я использую v1.0.0 beta 3.11 версию. Раздел документации содержит только базовую информацию, а не подробный пример с настройками, если только я не читаю не ту страницу.
package com.example.eg
import android.support.v7.app.AppCompatActivity
import com.example.eg.R
import android.os.Bundle
import android.util.Log
import com.camerakit.CameraKitView
import java.io.FileOutputStream
import android.widget.Toast
import com.camerakit.CameraKit
import kotlinx.android.synthetic.main.activity_camera.*
class Camera_Activity : AppCompatActivity() {
private lateinit var cameraKitView: CameraKitView
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_camera)
cameraKitView = findViewById<CameraKitView>(R.id.camera)
cameraKitView.requestPermissions(this) // I have permission="camera" in xml
val filePath = intent.getStringExtra("path")
cameraSettings()
cameraKitView.errorListener = CameraKitView.ErrorListener { cameraKitView, e ->
Toast.makeText(this,"Camera error!",Toast.LENGTH_SHORT).show()
}
button.setOnClickListener {
cameraKitView.captureImage(object:CameraKitView.ImageCallback {
override fun onImage(p0: CameraKitView?, p1: ByteArray?) {
// Code never reaches here
if (LOG_ENABLED) Log.e("Picture taken?: ","YES--------")
val outputStream = FileOutputStream(filePath)
outputStream.write(p1)
outputStream.close()
finish()
}
})
}
}
override fun onStart() {
super.onStart()
cameraKitView.onStart()
}
override fun onResume() {
super.onResume()
cameraKitView.onResume()
}
override fun onPause() {
cameraKitView.onPause()
super.onPause()
}
override fun onStop() {
cameraKitView.onStop()
super.onStop()
}
override fun onRequestPermissionsResult(requestCode: Int, permissions: Array<String>, grantResults: IntArray) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults)
cameraKitView.onRequestPermissionsResult(requestCode, permissions, grantResults)
}
private fun cameraSettings(){
//OPTIONS BELOW: back, FACING_BACK front, FACING_FRONT
cameraKitView.setFacing(CameraKit.FACING_BACK)
//cameraKitView.toggleFacing()
cameraKitView.imageMegaPixels = 1f //1 megapixel
//OPTIONS BELOW: off, FLASH_OFF on, FLASH_ON
//cameraKitView.setFlash(CameraKit.FLASH_OFF)
//OPTIONS BELOW: auto, FOCUS_AUTO continuous, FOCUS_CONTINUOUS off, FOCUS_OFF
cameraKitView.setFocus(CameraKit.FOCUS_AUTO)
//OPTIONS BELOW: camera all audio location storage none
//cameraKitView.setPermissions()
}
}
Мой файл манифеста имеет разрешения на запись в камеру и на внешнее хранилище, и я знаю, что разрешение на внешнее хранилище работает из-за того, что другие действия могут сделать это без проблем.
В то время как я нахожусь в этом, я хотел бы запросить источник информации, где этот api camerakit подробно объяснен, так, чтобы не только эксперты могли понять это, но и люди младшего уровня могли также исследовать это.