From af2e09c02a1ff9e426d88be415685ff65ef7bf48 Mon Sep 17 00:00:00 2001 From: ZhanGSKen Date: Mon, 20 Jan 2025 12:50:22 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BA=94=E7=94=A8=E9=80=80=E5=87=BA=E6=8C=89?= =?UTF-8?q?=E9=92=AE=E8=B0=83=E8=AF=95=E5=AE=8C=E6=88=90=EF=BC=8C=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E6=97=A5=E5=BF=97=E7=AA=97=E5=8F=A3=E8=B0=83=E5=8A=A8?= =?UTF-8?q?=E5=93=8D=E5=BA=94=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apputils/build.properties | 4 +- .../winboll/studio/apputils/MainActivity.java | 11 +++-- libapputils/build.properties | 4 +- .../libapputils/app/WinBollActivity.java | 10 ++++- .../app/WinBollActivityManager.java | 41 ++++++++++--------- .../studio/libapputils/log/LogActivity.java | 35 ++++++++++------ 6 files changed, 63 insertions(+), 42 deletions(-) diff --git a/apputils/build.properties b/apputils/build.properties index cecfa3a..099838d 100644 --- a/apputils/build.properties +++ b/apputils/build.properties @@ -1,8 +1,8 @@ #Created by .winboll/winboll_app_build.gradle -#Mon Jan 20 03:06:12 GMT 2025 +#Mon Jan 20 04:46:17 GMT 2025 stageCount=2 libraryProject=libapputils baseVersion=9.2 publishVersion=9.2.1 -buildCount=1 +buildCount=15 baseBetaVersion=9.2.2 diff --git a/apputils/src/main/java/cc/winboll/studio/apputils/MainActivity.java b/apputils/src/main/java/cc/winboll/studio/apputils/MainActivity.java index 49963b5..0693802 100644 --- a/apputils/src/main/java/cc/winboll/studio/apputils/MainActivity.java +++ b/apputils/src/main/java/cc/winboll/studio/apputils/MainActivity.java @@ -50,10 +50,13 @@ final public class MainActivity extends WinBollActivity { } public void onLogUtilsClick(View view) { - Intent intent = new Intent(this, LogActivity.class); - intent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT); - intent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK); - startActivity(intent); +// Intent intent = new Intent(this, LogActivity.class); +// intent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT); +// intent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK); +// startActivity(intent); + + //WinBollActivityManager.getInstance().printAvtivityListInfo(); + WinBollActivityManager.getInstance(this).startWinBollActivity(this, LogActivity.class); } @Override diff --git a/libapputils/build.properties b/libapputils/build.properties index cecfa3a..099838d 100644 --- a/libapputils/build.properties +++ b/libapputils/build.properties @@ -1,8 +1,8 @@ #Created by .winboll/winboll_app_build.gradle -#Mon Jan 20 03:06:12 GMT 2025 +#Mon Jan 20 04:46:17 GMT 2025 stageCount=2 libraryProject=libapputils baseVersion=9.2 publishVersion=9.2.1 -buildCount=1 +buildCount=15 baseBetaVersion=9.2.2 diff --git a/libapputils/src/main/java/cc/winboll/studio/libapputils/app/WinBollActivity.java b/libapputils/src/main/java/cc/winboll/studio/libapputils/app/WinBollActivity.java index bd7dba6..8345392 100644 --- a/libapputils/src/main/java/cc/winboll/studio/libapputils/app/WinBollActivity.java +++ b/libapputils/src/main/java/cc/winboll/studio/libapputils/app/WinBollActivity.java @@ -366,10 +366,16 @@ abstract public class WinBollActivity extends AppCompatActivity { public boolean onOptionsItemSelected(MenuItem item) { LogUtils.d(TAG, "onOptionsItemSelected"); if (item.getItemId() == R.id.item_log) { - LogUtils.d(TAG, "item_log not yet."); +// LogUtils.d(TAG, "item_log not yet."); +// Intent intent = new Intent(this, LogActivity.class); +// intent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT); +// intent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK); +// startActivity(intent); + //WinBollActivityManager.getInstance().printAvtivityListInfo(); - //WinBollActivityManager.getInstance(this).startWinBollActivity(this, LogActivity.class); + WinBollActivityManager.getInstance(this).startWinBollActivity(this, LogActivity.class); } else if (item.getItemId() == R.id.item_exit) { + //ToastUtils.show("item_exit"); WinBollActivityManager.getInstance(this).finishAll(); } else if (item.getItemId() == R.id.item_info) { WinBollApplication application = (WinBollApplication) getApplication(); diff --git a/libapputils/src/main/java/cc/winboll/studio/libapputils/app/WinBollActivityManager.java b/libapputils/src/main/java/cc/winboll/studio/libapputils/app/WinBollActivityManager.java index 3d55b84..5788c37 100644 --- a/libapputils/src/main/java/cc/winboll/studio/libapputils/app/WinBollActivityManager.java +++ b/libapputils/src/main/java/cc/winboll/studio/libapputils/app/WinBollActivityManager.java @@ -13,6 +13,7 @@ import android.content.Context; import android.content.Intent; import androidx.core.app.TaskStackBuilder; import cc.winboll.studio.libapputils.log.LogUtils; +import com.hjq.toast.ToastUtils; import java.util.HashMap; import java.util.Iterator; import java.util.Map; @@ -175,26 +176,26 @@ public class WinBollActivityManager { */ public void finishAll() { try { - LogUtils.d(TAG, "finishAll no yet."); - //ToastUtils.show(String.format("finishAll() size : %d", _mWinBollActivityList.size())); -// for (int i = _mWinBollActivityList.size() - 1; i > -1; i--) { -// WinBollActivity activity = _mWinBollActivityList.get(i); -// ToastUtils.show("finishAll() activity"); -// if (activity != null && !activity.isFinishing() && !activity.isDestroyed()) { -// //ToastUtils.show("activity != null ..."); -// if (WinBollApplication.getWinBollUI_TYPE() == WinBollApplication.WinBollUI_TYPE.Service) { -// // 结束窗口和最近任务栏, 建议前台服务类应用使用,可以方便用户再次调用 UI 操作。 -// activity.finishAndRemoveTask(); -// //ToastUtils.show("finishAll() activity.finishAndRemoveTask();"); -// } else if (WinBollApplication.getWinBollUI_TYPE() == WinBollApplication.WinBollUI_TYPE.Aplication) { -// // 结束窗口保留最近任务栏,建议前台服务类应用使用,可以保持应用的系统自觉性。 -// activity.finish(); -// //ToastUtils.show("finishAll() activity.finish();"); -// } else { -// ToastUtils.show("WinBollApplication.WinBollUI_TYPE error."); -// } -// } -// } + for (String key : _mapActivityList.keySet()) { + //System.out.println("Key: " + key + ", Value: " + _mapActivityList.get(key)); + WinBollActivity activity = _mapActivityList.get(key); + //ToastUtils.show("finishAll() activity"); + if (activity != null && !activity.isFinishing() && !activity.isDestroyed()) { + //ToastUtils.show("activity != null ..."); + if (WinBollApplication.getWinBollUI_TYPE() == WinBollApplication.WinBollUI_TYPE.Service) { + // 结束窗口和最近任务栏, 建议前台服务类应用使用,可以方便用户再次调用 UI 操作。 + activity.finishAndRemoveTask(); + //ToastUtils.show("finishAll() activity.finishAndRemoveTask();"); + } else if (WinBollApplication.getWinBollUI_TYPE() == WinBollApplication.WinBollUI_TYPE.Aplication) { + // 结束窗口保留最近任务栏,建议前台服务类应用使用,可以保持应用的系统自觉性。 + activity.finish(); + //ToastUtils.show("finishAll() activity.finish();"); + } else { + LogUtils.d(TAG, "WinBollApplication.WinBollUI_TYPE error."); + //ToastUtils.show("WinBollApplication.WinBollUI_TYPE error."); + } + } + } } catch (Exception e) { LogUtils.d(TAG, e, Thread.currentThread().getStackTrace()); } diff --git a/libapputils/src/main/java/cc/winboll/studio/libapputils/log/LogActivity.java b/libapputils/src/main/java/cc/winboll/studio/libapputils/log/LogActivity.java index d5855ad..f7a3381 100644 --- a/libapputils/src/main/java/cc/winboll/studio/libapputils/log/LogActivity.java +++ b/libapputils/src/main/java/cc/winboll/studio/libapputils/log/LogActivity.java @@ -1,30 +1,41 @@ package cc.winboll.studio.libapputils.log; import android.os.Bundle; -import androidx.appcompat.widget.Toolbar; import cc.winboll.studio.libapputils.R; import cc.winboll.studio.libapputils.app.WinBollActivity; -import cc.winboll.studio.libapputils.ads.ADsView; import cc.winboll.studio.libapputils.app.WinBollApplication; -import android.view.View; -import android.app.Activity; +import androidx.appcompat.widget.Toolbar; /** * @Author ZhanGSKen@QQ.COM * @Date 2024/08/12 15:07:58 * @Describe WinBoll 应用日志窗口 */ -public class LogActivity extends Activity { +public class LogActivity extends WinBollActivity { public static final String TAG = "LogActivity"; LogView mLogView; - //ADsView mADsView; -// @Override -// protected boolean isEnableDisplayHomeAsUp() { -// return false; -// } + @Override + public String getTag() { + return TAG; + } + + @Override + protected Toolbar initToolBar() { + return null; + } + + @Override + protected boolean isEnableDisplayHomeAsUp() { + return false; + } + + @Override + protected boolean isAddWinBollToolBar() { + return false; + } @Override protected void onCreate(Bundle savedInstanceState) { @@ -36,8 +47,8 @@ public class LogActivity extends Activity { //mADsView.loadUrl("https://www.winboll.cc"); //mLogView.setVisibility(WinBollApplication.isDebug()?View.GONE:View.VISIBLE); //mADsView.setVisibility(WinBollApplication.isDebug()?View.GONE:View.VISIBLE); - - if(WinBollApplication.isDebug()) { mLogView.start(); } + + if (WinBollApplication.isDebug()) { mLogView.start(); } } @Override