From 9706a39f414166cea0823671febdcb01be6ed9f0 Mon Sep 17 00:00:00 2001 From: ZhanGSKen Date: Tue, 25 Mar 2025 05:29:51 +0800 Subject: [PATCH] =?UTF-8?q?WinBollActivityManager=E6=B5=8B=E8=AF=95..?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- appbase/build.properties | 4 +- appbase/src/main/AndroidManifest.xml | 12 +- .../winboll/studio/appbase/MainActivity.java | 25 +- .../appbase/activities/NewActivity.java | 41 +++ appbase/src/main/res/layout/activity_main.xml | 11 +- appbase/src/main/res/layout/activity_new.xml | 34 ++ libappbase/build.properties | 4 +- .../studio/libappbase/GlobalApplication.java | 18 + .../libappbase/winboll/IWinBollActivity.java | 18 + .../winboll/MyActivityLifecycleCallbacks.java | 103 ++++++ .../winboll/WinBollActivityManager.java | 318 ++++++++++++++++++ 11 files changed, 576 insertions(+), 12 deletions(-) create mode 100644 appbase/src/main/java/cc/winboll/studio/appbase/activities/NewActivity.java create mode 100644 appbase/src/main/res/layout/activity_new.xml create mode 100644 libappbase/src/main/java/cc/winboll/studio/libappbase/winboll/IWinBollActivity.java create mode 100644 libappbase/src/main/java/cc/winboll/studio/libappbase/winboll/MyActivityLifecycleCallbacks.java create mode 100644 libappbase/src/main/java/cc/winboll/studio/libappbase/winboll/WinBollActivityManager.java diff --git a/appbase/build.properties b/appbase/build.properties index a81251e..b0c800f 100644 --- a/appbase/build.properties +++ b/appbase/build.properties @@ -1,8 +1,8 @@ #Created by .winboll/winboll_app_build.gradle -#Tue Mar 25 03:25:01 HKT 2025 +#Mon Mar 24 21:28:41 GMT 2025 stageCount=11 libraryProject=libappbase baseVersion=15.0 publishVersion=15.0.10 -buildCount=0 +buildCount=12 baseBetaVersion=15.0.11 diff --git a/appbase/src/main/AndroidManifest.xml b/appbase/src/main/AndroidManifest.xml index 072134c..19f89ca 100644 --- a/appbase/src/main/AndroidManifest.xml +++ b/appbase/src/main/AndroidManifest.xml @@ -13,6 +13,7 @@ @@ -49,10 +50,12 @@ android:name=".services.MainService" android:exported="true"/> - - @@ -103,6 +106,11 @@ android:name="android.max_aspect" android:value="4.0"/> + + diff --git a/appbase/src/main/java/cc/winboll/studio/appbase/MainActivity.java b/appbase/src/main/java/cc/winboll/studio/appbase/MainActivity.java index 475b29e..b2b5842 100644 --- a/appbase/src/main/java/cc/winboll/studio/appbase/MainActivity.java +++ b/appbase/src/main/java/cc/winboll/studio/appbase/MainActivity.java @@ -8,6 +8,7 @@ import android.view.View; import android.widget.CheckBox; import android.widget.Toolbar; import cc.winboll.studio.appbase.R; +import cc.winboll.studio.appbase.activities.NewActivity; import cc.winboll.studio.appbase.services.MainService; import cc.winboll.studio.appbase.services.TestDemoBindService; import cc.winboll.studio.appbase.services.TestDemoService; @@ -17,12 +18,24 @@ import cc.winboll.studio.libappbase.LogView; import cc.winboll.studio.libappbase.sos.SOS; import cc.winboll.studio.libappbase.utils.ToastUtils; import cc.winboll.studio.libappbase.widgets.StatusWidget; -import cc.winboll.studio.libappbase.APPBaseModel; +import cc.winboll.studio.libappbase.winboll.IWinBollActivity; +import cc.winboll.studio.libappbase.winboll.WinBollActivityManager; -public class MainActivity extends Activity { +public class MainActivity extends Activity implements IWinBollActivity { public static final String TAG = "MainActivity"; + + @Override + public Activity getActivity() { + return this; + } + @Override + public String getTag() { + return TAG; + } + + Toolbar mToolbar; LogView mLogView; @Override @@ -31,8 +44,8 @@ public class MainActivity extends Activity { ToastUtils.show("onCreate"); setContentView(R.layout.activity_main); - Toolbar toolbar = findViewById(R.id.activitymainToolbar1); - setActionBar(toolbar); + mToolbar = findViewById(R.id.toolbar); + setActionBar(mToolbar); CheckBox cbIsDebugMode = findViewById(R.id.activitymainCheckBox1); cbIsDebugMode.setChecked(GlobalApplication.isDebuging()); @@ -142,4 +155,8 @@ public class MainActivity extends Activity { Intent intent = new Intent(this, TestDemoBindService.class); stopService(intent); } + + public void onTestOpenNewActivity(View view) { + WinBollActivityManager.getInstance(this).startWinBollActivity(this, NewActivity.class); + } } diff --git a/appbase/src/main/java/cc/winboll/studio/appbase/activities/NewActivity.java b/appbase/src/main/java/cc/winboll/studio/appbase/activities/NewActivity.java new file mode 100644 index 0000000..289be86 --- /dev/null +++ b/appbase/src/main/java/cc/winboll/studio/appbase/activities/NewActivity.java @@ -0,0 +1,41 @@ +package cc.winboll.studio.appbase.activities; + +import android.app.Activity; +import android.os.Bundle; +import android.view.View; +import cc.winboll.studio.appbase.R; +import cc.winboll.studio.libappbase.winboll.IWinBollActivity; +import cc.winboll.studio.libappbase.winboll.WinBollActivityManager; + +/** + * @Author ZhanGSKen@AliYun.Com + * @Date 2025/03/25 05:04:22 + */ +public class NewActivity extends Activity implements IWinBollActivity { + + public static final String TAG = "NewActivity"; + + @Override + public Activity getActivity() { + return this; + } + + @Override + public String getTag() { + return TAG; + } + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_new); + } + + public void onCloseThisActivity(View view) { + WinBollActivityManager.getInstance(this).finish(this); + } + + public void onCloseAllActivity(View view) { + WinBollActivityManager.getInstance(this).finishAll(); + } +} diff --git a/appbase/src/main/res/layout/activity_main.xml b/appbase/src/main/res/layout/activity_main.xml index cb20da0..0c085fa 100644 --- a/appbase/src/main/res/layout/activity_main.xml +++ b/appbase/src/main/res/layout/activity_main.xml @@ -8,7 +8,7 @@ + android:id="@+id/toolbar"/> - + +