|
|
@@ -553,14 +553,19 @@ class O2ChatActivity : BaseMVPActivity<O2ChatContract.View, O2ChatContract.Prese
|
|
|
}
|
|
|
}
|
|
|
ll_o2_chat_camera_btn.setOnClickListener {
|
|
|
- val intent = Intent(MediaStore.ACTION_IMAGE_CAPTURE)
|
|
|
- //return-data false 不是直接返回拍照后的照片Bitmap 因为照片太大会传输失败
|
|
|
- intent.putExtra("return-data", false)
|
|
|
- //改用Uri 传递
|
|
|
- intent.putExtra(MediaStore.EXTRA_OUTPUT, cameraImageUri)
|
|
|
- intent.putExtra("outputFormat", Bitmap.CompressFormat.JPEG.toString())
|
|
|
- intent.putExtra("noFaceDetection", true)
|
|
|
- startActivityForResult(intent, camera_result_code)
|
|
|
+ PermissionRequester(this@O2ChatActivity).request(Manifest.permission.CAMERA)
|
|
|
+ .o2Subscribe {
|
|
|
+ onNext { (granted, _, _) ->
|
|
|
+ if (!granted){
|
|
|
+ O2DialogSupport.openAlertDialog(this@O2ChatActivity, "拍照需要权限, 去设置", { permissionSetting() })
|
|
|
+ } else {
|
|
|
+ openCamera()
|
|
|
+ }
|
|
|
+ }
|
|
|
+ onError { e, _ ->
|
|
|
+ XLog.error("", e)
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
ll_o2_chat_location_btn.setOnClickListener {
|
|
|
ActivityResult.of(this)
|
|
|
@@ -578,6 +583,19 @@ class O2ChatActivity : BaseMVPActivity<O2ChatContract.View, O2ChatContract.Prese
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ private fun openCamera() {
|
|
|
+ val intent = Intent(MediaStore.ACTION_IMAGE_CAPTURE)
|
|
|
+ //return-data false 不是直接返回拍照后的照片Bitmap 因为照片太大会传输失败
|
|
|
+ intent.putExtra("return-data", false)
|
|
|
+ //改用Uri 传递
|
|
|
+ intent.putExtra(MediaStore.EXTRA_OUTPUT, cameraImageUri)
|
|
|
+ intent.putExtra("outputFormat", Bitmap.CompressFormat.JPEG.toString())
|
|
|
+ intent.putExtra("noFaceDetection", true)
|
|
|
+ startActivityForResult(intent, camera_result_code)
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
private fun permissionSetting() {
|
|
|
val packageUri = Uri.parse("package:$packageName")
|
|
|
startActivity(Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS, packageUri))
|