From 3d130f1c8cfde24b9933b4e2243ebc52e0a592fc Mon Sep 17 00:00:00 2001 From: Po Lu Date: Tue, 16 Jul 2024 10:14:30 +0800 Subject: [PATCH] Port better to Android 3.0 * java/org/gnu/emacs/EmacsNoninteractive.java (main): Use the old getPackageInfo calling convention if it exists rather than on Android 2.3.3 and earlier. (cherry picked from commit 34882d524328638e2198952578638e0ffe0697c5) --- java/org/gnu/emacs/EmacsNoninteractive.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/java/org/gnu/emacs/EmacsNoninteractive.java b/java/org/gnu/emacs/EmacsNoninteractive.java index 9f2b9fa8b56..8a1ad98d8f9 100644 --- a/java/org/gnu/emacs/EmacsNoninteractive.java +++ b/java/org/gnu/emacs/EmacsNoninteractive.java @@ -120,11 +120,11 @@ public final class EmacsNoninteractive } /* Get a LoadedApk or ActivityThread.PackageInfo. How to do - this varies by Android version. On Android 2.3.3 and - earlier, there is no ``compatibilityInfo'' argument to + this varies by Android version. On Android 3.0 and earlier, + there is no ``compatibilityInfo'' argument to getPackageInfo. */ - if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.GINGERBREAD_MR1) + try { method = activityThreadClass.getMethod ("getPackageInfo", @@ -134,7 +134,7 @@ public final class EmacsNoninteractive (Context.CONTEXT_INCLUDE_CODE | Context.CONTEXT_IGNORE_SECURITY)); } - else + catch (NoSuchMethodException exception) { compatibilityInfoClass = Class.forName ("android.content.res.CompatibilityInfo"); -- 2.39.5