diff --git a/demo/android/Service/porcupine-service-demo-app/src/main/AndroidManifest.xml b/demo/android/Service/porcupine-service-demo-app/src/main/AndroidManifest.xml
index 795981b5b..4645a7ad6 100644
--- a/demo/android/Service/porcupine-service-demo-app/src/main/AndroidManifest.xml
+++ b/demo/android/Service/porcupine-service-demo-app/src/main/AndroidManifest.xml
@@ -4,6 +4,7 @@
+
{
if (recordButton.isChecked()) {
- if (hasRecordPermission()) {
+ ArrayList permissionsToRequest = new ArrayList<>();
+ if (!hasNotificationPermission()) {
+ permissionsToRequest.add(Manifest.permission.POST_NOTIFICATIONS);
+ }
+ if (!hasRecordPermission()) {
+ permissionsToRequest.add(Manifest.permission.RECORD_AUDIO);
+ }
+
+ if (permissionsToRequest.size() == 0) {
startService();
} else {
- requestRecordPermission();
+ requestRecordPermissions(permissionsToRequest.toArray(new String[0]));
}
} else {
stopService();