把 WinBoll 改为 WinBoLL
This commit is contained in:
		@@ -21,9 +21,9 @@ import cc.winboll.studio.libappbase.LogUtils;
 | 
			
		||||
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.winboll.IWinBoLLActivity;
 | 
			
		||||
 | 
			
		||||
public class MainActivity extends WinBollActivityBase implements IWinBollActivity {
 | 
			
		||||
public class MainActivity extends WinBoLLActivityBase implements IWinBoLLActivity {
 | 
			
		||||
 | 
			
		||||
    public static final String TAG = "MainActivity";
 | 
			
		||||
 | 
			
		||||
@@ -176,7 +176,7 @@ public class MainActivity extends WinBollActivityBase implements IWinBollActivit
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void onTestOpenNewActivity(View view) {
 | 
			
		||||
        GlobalApplication.getWinBollActivityManager().startWinBollActivity(this, NewActivity.class);
 | 
			
		||||
        GlobalApplication.getWinBoLLActivityManager().startWinBoLLActivity(this, NewActivity.class);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    
 | 
			
		||||
 
 | 
			
		||||
@@ -0,0 +1,81 @@
 | 
			
		||||
package cc.winboll.studio.appbase;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @Author ZhanGSKen@AliYun.Com
 | 
			
		||||
 * @Date 2025/03/28 15:34:16
 | 
			
		||||
 * @Describe 应用活动窗口基类
 | 
			
		||||
 */
 | 
			
		||||
import android.app.Activity;
 | 
			
		||||
import android.os.Bundle;
 | 
			
		||||
import android.os.PersistableBundle;
 | 
			
		||||
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;
 | 
			
		||||
 | 
			
		||||
public class WinBoLLActivityBase extends Activity implements IWinBoLLActivity {
 | 
			
		||||
 | 
			
		||||
    public static final String TAG = "WinBoLLActivityBase";
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public Activity getActivity() {
 | 
			
		||||
        return this;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public String getTag() {
 | 
			
		||||
        return TAG;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    WinBoLLActivityManager getWinBoLLActivityManager() {
 | 
			
		||||
        return WinBoLLActivityManager.getInstance(GlobalApplication.getInstance());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    protected void onCreate(Bundle savedInstanceState) {
 | 
			
		||||
        super.onCreate(savedInstanceState);
 | 
			
		||||
        getWinBoLLActivityManager().add(this);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    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() {
 | 
			
		||||
        super.onDestroy();
 | 
			
		||||
        getWinBoLLActivityManager().registeRemove(this);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -13,12 +13,12 @@ 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;
 | 
			
		||||
import cc.winboll.studio.libappbase.winboll.IWinBoLLActivity;
 | 
			
		||||
import cc.winboll.studio.libappbase.winboll.WinBoLLActivityManager;
 | 
			
		||||
 | 
			
		||||
public class WinBollActivityBase extends Activity implements IWinBollActivity {
 | 
			
		||||
public class WinBoLLActivityBase extends Activity implements IWinBoLLActivity {
 | 
			
		||||
 | 
			
		||||
    public static final String TAG = "WinBollActivityBase";
 | 
			
		||||
    public static final String TAG = "WinBoLLActivityBase";
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public Activity getActivity() {
 | 
			
		||||
@@ -30,14 +30,14 @@ public class WinBollActivityBase extends Activity implements IWinBollActivity {
 | 
			
		||||
        return TAG;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    WinBollActivityManager getWinBollActivityManager() {
 | 
			
		||||
        return WinBollActivityManager.getInstance(GlobalApplication.getInstance());
 | 
			
		||||
    WinBoLLActivityManager getWinBoLLActivityManager() {
 | 
			
		||||
        return WinBoLLActivityManager.getInstance(GlobalApplication.getInstance());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    protected void onCreate(Bundle savedInstanceState) {
 | 
			
		||||
        super.onCreate(savedInstanceState);
 | 
			
		||||
        getWinBollActivityManager().add(this);
 | 
			
		||||
        getWinBoLLActivityManager().add(this);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
@@ -49,7 +49,7 @@ public class WinBollActivityBase extends Activity implements IWinBollActivity {
 | 
			
		||||
    @Override
 | 
			
		||||
    public boolean onOptionsItemSelected(MenuItem item) {
 | 
			
		||||
        if (item.getItemId() == cc.winboll.studio.appbase.R.id.item_log) {
 | 
			
		||||
            GlobalApplication.getWinBollActivityManager().startLogActivity(this);
 | 
			
		||||
            GlobalApplication.getWinBoLLActivityManager().startLogActivity(this);
 | 
			
		||||
            return true;
 | 
			
		||||
        } else if(item.getItemId() == cc.winboll.studio.appbase.R.id.item_minimal) {
 | 
			
		||||
            //moveTaskToBack(true);
 | 
			
		||||
@@ -64,7 +64,7 @@ public class WinBollActivityBase extends Activity implements IWinBollActivity {
 | 
			
		||||
 | 
			
		||||
                @Override
 | 
			
		||||
                public void onYes() {
 | 
			
		||||
                    App.getWinBollActivityManager().finishAll();
 | 
			
		||||
                    App.getWinBoLLActivityManager().finishAll();
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                @Override
 | 
			
		||||
@@ -76,6 +76,6 @@ public class WinBollActivityBase extends Activity implements IWinBollActivity {
 | 
			
		||||
    @Override
 | 
			
		||||
    protected void onDestroy() {
 | 
			
		||||
        super.onDestroy();
 | 
			
		||||
        getWinBollActivityManager().registeRemove(this);
 | 
			
		||||
        getWinBoLLActivityManager().registeRemove(this);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -12,11 +12,11 @@ import android.view.MenuItem;
 | 
			
		||||
import android.view.View;
 | 
			
		||||
import android.widget.Toolbar;
 | 
			
		||||
import cc.winboll.studio.appbase.R;
 | 
			
		||||
import cc.winboll.studio.appbase.WinBollActivityBase;
 | 
			
		||||
import cc.winboll.studio.appbase.WinBoLLActivityBase;
 | 
			
		||||
import cc.winboll.studio.libappbase.GlobalApplication;
 | 
			
		||||
import cc.winboll.studio.libappbase.winboll.IWinBollActivity;
 | 
			
		||||
import cc.winboll.studio.libappbase.winboll.IWinBoLLActivity;
 | 
			
		||||
 | 
			
		||||
public class New2Activity extends WinBollActivityBase implements IWinBollActivity {
 | 
			
		||||
public class New2Activity extends WinBoLLActivityBase implements IWinBoLLActivity {
 | 
			
		||||
 | 
			
		||||
    public static final String TAG = "New2Activity";
 | 
			
		||||
 | 
			
		||||
@@ -52,15 +52,15 @@ public class New2Activity extends WinBollActivityBase implements IWinBollActivit
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void onCloseThisActivity(View view) {
 | 
			
		||||
        GlobalApplication.getWinBollActivityManager().finish(this);
 | 
			
		||||
        GlobalApplication.getWinBoLLActivityManager().finish(this);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void onCloseAllActivity(View view) {
 | 
			
		||||
        GlobalApplication.getWinBollActivityManager().finishAll();
 | 
			
		||||
        GlobalApplication.getWinBoLLActivityManager().finishAll();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void onNewActivity(View view) {
 | 
			
		||||
        GlobalApplication.getWinBollActivityManager().startWinBollActivity(this, NewActivity.class);
 | 
			
		||||
        GlobalApplication.getWinBoLLActivityManager().startWinBoLLActivity(this, NewActivity.class);
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
@@ -74,7 +74,7 @@ public class New2Activity 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);
 | 
			
		||||
            GlobalApplication.getWinBoLLActivityManager().startLogActivity(this);
 | 
			
		||||
            return true;
 | 
			
		||||
        }
 | 
			
		||||
        // 在switch语句中处理每个ID,并在处理完后返回true,未处理的情况返回false。
 | 
			
		||||
 
 | 
			
		||||
@@ -11,11 +11,11 @@ import android.view.MenuItem;
 | 
			
		||||
import android.view.View;
 | 
			
		||||
import android.widget.Toolbar;
 | 
			
		||||
import cc.winboll.studio.appbase.R;
 | 
			
		||||
import cc.winboll.studio.appbase.WinBollActivityBase;
 | 
			
		||||
import cc.winboll.studio.appbase.WinBoLLActivityBase;
 | 
			
		||||
import cc.winboll.studio.libappbase.GlobalApplication;
 | 
			
		||||
import cc.winboll.studio.libappbase.winboll.IWinBollActivity;
 | 
			
		||||
import cc.winboll.studio.libappbase.winboll.IWinBoLLActivity;
 | 
			
		||||
 | 
			
		||||
public class NewActivity extends WinBollActivityBase implements IWinBollActivity {
 | 
			
		||||
public class NewActivity extends WinBoLLActivityBase implements IWinBoLLActivity {
 | 
			
		||||
 | 
			
		||||
    public static final String TAG = "NewActivity";
 | 
			
		||||
 | 
			
		||||
@@ -50,15 +50,15 @@ public class NewActivity extends WinBollActivityBase implements IWinBollActivity
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void onCloseThisActivity(View view) {
 | 
			
		||||
        GlobalApplication.getWinBollActivityManager().finish(this);
 | 
			
		||||
        GlobalApplication.getWinBoLLActivityManager().finish(this);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void onCloseAllActivity(View view) {
 | 
			
		||||
        GlobalApplication.getWinBollActivityManager().finishAll();
 | 
			
		||||
        GlobalApplication.getWinBoLLActivityManager().finishAll();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void onNew2Activity(View view) {
 | 
			
		||||
        GlobalApplication.getWinBollActivityManager().startWinBollActivity(this, New2Activity.class);
 | 
			
		||||
        GlobalApplication.getWinBoLLActivityManager().startWinBoLLActivity(this, New2Activity.class);
 | 
			
		||||
    }
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
@@ -72,7 +72,7 @@ public class NewActivity extends WinBollActivityBase implements IWinBollActivity
 | 
			
		||||
    @Override
 | 
			
		||||
    public boolean onOptionsItemSelected(MenuItem item) {
 | 
			
		||||
        if (item.getItemId() == cc.winboll.studio.appbase.R.id.item_log) {
 | 
			
		||||
            GlobalApplication.getWinBollActivityManager().startLogActivity(this);
 | 
			
		||||
            GlobalApplication.getWinBoLLActivityManager().startLogActivity(this);
 | 
			
		||||
            return true;
 | 
			
		||||
        }
 | 
			
		||||
        // 在switch语句中处理每个ID,并在处理完后返回true,未处理的情况返回false。
 | 
			
		||||
 
 | 
			
		||||
@@ -0,0 +1,72 @@
 | 
			
		||||
package cc.winboll.studio.appbase.models;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @Author ZhanGSKen@AliYun.Com
 | 
			
		||||
 * @Date 2025/02/17 10:05:09
 | 
			
		||||
 * @Describe APPSOSReportBean
 | 
			
		||||
 */
 | 
			
		||||
import android.util.JsonReader;
 | 
			
		||||
import android.util.JsonWriter;
 | 
			
		||||
import cc.winboll.studio.libappbase.BaseBean;
 | 
			
		||||
import java.io.IOException;
 | 
			
		||||
 | 
			
		||||
public class WinBoLLNewsBean extends BaseBean {
 | 
			
		||||
    
 | 
			
		||||
    public static final String TAG = "WinBoLLNewsBean";
 | 
			
		||||
    
 | 
			
		||||
    protected String message;
 | 
			
		||||
    
 | 
			
		||||
    public WinBoLLNewsBean() {
 | 
			
		||||
        this.message = "";
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public WinBoLLNewsBean(String message) {
 | 
			
		||||
        this.message = message;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setMessage(String message) {
 | 
			
		||||
        this.message = message;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getMessage() {
 | 
			
		||||
        return message;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public String getName() {
 | 
			
		||||
        return WinBoLLNewsBean.class.getName();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void writeThisToJsonWriter(JsonWriter jsonWriter) throws IOException {
 | 
			
		||||
        super.writeThisToJsonWriter(jsonWriter);
 | 
			
		||||
        jsonWriter.name("message").value(getMessage());
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public boolean initObjectsFromJsonReader(JsonReader jsonReader, String name) throws IOException {
 | 
			
		||||
        if (super.initObjectsFromJsonReader(jsonReader, name)) { return true; } else {
 | 
			
		||||
            if (name.equals("message")) {
 | 
			
		||||
                setMessage(jsonReader.nextString());
 | 
			
		||||
            } else {
 | 
			
		||||
                return false;
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        return true;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public BaseBean readBeanFromJsonReader(JsonReader jsonReader) throws IOException {
 | 
			
		||||
        jsonReader.beginObject();
 | 
			
		||||
        while (jsonReader.hasNext()) {
 | 
			
		||||
            String name = jsonReader.nextName();
 | 
			
		||||
            if (!initObjectsFromJsonReader(jsonReader, name)) {
 | 
			
		||||
                jsonReader.skipValue();
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        // 结束 JSON 对象
 | 
			
		||||
        jsonReader.endObject();
 | 
			
		||||
        return this;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -10,17 +10,17 @@ import android.util.JsonWriter;
 | 
			
		||||
import cc.winboll.studio.libappbase.BaseBean;
 | 
			
		||||
import java.io.IOException;
 | 
			
		||||
 | 
			
		||||
public class WinBollNewsBean extends BaseBean {
 | 
			
		||||
public class WinBoLLNewsBean extends BaseBean {
 | 
			
		||||
    
 | 
			
		||||
    public static final String TAG = "WinBollNewsBean";
 | 
			
		||||
    public static final String TAG = "WinBoLLNewsBean";
 | 
			
		||||
    
 | 
			
		||||
    protected String message;
 | 
			
		||||
    
 | 
			
		||||
    public WinBollNewsBean() {
 | 
			
		||||
    public WinBoLLNewsBean() {
 | 
			
		||||
        this.message = "";
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public WinBollNewsBean(String message) {
 | 
			
		||||
    public WinBoLLNewsBean(String message) {
 | 
			
		||||
        this.message = message;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@@ -34,7 +34,7 @@ public class WinBollNewsBean extends BaseBean {
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public String getName() {
 | 
			
		||||
        return WinBollNewsBean.class.getName();
 | 
			
		||||
        return WinBoLLNewsBean.class.getName();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
 
 | 
			
		||||
@@ -10,7 +10,7 @@ import android.content.ComponentName;
 | 
			
		||||
import android.content.Context;
 | 
			
		||||
import android.content.Intent;
 | 
			
		||||
import android.content.IntentFilter;
 | 
			
		||||
import cc.winboll.studio.appbase.models.WinBollNewsBean;
 | 
			
		||||
import cc.winboll.studio.appbase.models.WinBoLLNewsBean;
 | 
			
		||||
import cc.winboll.studio.appbase.services.MainService;
 | 
			
		||||
import cc.winboll.studio.appbase.widgets.APPNewsWidget;
 | 
			
		||||
import cc.winboll.studio.libappbase.AppUtils;
 | 
			
		||||
@@ -18,7 +18,7 @@ import cc.winboll.studio.libappbase.LogUtils;
 | 
			
		||||
import cc.winboll.studio.libappbase.sos.APPModel;
 | 
			
		||||
import cc.winboll.studio.libappbase.sos.SOS;
 | 
			
		||||
import cc.winboll.studio.libappbase.sos.SOSObject;
 | 
			
		||||
import cc.winboll.studio.libappbase.sos.WinBoll;
 | 
			
		||||
import cc.winboll.studio.libappbase.sos.WinBoLL;
 | 
			
		||||
import cc.winboll.studio.libappbase.utils.ToastUtils;
 | 
			
		||||
import java.io.IOException;
 | 
			
		||||
import java.lang.ref.WeakReference;
 | 
			
		||||
@@ -42,11 +42,11 @@ public class MainReceiver extends BroadcastReceiver {
 | 
			
		||||
        String szAction = intent.getAction();
 | 
			
		||||
        if (szAction.equals(ACTION_BOOT_COMPLETED)) {
 | 
			
		||||
            ToastUtils.show("ACTION_BOOT_COMPLETED");
 | 
			
		||||
        } else if (szAction.equals(WinBoll.ACTION_BIND)) {
 | 
			
		||||
        } else if (szAction.equals(WinBoLL.ACTION_BIND)) {
 | 
			
		||||
            LogUtils.d(TAG, "ACTION_BIND");
 | 
			
		||||
            LogUtils.d(TAG, String.format("context.getPackageName() %s", context.getPackageName()));
 | 
			
		||||
            LogUtils.d(TAG, String.format("intent.getAction() %s", intent.getAction()));
 | 
			
		||||
            String szAPPModel = intent.getStringExtra(WinBoll.EXTRA_APPMODEL);
 | 
			
		||||
            String szAPPModel = intent.getStringExtra(WinBoLL.EXTRA_APPMODEL);
 | 
			
		||||
            LogUtils.d(TAG, String.format("szAPPModel %s", szAPPModel));
 | 
			
		||||
            if (szAPPModel != null && !szAPPModel.equals("")) {
 | 
			
		||||
                try {
 | 
			
		||||
@@ -80,7 +80,7 @@ public class MainReceiver extends BroadcastReceiver {
 | 
			
		||||
 | 
			
		||||
                    String appName = AppUtils.getAppNameByPackageName(context, szObjectPackageName);
 | 
			
		||||
                    LogUtils.d(TAG, String.format("appName %s", appName));
 | 
			
		||||
                    WinBollNewsBean appWinBollNewsBean = new WinBollNewsBean(appName);
 | 
			
		||||
                    WinBoLLNewsBean appWinBoLLNewsBean = new WinBoLLNewsBean(appName);
 | 
			
		||||
                    SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
 | 
			
		||||
                    String currentTime = sdf.format(new Date());
 | 
			
		||||
                    StringBuilder sbLine = new StringBuilder();
 | 
			
		||||
@@ -88,9 +88,9 @@ public class MainReceiver extends BroadcastReceiver {
 | 
			
		||||
                    sbLine.append(currentTime);
 | 
			
		||||
                    sbLine.append("] Power to ");
 | 
			
		||||
                    sbLine.append(appName);
 | 
			
		||||
                    appWinBollNewsBean.setMessage(sbLine.toString());
 | 
			
		||||
                    appWinBoLLNewsBean.setMessage(sbLine.toString());
 | 
			
		||||
 | 
			
		||||
                    APPNewsWidget.addWinBollNewsBean(context, appWinBollNewsBean);
 | 
			
		||||
                    APPNewsWidget.addWinBoLLNewsBean(context, appWinBoLLNewsBean);
 | 
			
		||||
 | 
			
		||||
                    Intent intentWidget = new Intent(context, APPNewsWidget.class);
 | 
			
		||||
                    intentWidget.setAction(APPNewsWidget.ACTION_RELOAD_REPORT);
 | 
			
		||||
@@ -110,7 +110,7 @@ public class MainReceiver extends BroadcastReceiver {
 | 
			
		||||
        IntentFilter filter=new IntentFilter();
 | 
			
		||||
        filter.addAction(ACTION_BOOT_COMPLETED);
 | 
			
		||||
        filter.addAction(SOS.ACTION_SOS);
 | 
			
		||||
        filter.addAction(WinBoll.ACTION_BIND);
 | 
			
		||||
        filter.addAction(WinBoLL.ACTION_BIND);
 | 
			
		||||
        //filter.addAction(Intent.ACTION_BATTERY_CHANGED);
 | 
			
		||||
        service.registerReceiver(this, filter);
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -12,7 +12,7 @@ import android.os.Binder;
 | 
			
		||||
import android.os.IBinder;
 | 
			
		||||
import cc.winboll.studio.appbase.models.TestDemoBindServiceBean;
 | 
			
		||||
import cc.winboll.studio.libappbase.LogUtils;
 | 
			
		||||
import cc.winboll.studio.libappbase.sos.WinBoll;
 | 
			
		||||
import cc.winboll.studio.libappbase.sos.WinBoLL;
 | 
			
		||||
import cc.winboll.studio.appbase.App;
 | 
			
		||||
import cc.winboll.studio.libappbase.sos.SOS;
 | 
			
		||||
 | 
			
		||||
@@ -156,9 +156,9 @@ public class TestDemoBindService extends Service {
 | 
			
		||||
                super.run();
 | 
			
		||||
                LogUtils.d(TAG, "run() start");
 | 
			
		||||
                if (App.isDebuging()) {
 | 
			
		||||
                    WinBoll.bindToAPPBaseBeta(mContext, TestDemoBindService.class.getName());
 | 
			
		||||
                    WinBoLL.bindToAPPBaseBeta(mContext, TestDemoBindService.class.getName());
 | 
			
		||||
                } else {
 | 
			
		||||
                    WinBoll.bindToAPPBase(mContext, TestDemoBindService.class.getName());
 | 
			
		||||
                    WinBoLL.bindToAPPBase(mContext, TestDemoBindService.class.getName());
 | 
			
		||||
                }
 | 
			
		||||
 | 
			
		||||
                while (!isExit()) {
 | 
			
		||||
 
 | 
			
		||||
@@ -12,7 +12,7 @@ import android.os.Binder;
 | 
			
		||||
import android.os.IBinder;
 | 
			
		||||
import cc.winboll.studio.appbase.models.TestDemoServiceBean;
 | 
			
		||||
import cc.winboll.studio.libappbase.LogUtils;
 | 
			
		||||
import cc.winboll.studio.libappbase.sos.WinBoll;
 | 
			
		||||
import cc.winboll.studio.libappbase.sos.WinBoLL;
 | 
			
		||||
 | 
			
		||||
public class TestDemoService extends Service {
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -12,12 +12,12 @@ import android.content.Context;
 | 
			
		||||
import android.content.Intent;
 | 
			
		||||
import android.widget.RemoteViews;
 | 
			
		||||
import cc.winboll.studio.appbase.R;
 | 
			
		||||
import cc.winboll.studio.appbase.models.WinBollNewsBean;
 | 
			
		||||
import cc.winboll.studio.appbase.models.WinBoLLNewsBean;
 | 
			
		||||
import cc.winboll.studio.appbase.receivers.APPNewsWidgetClickListener;
 | 
			
		||||
import cc.winboll.studio.libappbase.AppUtils;
 | 
			
		||||
import cc.winboll.studio.libappbase.LogUtils;
 | 
			
		||||
import cc.winboll.studio.libappbase.sos.APPModel;
 | 
			
		||||
import cc.winboll.studio.libappbase.sos.WinBoll;
 | 
			
		||||
import cc.winboll.studio.libappbase.sos.WinBoLL;
 | 
			
		||||
import java.io.IOException;
 | 
			
		||||
import java.text.SimpleDateFormat;
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
@@ -31,14 +31,14 @@ public class APPNewsWidget extends AppWidgetProvider {
 | 
			
		||||
    public static final String ACTION_RELOAD_REPORT = APPNewsWidget.class.getName() + ".ACTION_RELOAD_REPORT";
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    volatile static ArrayList<WinBollNewsBean> _WinBollNewsBeanList;
 | 
			
		||||
    volatile static ArrayList<WinBoLLNewsBean> _WinBoLLNewsBeanList;
 | 
			
		||||
    final static int _MAX_PAGES = 10;
 | 
			
		||||
    final static int _OnePageLinesCount = 5;
 | 
			
		||||
    volatile static int _CurrentPageIndex = 0;
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
 | 
			
		||||
        initWinBollNewsBeanList(context);
 | 
			
		||||
        initWinBoLLNewsBeanList(context);
 | 
			
		||||
        for (int appWidgetId : appWidgetIds) {
 | 
			
		||||
            updateAppWidget(context, appWidgetManager, appWidgetId);
 | 
			
		||||
        }
 | 
			
		||||
@@ -47,7 +47,7 @@ public class APPNewsWidget extends AppWidgetProvider {
 | 
			
		||||
    @Override
 | 
			
		||||
    public void onReceive(Context context, Intent intent) {
 | 
			
		||||
        super.onReceive(context, intent);
 | 
			
		||||
        initWinBollNewsBeanList(context);
 | 
			
		||||
        initWinBoLLNewsBeanList(context);
 | 
			
		||||
        if (intent.getAction().equals(ACTION_RELOAD_REPORT)) {
 | 
			
		||||
            LogUtils.d(TAG, "ACTION_RELOAD_REPORT");
 | 
			
		||||
            AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
 | 
			
		||||
@@ -57,7 +57,7 @@ public class APPNewsWidget extends AppWidgetProvider {
 | 
			
		||||
            }
 | 
			
		||||
        }else if (intent.getAction().equals(ACTION_WAKEUP_SERVICE)) {
 | 
			
		||||
            LogUtils.d(TAG, "ACTION_WAKEUP_SERVICE");
 | 
			
		||||
            String szAPPModel = intent.getStringExtra(WinBoll.EXTRA_APPMODEL);
 | 
			
		||||
            String szAPPModel = intent.getStringExtra(WinBoLL.EXTRA_APPMODEL);
 | 
			
		||||
            LogUtils.d(TAG, String.format("szAPPModel %s", szAPPModel));
 | 
			
		||||
            if (szAPPModel != null && !szAPPModel.equals("")) {
 | 
			
		||||
                try {
 | 
			
		||||
@@ -71,7 +71,7 @@ public class APPNewsWidget extends AppWidgetProvider {
 | 
			
		||||
                        
 | 
			
		||||
                        String appName = AppUtils.getAppNameByPackageName(context, szAppPackageName);
 | 
			
		||||
                        LogUtils.d(TAG, String.format("appName %s", appName));
 | 
			
		||||
                        WinBollNewsBean winBollNewsBean = new WinBollNewsBean(appName);
 | 
			
		||||
                        WinBoLLNewsBean winBollNewsBean = new WinBoLLNewsBean(appName);
 | 
			
		||||
                        SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
 | 
			
		||||
                        String currentTime = sdf.format(new Date());
 | 
			
		||||
                        StringBuilder sbLine = new StringBuilder();
 | 
			
		||||
@@ -81,7 +81,7 @@ public class APPNewsWidget extends AppWidgetProvider {
 | 
			
		||||
                        sbLine.append(appName);
 | 
			
		||||
                        winBollNewsBean.setMessage(sbLine.toString());
 | 
			
		||||
                        
 | 
			
		||||
                        addWinBollNewsBean(context, winBollNewsBean);
 | 
			
		||||
                        addWinBoLLNewsBean(context, winBollNewsBean);
 | 
			
		||||
 | 
			
		||||
                        AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
 | 
			
		||||
                        int[] appWidgetIds = appWidgetManager.getAppWidgetIds(new ComponentName(context, APPNewsWidget.class));
 | 
			
		||||
@@ -99,24 +99,24 @@ public class APPNewsWidget extends AppWidgetProvider {
 | 
			
		||||
    //
 | 
			
		||||
    // 加入新报告信息
 | 
			
		||||
    //
 | 
			
		||||
    public synchronized static void addWinBollNewsBean(Context context, WinBollNewsBean bean) {
 | 
			
		||||
        initWinBollNewsBeanList(context);
 | 
			
		||||
        _WinBollNewsBeanList.add(0, bean);
 | 
			
		||||
    public synchronized static void addWinBoLLNewsBean(Context context, WinBoLLNewsBean bean) {
 | 
			
		||||
        initWinBoLLNewsBeanList(context);
 | 
			
		||||
        _WinBoLLNewsBeanList.add(0, bean);
 | 
			
		||||
        // 控制记录总数
 | 
			
		||||
        while (_WinBollNewsBeanList.size() > _MAX_PAGES * _OnePageLinesCount) {
 | 
			
		||||
            _WinBollNewsBeanList.remove(_WinBollNewsBeanList.size() - 1);
 | 
			
		||||
        while (_WinBoLLNewsBeanList.size() > _MAX_PAGES * _OnePageLinesCount) {
 | 
			
		||||
            _WinBoLLNewsBeanList.remove(_WinBoLLNewsBeanList.size() - 1);
 | 
			
		||||
        }
 | 
			
		||||
        WinBollNewsBean.saveBeanList(context, _WinBollNewsBeanList, WinBollNewsBean.class);
 | 
			
		||||
        WinBoLLNewsBean.saveBeanList(context, _WinBoLLNewsBeanList, WinBoLLNewsBean.class);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    synchronized static void initWinBollNewsBeanList(Context context) {
 | 
			
		||||
        if (_WinBollNewsBeanList == null) {
 | 
			
		||||
            _WinBollNewsBeanList = new ArrayList<WinBollNewsBean>();
 | 
			
		||||
            WinBollNewsBean.loadBeanList(context, _WinBollNewsBeanList, WinBollNewsBean.class);
 | 
			
		||||
    synchronized static void initWinBoLLNewsBeanList(Context context) {
 | 
			
		||||
        if (_WinBoLLNewsBeanList == null) {
 | 
			
		||||
            _WinBoLLNewsBeanList = new ArrayList<WinBoLLNewsBean>();
 | 
			
		||||
            WinBoLLNewsBean.loadBeanList(context, _WinBoLLNewsBeanList, WinBoLLNewsBean.class);
 | 
			
		||||
        }
 | 
			
		||||
        if (_WinBollNewsBeanList == null) {
 | 
			
		||||
            _WinBollNewsBeanList = new ArrayList<WinBollNewsBean>();
 | 
			
		||||
            WinBollNewsBean.saveBeanList(context, _WinBollNewsBeanList, WinBollNewsBean.class);
 | 
			
		||||
        if (_WinBoLLNewsBeanList == null) {
 | 
			
		||||
            _WinBoLLNewsBeanList = new ArrayList<WinBoLLNewsBean>();
 | 
			
		||||
            WinBoLLNewsBean.saveBeanList(context, _WinBoLLNewsBeanList, WinBoLLNewsBean.class);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@@ -141,11 +141,11 @@ public class APPNewsWidget extends AppWidgetProvider {
 | 
			
		||||
 | 
			
		||||
    public static String getMessage() {
 | 
			
		||||
        ArrayList<String> msgTemp = new ArrayList<String>();
 | 
			
		||||
        if (_WinBollNewsBeanList != null) {
 | 
			
		||||
        if (_WinBoLLNewsBeanList != null) {
 | 
			
		||||
            int start = _OnePageLinesCount * _CurrentPageIndex;
 | 
			
		||||
            start = _WinBollNewsBeanList.size() > start ? start : _WinBollNewsBeanList.size() - 1;
 | 
			
		||||
            for (int i = start, j = 0; i < _WinBollNewsBeanList.size() && j < _OnePageLinesCount && start > -1; i++, j++) {
 | 
			
		||||
                msgTemp.add(_WinBollNewsBeanList.get(i).getMessage());
 | 
			
		||||
            start = _WinBoLLNewsBeanList.size() > start ? start : _WinBoLLNewsBeanList.size() - 1;
 | 
			
		||||
            for (int i = start, j = 0; i < _WinBoLLNewsBeanList.size() && j < _OnePageLinesCount && start > -1; i++, j++) {
 | 
			
		||||
                msgTemp.add(_WinBoLLNewsBeanList.get(i).getMessage());
 | 
			
		||||
            }
 | 
			
		||||
            String message = String.join("\n", msgTemp);
 | 
			
		||||
            return message;
 | 
			
		||||
@@ -154,7 +154,7 @@ public class APPNewsWidget extends AppWidgetProvider {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static void prePage(Context context) {
 | 
			
		||||
        if (_WinBollNewsBeanList != null) {
 | 
			
		||||
        if (_WinBoLLNewsBeanList != null) {
 | 
			
		||||
            if (_CurrentPageIndex > 0) {
 | 
			
		||||
                _CurrentPageIndex = _CurrentPageIndex - 1;
 | 
			
		||||
            }
 | 
			
		||||
@@ -165,8 +165,8 @@ public class APPNewsWidget extends AppWidgetProvider {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static void nextPage(Context context) {
 | 
			
		||||
        if (_WinBollNewsBeanList != null) {
 | 
			
		||||
            if ((_CurrentPageIndex + 1) * _OnePageLinesCount < _WinBollNewsBeanList.size()) {
 | 
			
		||||
        if (_WinBoLLNewsBeanList != null) {
 | 
			
		||||
            if ((_CurrentPageIndex + 1) * _OnePageLinesCount < _WinBoLLNewsBeanList.size()) {
 | 
			
		||||
                _CurrentPageIndex = _CurrentPageIndex + 1;
 | 
			
		||||
            }
 | 
			
		||||
            Intent intentWidget = new Intent(context, APPNewsWidget.class);
 | 
			
		||||
@@ -176,11 +176,11 @@ public class APPNewsWidget extends AppWidgetProvider {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    String getPageInfo() {
 | 
			
		||||
        if (_WinBollNewsBeanList == null) {
 | 
			
		||||
        if (_WinBoLLNewsBeanList == null) {
 | 
			
		||||
            return "0/0";
 | 
			
		||||
        }
 | 
			
		||||
        int leftCount = _WinBollNewsBeanList.size() % _OnePageLinesCount;
 | 
			
		||||
        int currentPageCount = _WinBollNewsBeanList.size() / _OnePageLinesCount + (leftCount == 0 ?0: 1);
 | 
			
		||||
        int leftCount = _WinBoLLNewsBeanList.size() % _OnePageLinesCount;
 | 
			
		||||
        int currentPageCount = _WinBoLLNewsBeanList.size() / _OnePageLinesCount + (leftCount == 0 ?0: 1);
 | 
			
		||||
        return String.format("%d/%d", _CurrentPageIndex + 1, currentPageCount);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -32,7 +32,7 @@
 | 
			
		||||
				<TextView
 | 
			
		||||
					android:layout_width="wrap_content"
 | 
			
		||||
					android:layout_height="wrap_content"
 | 
			
		||||
					android:text="Hello, WinBoll!"/>
 | 
			
		||||
					android:text="Hello, WinBoLL!"/>
 | 
			
		||||
 | 
			
		||||
				<TextView
 | 
			
		||||
					android:layout_width="wrap_content"
 | 
			
		||||
 
 | 
			
		||||
@@ -18,7 +18,7 @@
 | 
			
		||||
			android:layout_height="wrap_content"
 | 
			
		||||
			android:id="@+id/tv_title"
 | 
			
		||||
			android:layout_weight="1.0"
 | 
			
		||||
			android:text="WinBollNews"
 | 
			
		||||
			android:text="WinBoLLNews"
 | 
			
		||||
			android:textStyle="bold"
 | 
			
		||||
			android:textSize="16sp"/>
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -1,5 +1,5 @@
 | 
			
		||||
<?xml version="1.0" encoding="utf-8"?>
 | 
			
		||||
<resources>
 | 
			
		||||
    <string name="app_name">AppBase</string>
 | 
			
		||||
    <string name="tileservice_name">WinBoll</string>
 | 
			
		||||
    <string name="tileservice_name">WinBoLL</string>
 | 
			
		||||
</resources>
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user