Audio permissions seem to work without AppCompat

This commit is contained in:
Nevyn Bengtsson 2020-12-07 16:50:32 +01:00 committed by Bjorn
parent 7efc855929
commit f7d027a3ce
4 changed files with 11 additions and 12 deletions

View File

@ -610,19 +610,16 @@ elseif(ANDROID)
endif()
endif()
# Shared dependencies between platforms
set(ANDROID_SUPPORT_V4 "${CMAKE_CURRENT_SOURCE_DIR}/src/resources/android-libs/support-compat-v4-26.0.0.jar")
set(ANDROID_APPCOMPAT_V7 "${CMAKE_CURRENT_SOURCE_DIR}/src/resources/android-libs/appcompat-v7-26.0.0.jar")
set(ANDROID_CLASSPATH "${ANDROID_CLASSPATH}:${ANDROID_SUPPORT_V4}:${ANDROID_APPCOMPAT_V7}")
set(EXTRA_JAR ${EXTRA_JAR} ${ANDROID_SUPPORT_V4} ${ANDROID_APPCOMPAT_V7})
set(ANDROID_EXTRAPACKAGES "android.support.v7.appcompat")
set(ANDROID_MANIFEST "${CMAKE_CURRENT_SOURCE_DIR}/src/resources/AndroidManifest_${MANIFEST}.xml" CACHE STRING "The AndroidManifest.xml file to use")
if (ANDROID_KEYSTORE_PASS) # Trick so that --ks-pass is not passed if no password is given.
set(ANDROID_APKSIGNER_KEYSTORE_PASS --ks-pass)
endif()
if (ANDROID_EXTRAPACKAGES) # Only pass --extra-packages if var is set
set(ANDROID_EXTRAPACKAGES --extra-packages ${ANDROID_EXTRAPACKAGES})
endif()
# Make an apk
add_custom_target(
buildAPK ALL
@ -639,7 +636,7 @@ elseif(ANDROID)
-M AndroidManifest.xml
-I ${ANDROID_JAR}
-F lovr.unaligned.apk
--extra-packages ${ANDROID_EXTRAPACKAGES}
${ANDROID_EXTRAPACKAGES}
${ANDROID_ASSETS}
raw
COMMAND ${ANDROID_TOOLS}/zipalign -f -p 4 lovr.unaligned.apk lovr.unsigned.apk

View File

@ -2,12 +2,11 @@ package org.lovr.app;
import android.app.NativeActivity;
import android.Manifest;
import android.app.NativeActivity;
import android.support.v4.app.ActivityCompat;
import android.content.pm.PackageManager;
import android.os.Bundle;
import android.util.Log;
public class Activity extends NativeActivity implements ActivityCompat.OnRequestPermissionsResultCallback {
public class Activity extends NativeActivity {
static {
System.loadLibrary("lovr");
System.loadLibrary("vrapi");
@ -26,24 +25,27 @@ public class Activity extends NativeActivity implements ActivityCompat.OnRequest
{
if(grantResults[0] == PackageManager.PERMISSION_GRANTED)
{
Log.i("LOVR", "RECORD_AUDIO granted.");
lovrPermissionEvent(0, true);
}
else
{
Log.i("LOVR", "RECORD_AUDIO rejected.");
lovrPermissionEvent(0, false);
}
}
private void requestAudioCapturePermission()
{
int existingPermission = ActivityCompat.checkSelfPermission(this, Manifest.permission.RECORD_AUDIO);
int existingPermission = checkSelfPermission(Manifest.permission.RECORD_AUDIO);
if(existingPermission != PackageManager.PERMISSION_GRANTED)
{
Log.i("LOVR", "Asking for RECORD_AUDIO permissions.");
ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.RECORD_AUDIO}, 1);
requestPermissions(new String[]{Manifest.permission.RECORD_AUDIO}, 1);
}
else
{
Log.i("LOVR", "RECORD_AUDIO already permitted.");
lovrPermissionEvent(0, true);
}
}