From 17692267eea4adb77e93363ac27f1caff5f006ae Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期一, 05 六月 2023 09:11:43 +0800 Subject: [PATCH] 2023年06月05日09:11:31 --- app/src/main/java/com/hdl/photovoltaic/other/HdlThreadLogic.java | 75 +++++++++++++------------------------ 1 files changed, 26 insertions(+), 49 deletions(-) diff --git a/app/src/main/java/com/hdl/photovoltaic/other/HdlThreadLogic.java b/app/src/main/java/com/hdl/photovoltaic/other/HdlThreadLogic.java index 40bb756..73fe38b 100644 --- a/app/src/main/java/com/hdl/photovoltaic/other/HdlThreadLogic.java +++ b/app/src/main/java/com/hdl/photovoltaic/other/HdlThreadLogic.java @@ -1,8 +1,12 @@ package com.hdl.photovoltaic.other; +import android.app.Dialog; import android.content.Context; import android.os.Handler; import android.os.Looper; +import android.widget.Toast; + +import androidx.appcompat.app.AlertDialog; import com.hdl.photovoltaic.enums.ShowErrorMode; @@ -12,29 +16,13 @@ public class HdlThreadLogic { private static final Handler handler = new Handler(Looper.getMainLooper()); - /** - * 鍒囨崲鍥炰富绾跨▼ - * - * @param run 鍥炶皟 - */ - public static void runMainThread(Runnable run) { - try { - if (Looper.myLooper() == Looper.getMainLooper()) { - run.run(); - } else { - handler.post(run); - } - } catch (Exception e) { - exception(e, ShowErrorMode.YES); - } - } /** * 鍒囨崲鍥炰富绾跨▼ * * @param run 鍥炶皟 - * @param context 涓婁笅鏂� - * @param showErrorMode 鏄惁鏄剧ず閿欒 + * @param context 涓婁笅鏂�(涓嶉渶瑕佸脊妗嗗~null) + * @param showErrorMode 鏄惁鏄剧ず閿欒(涓嶉渶瑕佹樉绀洪敊璇~null) */ public static void runMainThread(Runnable run, Context context, ShowErrorMode showErrorMode) { try { @@ -44,36 +32,17 @@ handler.post(run); } } catch (Exception e) { - exception(e, showErrorMode); + exception(e, showErrorMode, context); } } - /** - * 瀛愮嚎绋� - * - * @param run 鍥炶皟 - */ - public static void runThread(Runnable run) { - - new Thread(new Runnable() { - @Override - public void run() { - try { - run.run(); - } catch (Exception e) { - exception(e, ShowErrorMode.NO); - } - } - }).start(); - - } /** * 瀛愮嚎绋� * * @param run 鍥炶皟 - * @param context 涓婁笅鏂� - * @param showErrorMode 鏄惁鏄剧ず閿欒 + * @param context 涓婁笅鏂�(涓嶉渶瑕佸脊妗嗗~null) + * @param showErrorMode 鏄惁鏄剧ず閿欒(涓嶉渶瑕佸~null) */ public static void runThread(Runnable run, Context context, ShowErrorMode showErrorMode) { @@ -83,7 +52,7 @@ try { run.run(); } catch (Exception e) { - exception(e, showErrorMode); + exception(e, showErrorMode, context); } } }).start(); @@ -91,7 +60,15 @@ } - private static void exception(Exception e, ShowErrorMode showErrorMode) { + /** + * @param e 寮傚父淇℃伅绫� + * @param context 涓婁笅鏂�(涓嶉渶瑕佸脊妗嗗~null) + * @param showErrorMode 鏄惁鏄剧ず閿欒(涓嶉渶瑕佸~null) + */ + private static void exception(Exception e, ShowErrorMode showErrorMode, Context context) { + if (showErrorMode == null || context == null || e == null) { + return; + } if (showErrorMode == ShowErrorMode.NO) { return; } @@ -99,16 +76,16 @@ handler.post(new Runnable() { @Override public void run() { -// Dialog alertDialog = new AlertDialog.Builder(HDLApp.getInstance().getApplicationContext()). -// setTitle("鎶辨瓑绋嬪簭鍑虹幇閿欒浜�,鐐瑰嚮\"纭\"鑾峰彇鏇村璇︾粏淇℃伅."). -// setMessage(e.getMessage()). -// create(); -// alertDialog.show(); + Dialog alertDialog = new AlertDialog.Builder(context). + setTitle("鎶辨瓑绋嬪簭鍑虹幇閿欒浜�,鐐瑰嚮\"纭\"鑾峰彇鏇村璇︾粏淇℃伅."). + setMessage(e.getMessage()). + create(); + alertDialog.show(); //鎻愮ず -// AlertDialog alertDialog=new AlertDialog(HDLApp.getInstance().getApplicationContext(), androidx.fragment.R.style.TextAppearance_Compat_Notification); +// AlertDialog alertDialog = new AlertDialog(context, androidx.fragment.R.style.TextAppearance_Compat_Notification); // alertDialog.setTitle("鎶辨瓑绋嬪簭鍑虹幇閿欒浜�"); // alertDialog.show(); - //Toast.makeText(HDLApp.getInstance().getApplicationContext(), "鎶辨瓑绋嬪簭鍑虹幇閿欒浜�", Toast.LENGTH_SHORT).show(); +// Toast.makeText(context, "鎶辨瓑绋嬪簭鍑虹幇閿欒浜�", Toast.LENGTH_SHORT).show(); } }); -- Gitblit v1.8.0