From 6f7414b576e30e0fdc360350ccfc7bc68b9d7935 Mon Sep 17 00:00:00 2001 From: ZhanGSKen Date: Fri, 28 Mar 2025 18:10:31 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E5=AE=8C=E6=88=90=E5=BA=94=E7=94=A8?= =?UTF-8?q?=E9=80=80=E5=87=BA=E7=9A=84=E8=8F=9C=E5=8D=95=E6=8C=89=E9=92=AE?= =?UTF-8?q?=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- appbase/build.properties | 4 +- .../winboll/studio/appbase/MainActivity.java | 9 +-- .../studio/appbase/WinBollActivityBase.java | 30 ++++++++++ .../appbase/activities/New2Activity.java | 2 - .../appbase/activities/NewActivity.java | 2 - libappbase/build.properties | 4 +- .../libappbase/dialogs/YesNoAlertDialog.java | 60 +++++++++++++++++++ 7 files changed, 97 insertions(+), 14 deletions(-) create mode 100644 libappbase/src/main/java/cc/winboll/studio/libappbase/dialogs/YesNoAlertDialog.java diff --git a/appbase/build.properties b/appbase/build.properties index 07e959b..28c6d77 100644 --- a/appbase/build.properties +++ b/appbase/build.properties @@ -1,8 +1,8 @@ #Created by .winboll/winboll_app_build.gradle -#Fri Mar 28 15:50:23 HKT 2025 +#Fri Mar 28 10:09:25 GMT 2025 stageCount=3 libraryProject=libappbase baseVersion=15.1 publishVersion=15.1.2 -buildCount=0 +buildCount=4 baseBetaVersion=15.1.3 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 70879b0..b25b6ac 100644 --- a/appbase/src/main/java/cc/winboll/studio/appbase/MainActivity.java +++ b/appbase/src/main/java/cc/winboll/studio/appbase/MainActivity.java @@ -22,6 +22,7 @@ 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.winboll.IWinBollActivity; +import cc.winboll.studio.libappbase.dialogs.YesNoAlertDialog; public class MainActivity extends WinBollActivityBase implements IWinBollActivity { @@ -68,12 +69,6 @@ public class MainActivity extends WinBollActivityBase implements IWinBollActivit @Override public boolean onOptionsItemSelected(MenuItem item) { - if (item.getItemId() == cc.winboll.studio.appbase.R.id.item_log) { - GlobalApplication.getWinBollActivityManager().startLogActivity(this); - return true; - } else if(item.getItemId() == cc.winboll.studio.appbase.R.id.item_minimal) { - moveTaskToBack(true); - } // 在switch语句中处理每个ID,并在处理完后返回true,未处理的情况返回false。 return super.onOptionsItemSelected(item); } @@ -142,6 +137,8 @@ public class MainActivity extends WinBollActivityBase implements IWinBollActivit startService(intent); } + + public void onStopTestDemoService(View view) { Intent intent = new Intent(this, TestDemoService.class); diff --git a/appbase/src/main/java/cc/winboll/studio/appbase/WinBollActivityBase.java b/appbase/src/main/java/cc/winboll/studio/appbase/WinBollActivityBase.java index 7b06865..54765d8 100644 --- a/appbase/src/main/java/cc/winboll/studio/appbase/WinBollActivityBase.java +++ b/appbase/src/main/java/cc/winboll/studio/appbase/WinBollActivityBase.java @@ -9,7 +9,11 @@ import android.app.Activity; import android.os.Bundle; import android.os.PersistableBundle; import android.support.v7.app.AppCompatActivity; +import android.view.MenuItem; +import cc.winboll.studio.appbase.App; +import cc.winboll.studio.appbase.R; import cc.winboll.studio.libappbase.GlobalApplication; +import cc.winboll.studio.libappbase.dialogs.YesNoAlertDialog; import cc.winboll.studio.libappbase.winboll.IWinBollActivity; import cc.winboll.studio.libappbase.winboll.WinBollActivityManager; @@ -41,8 +45,34 @@ public class WinBollActivityBase extends AppCompatActivity implements IWinBollAc public void onPostCreate(Bundle savedInstanceState, PersistableBundle persistentState) { super.onPostCreate(savedInstanceState, persistentState); } + + @Override + public boolean onOptionsItemSelected(MenuItem item) { + if (item.getItemId() == cc.winboll.studio.appbase.R.id.item_log) { + GlobalApplication.getWinBollActivityManager().startLogActivity(this); + return true; + } else if(item.getItemId() == cc.winboll.studio.appbase.R.id.item_minimal) { + //moveTaskToBack(true); + exit(); + } + // 在switch语句中处理每个ID,并在处理完后返回true,未处理的情况返回false。 + return super.onOptionsItemSelected(item); + } + void exit() { + YesNoAlertDialog.show(this, "Exit " + getString(R.string.app_name), "Close all activity and exit?", new YesNoAlertDialog.OnDialogResultListener(){ + + @Override + public void onYes() { + App.getWinBollActivityManager().finishAll(); + } + + @Override + public void onNo() { + } + }); + } @Override protected void onDestroy() { diff --git a/appbase/src/main/java/cc/winboll/studio/appbase/activities/New2Activity.java b/appbase/src/main/java/cc/winboll/studio/appbase/activities/New2Activity.java index d27d5af..37f4422 100644 --- a/appbase/src/main/java/cc/winboll/studio/appbase/activities/New2Activity.java +++ b/appbase/src/main/java/cc/winboll/studio/appbase/activities/New2Activity.java @@ -76,8 +76,6 @@ public class New2Activity extends WinBollActivityBase implements IWinBollActivit if (item.getItemId() == cc.winboll.studio.appbase.R.id.item_log) { GlobalApplication.getWinBollActivityManager().startLogActivity(this); return true; - } else if(item.getItemId() == cc.winboll.studio.appbase.R.id.item_minimal) { - moveTaskToBack(true); } // 在switch语句中处理每个ID,并在处理完后返回true,未处理的情况返回false。 return super.onOptionsItemSelected(item); 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 index 3df29e6..907c3ad 100644 --- a/appbase/src/main/java/cc/winboll/studio/appbase/activities/NewActivity.java +++ b/appbase/src/main/java/cc/winboll/studio/appbase/activities/NewActivity.java @@ -74,8 +74,6 @@ public class NewActivity extends WinBollActivityBase implements IWinBollActivity if (item.getItemId() == cc.winboll.studio.appbase.R.id.item_log) { GlobalApplication.getWinBollActivityManager().startLogActivity(this); return true; - } else if(item.getItemId() == cc.winboll.studio.appbase.R.id.item_minimal) { - moveTaskToBack(true); } // 在switch语句中处理每个ID,并在处理完后返回true,未处理的情况返回false。 return super.onOptionsItemSelected(item); diff --git a/libappbase/build.properties b/libappbase/build.properties index fa4417b..28c6d77 100644 --- a/libappbase/build.properties +++ b/libappbase/build.properties @@ -1,8 +1,8 @@ #Created by .winboll/winboll_app_build.gradle -#Fri Mar 28 15:50:14 HKT 2025 +#Fri Mar 28 10:09:25 GMT 2025 stageCount=3 libraryProject=libappbase baseVersion=15.1 publishVersion=15.1.2 -buildCount=0 +buildCount=4 baseBetaVersion=15.1.3 diff --git a/libappbase/src/main/java/cc/winboll/studio/libappbase/dialogs/YesNoAlertDialog.java b/libappbase/src/main/java/cc/winboll/studio/libappbase/dialogs/YesNoAlertDialog.java new file mode 100644 index 0000000..84446d7 --- /dev/null +++ b/libappbase/src/main/java/cc/winboll/studio/libappbase/dialogs/YesNoAlertDialog.java @@ -0,0 +1,60 @@ +package cc.winboll.studio.libappbase.dialogs; + +/** + * @Author ZhanGSKen@AliYun.Com + * @Date 2025/03/28 17:40:47 + * @Date 2024/08/12 14:46:25 + * @Describe 询问用户确定与否的选择框 + */ +import android.app.AlertDialog; +import android.content.Context; +import android.content.DialogInterface; + +public class YesNoAlertDialog { + + public static final String TAG = "YesNoAlertDialog"; + + public static void show(Context context, String szTitle, String szMessage, final OnDialogResultListener listener) { + AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder( + context); + + // set title + alertDialogBuilder.setTitle(szTitle); + + // set dialog message + alertDialogBuilder + .setMessage(szMessage) + .setCancelable(true) + .setOnCancelListener(new DialogInterface.OnCancelListener(){ + @Override + public void onCancel(DialogInterface dialog) { + listener.onNo(); + } + }) + .setPositiveButton("YES", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + // if this button is clicked, close + // current activity + listener.onYes(); + } + }) + .setNegativeButton("NO", new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int id) { + // if this button is clicked, just close + // the dialog box and do nothing + dialog.cancel(); + } + }); + + // create alert dialog + AlertDialog alertDialog = alertDialogBuilder.create(); + + // show it + alertDialog.show(); + } + + public interface OnDialogResultListener { + abstract void onYes(); + abstract void onNo(); + } +} From d9b99ee37184bc74bd6bf7fd7e19ffb7615fba1b Mon Sep 17 00:00:00 2001 From: ZhanGSKen Date: Fri, 28 Mar 2025 18:20:22 +0800 Subject: [PATCH 2/3] APK 15.1.3 release Publish. --- appbase/build.properties | 10 +++++----- libappbase/build.properties | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/appbase/build.properties b/appbase/build.properties index 28c6d77..b0aff1c 100644 --- a/appbase/build.properties +++ b/appbase/build.properties @@ -1,8 +1,8 @@ #Created by .winboll/winboll_app_build.gradle -#Fri Mar 28 10:09:25 GMT 2025 -stageCount=3 +#Fri Mar 28 18:20:22 HKT 2025 +stageCount=4 libraryProject=libappbase baseVersion=15.1 -publishVersion=15.1.2 -buildCount=4 -baseBetaVersion=15.1.3 +publishVersion=15.1.3 +buildCount=0 +baseBetaVersion=15.1.4 diff --git a/libappbase/build.properties b/libappbase/build.properties index 28c6d77..b0aff1c 100644 --- a/libappbase/build.properties +++ b/libappbase/build.properties @@ -1,8 +1,8 @@ #Created by .winboll/winboll_app_build.gradle -#Fri Mar 28 10:09:25 GMT 2025 -stageCount=3 +#Fri Mar 28 18:20:22 HKT 2025 +stageCount=4 libraryProject=libappbase baseVersion=15.1 -publishVersion=15.1.2 -buildCount=4 -baseBetaVersion=15.1.3 +publishVersion=15.1.3 +buildCount=0 +baseBetaVersion=15.1.4 From 3ef885e8c1582f9ca484bc4e8d2431290dc21763 Mon Sep 17 00:00:00 2001 From: ZhanGSKen Date: Fri, 28 Mar 2025 18:20:38 +0800 Subject: [PATCH 3/3] Library Release 15.1.3 --- appbase/build.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/appbase/build.properties b/appbase/build.properties index b0aff1c..d5a81b9 100644 --- a/appbase/build.properties +++ b/appbase/build.properties @@ -1,5 +1,5 @@ #Created by .winboll/winboll_app_build.gradle -#Fri Mar 28 18:20:22 HKT 2025 +#Fri Mar 28 18:20:32 HKT 2025 stageCount=4 libraryProject=libappbase baseVersion=15.1