diff options
author | Thomas <tschneider.ac@gmail.com> | 2023-01-27 11:02:18 +0100 |
---|---|---|
committer | Thomas <tschneider.ac@gmail.com> | 2023-01-27 11:02:18 +0100 |
commit | 96abece6dade994cbae815a842830e66f29ec890 (patch) | |
tree | 0c14f157e452216dc2cc104419743b6d7d48e206 /mathjaxandroid | |
parent | 8103bf4a16aa64025baacefc3a1b6e19ad744219 (diff) |
Fix a crash
Diffstat (limited to 'mathjaxandroid')
-rw-r--r-- | mathjaxandroid/src/main/java/de/timfreiheit/mathjax/android/MathJaxView.java | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/mathjaxandroid/src/main/java/de/timfreiheit/mathjax/android/MathJaxView.java b/mathjaxandroid/src/main/java/de/timfreiheit/mathjax/android/MathJaxView.java index a918cfa1f..8754c5d28 100644 --- a/mathjaxandroid/src/main/java/de/timfreiheit/mathjax/android/MathJaxView.java +++ b/mathjaxandroid/src/main/java/de/timfreiheit/mathjax/android/MathJaxView.java @@ -2,6 +2,7 @@ package de.timfreiheit.mathjax.android; import android.annotation.SuppressLint; +import android.app.ActivityManager; import android.content.Context; import android.content.res.TypedArray; import android.os.Build; @@ -90,6 +91,17 @@ public class MathJaxView extends FrameLayout { } } + public static String getProcessName(Context context) { + ActivityManager manager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); + for (ActivityManager.RunningAppProcessInfo processInfo : manager.getRunningAppProcesses()) { + if (processInfo.pid == android.os.Process.myPid()) { + return processInfo.processName; + } + } + + return null; + } + @SuppressLint({"SetJavaScriptEnabled", "AddJavascriptInterface"}) private void init(Context context, AttributeSet attrSet, MathJaxConfig config) { mWebView = new WebView(context); @@ -155,6 +167,12 @@ public class MathJaxView extends FrameLayout { mWebView.setHorizontalScrollBarEnabled(horizontalScrollbarsEnabled); mWebView.setBackgroundColor(0); mWebView.getSettings().setLoadWithOverviewMode(true); + + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) { + String process = getProcessName(context); + if (!context.getPackageName().equals(process)) + WebView.setDataDirectorySuffix(process); + } } /** |