Skip to content

Commit 96ab9da

Browse files
handle exception in kotlin
1 parent 672fe2e commit 96ab9da

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

android/app/src/main/kotlin/com/Phoenix/project/MainActivity.kt

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
package com.Phoenix.project
22

3+
import android.Manifest
34
import android.app.WallpaperManager
45
import android.content.Context
56
import android.content.Intent
7+
import android.content.pm.PackageManager
68
import android.graphics.BitmapFactory
79
import android.hardware.camera2.CameraManager
810
import android.media.*
@@ -12,6 +14,7 @@ import android.os.Environment
1214
import android.util.Log
1315
import android.widget.Toast
1416
import androidx.annotation.NonNull
17+
import androidx.core.app.ActivityCompat
1518
import io.flutter.embedding.android.FlutterActivity
1619
import io.flutter.embedding.engine.FlutterEngine
1720
import io.flutter.plugin.common.MethodChannel
@@ -133,6 +136,20 @@ class MainActivity : FlutterActivity() {
133136

134137
private fun visualize() {
135138
mAudioBufferSize = AudioRecord.getMinBufferSize(samplingRate, AudioFormat.CHANNEL_IN_MONO, AudioFormat.ENCODING_PCM_8BIT)
139+
if (ActivityCompat.checkSelfPermission(
140+
this,
141+
Manifest.permission.RECORD_AUDIO
142+
) != PackageManager.PERMISSION_GRANTED
143+
) {
144+
// TODO: Consider calling
145+
// ActivityCompat#requestPermissions
146+
// here to request the missing permissions, and then overriding
147+
// public void onRequestPermissionsResult(int requestCode, String[] permissions,
148+
// int[] grantResults)
149+
// to handle the case where the user grants the permission. See the documentation
150+
// for ActivityCompat#requestPermissions for more details.
151+
return
152+
}
136153
mAudioRecord = AudioRecord(MediaRecorder.AudioSource.MIC, samplingRate, AudioFormat.CHANNEL_IN_MONO, AudioFormat.ENCODING_PCM_8BIT, mAudioBufferSize)
137154

138155
if (mAudioRecord!!.state != AudioRecord.STATE_INITIALIZED) println("AudioRecord init failed")

0 commit comments

Comments
 (0)