From 99be3102e1b5dce8bf051721008811eed3dae0a0 Mon Sep 17 00:00:00 2001 From: taochen <935612713@qq.com> Date: Fri, 21 Oct 2022 15:42:20 +0800 Subject: [PATCH] =?UTF-8?q?[F]=20=E9=83=A8=E5=88=86=E5=BA=94=E7=94=A8?= =?UTF-8?q?=E5=B8=82=E5=9C=BA=E4=BB=A5=E6=89=80=E8=B0=93ActivityUtils?= =?UTF-8?q?=E9=9A=90=E7=A7=81=E5=90=88=E8=A7=84=E9=97=AE=E9=A2=98=E6=8B=92?= =?UTF-8?q?=E7=BB=9D=E5=BA=94=E7=94=A8=E4=B8=8A=E6=9E=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../blankj/utilcode/util/ActivityUtils.java | 57 +++++++++---------- 1 file changed, 26 insertions(+), 31 deletions(-) diff --git a/lib/utilcode/src/main/java/com/blankj/utilcode/util/ActivityUtils.java b/lib/utilcode/src/main/java/com/blankj/utilcode/util/ActivityUtils.java index 056668652..d49ce6ff0 100644 --- a/lib/utilcode/src/main/java/com/blankj/utilcode/util/ActivityUtils.java +++ b/lib/utilcode/src/main/java/com/blankj/utilcode/util/ActivityUtils.java @@ -1997,29 +1997,22 @@ private static void startActivity(final Context context, private static boolean startActivity(final Intent intent, final Context context, final Bundle options) { - if (!isIntentAvailable(intent)) { - Log.e("ActivityUtils", "intent is unavailable"); - return false; - } if (!(context instanceof Activity)) { intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); } - if (options != null && Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) { - context.startActivity(intent, options); - } else { - context.startActivity(intent); + try { + if (options != null && Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) { + context.startActivity(intent, options); + } else { + context.startActivity(intent); + } + } catch (Exception e) { + Log.e("ActivityUtils", "An exception occurred in startActivity, error message: " + e.getLocalizedMessage()); + return false; } return true; } - private static boolean isIntentAvailable(final Intent intent) { -// return Utils.getApp() -// .getPackageManager() -// .queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY) -// .size() > 0; - return true; - } - private static boolean startActivityForResult(final Activity activity, final Bundle extras, final String pkg, @@ -2036,15 +2029,16 @@ private static boolean startActivityForResult(final Intent intent, final Activity activity, final int requestCode, @Nullable final Bundle options) { - if (!isIntentAvailable(intent)) { - Log.e("ActivityUtils", "intent is unavailable"); + try { + if (options != null && Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) { + activity.startActivityForResult(intent, requestCode, options); + } else { + activity.startActivityForResult(intent, requestCode); + } + } catch (Exception e) { + Log.e("ActivityUtils", "An exception occurred in startActivityForResult, error message: " + e.getLocalizedMessage()); return false; } - if (options != null && Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) { - activity.startActivityForResult(intent, requestCode, options); - } else { - activity.startActivityForResult(intent, requestCode); - } return true; } @@ -2079,18 +2073,19 @@ private static boolean startActivityForResult(final Intent intent, final Fragment fragment, final int requestCode, @Nullable final Bundle options) { - if (!isIntentAvailable(intent)) { - Log.e("ActivityUtils", "intent is unavailable"); - return false; - } if (fragment.getActivity() == null) { Log.e("ActivityUtils", "Fragment " + fragment + " not attached to Activity"); return false; } - if (options != null && Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) { - fragment.startActivityForResult(intent, requestCode, options); - } else { - fragment.startActivityForResult(intent, requestCode); + try { + if (options != null && Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) { + fragment.startActivityForResult(intent, requestCode, options); + } else { + fragment.startActivityForResult(intent, requestCode); + } + } catch (Exception e) { + Log.e("ActivityUtils", "An exception occurred in fragment.startActivityForResult, error message: " + e.getLocalizedMessage()); + return false; } return true; }