Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f10600c7 authored by Rios Kao's avatar Rios Kao Committed by Android (Google) Code Review
Browse files

Merge "correct sequence about granting permission of SoundTriggerTestApp" into tm-dev

parents a6462766 0089aa80
Loading
Loading
Loading
Loading
+19 −13
Original line number Original line Diff line number Diff line
@@ -97,13 +97,8 @@ public class SoundTriggerTestActivity extends Activity implements SoundTriggerTe


        setVolumeControlStream(AudioManager.STREAM_MUSIC);
        setVolumeControlStream(AudioManager.STREAM_MUSIC);


        // Make sure that the service is started, so even if our activity goes down, we'll still
        requestPermissions(new String[]{Manifest.permission.RECORD_AUDIO},
        // have a request for it to run.
                AUDIO_PERMISSIONS_REQUEST);
        startService(new Intent(getBaseContext(), SoundTriggerTestService.class));

        // Bind to SoundTriggerTestService.
        Intent intent = new Intent(this, SoundTriggerTestService.class);
        bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
    }
    }


    @Override
    @Override
@@ -267,6 +262,9 @@ public class SoundTriggerTestActivity extends Activity implements SoundTriggerTe


    public synchronized void onCaptureAudioCheckboxClicked(View v) {
    public synchronized void onCaptureAudioCheckboxClicked(View v) {
        // See if we have the right permissions
        // See if we have the right permissions
        if (mService == null) {
            Log.e(TAG, "Can't set capture audio: not bound to SoundTriggerTestService");
        } else {
            if (!mService.hasMicrophonePermission()) {
            if (!mService.hasMicrophonePermission()) {
                requestPermissions(new String[]{Manifest.permission.RECORD_AUDIO},
                requestPermissions(new String[]{Manifest.permission.RECORD_AUDIO},
                        AUDIO_PERMISSIONS_REQUEST);
                        AUDIO_PERMISSIONS_REQUEST);
@@ -275,6 +273,7 @@ public class SoundTriggerTestActivity extends Activity implements SoundTriggerTe
                mService.setCaptureAudio(mSelectedModelUuid, mCaptureAudioCheckBox.isChecked());
                mService.setCaptureAudio(mSelectedModelUuid, mCaptureAudioCheckBox.isChecked());
            }
            }
        }
        }
    }


    @Override
    @Override
    public synchronized void onRequestPermissionsResult(int requestCode, String permissions[],
    public synchronized void onRequestPermissionsResult(int requestCode, String permissions[],
@@ -283,8 +282,15 @@ public class SoundTriggerTestActivity extends Activity implements SoundTriggerTe
            if (grantResults[0] != PackageManager.PERMISSION_GRANTED) {
            if (grantResults[0] != PackageManager.PERMISSION_GRANTED) {
                // Make sure that the check box is set to false.
                // Make sure that the check box is set to false.
                mCaptureAudioCheckBox.setChecked(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());
        }
        }
    }
    }