From d06023d023b12d5c103a8fb2a4cf5758cfd6bb9e Mon Sep 17 00:00:00 2001 From: ZhanGSKen Date: Sat, 3 May 2025 13:21:04 +0800 Subject: [PATCH] =?UTF-8?q?(=E6=89=93=E5=BC=80=E5=BA=94=E7=94=A8)=E7=9A=84?= =?UTF-8?q?=E6=8C=89=E9=92=AE=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- autoinstaller/build.properties | 4 +-- .../studio/autoinstaller/MainActivity.java | 33 ++++++++++++------- .../autoinstaller/utils/PackageUtil.java | 16 +++++++++ 3 files changed, 40 insertions(+), 13 deletions(-) diff --git a/autoinstaller/build.properties b/autoinstaller/build.properties index 2db361a..a79dfe3 100644 --- a/autoinstaller/build.properties +++ b/autoinstaller/build.properties @@ -1,8 +1,8 @@ #Created by .winboll/winboll_app_build.gradle -#Sat May 03 03:51:17 GMT 2025 +#Sat May 03 05:20:15 GMT 2025 stageCount=1 libraryProject= baseVersion=15.2 publishVersion=15.2.0 -buildCount=59 +buildCount=65 baseBetaVersion=15.2.1 diff --git a/autoinstaller/src/main/java/cc/winboll/studio/autoinstaller/MainActivity.java b/autoinstaller/src/main/java/cc/winboll/studio/autoinstaller/MainActivity.java index 51763e9..b63de0c 100644 --- a/autoinstaller/src/main/java/cc/winboll/studio/autoinstaller/MainActivity.java +++ b/autoinstaller/src/main/java/cc/winboll/studio/autoinstaller/MainActivity.java @@ -20,6 +20,7 @@ import cc.winboll.studio.autoinstaller.models.APKModel; import cc.winboll.studio.autoinstaller.models.AppConfigs; import cc.winboll.studio.autoinstaller.services.MainService; import cc.winboll.studio.autoinstaller.utils.NotificationUtil; +import cc.winboll.studio.autoinstaller.utils.PackageUtil; import cc.winboll.studio.autoinstaller.views.ListViewForScrollView; import cc.winboll.studio.libappbase.LogUtils; import cc.winboll.studio.libappbase.LogView; @@ -142,7 +143,7 @@ public class MainActivity extends Activity { } return ""; } - + public void onOpenAPP(View view) { String szInstalledPackageName = getLastApkPackageName(); if (szInstalledPackageName.trim().equals("")) { @@ -150,18 +151,28 @@ public class MainActivity extends Activity { return; } - Intent intent = getPackageManager().getLaunchIntentForPackage(mszInstalledPackageName); - if (intent != null) { - //ToastUtils.show("startActivity"); - startActivity(intent); - } else { - // 若没能获取到启动意图,可进行相应提示等操作,比如跳转到应用商店让用户下载该应用(示例) - Intent marketIntent = new Intent(Intent.ACTION_VIEW); - marketIntent.setData(Uri.parse("market://details?id=" + mszInstalledPackageName)); - startActivity(marketIntent); - } + PackageUtil.openAPP(this, szInstalledPackageName); } +// public void onOpenAPP(View view) { +// String szInstalledPackageName = getLastApkPackageName(); +// if (szInstalledPackageName.trim().equals("")) { +// ToastUtils.show("Installed APP package name is null."); +// return; +// } +// +// Intent intent = getPackageManager().getLaunchIntentForPackage(mszInstalledPackageName); +// if (intent != null) { +// //ToastUtils.show("startActivity"); +// startActivity(intent); +// } else { +// // 若没能获取到启动意图,可进行相应提示等操作,比如跳转到应用商店让用户下载该应用(示例) +// Intent marketIntent = new Intent(Intent.ACTION_VIEW); +// marketIntent.setData(Uri.parse("market://details?id=" + mszInstalledPackageName)); +// startActivity(marketIntent); +// } +// } + public void onInstallAPK(View view) { installAPK(); } diff --git a/autoinstaller/src/main/java/cc/winboll/studio/autoinstaller/utils/PackageUtil.java b/autoinstaller/src/main/java/cc/winboll/studio/autoinstaller/utils/PackageUtil.java index e4eb5d2..5e9303b 100644 --- a/autoinstaller/src/main/java/cc/winboll/studio/autoinstaller/utils/PackageUtil.java +++ b/autoinstaller/src/main/java/cc/winboll/studio/autoinstaller/utils/PackageUtil.java @@ -6,8 +6,10 @@ package cc.winboll.studio.autoinstaller.utils; * @Describe 一个获取安卓APK安装文件的应用包名的函数 */ import android.content.Context; +import android.content.Intent; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; +import android.content.pm.ResolveInfo; import cc.winboll.studio.libappbase.LogUtils; public class PackageUtil { @@ -27,4 +29,18 @@ public class PackageUtil { } return ""; } + + public static void openAPP(Context context, String packageName) { + // 这里假设要打开微信,微信的包名是com.tencent.mm + //String packageName = "com.tencent.mm"; + PackageManager packageManager = context.getPackageManager(); + Intent intent = packageManager.getLaunchIntentForPackage(packageName); + if (intent != null) { + ResolveInfo resolveInfo = packageManager.resolveActivity(intent, PackageManager.MATCH_DEFAULT_ONLY); + if (resolveInfo != null) { + context.startActivity(intent); + } + } + + } }