summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
author Rios Kao <rioskao@google.com> 2022-03-22 00:58:11 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2022-03-22 00:58:11 +0000
commitf10600c7ad0d3e8bc34c5d8f4845abfbaf62e139 (patch)
treebd8a6edef9e3d9bead3b43d99d58b26115504534 /tests
parenta6462766f9638a41a608e18b16adf81d19494a84 (diff)
parent0089aa80f0aec6eb0b3a50d048fde5807d2d6716 (diff)
Merge "correct sequence about granting permission of SoundTriggerTestApp" into tm-dev
Diffstat (limited to 'tests')
-rw-r--r--tests/SoundTriggerTestApp/src/com/android/test/soundtrigger/SoundTriggerTestActivity.java32
1 files changed, 19 insertions, 13 deletions
diff --git a/tests/SoundTriggerTestApp/src/com/android/test/soundtrigger/SoundTriggerTestActivity.java b/tests/SoundTriggerTestApp/src/com/android/test/soundtrigger/SoundTriggerTestActivity.java
index 72aa38dc7e4b..103d516e5967 100644
--- a/tests/SoundTriggerTestApp/src/com/android/test/soundtrigger/SoundTriggerTestActivity.java
+++ b/tests/SoundTriggerTestApp/src/com/android/test/soundtrigger/SoundTriggerTestActivity.java
@@ -97,13 +97,8 @@ public class SoundTriggerTestActivity extends Activity implements SoundTriggerTe
setVolumeControlStream(AudioManager.STREAM_MUSIC);
- // Make sure that the service is started, so even if our activity goes down, we'll still
- // have a request for it to run.
- startService(new Intent(getBaseContext(), SoundTriggerTestService.class));
-
- // Bind to SoundTriggerTestService.
- Intent intent = new Intent(this, SoundTriggerTestService.class);
- bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
+ requestPermissions(new String[]{Manifest.permission.RECORD_AUDIO},
+ AUDIO_PERMISSIONS_REQUEST);
}
@Override
@@ -267,12 +262,16 @@ public class SoundTriggerTestActivity extends Activity implements SoundTriggerTe
public synchronized void onCaptureAudioCheckboxClicked(View v) {
// See if we have the right permissions
- if (!mService.hasMicrophonePermission()) {
- requestPermissions(new String[]{Manifest.permission.RECORD_AUDIO},
- AUDIO_PERMISSIONS_REQUEST);
- return;
+ if (mService == null) {
+ Log.e(TAG, "Can't set capture audio: not bound to SoundTriggerTestService");
} else {
- mService.setCaptureAudio(mSelectedModelUuid, mCaptureAudioCheckBox.isChecked());
+ if (!mService.hasMicrophonePermission()) {
+ requestPermissions(new String[]{Manifest.permission.RECORD_AUDIO},
+ AUDIO_PERMISSIONS_REQUEST);
+ return;
+ } else {
+ mService.setCaptureAudio(mSelectedModelUuid, mCaptureAudioCheckBox.isChecked());
+ }
}
}
@@ -283,8 +282,15 @@ public class SoundTriggerTestActivity extends Activity implements SoundTriggerTe
if (grantResults[0] != PackageManager.PERMISSION_GRANTED) {
// Make sure that the check box is set to false.
mCaptureAudioCheckBox.setChecked(false);
+ } else {
+ // After granted Record_Audio permission, start and bind the service.
+ // so we can run that sound trigger capability,
+ // even if our activity goes down, we'll still have a request for it to run.
+ startService(new Intent(getBaseContext(), SoundTriggerTestService.class));
+ // Bind to SoundTriggerTestService.
+ Intent intent = new Intent(this, SoundTriggerTestService.class);
+ bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
}
- mService.setCaptureAudio(mSelectedModelUuid, mCaptureAudioCheckBox.isChecked());
}
}