我正在尝试设置CameraKitView。我关注了文档,但是我的Activity中的CameraKitView尚未初始化。我尝试以不同的方式初始化CameraKitView,但没有任何运气。
我的XML如下所示:

<com.camerakit.CameraKitView
   android:id="@+id/camerakit"
   android:layout_width="match_parent"
   android:layout_height="400dp"
   android:adjustViewBounds="true"
   android:keepScreenOn="true"
   app:camera_flash="auto"
   app:camera_facing="back"
   app:camera_focus="continuous"
   app:camera_permissions="camera"/>


我的活动如下所示:

class CameraActivity: AppCompatActivity() {

    lateinit var camerakitview: CameraKitView

    override fun onCreate(savedInstanceState: Bundle?, persistentState: PersistableBundle?) {
        super.onCreate(savedInstanceState, persistentState)
        setContentView(R.layout.activity_camera)
        camerakitview = findViewById<CameraKitView>(R.id.camerakit)
    }

    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<out String>, grantResults: IntArray) {
        super.onRequestPermissionsResult(requestCode, permissions, grantResults)
        camerakitview.onRequestPermissionsResult(requestCode, permissions, grantResults)
    }
}


该错误如下所示:


  UninitializedPropertyAccessException:lateinit属性camerakitview尚未初始化


我忽略了什么?

编辑:我在Java类而不是Kotlin中尝试了相同的代码。这样相机就可以工作。

最佳答案

问题是我使用了该方法:

override fun onCreate(savedInstanceState: Bundle?, persistentState: PersistableBundle?)


代替:

override fun onCreate(savedInstanceState: Bundle?)

08-17 22:12