GameActivity: check for VIBRATE permission on Android

While we add this permission by default, if a developer sets custom permissions, we want to avoid crashing when we try to access an API that we don't have permission to use
This commit is contained in:
Josh Tynjala
2025-01-07 12:47:30 -08:00
parent 44dd331801
commit 951d5510c2

View File

@@ -3,6 +3,7 @@ package org.haxe.lime;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.content.res.AssetManager;
import android.net.Uri;
import android.os.Build;
@@ -16,6 +17,7 @@ import android.view.KeyCharacterMap;
import android.view.KeyEvent;
import android.view.View;
import android.webkit.MimeTypeMap;
import android.Manifest;
import org.haxe.extension.Extension;
import org.libsdl.app.SDLActivity;
@@ -110,7 +112,13 @@ public class GameActivity extends SDLActivity {
super.onCreate (state);
assetManager = getAssets ();
vibrator = (Vibrator)mSingleton.getSystemService (Context.VIBRATOR_SERVICE);
if (checkSelfPermission(Manifest.permission.VIBRATE) == PackageManager.PERMISSION_GRANTED) {
vibrator = (Vibrator)mSingleton.getSystemService (Context.VIBRATOR_SERVICE);
}
handler = new Handler ();
Extension.assetManager = assetManager;