PocActivity.kt 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. package com.sybotan.android.demo.activities
  2. import android.Manifest
  3. import android.os.Bundle
  4. import androidx.appcompat.app.AppCompatActivity
  5. import androidx.constraintlayout.widget.ConstraintLayout
  6. import androidx.core.app.ActivityCompat
  7. import com.framework.mvvm.model.vo.FrameRequest
  8. import com.framework.mvvm.mv.FrameViewModel
  9. import com.sybotan.android.demo.R
  10. import com.sybotan.android.demo.activities.poc.SceneActivity
  11. import com.sybotan.android.demo.activities.poc.SpaceActivity
  12. import org.jetbrains.anko.startActivity
  13. import org.kodein.di.DI
  14. import org.kodein.di.DIAware
  15. import org.kodein.di.android.closestDI
  16. import org.kodein.di.android.x.viewmodel.viewModel
  17. class PocActivity : AppCompatActivity(), DIAware {
  18. override val di: DI by closestDI()
  19. private val mVm: FrameViewModel by viewModel()
  20. private val tag = "PocActivity"
  21. private val REQUEST_EXTERNAL_STORAGE = 1 // 不可改
  22. override fun onCreate(savedInstanceState: Bundle?) {
  23. super.onCreate(savedInstanceState)
  24. setContentView(R.layout.activity_poc)
  25. checkStoragePermission()
  26. val spaceCL = findViewById<ConstraintLayout>(R.id.spaceCL)
  27. spaceCL.setOnClickListener {
  28. startActivity<SpaceActivity>()
  29. }
  30. val sceneCL = findViewById<ConstraintLayout>(R.id.sceneCL)
  31. sceneCL.setOnClickListener {
  32. startActivity<SceneActivity>()
  33. }
  34. mVm.projects.observe(this) { data ->
  35. // TODO use data todo sth
  36. }
  37. mVm.requestFrame(
  38. FrameRequest(
  39. userId = "bdtp",
  40. projectId = "Pj0002220002",
  41. groupCode = "BR"
  42. )
  43. )
  44. }
  45. private fun checkStoragePermission() {
  46. ActivityCompat.requestPermissions(
  47. this, arrayOf(
  48. Manifest.permission.READ_EXTERNAL_STORAGE,
  49. Manifest.permission.WRITE_EXTERNAL_STORAGE
  50. ),
  51. REQUEST_EXTERNAL_STORAGE
  52. )
  53. }
  54. }