Merge remote-tracking branch 'origin/aes' into appbase
This commit is contained in:
commit
15fa0ad506
@ -24,12 +24,12 @@ android {
|
|||||||
defaultConfig {
|
defaultConfig {
|
||||||
applicationId "cc.winboll.studio.aes"
|
applicationId "cc.winboll.studio.aes"
|
||||||
minSdkVersion 24
|
minSdkVersion 24
|
||||||
targetSdkVersion 29
|
targetSdkVersion 30
|
||||||
versionCode 1
|
versionCode 1
|
||||||
// versionName 更新后需要手动设置
|
// versionName 更新后需要手动设置
|
||||||
// 项目模块目录的 build.gradle 文件的 stageCount=0
|
// 项目模块目录的 build.gradle 文件的 stageCount=0
|
||||||
// Gradle编译环境下合起来的 versionName 就是 "${versionName}.0"
|
// Gradle编译环境下合起来的 versionName 就是 "${versionName}.0"
|
||||||
versionName "15.2"
|
versionName "15.6"
|
||||||
if(true) {
|
if(true) {
|
||||||
versionName = genVersionName("${versionName}")
|
versionName = genVersionName("${versionName}")
|
||||||
}
|
}
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
#Created by .winboll/winboll_app_build.gradle
|
#Created by .winboll/winboll_app_build.gradle
|
||||||
#Thu Apr 03 11:14:05 HKT 2025
|
#Tue Apr 29 15:14:41 HKT 2025
|
||||||
stageCount=7
|
stageCount=1
|
||||||
libraryProject=libaes
|
libraryProject=libaes
|
||||||
baseVersion=15.2
|
baseVersion=15.6
|
||||||
publishVersion=15.2.6
|
publishVersion=15.6.0
|
||||||
buildCount=0
|
buildCount=0
|
||||||
baseBetaVersion=15.2.7
|
baseBetaVersion=15.6.1
|
||||||
|
@ -10,14 +10,13 @@ import android.content.Context;
|
|||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
import android.widget.LinearLayout;
|
import android.widget.LinearLayout;
|
||||||
import androidx.appcompat.app.AppCompatActivity;
|
|
||||||
import androidx.appcompat.widget.Toolbar;
|
import androidx.appcompat.widget.Toolbar;
|
||||||
import cc.winboll.studio.libaes.winboll.APPInfo;
|
import cc.winboll.studio.libaes.winboll.APPInfo;
|
||||||
import cc.winboll.studio.libaes.winboll.AboutView;
|
import cc.winboll.studio.libaes.winboll.AboutView;
|
||||||
import cc.winboll.studio.libappbase.GlobalApplication;
|
import cc.winboll.studio.libappbase.GlobalApplication;
|
||||||
import cc.winboll.studio.libappbase.winboll.IWinBollActivity;
|
import cc.winboll.studio.libappbase.winboll.IWinBoLLActivity;
|
||||||
|
|
||||||
public class AboutActivity extends WinBollActivity implements IWinBollActivity {
|
public class AboutActivity extends WinBoLLActivity implements IWinBoLLActivity {
|
||||||
|
|
||||||
public static final String TAG = "AboutActivity";
|
public static final String TAG = "AboutActivity";
|
||||||
|
|
||||||
@ -64,13 +63,13 @@ public class AboutActivity extends WinBollActivity implements IWinBollActivity {
|
|||||||
);
|
);
|
||||||
layout.addView(aboutView, params);
|
layout.addView(aboutView, params);
|
||||||
|
|
||||||
GlobalApplication.getWinBollActivityManager().add(this);
|
GlobalApplication.getWinBoLLActivityManager().add(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onDestroy() {
|
protected void onDestroy() {
|
||||||
super.onDestroy();
|
super.onDestroy();
|
||||||
GlobalApplication.getWinBollActivityManager().registeRemove(this);
|
GlobalApplication.getWinBoLLActivityManager().registeRemove(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public AboutView CreateAboutView() {
|
public AboutView CreateAboutView() {
|
||||||
|
@ -8,6 +8,7 @@ package cc.winboll.studio.aes;
|
|||||||
import android.view.Gravity;
|
import android.view.Gravity;
|
||||||
import cc.winboll.studio.libappbase.GlobalApplication;
|
import cc.winboll.studio.libappbase.GlobalApplication;
|
||||||
import com.hjq.toast.ToastUtils;
|
import com.hjq.toast.ToastUtils;
|
||||||
|
import com.hjq.toast.style.WhiteToastStyle;
|
||||||
|
|
||||||
|
|
||||||
public class App extends GlobalApplication {
|
public class App extends GlobalApplication {
|
||||||
@ -21,8 +22,8 @@ public class App extends GlobalApplication {
|
|||||||
// 初始化 Toast 框架
|
// 初始化 Toast 框架
|
||||||
ToastUtils.init(this);
|
ToastUtils.init(this);
|
||||||
// 设置 Toast 布局样式
|
// 设置 Toast 布局样式
|
||||||
ToastUtils.setView(R.layout.view_toast);
|
//ToastUtils.setView(R.layout.view_toast);
|
||||||
//ToastUtils.setStyle(new WhiteToastStyle());
|
ToastUtils.setStyle(new WhiteToastStyle());
|
||||||
ToastUtils.setGravity(Gravity.BOTTOM, 0, 200);
|
ToastUtils.setGravity(Gravity.BOTTOM, 0, 200);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -25,12 +25,12 @@ import cc.winboll.studio.libaes.unittests.TestAToolbarActivity;
|
|||||||
import cc.winboll.studio.libaes.unittests.TestDrawerFragmentActivity;
|
import cc.winboll.studio.libaes.unittests.TestDrawerFragmentActivity;
|
||||||
import cc.winboll.studio.libaes.unittests.TestViewPageFragment;
|
import cc.winboll.studio.libaes.unittests.TestViewPageFragment;
|
||||||
import cc.winboll.studio.libappbase.LogUtils;
|
import cc.winboll.studio.libappbase.LogUtils;
|
||||||
import cc.winboll.studio.libappbase.winboll.IWinBollActivity;
|
import cc.winboll.studio.libappbase.winboll.IWinBoLLActivity;
|
||||||
import com.a4455jkjh.colorpicker.ColorPickerDialog;
|
import com.a4455jkjh.colorpicker.ColorPickerDialog;
|
||||||
import com.hjq.toast.ToastUtils;
|
import com.hjq.toast.ToastUtils;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
|
||||||
public class MainActivity extends DrawerFragmentActivity implements IWinBollActivity {
|
public class MainActivity extends DrawerFragmentActivity implements IWinBoLLActivity {
|
||||||
|
|
||||||
|
|
||||||
public static final String TAG = "MainActivity";
|
public static final String TAG = "MainActivity";
|
||||||
@ -123,7 +123,7 @@ public class MainActivity extends DrawerFragmentActivity implements IWinBollActi
|
|||||||
public boolean onOptionsItemSelected(MenuItem item) {
|
public boolean onOptionsItemSelected(MenuItem item) {
|
||||||
int nItemId = item.getItemId();
|
int nItemId = item.getItemId();
|
||||||
// if (item.getItemId() == R.id.item_log) {
|
// if (item.getItemId() == R.id.item_log) {
|
||||||
// WinBollActivityManager.getInstance(this).startWinBollActivity(getApplicationContext(), LogActivity.class);
|
// WinBoLLActivityManager.getInstance(this).startWinBoLLActivity(getApplicationContext(), LogActivity.class);
|
||||||
// } else
|
// } else
|
||||||
if (nItemId == R.id.item_atoast) {
|
if (nItemId == R.id.item_atoast) {
|
||||||
Toast.makeText(getApplication(), "item_testatoast", Toast.LENGTH_SHORT).show();
|
Toast.makeText(getApplication(), "item_testatoast", Toast.LENGTH_SHORT).show();
|
||||||
|
@ -5,17 +5,17 @@ import android.os.Bundle;
|
|||||||
import androidx.appcompat.app.AppCompatActivity;
|
import androidx.appcompat.app.AppCompatActivity;
|
||||||
import cc.winboll.studio.libaes.beans.AESThemeBean;
|
import cc.winboll.studio.libaes.beans.AESThemeBean;
|
||||||
import cc.winboll.studio.libaes.utils.AESThemeUtil;
|
import cc.winboll.studio.libaes.utils.AESThemeUtil;
|
||||||
import cc.winboll.studio.libappbase.winboll.IWinBollActivity;
|
import cc.winboll.studio.libappbase.winboll.IWinBoLLActivity;
|
||||||
import android.view.MenuItem;
|
import android.view.MenuItem;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Author ZhanGSKen@AliYun.Com
|
* @Author ZhanGSKen@AliYun.Com
|
||||||
* @Date 2025/03/30 00:34:02
|
* @Date 2025/03/30 00:34:02
|
||||||
* @Describe WinBoll 活动窗口通用基类
|
* @Describe WinBoLL 活动窗口通用基类
|
||||||
*/
|
*/
|
||||||
public class WinBollActivity extends AppCompatActivity implements IWinBollActivity {
|
public class WinBoLLActivity extends AppCompatActivity implements IWinBoLLActivity {
|
||||||
|
|
||||||
public static final String TAG = "WinBollActivity";
|
public static final String TAG = "WinBoLLActivity";
|
||||||
|
|
||||||
protected volatile AESThemeBean.ThemeType mThemeType;
|
protected volatile AESThemeBean.ThemeType mThemeType;
|
||||||
|
|
@ -9,7 +9,7 @@ android {
|
|||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
minSdkVersion 24
|
minSdkVersion 24
|
||||||
targetSdkVersion 29
|
targetSdkVersion 30
|
||||||
}
|
}
|
||||||
buildTypes {
|
buildTypes {
|
||||||
release {
|
release {
|
||||||
@ -45,12 +45,12 @@ dependencies {
|
|||||||
api 'com.squareup.okhttp3:okhttp:4.4.1'
|
api 'com.squareup.okhttp3:okhttp:4.4.1'
|
||||||
// AndroidX 类库
|
// AndroidX 类库
|
||||||
api 'androidx.appcompat:appcompat:1.1.0'
|
api 'androidx.appcompat:appcompat:1.1.0'
|
||||||
api 'com.google.android.material:material:1.4.0'
|
//api 'com.google.android.material:material:1.4.0'
|
||||||
//api 'androidx.viewpager:viewpager:1.0.0'
|
//api 'androidx.viewpager:viewpager:1.0.0'
|
||||||
//api 'androidx.vectordrawable:vectordrawable:1.1.0'
|
//api 'androidx.vectordrawable:vectordrawable:1.1.0'
|
||||||
//api 'androidx.vectordrawable:vectordrawable-animated:1.1.0'
|
//api 'androidx.vectordrawable:vectordrawable-animated:1.1.0'
|
||||||
//api 'androidx.fragment:fragment:1.1.0'
|
//api 'androidx.fragment:fragment:1.1.0'
|
||||||
|
|
||||||
api 'cc.winboll.studio:libapputils:15.2.2'
|
api 'cc.winboll.studio:libapputils:15.3.4'
|
||||||
api 'cc.winboll.studio:libappbase:15.2.2'
|
api 'cc.winboll.studio:libappbase:15.7.6'
|
||||||
}
|
}
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
#Created by .winboll/winboll_app_build.gradle
|
#Created by .winboll/winboll_app_build.gradle
|
||||||
#Thu Apr 03 11:13:53 HKT 2025
|
#Tue Apr 29 15:14:21 HKT 2025
|
||||||
stageCount=7
|
stageCount=1
|
||||||
libraryProject=libaes
|
libraryProject=libaes
|
||||||
baseVersion=15.2
|
baseVersion=15.6
|
||||||
publishVersion=15.2.6
|
publishVersion=15.6.0
|
||||||
buildCount=0
|
buildCount=0
|
||||||
baseBetaVersion=15.2.7
|
baseBetaVersion=15.6.1
|
||||||
|
@ -17,13 +17,13 @@
|
|||||||
<activity android:name="cc.winboll.studio.libaes.unittests.TestASupportToolbarActivity"
|
<activity android:name="cc.winboll.studio.libaes.unittests.TestASupportToolbarActivity"
|
||||||
android:exported="true"/>
|
android:exported="true"/>
|
||||||
|
|
||||||
<service android:name="cc.winboll.studio.libaes.winboll.WinBollClientService"
|
<service android:name="cc.winboll.studio.libaes.winboll.WinBoLLClientService"
|
||||||
android:exported="true"/>
|
android:exported="true"/>
|
||||||
|
|
||||||
<service android:name="cc.winboll.studio.libaes.winboll.AssistantService"
|
<service android:name="cc.winboll.studio.libaes.winboll.AssistantService"
|
||||||
android:exported="true"/>
|
android:exported="true"/>
|
||||||
|
|
||||||
<service android:name="cc.winboll.studio.libaes.winboll.WinBollMail"
|
<service android:name="cc.winboll.studio.libaes.winboll.WinBoLLMail"
|
||||||
android:exported="true"/>
|
android:exported="true"/>
|
||||||
|
|
||||||
</application>
|
</application>
|
||||||
|
@ -29,11 +29,11 @@ import cc.winboll.studio.libaes.utils.AESThemeUtil;
|
|||||||
import cc.winboll.studio.libaes.views.ADrawerMenuListView;
|
import cc.winboll.studio.libaes.views.ADrawerMenuListView;
|
||||||
import cc.winboll.studio.libappbase.GlobalApplication;
|
import cc.winboll.studio.libappbase.GlobalApplication;
|
||||||
import cc.winboll.studio.libappbase.LogUtils;
|
import cc.winboll.studio.libappbase.LogUtils;
|
||||||
import cc.winboll.studio.libappbase.winboll.IWinBollActivity;
|
import cc.winboll.studio.libappbase.winboll.IWinBoLLActivity;
|
||||||
import com.baoyz.widget.PullRefreshLayout;
|
import com.baoyz.widget.PullRefreshLayout;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
|
||||||
public abstract class DrawerFragmentActivity extends AppCompatActivity implements IWinBollActivity,AdapterView.OnItemClickListener {
|
public abstract class DrawerFragmentActivity extends AppCompatActivity implements IWinBoLLActivity,AdapterView.OnItemClickListener {
|
||||||
|
|
||||||
public static final String TAG = "DrawerFragmentActivity";
|
public static final String TAG = "DrawerFragmentActivity";
|
||||||
|
|
||||||
@ -177,7 +177,7 @@ public abstract class DrawerFragmentActivity extends AppCompatActivity implement
|
|||||||
getString(i);
|
getString(i);
|
||||||
}
|
}
|
||||||
} else if (R.id.item_log == item.getItemId()) {
|
} else if (R.id.item_log == item.getItemId()) {
|
||||||
GlobalApplication.getWinBollActivityManager().startLogActivity(this);
|
GlobalApplication.getWinBoLLActivityManager().startLogActivity(this);
|
||||||
} else if (R.id.item_about == item.getItemId()) {
|
} else if (R.id.item_about == item.getItemId()) {
|
||||||
LogUtils.d(TAG, "onAbout");
|
LogUtils.d(TAG, "onAbout");
|
||||||
} else if (android.R.id.home == item.getItemId()) {
|
} else if (android.R.id.home == item.getItemId()) {
|
||||||
|
@ -7,14 +7,14 @@ import android.view.MenuItem;
|
|||||||
import android.widget.Toast;
|
import android.widget.Toast;
|
||||||
import cc.winboll.studio.libaes.R;
|
import cc.winboll.studio.libaes.R;
|
||||||
import cc.winboll.studio.libaes.activitys.DrawerFragmentActivity;
|
import cc.winboll.studio.libaes.activitys.DrawerFragmentActivity;
|
||||||
import cc.winboll.studio.libappbase.winboll.IWinBollActivity;
|
import cc.winboll.studio.libappbase.winboll.IWinBoLLActivity;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Author ZhanGSKen@QQ.COM
|
* @Author ZhanGSKen@QQ.COM
|
||||||
* @Date 2024/06/15 00:58:10
|
* @Date 2024/06/15 00:58:10
|
||||||
* @Describe 第二级窗口
|
* @Describe 第二级窗口
|
||||||
*/
|
*/
|
||||||
public class SecondaryLibraryActivity extends DrawerFragmentActivity implements IWinBollActivity {
|
public class SecondaryLibraryActivity extends DrawerFragmentActivity implements IWinBoLLActivity {
|
||||||
|
|
||||||
public static final String TAG = "SecondaryLibraryActivity";
|
public static final String TAG = "SecondaryLibraryActivity";
|
||||||
|
|
||||||
|
@ -11,9 +11,9 @@ import androidx.appcompat.app.AppCompatActivity;
|
|||||||
import androidx.appcompat.widget.Toolbar;
|
import androidx.appcompat.widget.Toolbar;
|
||||||
import cc.winboll.studio.libaes.R;
|
import cc.winboll.studio.libaes.R;
|
||||||
import cc.winboll.studio.libaes.utils.AESThemeUtil;
|
import cc.winboll.studio.libaes.utils.AESThemeUtil;
|
||||||
import cc.winboll.studio.libappbase.winboll.IWinBollActivity;
|
import cc.winboll.studio.libappbase.winboll.IWinBoLLActivity;
|
||||||
|
|
||||||
public class TestASupportToolbarActivity extends AppCompatActivity implements IWinBollActivity {
|
public class TestASupportToolbarActivity extends AppCompatActivity implements IWinBoLLActivity {
|
||||||
|
|
||||||
public static final String TAG = "TestASupportToolbarActivity";
|
public static final String TAG = "TestASupportToolbarActivity";
|
||||||
|
|
||||||
|
@ -10,9 +10,9 @@ import android.os.Bundle;
|
|||||||
import android.widget.Toolbar;
|
import android.widget.Toolbar;
|
||||||
import cc.winboll.studio.libaes.R;
|
import cc.winboll.studio.libaes.R;
|
||||||
import cc.winboll.studio.libaes.utils.AESThemeUtil;
|
import cc.winboll.studio.libaes.utils.AESThemeUtil;
|
||||||
import cc.winboll.studio.libappbase.winboll.IWinBollActivity;
|
import cc.winboll.studio.libappbase.winboll.IWinBoLLActivity;
|
||||||
|
|
||||||
public class TestAToolbarActivity extends Activity implements IWinBollActivity {
|
public class TestAToolbarActivity extends Activity implements IWinBoLLActivity {
|
||||||
|
|
||||||
public static final String TAG = "TestAToolbarActivity";
|
public static final String TAG = "TestAToolbarActivity";
|
||||||
|
|
||||||
|
@ -11,16 +11,15 @@ import android.view.View;
|
|||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
import android.widget.AdapterView;
|
import android.widget.AdapterView;
|
||||||
import android.widget.Toast;
|
import android.widget.Toast;
|
||||||
import android.widget.Toolbar;
|
|
||||||
import androidx.fragment.app.Fragment;
|
import androidx.fragment.app.Fragment;
|
||||||
import cc.winboll.studio.libaes.R;
|
import cc.winboll.studio.libaes.R;
|
||||||
import cc.winboll.studio.libaes.activitys.DrawerFragmentActivity;
|
import cc.winboll.studio.libaes.activitys.DrawerFragmentActivity;
|
||||||
import cc.winboll.studio.libaes.beans.DrawerMenuBean;
|
import cc.winboll.studio.libaes.beans.DrawerMenuBean;
|
||||||
import cc.winboll.studio.libappbase.LogUtils;
|
import cc.winboll.studio.libappbase.LogUtils;
|
||||||
import cc.winboll.studio.libappbase.winboll.IWinBollActivity;
|
import cc.winboll.studio.libappbase.winboll.IWinBoLLActivity;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
|
||||||
public class TestDrawerFragmentActivity extends DrawerFragmentActivity implements IWinBollActivity {
|
public class TestDrawerFragmentActivity extends DrawerFragmentActivity implements IWinBoLLActivity {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Activity getActivity() {
|
public Activity getActivity() {
|
||||||
|
@ -41,7 +41,7 @@ public class AESThemeUtil {
|
|||||||
activity.setTheme(getThemeTypeID(activity));
|
activity.setTheme(getThemeTypeID(activity));
|
||||||
}
|
}
|
||||||
|
|
||||||
/*public static <T extends WinBollActivity> void applyWinBollTheme(T activity) {
|
/*public static <T extends WinBoLLActivity> void applyWinBoLLTheme(T activity) {
|
||||||
activity.setTheme(getThemeTypeID(activity.getApplicationContext()));
|
activity.setTheme(getThemeTypeID(activity.getApplicationContext()));
|
||||||
}*/
|
}*/
|
||||||
|
|
||||||
@ -53,7 +53,7 @@ public class AESThemeUtil {
|
|||||||
activity.setTheme(AESThemeBean.getThemeStyleID(themeType));
|
activity.setTheme(AESThemeBean.getThemeStyleID(themeType));
|
||||||
}
|
}
|
||||||
|
|
||||||
/*public static <T extends WinBollActivity> void applyWinBollTheme(Activity activity, AESThemeBean.ThemeType themeType) {
|
/*public static <T extends WinBoLLActivity> void applyWinBoLLTheme(Activity activity, AESThemeBean.ThemeType themeType) {
|
||||||
activity.setTheme(AESThemeBean.getThemeStyleID(themeType));
|
activity.setTheme(AESThemeBean.getThemeStyleID(themeType));
|
||||||
}*/
|
}*/
|
||||||
|
|
||||||
@ -65,7 +65,7 @@ public class AESThemeUtil {
|
|||||||
activity.getMenuInflater().inflate(R.menu.toolbar_apptheme, menu);
|
activity.getMenuInflater().inflate(R.menu.toolbar_apptheme, menu);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*public static <T extends WinBollActivity> void inflateWinBollMenu(T activity, Menu menu) {
|
/*public static <T extends WinBoLLActivity> void inflateWinBoLLMenu(T activity, Menu menu) {
|
||||||
activity.getMenuInflater().inflate(R.menu.toolbar_apptheme, menu);
|
activity.getMenuInflater().inflate(R.menu.toolbar_apptheme, menu);
|
||||||
}*/
|
}*/
|
||||||
|
|
||||||
@ -131,7 +131,7 @@ public class AESThemeUtil {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static <T extends AppCompatActivity> boolean onWinBollThemeItemSelected(T activity, MenuItem item) {
|
public static <T extends AppCompatActivity> boolean onWinBoLLThemeItemSelected(T activity, MenuItem item) {
|
||||||
int nThemeStyleID;
|
int nThemeStyleID;
|
||||||
if (R.id.item_depththeme == item.getItemId()) {
|
if (R.id.item_depththeme == item.getItemId()) {
|
||||||
nThemeStyleID = AESThemeBean.getThemeStyleID(AESThemeBean.ThemeType.DEPTH);
|
nThemeStyleID = AESThemeBean.getThemeStyleID(AESThemeBean.ThemeType.DEPTH);
|
||||||
@ -162,7 +162,7 @@ public class AESThemeUtil {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static <T extends DrawerFragmentActivity> boolean onWinBollThemeItemSelected(T activity, MenuItem item) {
|
public static <T extends DrawerFragmentActivity> boolean onWinBoLLThemeItemSelected(T activity, MenuItem item) {
|
||||||
int nThemeStyleID;
|
int nThemeStyleID;
|
||||||
if (R.id.item_depththeme == item.getItemId()) {
|
if (R.id.item_depththeme == item.getItemId()) {
|
||||||
nThemeStyleID = AESThemeBean.getThemeStyleID(AESThemeBean.ThemeType.DEPTH);
|
nThemeStyleID = AESThemeBean.getThemeStyleID(AESThemeBean.ThemeType.DEPTH);
|
||||||
|
@ -3,7 +3,7 @@ package cc.winboll.studio.libaes.winboll;
|
|||||||
/**
|
/**
|
||||||
* @Author ZhanGSKen@AliYun.Com
|
* @Author ZhanGSKen@AliYun.Com
|
||||||
* @Date 2025/03/24 15:08:52
|
* @Date 2025/03/24 15:08:52
|
||||||
* @Describe WinBoll应用介绍视图
|
* @Describe WinBoLL应用介绍视图
|
||||||
*/
|
*/
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
@ -43,7 +43,7 @@ public class AboutView extends LinearLayout {
|
|||||||
Context mContext;
|
Context mContext;
|
||||||
APPInfo mAPPInfo;
|
APPInfo mAPPInfo;
|
||||||
|
|
||||||
WinBollServiceStatusView mWinBollServiceStatusView;
|
WinBoLLServiceStatusView mWinBoLLServiceStatusView;
|
||||||
OnRequestDevUserInfoAutofillListener mOnRequestDevUserInfoAutofillListener;
|
OnRequestDevUserInfoAutofillListener mOnRequestDevUserInfoAutofillListener;
|
||||||
String mszAppName = "";
|
String mszAppName = "";
|
||||||
String mszAppAPKFolderName = "";
|
String mszAppAPKFolderName = "";
|
||||||
@ -57,7 +57,7 @@ public class AboutView extends LinearLayout {
|
|||||||
String mszHomePage = "";
|
String mszHomePage = "";
|
||||||
String mszGitea = "";
|
String mszGitea = "";
|
||||||
int mnAppIcon = 0;
|
int mnAppIcon = 0;
|
||||||
String mszWinBollServerHost;
|
String mszWinBoLLServerHost;
|
||||||
String mszReleaseAPKName;
|
String mszReleaseAPKName;
|
||||||
EditText metDevUserName;
|
EditText metDevUserName;
|
||||||
EditText metDevUserPassword;
|
EditText metDevUserPassword;
|
||||||
@ -107,7 +107,7 @@ public class AboutView extends LinearLayout {
|
|||||||
mszAppDescription = mAPPInfo.getAppDescription();
|
mszAppDescription = mAPPInfo.getAppDescription();
|
||||||
mnAppIcon = mAPPInfo.getAppIcon();
|
mnAppIcon = mAPPInfo.getAppIcon();
|
||||||
|
|
||||||
mszWinBollServerHost = GlobalApplication.isDebuging() ? "https://dev.winboll.cc": "https://www.winboll.cc";
|
mszWinBoLLServerHost = GlobalApplication.isDebuging() ? "https://dev.winboll.cc": "https://www.winboll.cc";
|
||||||
|
|
||||||
try {
|
try {
|
||||||
mszAppVersionName = mContext.getPackageManager().getPackageInfo(mContext.getPackageName(), 0).versionName;
|
mszAppVersionName = mContext.getPackageManager().getPackageInfo(mContext.getPackageName(), 0).versionName;
|
||||||
@ -115,7 +115,7 @@ public class AboutView extends LinearLayout {
|
|||||||
LogUtils.d(TAG, e, Thread.currentThread().getStackTrace());
|
LogUtils.d(TAG, e, Thread.currentThread().getStackTrace());
|
||||||
}
|
}
|
||||||
mszCurrentAppPackageName = mszAppAPKName + "_" + mszAppVersionName + ".apk";
|
mszCurrentAppPackageName = mszAppAPKName + "_" + mszAppVersionName + ".apk";
|
||||||
mszHomePage = mszWinBollServerHost + "/studio/details.php?app=" + mszAppAPKFolderName;
|
mszHomePage = mszWinBoLLServerHost + "/studio/details.php?app=" + mszAppAPKFolderName;
|
||||||
if (mAPPInfo.getAppGitAPPBranch().equals("")) {
|
if (mAPPInfo.getAppGitAPPBranch().equals("")) {
|
||||||
mszGitea = "https://gitea.winboll.cc/" + mAPPInfo.getAppGitOwner() + "/" + mszAppGitName;
|
mszGitea = "https://gitea.winboll.cc/" + mAPPInfo.getAppGitOwner() + "/" + mszAppGitName;
|
||||||
} else {
|
} else {
|
||||||
@ -132,9 +132,9 @@ public class AboutView extends LinearLayout {
|
|||||||
metDevUserName.setText(PrefUtils.getString(mContext, "metDevUserName", ""));
|
metDevUserName.setText(PrefUtils.getString(mContext, "metDevUserName", ""));
|
||||||
metDevUserPassword.setText(PrefUtils.getString(mContext, "metDevUserPassword", ""));
|
metDevUserPassword.setText(PrefUtils.getString(mContext, "metDevUserPassword", ""));
|
||||||
//mDevelopHostConnectionStatusView = new DevelopHostConnectionStatusView(context);
|
//mDevelopHostConnectionStatusView = new DevelopHostConnectionStatusView(context);
|
||||||
mWinBollServiceStatusView = addedView.findViewById(R.id.viewaboutdevWinBollServiceStatusView1);
|
mWinBoLLServiceStatusView = addedView.findViewById(R.id.viewaboutdevWinBoLLServiceStatusView1);
|
||||||
mWinBollServiceStatusView.setServerHost(mszWinBollServerHost);
|
mWinBoLLServiceStatusView.setServerHost(mszWinBoLLServerHost);
|
||||||
mWinBollServiceStatusView.setAuthInfo(metDevUserName.getText().toString(), metDevUserPassword.getText().toString());
|
mWinBoLLServiceStatusView.setAuthInfo(metDevUserName.getText().toString(), metDevUserPassword.getText().toString());
|
||||||
//llMain.addView(mDevelopHostConnectionStatusView);
|
//llMain.addView(mDevelopHostConnectionStatusView);
|
||||||
llMain.addView(createAboutPage());
|
llMain.addView(createAboutPage());
|
||||||
addView(addedView);
|
addView(addedView);
|
||||||
@ -143,9 +143,9 @@ public class AboutView extends LinearLayout {
|
|||||||
View addedView = inflater.inflate(R.layout.view_about_www, this, false);
|
View addedView = inflater.inflate(R.layout.view_about_www, this, false);
|
||||||
LinearLayout llMain = addedView.findViewById(R.id.viewaboutwwwLinearLayout1);
|
LinearLayout llMain = addedView.findViewById(R.id.viewaboutwwwLinearLayout1);
|
||||||
//mDevelopHostConnectionStatusView = new DevelopHostConnectionStatusView(context);
|
//mDevelopHostConnectionStatusView = new DevelopHostConnectionStatusView(context);
|
||||||
mWinBollServiceStatusView = addedView.findViewById(R.id.viewaboutwwwWinBollServiceStatusView1);
|
mWinBoLLServiceStatusView = addedView.findViewById(R.id.viewaboutwwwWinBoLLServiceStatusView1);
|
||||||
mWinBollServiceStatusView.setServerHost(mszWinBollServerHost);
|
mWinBoLLServiceStatusView.setServerHost(mszWinBoLLServerHost);
|
||||||
mWinBollServiceStatusView.setAuthInfo("", "");
|
mWinBoLLServiceStatusView.setAuthInfo("", "");
|
||||||
//llMain.addView(mDevelopHostConnectionStatusView);
|
//llMain.addView(mDevelopHostConnectionStatusView);
|
||||||
llMain.addView(createAboutPage());
|
llMain.addView(createAboutPage());
|
||||||
addView(addedView);
|
addView(addedView);
|
||||||
@ -291,7 +291,7 @@ public class AboutView extends LinearLayout {
|
|||||||
GlobalApplication.setIsDebuging(true);
|
GlobalApplication.setIsDebuging(true);
|
||||||
GlobalApplication.saveDebugStatus();
|
GlobalApplication.saveDebugStatus();
|
||||||
|
|
||||||
GlobalApplication.getWinBollActivityManager().finishAll();
|
GlobalApplication.getWinBoLLActivityManager().finishAll();
|
||||||
context.startActivity(intent);
|
context.startActivity(intent);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -303,7 +303,7 @@ public class AboutView extends LinearLayout {
|
|||||||
GlobalApplication.setIsDebuging(false);
|
GlobalApplication.setIsDebuging(false);
|
||||||
GlobalApplication.saveDebugStatus();
|
GlobalApplication.saveDebugStatus();
|
||||||
|
|
||||||
GlobalApplication.getWinBollActivityManager().finishAll();
|
GlobalApplication.getWinBoLLActivityManager().finishAll();
|
||||||
context.startActivity(intent);
|
context.startActivity(intent);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -323,7 +323,7 @@ public class AboutView extends LinearLayout {
|
|||||||
new Thread(new Runnable() {
|
new Thread(new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
String szUrl = mszWinBollServerHost + "/studio/details.php?app=" + mszAppAPKFolderName;
|
String szUrl = mszWinBoLLServerHost + "/studio/details.php?app=" + mszAppAPKFolderName;
|
||||||
// 构建包含认证信息的请求
|
// 构建包含认证信息的请求
|
||||||
String credential = "";
|
String credential = "";
|
||||||
if (GlobalApplication.isDebuging()) {
|
if (GlobalApplication.isDebuging()) {
|
||||||
@ -331,8 +331,8 @@ public class AboutView extends LinearLayout {
|
|||||||
PrefUtils.saveString(mContext, "metDevUserName", metDevUserName.getText().toString());
|
PrefUtils.saveString(mContext, "metDevUserName", metDevUserName.getText().toString());
|
||||||
PrefUtils.saveString(mContext, "metDevUserPassword", metDevUserPassword.getText().toString());
|
PrefUtils.saveString(mContext, "metDevUserPassword", metDevUserPassword.getText().toString());
|
||||||
} else {
|
} else {
|
||||||
String username = "WinBoll";
|
String username = "WinBoLL";
|
||||||
String password = "WinBollPowerByZhanGSKen";
|
String password = "WinBoLLPowerByZhanGSKen";
|
||||||
credential = Credentials.basic(username, password);
|
credential = Credentials.basic(username, password);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -384,7 +384,7 @@ public class AboutView extends LinearLayout {
|
|||||||
YesNoAlertDialog.OnDialogResultListener mIsDownlaodUpdateListener = new YesNoAlertDialog.OnDialogResultListener() {
|
YesNoAlertDialog.OnDialogResultListener mIsDownlaodUpdateListener = new YesNoAlertDialog.OnDialogResultListener() {
|
||||||
@Override
|
@Override
|
||||||
public void onYes() {
|
public void onYes() {
|
||||||
String szUrl = mszWinBollServerHost + "/studio/download.php?appname=" + mszAppAPKFolderName + "&apkname=" + mszNewestAppPackageName;
|
String szUrl = mszWinBoLLServerHost + "/studio/download.php?appname=" + mszAppAPKFolderName + "&apkname=" + mszNewestAppPackageName;
|
||||||
Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(szUrl));
|
Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(szUrl));
|
||||||
mContext.startActivity(browserIntent);
|
mContext.startActivity(browserIntent);
|
||||||
}
|
}
|
||||||
|
@ -11,14 +11,14 @@ import android.content.Context;
|
|||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.content.ServiceConnection;
|
import android.content.ServiceConnection;
|
||||||
import android.os.IBinder;
|
import android.os.IBinder;
|
||||||
import cc.winboll.studio.libaes.winboll.WinBollClientService;
|
import cc.winboll.studio.libaes.winboll.WinBoLLClientService;
|
||||||
import cc.winboll.studio.libappbase.utils.ServiceUtils;
|
import cc.winboll.studio.libappbase.utils.ServiceUtils;
|
||||||
|
|
||||||
public class AssistantService extends Service {
|
public class AssistantService extends Service {
|
||||||
|
|
||||||
public final static String TAG = "AssistantService";
|
public final static String TAG = "AssistantService";
|
||||||
|
|
||||||
WinBollClientServiceBean mWinBollServiceBean;
|
WinBoLLClientServiceBean mWinBoLLServiceBean;
|
||||||
MyServiceConnection mMyServiceConnection;
|
MyServiceConnection mMyServiceConnection;
|
||||||
volatile boolean mIsServiceRunning;
|
volatile boolean mIsServiceRunning;
|
||||||
|
|
||||||
@ -30,7 +30,7 @@ public class AssistantService extends Service {
|
|||||||
@Override
|
@Override
|
||||||
public void onCreate() {
|
public void onCreate() {
|
||||||
super.onCreate();
|
super.onCreate();
|
||||||
mWinBollServiceBean = WinBollClientServiceBean.loadWinBollClientServiceBean(this);
|
mWinBoLLServiceBean = WinBoLLClientServiceBean.loadWinBoLLClientServiceBean(this);
|
||||||
if (mMyServiceConnection == null) {
|
if (mMyServiceConnection == null) {
|
||||||
mMyServiceConnection = new MyServiceConnection();
|
mMyServiceConnection = new MyServiceConnection();
|
||||||
}
|
}
|
||||||
@ -55,8 +55,8 @@ public class AssistantService extends Service {
|
|||||||
// 运行服务内容
|
// 运行服务内容
|
||||||
//
|
//
|
||||||
void run() {
|
void run() {
|
||||||
mWinBollServiceBean = WinBollClientServiceBean.loadWinBollClientServiceBean(this);
|
mWinBoLLServiceBean = WinBoLLClientServiceBean.loadWinBoLLClientServiceBean(this);
|
||||||
if (mWinBollServiceBean.isEnable()) {
|
if (mWinBoLLServiceBean.isEnable()) {
|
||||||
if (mIsServiceRunning == false) {
|
if (mIsServiceRunning == false) {
|
||||||
// 设置运行状态
|
// 设置运行状态
|
||||||
mIsServiceRunning = true;
|
mIsServiceRunning = true;
|
||||||
@ -70,11 +70,11 @@ public class AssistantService extends Service {
|
|||||||
// 唤醒和绑定主进程
|
// 唤醒和绑定主进程
|
||||||
//
|
//
|
||||||
void wakeupAndBindMain() {
|
void wakeupAndBindMain() {
|
||||||
if (ServiceUtils.isServiceRunning(getApplicationContext(), WinBollClientService.class.getName()) == false) {
|
if (ServiceUtils.isServiceRunning(getApplicationContext(), WinBoLLClientService.class.getName()) == false) {
|
||||||
startForegroundService(new Intent(AssistantService.this, WinBollClientService.class));
|
startForegroundService(new Intent(AssistantService.this, WinBoLLClientService.class));
|
||||||
}
|
}
|
||||||
|
|
||||||
bindService(new Intent(AssistantService.this, WinBollClientService.class), mMyServiceConnection, Context.BIND_IMPORTANT);
|
bindService(new Intent(AssistantService.this, WinBoLLClientService.class), mMyServiceConnection, Context.BIND_IMPORTANT);
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
@ -87,8 +87,8 @@ public class AssistantService extends Service {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onServiceDisconnected(ComponentName name) {
|
public void onServiceDisconnected(ComponentName name) {
|
||||||
mWinBollServiceBean = WinBollClientServiceBean.loadWinBollClientServiceBean(AssistantService.this);
|
mWinBoLLServiceBean = WinBoLLClientServiceBean.loadWinBoLLClientServiceBean(AssistantService.this);
|
||||||
if (mWinBollServiceBean.isEnable()) {
|
if (mWinBoLLServiceBean.isEnable()) {
|
||||||
wakeupAndBindMain();
|
wakeupAndBindMain();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3,7 +3,7 @@ package cc.winboll.studio.libaes.winboll;
|
|||||||
/**
|
/**
|
||||||
* @Author ZhanGSKen@AliYun.Com
|
* @Author ZhanGSKen@AliYun.Com
|
||||||
* @Date 2025/03/28 19:11:27
|
* @Date 2025/03/28 19:11:27
|
||||||
* @Describe WinBoll UI 状态图标枚举
|
* @Describe WinBoLL UI 状态图标枚举
|
||||||
*/
|
*/
|
||||||
import cc.winboll.studio.libaes.R;
|
import cc.winboll.studio.libaes.R;
|
||||||
|
|
||||||
|
@ -3,15 +3,15 @@ package cc.winboll.studio.libaes.winboll;
|
|||||||
/**
|
/**
|
||||||
* @Author ZhanGSKen@AliYun.Com
|
* @Author ZhanGSKen@AliYun.Com
|
||||||
* @Date 2025/03/28 19:08:45
|
* @Date 2025/03/28 19:08:45
|
||||||
* @Describe WinBollService 服务 Binder。
|
* @Describe WinBoLLService 服务 Binder。
|
||||||
*/
|
*/
|
||||||
import android.graphics.drawable.Drawable;
|
import android.graphics.drawable.Drawable;
|
||||||
|
|
||||||
public interface IWinBollClientServiceBinder {
|
public interface IWinBoLLClientServiceBinder {
|
||||||
|
|
||||||
public static final String TAG = "IWinBollClientServiceBinder";
|
public static final String TAG = "IWinBoLLClientServiceBinder";
|
||||||
|
|
||||||
public WinBollClientService getService();
|
public WinBoLLClientService getService();
|
||||||
|
|
||||||
public Drawable getCurrentStatusIconDrawable();
|
public Drawable getCurrentStatusIconDrawable();
|
||||||
}
|
}
|
@ -3,7 +3,7 @@ package cc.winboll.studio.libaes.winboll;
|
|||||||
/**
|
/**
|
||||||
* @Author ZhanGSKen@AliYun.Com
|
* @Author ZhanGSKen@AliYun.Com
|
||||||
* @Date 2025/03/28 19:06:54
|
* @Date 2025/03/28 19:06:54
|
||||||
* @Describe WinBoll 客户端服务
|
* @Describe WinBoLL 客户端服务
|
||||||
*/
|
*/
|
||||||
import android.app.Service;
|
import android.app.Service;
|
||||||
import android.content.ComponentName;
|
import android.content.ComponentName;
|
||||||
@ -19,28 +19,28 @@ import cc.winboll.studio.libappbase.utils.ServiceUtils;
|
|||||||
import cc.winboll.studio.libapputils.utils.PrefUtils;
|
import cc.winboll.studio.libapputils.utils.PrefUtils;
|
||||||
import com.hjq.toast.ToastUtils;
|
import com.hjq.toast.ToastUtils;
|
||||||
|
|
||||||
public class WinBollClientService extends Service implements IWinBollClientServiceBinder {
|
public class WinBoLLClientService extends Service implements IWinBoLLClientServiceBinder {
|
||||||
|
|
||||||
public static final String TAG = "WinBollClientService";
|
public static final String TAG = "WinBoLLClientService";
|
||||||
|
|
||||||
WinBollClientServiceBean mWinBollClientServiceBean;
|
WinBoLLClientServiceBean mWinBoLLClientServiceBean;
|
||||||
MyServiceConnection mMyServiceConnection;
|
MyServiceConnection mMyServiceConnection;
|
||||||
volatile boolean mIsWinBollClientThreadRunning;
|
volatile boolean mIsWinBoLLClientThreadRunning;
|
||||||
volatile boolean mIsEnableService;
|
volatile boolean mIsEnableService;
|
||||||
volatile WinBollClientThread mWinBollClientThread;
|
volatile WinBoLLClientThread mWinBoLLClientThread;
|
||||||
|
|
||||||
public boolean isWinBollClientThreadRunning() {
|
public boolean isWinBoLLClientThreadRunning() {
|
||||||
return mIsWinBollClientThreadRunning;
|
return mIsWinBoLLClientThreadRunning;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public WinBollClientService getService() {
|
public WinBoLLClientService getService() {
|
||||||
return WinBollClientService.this;
|
return WinBoLLClientService.this;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Drawable getCurrentStatusIconDrawable() {
|
public Drawable getCurrentStatusIconDrawable() {
|
||||||
return mIsWinBollClientThreadRunning ?
|
return mIsWinBoLLClientThreadRunning ?
|
||||||
getDrawable(EWUIStatusIconDrawable.getIconDrawableId(EWUIStatusIconDrawable.NORMAL))
|
getDrawable(EWUIStatusIconDrawable.getIconDrawableId(EWUIStatusIconDrawable.NORMAL))
|
||||||
: getDrawable(EWUIStatusIconDrawable.getIconDrawableId(EWUIStatusIconDrawable.NEWS));
|
: getDrawable(EWUIStatusIconDrawable.getIconDrawableId(EWUIStatusIconDrawable.NEWS));
|
||||||
}
|
}
|
||||||
@ -54,9 +54,9 @@ public class WinBollClientService extends Service implements IWinBollClientServi
|
|||||||
public void onCreate() {
|
public void onCreate() {
|
||||||
//ToastUtils.show("onCreate");
|
//ToastUtils.show("onCreate");
|
||||||
super.onCreate();
|
super.onCreate();
|
||||||
mWinBollClientThread = null;
|
mWinBoLLClientThread = null;
|
||||||
mWinBollClientServiceBean = WinBollClientServiceBean.loadWinBollClientServiceBean(this);
|
mWinBoLLClientServiceBean = WinBoLLClientServiceBean.loadWinBoLLClientServiceBean(this);
|
||||||
mIsEnableService = mWinBollClientServiceBean.isEnable();
|
mIsEnableService = mWinBoLLClientServiceBean.isEnable();
|
||||||
|
|
||||||
if (mMyServiceConnection == null) {
|
if (mMyServiceConnection == null) {
|
||||||
mMyServiceConnection = new MyServiceConnection();
|
mMyServiceConnection = new MyServiceConnection();
|
||||||
@ -74,23 +74,23 @@ public class WinBollClientService extends Service implements IWinBollClientServi
|
|||||||
|
|
||||||
// 返回运行参数持久化存储后,服务状态控制参数
|
// 返回运行参数持久化存储后,服务状态控制参数
|
||||||
// 无论 Intent 传入如何,服务状态一直以持久化存储后的参数控制,
|
// 无论 Intent 传入如何,服务状态一直以持久化存储后的参数控制,
|
||||||
// PS: 另外当然可以通过 Intent 传入的指标来修改 mWinBollServiceBean,
|
// PS: 另外当然可以通过 Intent 传入的指标来修改 mWinBoLLServiceBean,
|
||||||
// 不过本服务的应用方向会变得繁琐,
|
// 不过本服务的应用方向会变得繁琐,
|
||||||
// 现阶段只要满足手机端启动与停止本服务,WinBoll 客户端实例运行在手机端就可以了。
|
// 现阶段只要满足手机端启动与停止本服务,WinBoLL 客户端实例运行在手机端就可以了。
|
||||||
return mIsEnableService ? Service.START_STICKY: super.onStartCommand(intent, flags, startId);
|
return mIsEnableService ? Service.START_STICKY: super.onStartCommand(intent, flags, startId);
|
||||||
}
|
}
|
||||||
|
|
||||||
synchronized void runMainThread() {
|
synchronized void runMainThread() {
|
||||||
if (mWinBollClientThread == null) {
|
if (mWinBoLLClientThread == null) {
|
||||||
//ToastUtils.show("runMainThread()");
|
//ToastUtils.show("runMainThread()");
|
||||||
mWinBollClientThread = new WinBollClientThread();
|
mWinBoLLClientThread = new WinBoLLClientThread();
|
||||||
mWinBollClientThread.start();
|
mWinBoLLClientThread.start();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void syncWinBollClientThreadStatus() {
|
void syncWinBoLLClientThreadStatus() {
|
||||||
mWinBollClientServiceBean = WinBollClientServiceBean.loadWinBollClientServiceBean(this);
|
mWinBoLLClientServiceBean = WinBoLLClientServiceBean.loadWinBoLLClientServiceBean(this);
|
||||||
mIsEnableService = mWinBollClientServiceBean.isEnable();
|
mIsEnableService = mWinBoLLClientServiceBean.isEnable();
|
||||||
LogUtils.d(TAG, String.format("mIsEnableService %s", mIsEnableService));
|
LogUtils.d(TAG, String.format("mIsEnableService %s", mIsEnableService));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -99,9 +99,9 @@ public class WinBollClientService extends Service implements IWinBollClientServi
|
|||||||
//
|
//
|
||||||
void wakeupAndBindAssistant() {
|
void wakeupAndBindAssistant() {
|
||||||
if (ServiceUtils.isServiceRunning(getApplicationContext(), AssistantService.class.getName()) == false) {
|
if (ServiceUtils.isServiceRunning(getApplicationContext(), AssistantService.class.getName()) == false) {
|
||||||
startService(new Intent(WinBollClientService.this, AssistantService.class));
|
startService(new Intent(WinBoLLClientService.this, AssistantService.class));
|
||||||
//LogUtils.d(TAG, "call wakeupAndBindAssistant() : Binding... AssistantService");
|
//LogUtils.d(TAG, "call wakeupAndBindAssistant() : Binding... AssistantService");
|
||||||
bindService(new Intent(WinBollClientService.this, AssistantService.class), mMyServiceConnection, Context.BIND_IMPORTANT);
|
bindService(new Intent(WinBoLLClientService.this, AssistantService.class), mMyServiceConnection, Context.BIND_IMPORTANT);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -115,8 +115,8 @@ public class WinBollClientService extends Service implements IWinBollClientServi
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onServiceDisconnected(ComponentName name) {
|
public void onServiceDisconnected(ComponentName name) {
|
||||||
mWinBollClientServiceBean = WinBollClientServiceBean.loadWinBollClientServiceBean(WinBollClientService.this);
|
mWinBoLLClientServiceBean = WinBoLLClientServiceBean.loadWinBoLLClientServiceBean(WinBoLLClientService.this);
|
||||||
if (mWinBollClientServiceBean.isEnable()) {
|
if (mWinBoLLClientServiceBean.isEnable()) {
|
||||||
// 唤醒守护进程
|
// 唤醒守护进程
|
||||||
wakeupAndBindAssistant();
|
wakeupAndBindAssistant();
|
||||||
}
|
}
|
||||||
@ -134,15 +134,15 @@ public class WinBollClientService extends Service implements IWinBollClientServi
|
|||||||
super.onStart(intent, startId);
|
super.onStart(intent, startId);
|
||||||
}
|
}
|
||||||
|
|
||||||
void setWinBollServiceEnableStatus(boolean isEnable) {
|
void setWinBoLLServiceEnableStatus(boolean isEnable) {
|
||||||
WinBollClientServiceBean bean = WinBollClientServiceBean.loadWinBollClientServiceBean(this);
|
WinBoLLClientServiceBean bean = WinBoLLClientServiceBean.loadWinBoLLClientServiceBean(this);
|
||||||
bean.setIsEnable(isEnable);
|
bean.setIsEnable(isEnable);
|
||||||
WinBollClientServiceBean.saveWinBollServiceBean(this, bean);
|
WinBoLLClientServiceBean.saveWinBoLLServiceBean(this, bean);
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean getWinBollServiceEnableStatus(Context context) {
|
boolean getWinBoLLServiceEnableStatus(Context context) {
|
||||||
mWinBollClientServiceBean = WinBollClientServiceBean.loadWinBollClientServiceBean(context);
|
mWinBoLLClientServiceBean = WinBoLLClientServiceBean.loadWinBoLLClientServiceBean(context);
|
||||||
return mWinBollClientServiceBean.isEnable();
|
return mWinBoLLClientServiceBean.isEnable();
|
||||||
}
|
}
|
||||||
|
|
||||||
/*public interface OnServiceStatusChangeListener {
|
/*public interface OnServiceStatusChangeListener {
|
||||||
@ -153,24 +153,24 @@ public class WinBollClientService extends Service implements IWinBollClientServi
|
|||||||
mOnServerStatusChangeListener = l;
|
mOnServerStatusChangeListener = l;
|
||||||
}*/
|
}*/
|
||||||
|
|
||||||
class WinBollClientThread extends Thread {
|
class WinBoLLClientThread extends Thread {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
super.run();
|
super.run();
|
||||||
LogUtils.d(TAG, "run syncWinBollClientThreadStatus");
|
LogUtils.d(TAG, "run syncWinBoLLClientThreadStatus");
|
||||||
syncWinBollClientThreadStatus();
|
syncWinBoLLClientThreadStatus();
|
||||||
if (mIsEnableService) {
|
if (mIsEnableService) {
|
||||||
if (mIsWinBollClientThreadRunning == false) {
|
if (mIsWinBoLLClientThreadRunning == false) {
|
||||||
// 设置运行状态
|
// 设置运行状态
|
||||||
mIsWinBollClientThreadRunning = true;
|
mIsWinBoLLClientThreadRunning = true;
|
||||||
LogUtils.d(TAG, "WinBollClientThread run()");
|
LogUtils.d(TAG, "WinBoLLClientThread run()");
|
||||||
|
|
||||||
// 唤醒守护进程
|
// 唤醒守护进程
|
||||||
//wakeupAndBindAssistant();
|
//wakeupAndBindAssistant();
|
||||||
|
|
||||||
while (mIsEnableService) {
|
while (mIsEnableService) {
|
||||||
// 显示运行状态
|
// 显示运行状态
|
||||||
WinBollServiceStatusView.startConnection();
|
WinBoLLServiceStatusView.startConnection();
|
||||||
LogUtils.d(TAG, String.format("while mIsEnableService is %s", mIsEnableService));
|
LogUtils.d(TAG, String.format("while mIsEnableService is %s", mIsEnableService));
|
||||||
|
|
||||||
try {
|
try {
|
||||||
@ -178,13 +178,13 @@ public class WinBollClientService extends Service implements IWinBollClientServi
|
|||||||
} catch (InterruptedException e) {
|
} catch (InterruptedException e) {
|
||||||
LogUtils.d(TAG, e, Thread.currentThread().getStackTrace());
|
LogUtils.d(TAG, e, Thread.currentThread().getStackTrace());
|
||||||
}
|
}
|
||||||
syncWinBollClientThreadStatus();
|
syncWinBoLLClientThreadStatus();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 服务进程退出, 重置进程运行状态
|
// 服务进程退出, 重置进程运行状态
|
||||||
WinBollServiceStatusView.stopConnection();
|
WinBoLLServiceStatusView.stopConnection();
|
||||||
mIsWinBollClientThreadRunning = false;
|
mIsWinBoLLClientThreadRunning = false;
|
||||||
mWinBollClientThread = null;
|
mWinBoLLClientThread = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -3,7 +3,7 @@ package cc.winboll.studio.libaes.winboll;
|
|||||||
/**
|
/**
|
||||||
* @Author ZhanGSKen@AliYun.Com
|
* @Author ZhanGSKen@AliYun.Com
|
||||||
* @Date 2025/03/28 19:05:15
|
* @Date 2025/03/28 19:05:15
|
||||||
* @Describe WinBollService 运行参数配置
|
* @Describe WinBoLLService 运行参数配置
|
||||||
*/
|
*/
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.util.JsonReader;
|
import android.util.JsonReader;
|
||||||
@ -11,13 +11,13 @@ import android.util.JsonWriter;
|
|||||||
import cc.winboll.studio.libappbase.BaseBean;
|
import cc.winboll.studio.libappbase.BaseBean;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
|
||||||
public class WinBollClientServiceBean extends BaseBean {
|
public class WinBoLLClientServiceBean extends BaseBean {
|
||||||
|
|
||||||
public static final String TAG = "WinBollClientServiceBean";
|
public static final String TAG = "WinBoLLClientServiceBean";
|
||||||
|
|
||||||
volatile boolean isEnable;
|
volatile boolean isEnable;
|
||||||
|
|
||||||
public WinBollClientServiceBean() {
|
public WinBoLLClientServiceBean() {
|
||||||
isEnable = false;
|
isEnable = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -31,13 +31,13 @@ public class WinBollClientServiceBean extends BaseBean {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getName() {
|
public String getName() {
|
||||||
return WinBollClientServiceBean.class.getName();
|
return WinBoLLClientServiceBean.class.getName();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void writeThisToJsonWriter(JsonWriter jsonWriter) throws IOException {
|
public void writeThisToJsonWriter(JsonWriter jsonWriter) throws IOException {
|
||||||
super.writeThisToJsonWriter(jsonWriter);
|
super.writeThisToJsonWriter(jsonWriter);
|
||||||
WinBollClientServiceBean bean = this;
|
WinBoLLClientServiceBean bean = this;
|
||||||
jsonWriter.name("isEnable").value(bean.isEnable());
|
jsonWriter.name("isEnable").value(bean.isEnable());
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -67,12 +67,12 @@ public class WinBollClientServiceBean extends BaseBean {
|
|||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static WinBollClientServiceBean loadWinBollClientServiceBean(Context context) {
|
public static WinBoLLClientServiceBean loadWinBoLLClientServiceBean(Context context) {
|
||||||
WinBollClientServiceBean bean = WinBollClientServiceBean.loadBean(context, WinBollClientServiceBean.class);
|
WinBoLLClientServiceBean bean = WinBoLLClientServiceBean.loadBean(context, WinBoLLClientServiceBean.class);
|
||||||
return bean == null ? new WinBollClientServiceBean() : bean;
|
return bean == null ? new WinBoLLClientServiceBean() : bean;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean saveWinBollServiceBean(WinBollClientService service, WinBollClientServiceBean bean) {
|
public static boolean saveWinBoLLServiceBean(WinBoLLClientService service, WinBoLLClientServiceBean bean) {
|
||||||
return WinBollClientServiceBean.saveBean(service, bean);
|
return WinBoLLClientServiceBean.saveBean(service, bean);
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -3,15 +3,15 @@ package cc.winboll.studio.libaes.winboll;
|
|||||||
/**
|
/**
|
||||||
* @Author ZhanGSKen@AliYun.Com
|
* @Author ZhanGSKen@AliYun.Com
|
||||||
* @Date 2025/03/28 19:13:20
|
* @Date 2025/03/28 19:13:20
|
||||||
* @Describe WinBoll 邮件服务
|
* @Describe WinBoLL 邮件服务
|
||||||
*/
|
*/
|
||||||
import android.app.Service;
|
import android.app.Service;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.os.IBinder;
|
import android.os.IBinder;
|
||||||
|
|
||||||
public class WinBollMail extends Service {
|
public class WinBoLLMail extends Service {
|
||||||
|
|
||||||
public static final String TAG = "WinBollMail";
|
public static final String TAG = "WinBoLLMail";
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public IBinder onBind(Intent intent) {
|
public IBinder onBind(Intent intent) {
|
@ -3,7 +3,7 @@ package cc.winboll.studio.libaes.winboll;
|
|||||||
/**
|
/**
|
||||||
* @Author ZhanGSKen@AliYun.Com
|
* @Author ZhanGSKen@AliYun.Com
|
||||||
* @Date 2025/03/29 15:57:28
|
* @Date 2025/03/29 15:57:28
|
||||||
* @Describe WinBoll 服务器服务情况测试访问进程。
|
* @Describe WinBoLL 服务器服务情况测试访问进程。
|
||||||
*/
|
*/
|
||||||
import cc.winboll.studio.libappbase.LogUtils;
|
import cc.winboll.studio.libappbase.LogUtils;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
@ -20,9 +20,9 @@ interface TextCallback {
|
|||||||
void onFailure(Exception e);
|
void onFailure(Exception e);
|
||||||
}
|
}
|
||||||
|
|
||||||
public class WinBollServerConnectionThread extends Thread {
|
public class WinBoLLServerConnectionThread extends Thread {
|
||||||
|
|
||||||
public static final String TAG = "WinBollClientService";
|
public static final String TAG = "WinBoLLClientService";
|
||||||
|
|
||||||
private final String url;
|
private final String url;
|
||||||
private final String username;
|
private final String username;
|
||||||
@ -33,12 +33,12 @@ public class WinBollServerConnectionThread extends Thread {
|
|||||||
private final TextCallback callback; // 新增回调成员变量
|
private final TextCallback callback; // 新增回调成员变量
|
||||||
|
|
||||||
// 新增带回调的构造函数
|
// 新增带回调的构造函数
|
||||||
public WinBollServerConnectionThread(String url, String username, String password, TextCallback callback) {
|
public WinBoLLServerConnectionThread(String url, String username, String password, TextCallback callback) {
|
||||||
this(url, username, password, 10000, 10000, 5, callback);
|
this(url, username, password, 10000, 10000, 5, callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
// 修改原有构造函数,添加回调参数
|
// 修改原有构造函数,添加回调参数
|
||||||
public WinBollServerConnectionThread(String url, String username, String password,
|
public WinBoLLServerConnectionThread(String url, String username, String password,
|
||||||
int connectTimeout, int readTimeout, int maxRetries, TextCallback callback) {
|
int connectTimeout, int readTimeout, int maxRetries, TextCallback callback) {
|
||||||
this.url = url;
|
this.url = url;
|
||||||
this.username = username;
|
this.username = username;
|
@ -3,8 +3,9 @@ package cc.winboll.studio.libaes.winboll;
|
|||||||
/**
|
/**
|
||||||
* @Author ZhanGSKen@AliYun.Com
|
* @Author ZhanGSKen@AliYun.Com
|
||||||
* @Date 2025/03/28 17:41:55
|
* @Date 2025/03/28 17:41:55
|
||||||
* @Describe WinBoll 服务主机连接状态视图
|
* @Describe WinBoLL 服务主机连接状态视图
|
||||||
*/
|
*/
|
||||||
|
import cc.winboll.studio.libaes.R;
|
||||||
import android.content.ComponentName;
|
import android.content.ComponentName;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
@ -18,10 +19,9 @@ import android.view.View;
|
|||||||
import android.widget.ImageView;
|
import android.widget.ImageView;
|
||||||
import android.widget.LinearLayout;
|
import android.widget.LinearLayout;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
import cc.winboll.studio.libaes.winboll.WinBollClientService;
|
import cc.winboll.studio.libaes.winboll.WinBoLLClientService;
|
||||||
import cc.winboll.studio.libappbase.GlobalApplication;
|
import cc.winboll.studio.libappbase.GlobalApplication;
|
||||||
import cc.winboll.studio.libappbase.LogUtils;
|
import cc.winboll.studio.libappbase.LogUtils;
|
||||||
import cc.winboll.studio.libapputils.R;
|
|
||||||
import cc.winboll.studio.libapputils.utils.PrefUtils;
|
import cc.winboll.studio.libapputils.utils.PrefUtils;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.time.format.DateTimeFormatter;
|
import java.time.format.DateTimeFormatter;
|
||||||
@ -32,23 +32,23 @@ import java.time.format.DateTimeFormatter;
|
|||||||
//import okhttp3.Response;
|
//import okhttp3.Response;
|
||||||
//import okhttp3.Route;
|
//import okhttp3.Route;
|
||||||
|
|
||||||
public class WinBollServiceStatusView extends LinearLayout {
|
public class WinBoLLServiceStatusView extends LinearLayout {
|
||||||
|
|
||||||
public static final String TAG = "WinBollServiceStatusView";
|
public static final String TAG = "WinBoLLServiceStatusView";
|
||||||
|
|
||||||
public static final int MSG_CONNECTION_INFO = 0;
|
public static final int MSG_CONNECTION_INFO = 0;
|
||||||
public static final int MSG_UPDATE_CONNECTION_STATUS = 1;
|
public static final int MSG_UPDATE_CONNECTION_STATUS = 1;
|
||||||
|
|
||||||
static WinBollServiceStatusView _WinBollServiceStatusView;
|
static WinBoLLServiceStatusView _WinBoLLServiceStatusView;
|
||||||
Context mContext;
|
Context mContext;
|
||||||
//boolean mIsConnected;
|
//boolean mIsConnected;
|
||||||
volatile ConnectionThread mConnectionThread;
|
volatile ConnectionThread mConnectionThread;
|
||||||
|
|
||||||
String mszServerHost;
|
String mszServerHost;
|
||||||
WinBollClientService mWinBollService;
|
WinBoLLClientService mWinBoLLService;
|
||||||
ImageView mImageView;
|
ImageView mImageView;
|
||||||
TextView mTextView;
|
TextView mTextView;
|
||||||
WinBollServiceViewHandler mWinBollServiceViewHandler;
|
WinBoLLServiceViewHandler mWinBoLLServiceViewHandler;
|
||||||
//WebView mWebView;
|
//WebView mWebView;
|
||||||
static volatile ConnectionStatus mConnectionStatus;
|
static volatile ConnectionStatus mConnectionStatus;
|
||||||
View.OnClickListener mViewOnClickListener;
|
View.OnClickListener mViewOnClickListener;
|
||||||
@ -66,11 +66,11 @@ public class WinBollServiceStatusView extends LinearLayout {
|
|||||||
ServiceConnection connection = new ServiceConnection() {
|
ServiceConnection connection = new ServiceConnection() {
|
||||||
@Override
|
@Override
|
||||||
public void onServiceConnected(ComponentName name, IBinder service) {
|
public void onServiceConnected(ComponentName name, IBinder service) {
|
||||||
IWinBollClientServiceBinder binder = (IWinBollClientServiceBinder) service;
|
IWinBoLLClientServiceBinder binder = (IWinBoLLClientServiceBinder) service;
|
||||||
mWinBollService = binder.getService();
|
mWinBoLLService = binder.getService();
|
||||||
isBound = true;
|
isBound = true;
|
||||||
// 可以在这里调用Service的方法进行通信,比如获取数据
|
// 可以在这里调用Service的方法进行通信,比如获取数据
|
||||||
mImageView.setBackgroundDrawable(mWinBollService.getCurrentStatusIconDrawable());
|
mImageView.setBackgroundDrawable(mWinBoLLService.getCurrentStatusIconDrawable());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -79,25 +79,25 @@ public class WinBollServiceStatusView extends LinearLayout {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
public WinBollServiceStatusView(Context context) {
|
public WinBoLLServiceStatusView(Context context) {
|
||||||
super(context);
|
super(context);
|
||||||
mContext = context;
|
mContext = context;
|
||||||
initView();
|
initView();
|
||||||
}
|
}
|
||||||
|
|
||||||
public WinBollServiceStatusView(Context context, AttributeSet attrs) {
|
public WinBoLLServiceStatusView(Context context, AttributeSet attrs) {
|
||||||
super(context, attrs);
|
super(context, attrs);
|
||||||
mContext = context;
|
mContext = context;
|
||||||
initView();
|
initView();
|
||||||
}
|
}
|
||||||
|
|
||||||
public WinBollServiceStatusView(Context context, AttributeSet attrs, int defStyleAttr) {
|
public WinBoLLServiceStatusView(Context context, AttributeSet attrs, int defStyleAttr) {
|
||||||
super(context, attrs, defStyleAttr);
|
super(context, attrs, defStyleAttr);
|
||||||
mContext = context;
|
mContext = context;
|
||||||
initView();
|
initView();
|
||||||
}
|
}
|
||||||
|
|
||||||
public WinBollServiceStatusView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
|
public WinBoLLServiceStatusView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
|
||||||
super(context, attrs, defStyleAttr, defStyleRes);
|
super(context, attrs, defStyleAttr, defStyleRes);
|
||||||
mContext = context;
|
mContext = context;
|
||||||
initView();
|
initView();
|
||||||
@ -110,13 +110,13 @@ public class WinBollServiceStatusView extends LinearLayout {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void initView() {
|
void initView() {
|
||||||
_WinBollServiceStatusView = this;
|
_WinBoLLServiceStatusView = this;
|
||||||
|
|
||||||
mImageView = new ImageView(mContext);
|
mImageView = new ImageView(mContext);
|
||||||
setImageViewByConnection(mImageView, false);
|
setImageViewByConnection(mImageView, false);
|
||||||
mConnectionStatus = getConnectionStatus();
|
mConnectionStatus = getConnectionStatus();
|
||||||
//mIsConnected = false;
|
//mIsConnected = false;
|
||||||
//mWinBollServerHostConnectionStatus = WinBollServerHostConnectionStatus.DISCONNECTED;
|
//mWinBoLLServerHostConnectionStatus = WinBoLLServerHostConnectionStatus.DISCONNECTED;
|
||||||
//ToastUtils.show("initView()");
|
//ToastUtils.show("initView()");
|
||||||
|
|
||||||
mViewOnClickListener = new View.OnClickListener(){
|
mViewOnClickListener = new View.OnClickListener(){
|
||||||
@ -125,10 +125,10 @@ public class WinBollServiceStatusView extends LinearLayout {
|
|||||||
LogUtils.d(TAG, "onClick()");
|
LogUtils.d(TAG, "onClick()");
|
||||||
if (mConnectionStatus == ConnectionStatus.CONNECTED) {
|
if (mConnectionStatus == ConnectionStatus.CONNECTED) {
|
||||||
LogUtils.d(TAG, "Click to stop service.");
|
LogUtils.d(TAG, "Click to stop service.");
|
||||||
WinBollClientServiceBean bean = WinBollClientServiceBean.loadWinBollClientServiceBean(mContext);
|
WinBoLLClientServiceBean bean = WinBoLLClientServiceBean.loadWinBoLLClientServiceBean(mContext);
|
||||||
bean.setIsEnable(false);
|
bean.setIsEnable(false);
|
||||||
WinBollClientServiceBean.saveBean(mContext, bean);
|
WinBoLLClientServiceBean.saveBean(mContext, bean);
|
||||||
Intent intent = new Intent(mContext, WinBollClientService.class);
|
Intent intent = new Intent(mContext, WinBoLLClientService.class);
|
||||||
mContext.stopService(intent);
|
mContext.stopService(intent);
|
||||||
//stopConnectionThread();
|
//stopConnectionThread();
|
||||||
mTextView.setText("");
|
mTextView.setText("");
|
||||||
@ -136,10 +136,10 @@ public class WinBollServiceStatusView extends LinearLayout {
|
|||||||
mConnectionStatus = ConnectionStatus.DISCONNECTED;
|
mConnectionStatus = ConnectionStatus.DISCONNECTED;
|
||||||
} else if (mConnectionStatus == ConnectionStatus.DISCONNECTED) {
|
} else if (mConnectionStatus == ConnectionStatus.DISCONNECTED) {
|
||||||
LogUtils.d(TAG, "Click to start service.");
|
LogUtils.d(TAG, "Click to start service.");
|
||||||
WinBollClientServiceBean bean = WinBollClientServiceBean.loadWinBollClientServiceBean(mContext);
|
WinBoLLClientServiceBean bean = WinBoLLClientServiceBean.loadWinBoLLClientServiceBean(mContext);
|
||||||
bean.setIsEnable(true);
|
bean.setIsEnable(true);
|
||||||
WinBollClientServiceBean.saveBean(mContext, bean);
|
WinBoLLClientServiceBean.saveBean(mContext, bean);
|
||||||
Intent intent = new Intent(mContext, WinBollClientService.class);
|
Intent intent = new Intent(mContext, WinBoLLClientService.class);
|
||||||
mContext.startService(intent);
|
mContext.startService(intent);
|
||||||
//startConnectionThread();
|
//startConnectionThread();
|
||||||
}
|
}
|
||||||
@ -148,7 +148,7 @@ public class WinBollServiceStatusView extends LinearLayout {
|
|||||||
setOnClickListener(mViewOnClickListener);
|
setOnClickListener(mViewOnClickListener);
|
||||||
addView(mImageView);
|
addView(mImageView);
|
||||||
mTextView = new TextView(mContext);
|
mTextView = new TextView(mContext);
|
||||||
mWinBollServiceViewHandler = new WinBollServiceViewHandler(this);
|
mWinBoLLServiceViewHandler = new WinBoLLServiceViewHandler(this);
|
||||||
addView(mTextView);
|
addView(mTextView);
|
||||||
/*mWebView = new WebView(mContext);
|
/*mWebView = new WebView(mContext);
|
||||||
mWebView.setWebViewClient(new WebViewClient() {
|
mWebView.setWebViewClient(new WebViewClient() {
|
||||||
@ -161,8 +161,8 @@ public class WinBollServiceStatusView extends LinearLayout {
|
|||||||
addView(mWebView);*/
|
addView(mWebView);*/
|
||||||
}
|
}
|
||||||
|
|
||||||
void checkWinBollServerStatusAndUpdateCurrentView() {
|
void checkWinBoLLServerStatusAndUpdateCurrentView() {
|
||||||
LogUtils.d(TAG, "checkWinBollServerStatusAndUpdateCurrentView()");
|
LogUtils.d(TAG, "checkWinBoLLServerStatusAndUpdateCurrentView()");
|
||||||
/*if (getConnectionStatus() == ConnectionStatus.CONNECTED) {
|
/*if (getConnectionStatus() == ConnectionStatus.CONNECTED) {
|
||||||
mConnectionStatus = ConnectionStatus.CONNECTED;
|
mConnectionStatus = ConnectionStatus.CONNECTED;
|
||||||
} else {
|
} else {
|
||||||
@ -170,8 +170,8 @@ public class WinBollServiceStatusView extends LinearLayout {
|
|||||||
}*/
|
}*/
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setServerHost(String szWinBollServerHost) {
|
public void setServerHost(String szWinBoLLServerHost) {
|
||||||
mszServerHost = szWinBollServerHost;
|
mszServerHost = szWinBoLLServerHost;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setAuthInfo(String username, String password) {
|
public void setAuthInfo(String username, String password) {
|
||||||
@ -216,8 +216,8 @@ public class WinBollServiceStatusView extends LinearLayout {
|
|||||||
// 按照指定格式格式化时间并输出
|
// 按照指定格式格式化时间并输出
|
||||||
String formattedDateTime = now.format(formatter);
|
String formattedDateTime = now.format(formatter);
|
||||||
String msg = "ClientIP<" + formattedDateTime + ">: " + text;
|
String msg = "ClientIP<" + formattedDateTime + ">: " + text;
|
||||||
mWinBollServiceViewHandler.postMessageText(msg);
|
mWinBoLLServiceViewHandler.postMessageText(msg);
|
||||||
mWinBollServiceViewHandler.postMessageConnectionStatus(true);
|
mWinBoLLServiceViewHandler.postMessageConnectionStatus(true);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -227,8 +227,8 @@ public class WinBollServiceStatusView extends LinearLayout {
|
|||||||
LogUtils.d(TAG, e, Thread.currentThread().getStackTrace());
|
LogUtils.d(TAG, e, Thread.currentThread().getStackTrace());
|
||||||
// 处理网络请求失败
|
// 处理网络请求失败
|
||||||
setImageViewByConnection(mImageView, false);
|
setImageViewByConnection(mImageView, false);
|
||||||
mWinBollServiceViewHandler.postMessageText(e.getMessage());
|
mWinBoLLServiceViewHandler.postMessageText(e.getMessage());
|
||||||
mWinBollServiceViewHandler.postMessageConnectionStatus(false);
|
mWinBoLLServiceViewHandler.postMessageConnectionStatus(false);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -249,12 +249,12 @@ public class WinBollServiceStatusView extends LinearLayout {
|
|||||||
username = PrefUtils.getString(mContext, "metDevUserName", "");
|
username = PrefUtils.getString(mContext, "metDevUserName", "");
|
||||||
password = PrefUtils.getString(mContext, "metDevUserPassword", "");
|
password = PrefUtils.getString(mContext, "metDevUserPassword", "");
|
||||||
} else {
|
} else {
|
||||||
username = "WinBoll";
|
username = "WinBoLL";
|
||||||
password = "WinBollPowerByZhanGSKen";
|
password = "WinBoLLPowerByZhanGSKen";
|
||||||
}
|
}
|
||||||
|
|
||||||
LogUtils.d(TAG, String.format("Connection Start. targetUrl %s", targetUrl));
|
LogUtils.d(TAG, String.format("Connection Start. targetUrl %s", targetUrl));
|
||||||
WinBollServerConnectionThread thread = new WinBollServerConnectionThread(
|
WinBoLLServerConnectionThread thread = new WinBoLLServerConnectionThread(
|
||||||
targetUrl,
|
targetUrl,
|
||||||
username,
|
username,
|
||||||
password,
|
password,
|
||||||
@ -263,7 +263,7 @@ public class WinBollServiceStatusView extends LinearLayout {
|
|||||||
thread.start();
|
thread.start();
|
||||||
}
|
}
|
||||||
|
|
||||||
/*void requestWithBasicAuth(final WinBollServiceViewHandler textViewHandler, String targetUrl, final String username, final String password) {
|
/*void requestWithBasicAuth(final WinBoLLServiceViewHandler textViewHandler, String targetUrl, final String username, final String password) {
|
||||||
// 用户名和密码,替换为实际的认证信息
|
// 用户名和密码,替换为实际的认证信息
|
||||||
//String username = "your_username";
|
//String username = "your_username";
|
||||||
//String password = "your_password";
|
//String password = "your_password";
|
||||||
@ -350,10 +350,10 @@ public class WinBollServiceStatusView extends LinearLayout {
|
|||||||
|
|
||||||
}*/
|
}*/
|
||||||
|
|
||||||
class WinBollServiceViewHandler extends Handler {
|
class WinBoLLServiceViewHandler extends Handler {
|
||||||
WinBollServiceStatusView mDevelopHostConnectionStatusView;
|
WinBoLLServiceStatusView mDevelopHostConnectionStatusView;
|
||||||
|
|
||||||
public WinBollServiceViewHandler(WinBollServiceStatusView view) {
|
public WinBoLLServiceViewHandler(WinBoLLServiceStatusView view) {
|
||||||
mDevelopHostConnectionStatusView = view;
|
mDevelopHostConnectionStatusView = view;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -384,14 +384,14 @@ public class WinBollServiceStatusView extends LinearLayout {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static void startConnection() {
|
public static void startConnection() {
|
||||||
if (_WinBollServiceStatusView != null) {
|
if (_WinBoLLServiceStatusView != null) {
|
||||||
_WinBollServiceStatusView.startConnectionThread();
|
_WinBoLLServiceStatusView.startConnectionThread();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void stopConnection() {
|
public static void stopConnection() {
|
||||||
if (_WinBollServiceStatusView != null) {
|
if (_WinBoLLServiceStatusView != null) {
|
||||||
_WinBollServiceStatusView.stopConnectionThread();
|
_WinBoLLServiceStatusView.stopConnectionThread();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -448,7 +448,7 @@ public class WinBollServiceStatusView extends LinearLayout {
|
|||||||
requestCIPWithBasicAuth();
|
requestCIPWithBasicAuth();
|
||||||
} else if (mConnectionStatus == ConnectionStatus.CONNECTED
|
} else if (mConnectionStatus == ConnectionStatus.CONNECTED
|
||||||
|| mConnectionStatus == ConnectionStatus.DISCONNECTED) {
|
|| mConnectionStatus == ConnectionStatus.DISCONNECTED) {
|
||||||
//ToastUtils.show("mWinBollServerHostConnectionStatus " + mConnectionStatus);
|
//ToastUtils.show("mWinBoLLServerHostConnectionStatus " + mConnectionStatus);
|
||||||
LogUtils.d(TAG, String.format("mConnectionStatus done %s", mConnectionStatus));
|
LogUtils.d(TAG, String.format("mConnectionStatus done %s", mConnectionStatus));
|
||||||
} else {
|
} else {
|
||||||
LogUtils.d(TAG, String.format("mConnectionStatus unknow %s", mConnectionStatus));
|
LogUtils.d(TAG, String.format("mConnectionStatus unknow %s", mConnectionStatus));
|
||||||
@ -465,7 +465,7 @@ public class WinBollServiceStatusView extends LinearLayout {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*WinBollService.OnServiceStatusChangeListener mOnServerStatusChangeListener = new WinBollService.OnServiceStatusChangeListener(){
|
/*WinBoLLService.OnServiceStatusChangeListener mOnServerStatusChangeListener = new WinBoLLService.OnServiceStatusChangeListener(){
|
||||||
@Override
|
@Override
|
||||||
public void onServerStatusChange(boolean isServiceAlive) {
|
public void onServerStatusChange(boolean isServiceAlive) {
|
||||||
}
|
}
|
@ -53,10 +53,10 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:gravity="center_horizontal">
|
android:gravity="center_horizontal">
|
||||||
|
|
||||||
<cc.winboll.studio.libaes.winboll.WinBollServiceStatusView
|
<cc.winboll.studio.libaes.winboll.WinBoLLServiceStatusView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:id="@+id/viewaboutdevWinBollServiceStatusView1"/>
|
android:id="@+id/viewaboutdevWinBoLLServiceStatusView1"/>
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
@ -12,10 +12,10 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:gravity="center_horizontal">
|
android:gravity="center_horizontal">
|
||||||
|
|
||||||
<cc.winboll.studio.libaes.winboll.WinBollServiceStatusView
|
<cc.winboll.studio.libaes.winboll.WinBoLLServiceStatusView
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:id="@+id/viewaboutwwwWinBollServiceStatusView1"/>
|
android:id="@+id/viewaboutwwwWinBoLLServiceStatusView1"/>
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
@ -1,38 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<LinearLayout
|
|
||||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:orientation="vertical"
|
|
||||||
android:gravity="center_horizontal"
|
|
||||||
android:background="@drawable/toast_frame"
|
|
||||||
android:padding="10dp">
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:text="@string/app_name"
|
|
||||||
android:textStyle="bold"
|
|
||||||
android:textColor="#FFFFFFFF"/>
|
|
||||||
|
|
||||||
<LinearLayout
|
|
||||||
android:orientation="horizontal"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content">
|
|
||||||
|
|
||||||
<ImageView
|
|
||||||
android:layout_width="40dp"
|
|
||||||
android:layout_height="40dp"
|
|
||||||
android:src="@drawable/ic_launcher"/>
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@android:id/message"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_margin="10dp"
|
|
||||||
android:textColor="#FFFFFFFF"/>
|
|
||||||
|
|
||||||
</LinearLayout>
|
|
||||||
|
|
||||||
</LinearLayout>
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
|||||||
<resources>
|
<resources>
|
||||||
|
|
||||||
<string name="lib_name">libaes</string>
|
<string name="lib_name">libaes</string>
|
||||||
<string name="lib_description">云宝APP应用安卓元素类库示例。源码仅供调试参考,请勿直接引用。(WinBoll APP application Android element class library example. The source is just for demo debug test, Do not quote directly.)</string>
|
<string name="lib_description">云宝APP应用安卓元素类库示例。源码仅供调试参考,请勿直接引用。(WinBoLL APP application Android element class library example. The source is just for demo debug test, Do not quote directly.)</string>
|
||||||
<string name="lib_home">https://winboll.cc/aes</string>
|
<string name="lib_home">https://winboll.cc/aes</string>
|
||||||
<string name="text_about">关于</string>
|
<string name="text_about">关于</string>
|
||||||
<string name="text_AppTheme">应用主题</string>
|
<string name="text_AppTheme">应用主题</string>
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
<resources>
|
<resources>
|
||||||
|
|
||||||
<string name="lib_name">libaes</string>
|
<string name="lib_name">libaes</string>
|
||||||
<string name="lib_description">云宝APP应用安卓元素类库示例。源码仅供调试参考,请勿直接引用。(WinBoll APP application Android element class library example. The source is just for demo debug test, Do not quote directly.)</string>
|
<string name="lib_description">云宝APP应用安卓元素类库示例。源码仅供调试参考,请勿直接引用。(WinBoLL APP application Android element class library example. The source is just for demo debug test, Do not quote directly.)</string>
|
||||||
<string name="lib_home">https://winboll.cc/libaes</string>
|
<string name="lib_home">https://winboll.cc/libaes</string>
|
||||||
<string name="text_about">About</string>
|
<string name="text_about">About</string>
|
||||||
<string name="text_AppTheme">AppTheme</string>
|
<string name="text_AppTheme">AppTheme</string>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user