更新类库,不同应用包之间广播消息接收调试通过。

This commit is contained in:
ZhanGSKen 2025-02-14 03:12:43 +08:00
parent b0e81fc960
commit 1baa0c5a61
7 changed files with 50 additions and 17 deletions

View File

@ -64,7 +64,7 @@ dependencies {
api 'com.google.android.material:material:1.1.0' api 'com.google.android.material:material:1.1.0'
api 'cc.winboll.studio:libapputils:9.3.2' api 'cc.winboll.studio:libapputils:9.3.2'
api 'cc.winboll.studio:libappbase:1.5.0' api 'cc.winboll.studio:libappbase:1.5.1'
api fileTree(dir: 'libs', include: ['*.jar']) api fileTree(dir: 'libs', include: ['*.jar'])
} }

View File

@ -1,8 +1,8 @@
#Created by .winboll/winboll_app_build.gradle #Created by .winboll/winboll_app_build.gradle
#Wed Feb 12 23:28:05 GMT 2025 #Thu Feb 13 19:09:39 GMT 2025
stageCount=0 stageCount=0
libraryProject=winboll-shared libraryProject=winboll-shared
baseVersion=1.0 baseVersion=1.0
publishVersion=1.0.0 publishVersion=1.0.0
buildCount=6 buildCount=13
baseBetaVersion=1.0.1 baseBetaVersion=1.0.1

View File

@ -17,7 +17,7 @@ public class App extends GlobalApplication {
public void onCreate() { public void onCreate() {
// 必须在调用基类前设置应用调试标志 // 必须在调用基类前设置应用调试标志
// 这样可以预先设置日志与数据的存储根目录 // 这样可以预先设置日志与数据的存储根目录
//setIsDebug(BuildConfig.DEBUG); setIsDebuging(this, BuildConfig.DEBUG);
super.onCreate(); super.onCreate();
// 设置 WinBoll 应用 UI 类型 // 设置 WinBoll 应用 UI 类型
WinBollActivityManager.getInstance(this).setWinBollUI_TYPE(WinBollActivityManager.WinBollUI_TYPE.Aplication); WinBollActivityManager.getInstance(this).setWinBollUI_TYPE(WinBollActivityManager.WinBollUI_TYPE.Aplication);

View File

@ -11,8 +11,10 @@ import androidx.appcompat.widget.Toolbar;
import cc.winboll.studio.contacts.BuildConfig; import cc.winboll.studio.contacts.BuildConfig;
import cc.winboll.studio.contacts.R; import cc.winboll.studio.contacts.R;
import cc.winboll.studio.contacts.beans.MainServiceBean; import cc.winboll.studio.contacts.beans.MainServiceBean;
import cc.winboll.studio.contacts.services.MainService; import cc.winboll.studio.libappbase.GlobalApplication;
import cc.winboll.studio.libappbase.LogUtils; import cc.winboll.studio.libappbase.LogUtils;
import cc.winboll.studio.libappbase.LogView;
import cc.winboll.studio.libappbase.SOS;
import cc.winboll.studio.libapputils.app.AboutActivityFactory; import cc.winboll.studio.libapputils.app.AboutActivityFactory;
import cc.winboll.studio.libapputils.app.IWinBollActivity; import cc.winboll.studio.libapputils.app.IWinBollActivity;
import cc.winboll.studio.libapputils.app.WinBollActivityManager; import cc.winboll.studio.libapputils.app.WinBollActivityManager;
@ -26,6 +28,7 @@ final public class MainActivity extends AppCompatActivity implements IWinBollAct
public static final int REQUEST_HOME_ACTIVITY = 0; public static final int REQUEST_HOME_ACTIVITY = 0;
public static final int REQUEST_ABOUT_ACTIVITY = 1; public static final int REQUEST_ABOUT_ACTIVITY = 1;
LogView mLogView;
Toolbar mToolbar; Toolbar mToolbar;
CheckBox cbMainService; CheckBox cbMainService;
MainServiceBean mMainServiceBean; MainServiceBean mMainServiceBean;
@ -62,6 +65,10 @@ final public class MainActivity extends AppCompatActivity implements IWinBollAct
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); setContentView(R.layout.activity_main);
mLogView = findViewById(R.id.activitymainLogView1);
if (GlobalApplication.isDebuging()) { mLogView.start(); }
// 初始化工具栏 // 初始化工具栏
mToolbar = findViewById(R.id.activitymainToolbar1); mToolbar = findViewById(R.id.activitymainToolbar1);
setSupportActionBar(mToolbar); setSupportActionBar(mToolbar);
@ -83,12 +90,12 @@ final public class MainActivity extends AppCompatActivity implements IWinBollAct
cbMainService.setOnClickListener(new View.OnClickListener(){ cbMainService.setOnClickListener(new View.OnClickListener(){
@Override @Override
public void onClick(View view) { public void onClick(View view) {
SOS.sendToWinBoll(MainActivity.this);
if (cbMainService.isChecked()) { // if (cbMainService.isChecked()) {
MainService.startISOSService(MainActivity.this); // MainService.startISOSService(MainActivity.this);
} else { // } else {
MainService.stopISOSService(MainActivity.this); // MainService.stopISOSService(MainActivity.this);
} // }
} }
}); });
} }

View File

@ -8,7 +8,10 @@ import cc.winboll.studio.contacts.beans.MainServiceBean;
import cc.winboll.studio.libappbase.ISOSAPP; import cc.winboll.studio.libappbase.ISOSAPP;
import cc.winboll.studio.libappbase.ISOSService; import cc.winboll.studio.libappbase.ISOSService;
import cc.winboll.studio.libappbase.LogUtils; import cc.winboll.studio.libappbase.LogUtils;
import cc.winboll.studio.libappbase.SOSCSBroadcastReceiver;
import cc.winboll.studio.libappbase.SimpleOperateSignalCenterService;
import com.hjq.toast.ToastUtils; import com.hjq.toast.ToastUtils;
import android.content.ComponentName;
/** /**
* @Author ZhanGSKen@AliYun.Com * @Author ZhanGSKen@AliYun.Com
@ -87,9 +90,10 @@ public class MainService extends Service implements ISOSService {
LogUtils.d(TAG, "onDestroy"); LogUtils.d(TAG, "onDestroy");
mMainServiceBean = MainServiceBean.loadBean(this, MainServiceBean.class); mMainServiceBean = MainServiceBean.loadBean(this, MainServiceBean.class);
if (mMainServiceBean.isEnable()) { if (mMainServiceBean.isEnable()) {
LogUtils.d(TAG, "mSimpleOperateSignalCenterServiceBean.isEnable()"); LogUtils.d(TAG, "mMainServiceBean.isEnable()");
ISOSAPP iSOSAPP = (ISOSAPP)getApplication(); // ISOSAPP iSOSAPP = (ISOSAPP)getApplication();
iSOSAPP.helpISOSService(getISOSServiceIntentWhichAskForHelp()); // iSOSAPP.helpISOSService(getISOSServiceIntentWhichAskForHelp());
sos();
} }
if (_MainThread != null) { if (_MainThread != null) {
_MainThread.isExist = true; _MainThread.isExist = true;
@ -113,6 +117,22 @@ public class MainService extends Service implements ISOSService {
context.startService(new Intent(context, MainService.class)); context.startService(new Intent(context, MainService.class));
} }
public void sos() {
// 创建Intent对象指定广播的action
Intent intentService = new Intent(SOSCSBroadcastReceiver.ACTION_SOS);
String packageName = this.getPackageName();
String serviceClassName = SOSCSBroadcastReceiver.class.getName();
intentService.setComponent(new ComponentName(packageName, serviceClassName));
// 目标服务的包名和类名
intentService.putExtra(ISOSAPP.EXTRA_PACKAGE, getPackageName());
intentService.putExtra(ISOSAPP.EXTRA_SERVICE, MainService.class.getName());
// 发送广播
sendBroadcast(intentService);
LogUtils.d(TAG, "sos");
ToastUtils.show("sos");
}
static class MainThread extends Thread { static class MainThread extends Thread {
volatile boolean isExist = false; volatile boolean isExist = false;

View File

@ -32,6 +32,12 @@
</LinearLayout> </LinearLayout>
<cc.winboll.studio.libappbase.LogView
android:layout_weight="1.0"
android:layout_height="0dp"
android:layout_width="match_parent"
android:id="@+id/activitymainLogView1"/>
</LinearLayout> </LinearLayout>
</LinearLayout> </LinearLayout>

View File

@ -1,8 +1,8 @@
#Created by .winboll/winboll_app_build.gradle #Created by .winboll/winboll_app_build.gradle
#Wed Feb 12 23:28:05 GMT 2025 #Thu Feb 13 19:09:39 GMT 2025
stageCount=0 stageCount=0
libraryProject=winboll-shared libraryProject=winboll-shared
baseVersion=1.0 baseVersion=1.0
publishVersion=1.0.0 publishVersion=1.0.0
buildCount=6 buildCount=13
baseBetaVersion=1.0.1 baseBetaVersion=1.0.1