Test aidl
This commit is contained in:
parent
dfd09eb647
commit
accca716d4
@ -1,8 +1,8 @@
|
|||||||
#Created by .winboll/winboll_app_build.gradle
|
#Created by .winboll/winboll_app_build.gradle
|
||||||
#Fri Feb 14 03:00:55 HKT 2025
|
#Thu Feb 13 21:58:54 GMT 2025
|
||||||
stageCount=2
|
stageCount=2
|
||||||
libraryProject=libappbase
|
libraryProject=libappbase
|
||||||
baseVersion=1.5
|
baseVersion=1.5
|
||||||
publishVersion=1.5.1
|
publishVersion=1.5.1
|
||||||
buildCount=0
|
buildCount=2
|
||||||
baseBetaVersion=1.5.2
|
baseBetaVersion=1.5.2
|
||||||
|
@ -18,13 +18,15 @@
|
|||||||
<intent-filter>
|
<intent-filter>
|
||||||
|
|
||||||
<action android:name="android.intent.action.MAIN"/>
|
<action android:name="android.intent.action.MAIN"/>
|
||||||
|
|
||||||
<category android:name="android.intent.category.LAUNCHER"/>
|
<category android:name="android.intent.category.LAUNCHER"/>
|
||||||
|
|
||||||
// 磁贴响应设置
|
<action android:name="android.service.quicksettings.action.QS_TILE_PREFERENCES"/>
|
||||||
<action android:name="android.service.quicksettings.action.QS_TILE_PREFERENCES" />
|
|
||||||
<category android:name="android.intent.category.DEFAULT" />
|
<category android:name="android.intent.category.DEFAULT"/>
|
||||||
|
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
|
|
||||||
</activity>
|
</activity>
|
||||||
|
|
||||||
<activity android:name=".GlobalApplication$CrashActivity"/>
|
<activity android:name=".GlobalApplication$CrashActivity"/>
|
||||||
@ -34,14 +36,19 @@
|
|||||||
android:label="@string/tileservice_name"
|
android:label="@string/tileservice_name"
|
||||||
android:icon="@drawable/ic_launcher"
|
android:icon="@drawable/ic_launcher"
|
||||||
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE">
|
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE">
|
||||||
|
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
|
|
||||||
<action android:name="android.service.quicksettings.action.QS_TILE"/>
|
<action android:name="android.service.quicksettings.action.QS_TILE"/>
|
||||||
|
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
|
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<meta-data
|
<meta-data
|
||||||
android:name="android.max_aspect"
|
android:name="android.max_aspect"
|
||||||
android:value="4.0"/>
|
android:value="4.0"/>
|
||||||
|
|
||||||
</application>
|
</application>
|
||||||
|
|
||||||
</manifest>
|
</manifest>
|
||||||
|
@ -19,7 +19,7 @@ public class App extends GlobalApplication {
|
|||||||
public void onCreate() {
|
public void onCreate() {
|
||||||
super.onCreate();
|
super.onCreate();
|
||||||
GlobalApplication.setIsDebuging(this, BuildConfig.DEBUG);
|
GlobalApplication.setIsDebuging(this, BuildConfig.DEBUG);
|
||||||
mSOSCSBroadcastReceiver = new SOSCSBroadcastReceiver(this);
|
mSOSCSBroadcastReceiver = new SOSCSBroadcastReceiver();
|
||||||
IntentFilter intentFilter = new IntentFilter();
|
IntentFilter intentFilter = new IntentFilter();
|
||||||
intentFilter.addAction(SOSCSBroadcastReceiver.ACTION_SOS);
|
intentFilter.addAction(SOSCSBroadcastReceiver.ACTION_SOS);
|
||||||
registerReceiver(mSOSCSBroadcastReceiver, intentFilter);
|
registerReceiver(mSOSCSBroadcastReceiver, intentFilter);
|
||||||
|
@ -9,7 +9,6 @@ import androidx.appcompat.app.AppCompatActivity;
|
|||||||
import androidx.appcompat.widget.Toolbar;
|
import androidx.appcompat.widget.Toolbar;
|
||||||
import cc.winboll.studio.appbase.R;
|
import cc.winboll.studio.appbase.R;
|
||||||
import cc.winboll.studio.libappbase.GlobalApplication;
|
import cc.winboll.studio.libappbase.GlobalApplication;
|
||||||
import cc.winboll.studio.libappbase.ISOSAPP;
|
|
||||||
import cc.winboll.studio.libappbase.LogUtils;
|
import cc.winboll.studio.libappbase.LogUtils;
|
||||||
import cc.winboll.studio.libappbase.LogView;
|
import cc.winboll.studio.libappbase.LogView;
|
||||||
import cc.winboll.studio.libappbase.SOS;
|
import cc.winboll.studio.libappbase.SOS;
|
||||||
@ -81,31 +80,31 @@ public class MainActivity extends AppCompatActivity {
|
|||||||
SOS.sendToWinBoll(this);
|
SOS.sendToWinBoll(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void sos() {
|
// public void sos() {
|
||||||
// 创建Intent对象,指定广播的action
|
// // 创建Intent对象,指定广播的action
|
||||||
Intent intent = new Intent(SOSCSBroadcastReceiver.ACTION_SOS);
|
// Intent intent = new Intent(SOSCSBroadcastReceiver.ACTION_SOS);
|
||||||
// 目标服务的包名和类名
|
// // 目标服务的包名和类名
|
||||||
String packageName = this.getPackageName();
|
// String packageName = this.getPackageName();
|
||||||
String serviceClassName = SimpleOperateSignalCenterService.class.getName();
|
// String serviceClassName = SimpleOperateSignalCenterService.class.getName();
|
||||||
intent.putExtra(ISOSAPP.EXTRA_PACKAGE, packageName);
|
// intent.putExtra(ISOSAPP.EXTRA_PACKAGE, packageName);
|
||||||
intent.putExtra(ISOSAPP.EXTRA_SERVICE, serviceClassName);
|
// intent.putExtra(ISOSAPP.EXTRA_SERVICE, serviceClassName);
|
||||||
// 发送广播
|
// // 发送广播
|
||||||
sendBroadcast(intent);
|
// sendBroadcast(intent);
|
||||||
LogUtils.d(TAG, "onSOS");
|
// LogUtils.d(TAG, "onSOS");
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
public void sos2() {
|
// public void sos2() {
|
||||||
// 创建Intent对象,指定广播的action
|
// // 创建Intent对象,指定广播的action
|
||||||
Intent intent = new Intent(SOSCSBroadcastReceiver.ACTION_SOS);
|
// Intent intent = new Intent(SOSCSBroadcastReceiver.ACTION_SOS);
|
||||||
// 目标服务的包名和类名
|
// // 目标服务的包名和类名
|
||||||
String packageName = this.getPackageName();
|
// String packageName = this.getPackageName();
|
||||||
String serviceClassName = SimpleOperateSignalCenterService.class.getName();
|
// String serviceClassName = SimpleOperateSignalCenterService.class.getName();
|
||||||
intent.putExtra(ISOSAPP.EXTRA_PACKAGE, packageName);
|
// intent.putExtra(ISOSAPP.EXTRA_PACKAGE, packageName);
|
||||||
intent.putExtra(ISOSAPP.EXTRA_SERVICE, serviceClassName);
|
// intent.putExtra(ISOSAPP.EXTRA_SERVICE, serviceClassName);
|
||||||
// 发送广播
|
// // 发送广播
|
||||||
sendBroadcast(intent);
|
// sendBroadcast(intent);
|
||||||
LogUtils.d(TAG, "onSOS2");
|
// LogUtils.d(TAG, "onSOS2");
|
||||||
}
|
// }
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
#Created by .winboll/winboll_app_build.gradle
|
#Created by .winboll/winboll_app_build.gradle
|
||||||
#Fri Feb 14 03:00:46 HKT 2025
|
#Thu Feb 13 21:48:00 GMT 2025
|
||||||
stageCount=2
|
stageCount=2
|
||||||
libraryProject=libappbase
|
libraryProject=libappbase
|
||||||
baseVersion=1.5
|
baseVersion=1.5
|
||||||
publishVersion=1.5.1
|
publishVersion=1.5.1
|
||||||
buildCount=0
|
buildCount=2
|
||||||
baseBetaVersion=1.5.2
|
baseBetaVersion=1.5.2
|
||||||
|
@ -18,7 +18,17 @@
|
|||||||
android:label="GlobalCrashActivity"
|
android:label="GlobalCrashActivity"
|
||||||
android:launchMode="standard"/>
|
android:launchMode="standard"/>
|
||||||
|
|
||||||
<service android:name=".SimpleOperateSignalCenterService"/>
|
<service android:name=".SimpleOperateSignalCenterService"
|
||||||
|
android:exported="true">
|
||||||
|
</service>
|
||||||
|
|
||||||
|
<service android:name="cc.winboll.studio.libappbase.SOSService"
|
||||||
|
android:exported="true">
|
||||||
|
<intent-filter>
|
||||||
|
<action android:name="cc.winboll.studio.libappbase.SOSService" />
|
||||||
|
</intent-filter>
|
||||||
|
</service>
|
||||||
|
|
||||||
|
|
||||||
<activity android:name=".LogActivity"/>
|
<activity android:name=".LogActivity"/>
|
||||||
|
|
||||||
|
@ -18,7 +18,7 @@ import android.view.Gravity;
|
|||||||
import com.hjq.toast.ToastUtils;
|
import com.hjq.toast.ToastUtils;
|
||||||
import com.hjq.toast.style.WhiteToastStyle;
|
import com.hjq.toast.style.WhiteToastStyle;
|
||||||
|
|
||||||
public class GlobalApplication extends Application implements ISOSAPP {
|
public class GlobalApplication extends Application {
|
||||||
|
|
||||||
public static final String TAG = "GlobalApplication";
|
public static final String TAG = "GlobalApplication";
|
||||||
|
|
||||||
@ -93,27 +93,27 @@ public class GlobalApplication extends Application implements ISOSAPP {
|
|||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
//
|
||||||
@Override
|
// @Override
|
||||||
public void helpISOSService(Intent intent) {
|
// public void helpISOSService(Intent intent) {
|
||||||
String szServiceName = intent.getStringExtra(EXTRA_SERVICE);
|
// String szServiceName = intent.getStringExtra(EXTRA_SERVICE);
|
||||||
String szPackageName = intent.getStringExtra(EXTRA_PACKAGE);
|
// String szPackageName = intent.getStringExtra(EXTRA_PACKAGE);
|
||||||
if (szServiceName != null && !szServiceName.equals("")
|
// if (szServiceName != null && !szServiceName.equals("")
|
||||||
&& szPackageName != null && !szPackageName.equals("")) {
|
// && szPackageName != null && !szPackageName.equals("")) {
|
||||||
LogUtils.d(TAG, "szPackageName " + szPackageName);
|
// LogUtils.d(TAG, "szPackageName " + szPackageName);
|
||||||
LogUtils.d(TAG, "szServiceName " + szServiceName);
|
// LogUtils.d(TAG, "szServiceName " + szServiceName);
|
||||||
|
//
|
||||||
// 目标服务的包名和类名
|
// // 目标服务的包名和类名
|
||||||
//String packageName = this.getPackageName();
|
// //String packageName = this.getPackageName();
|
||||||
//String serviceClassName = SimpleOperateSignalCenterService.class.getName();
|
// //String serviceClassName = SimpleOperateSignalCenterService.class.getName();
|
||||||
|
//
|
||||||
// 构建Intent
|
// // 构建Intent
|
||||||
Intent intentService = new Intent();
|
// Intent intentService = new Intent();
|
||||||
intentService.setComponent(new ComponentName(szPackageName, szServiceName));
|
// intentService.setComponent(new ComponentName(szPackageName, szServiceName));
|
||||||
intentService.putExtra(ISOSService.EXTRA_ENABLE, true);
|
// intentService.putExtra(ISOSService.EXTRA_ENABLE, true);
|
||||||
startService(intentService);
|
// startService(intentService);
|
||||||
LogUtils.d(TAG, "startService(intentService)");
|
// LogUtils.d(TAG, "startService(intentService)");
|
||||||
}
|
// }
|
||||||
LogUtils.d(TAG, "helpISOSService");
|
// LogUtils.d(TAG, "helpISOSService");
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
|
@ -1,17 +0,0 @@
|
|||||||
package cc.winboll.studio.libappbase;
|
|
||||||
import android.content.Intent;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @Author ZhanGSKen@AliYun.Com
|
|
||||||
* @Date 2025/02/13 03:49:35
|
|
||||||
* @Describe 简单 SOS 接口
|
|
||||||
*/
|
|
||||||
public interface ISOSAPP {
|
|
||||||
|
|
||||||
public static final String TAG = "ISOS";
|
|
||||||
public static final String EXTRA_PACKAGE = "EXTRA_PACKAGE";
|
|
||||||
public static final String EXTRA_SERVICE = "EXTRA_SERVICE";
|
|
||||||
|
|
||||||
public void helpISOSService(Intent intent);
|
|
||||||
|
|
||||||
}
|
|
@ -0,0 +1,5 @@
|
|||||||
|
// ISOSService.aidl
|
||||||
|
package cc.winboll.studio.libappbase;
|
||||||
|
interface ISOSService {
|
||||||
|
String getMessage();
|
||||||
|
}
|
@ -1,17 +0,0 @@
|
|||||||
package cc.winboll.studio.libappbase;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @Author ZhanGSKen@AliYun.Com
|
|
||||||
* @Date 2025/02/13 04:13:51
|
|
||||||
* @Describe 简单链接 SOS 体系的服务
|
|
||||||
*/
|
|
||||||
import android.content.Intent;
|
|
||||||
|
|
||||||
public interface ISOSService {
|
|
||||||
|
|
||||||
public static final String TAG = "ISOSService";
|
|
||||||
public static final String EXTRA_ENABLE = "EXTRA_ENABLE";
|
|
||||||
|
|
||||||
public Intent getISOSServiceIntentWhichAskForHelp();
|
|
||||||
public boolean isEnable();
|
|
||||||
}
|
|
@ -14,17 +14,17 @@ public class SOSCSBroadcastReceiver extends BroadcastReceiver {
|
|||||||
public static final String TAG = "SOSCSBroadcastReceiver";
|
public static final String TAG = "SOSCSBroadcastReceiver";
|
||||||
public static final String ACTION_SOS = SOSCSBroadcastReceiver.class.getName() + ".ACTION_SOS";
|
public static final String ACTION_SOS = SOSCSBroadcastReceiver.class.getName() + ".ACTION_SOS";
|
||||||
|
|
||||||
ISOSAPP mISOSAPP;
|
//ISOSAPP mISOSAPP;
|
||||||
|
|
||||||
public SOSCSBroadcastReceiver(ISOSAPP iSOSAPP) {
|
public SOSCSBroadcastReceiver() {
|
||||||
mISOSAPP = iSOSAPP;
|
//mISOSAPP = iSOSAPP;
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public void onReceive(Context context, Intent intent) {
|
public void onReceive(Context context, Intent intent) {
|
||||||
String action = intent.getAction();
|
String action = intent.getAction();
|
||||||
if (action.equals(ACTION_SOS)) {
|
if (action.equals(ACTION_SOS)) {
|
||||||
LogUtils.d(TAG, "ACTION_SOS");
|
LogUtils.d(TAG, "ACTION_SOS");
|
||||||
mISOSAPP.helpISOSService(intent);
|
//mISOSAPP.helpISOSService(intent);
|
||||||
} else {
|
} else {
|
||||||
LogUtils.d(TAG, String.format("%s", action));
|
LogUtils.d(TAG, String.format("%s", action));
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,29 @@
|
|||||||
|
package cc.winboll.studio.libappbase;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Author ZhanGSKen@AliYun.Com
|
||||||
|
* @Date 2025/02/14 05:39:44
|
||||||
|
*/
|
||||||
|
import android.app.Service;
|
||||||
|
import android.content.Intent;
|
||||||
|
import android.os.IBinder;
|
||||||
|
import android.os.RemoteException;
|
||||||
|
|
||||||
|
public class SOSService extends Service {
|
||||||
|
|
||||||
|
public static final String TAG = "SOSService";
|
||||||
|
|
||||||
|
private final ISOSService.Stub binder = new ISOSService.Stub() {
|
||||||
|
@Override
|
||||||
|
public String getMessage() throws RemoteException {
|
||||||
|
return "Hello from Service";
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBinder onBind(Intent intent) {
|
||||||
|
|
||||||
|
return binder;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -12,7 +12,7 @@ import android.content.Intent;
|
|||||||
import android.os.IBinder;
|
import android.os.IBinder;
|
||||||
import cc.winboll.studio.libappbase.bean.SimpleOperateSignalCenterServiceBean;
|
import cc.winboll.studio.libappbase.bean.SimpleOperateSignalCenterServiceBean;
|
||||||
|
|
||||||
public class SimpleOperateSignalCenterService extends Service implements ISOSService {
|
public class SimpleOperateSignalCenterService extends Service {
|
||||||
|
|
||||||
public static final String TAG = "SimpleOperateSignalCenterService";
|
public static final String TAG = "SimpleOperateSignalCenterService";
|
||||||
public static final String ACTION_ENABLE = SimpleOperateSignalCenterService.class.getName() + ".ACTION_ENABLE";
|
public static final String ACTION_ENABLE = SimpleOperateSignalCenterService.class.getName() + ".ACTION_ENABLE";
|
||||||
@ -43,11 +43,11 @@ public class SimpleOperateSignalCenterService extends Service implements ISOSSer
|
|||||||
@Override
|
@Override
|
||||||
public int onStartCommand(Intent intent, int flags, int startId) {
|
public int onStartCommand(Intent intent, int flags, int startId) {
|
||||||
LogUtils.d(TAG, "onStartCommand");
|
LogUtils.d(TAG, "onStartCommand");
|
||||||
if (intent.getBooleanExtra(ISOSService.EXTRA_ENABLE, false)) {
|
// if (intent.getBooleanExtra(ISOSService.EXTRA_ENABLE, false)) {
|
||||||
LogUtils.d(TAG, "onStartCommand enable service");
|
// LogUtils.d(TAG, "onStartCommand enable service");
|
||||||
mSimpleOperateSignalCenterServiceBean.setIsEnable(true);
|
// mSimpleOperateSignalCenterServiceBean.setIsEnable(true);
|
||||||
SimpleOperateSignalCenterServiceBean.saveBean(this, mSimpleOperateSignalCenterServiceBean);
|
// SimpleOperateSignalCenterServiceBean.saveBean(this, mSimpleOperateSignalCenterServiceBean);
|
||||||
}
|
// }
|
||||||
|
|
||||||
runMainThread();
|
runMainThread();
|
||||||
|
|
||||||
@ -63,20 +63,6 @@ public class SimpleOperateSignalCenterService extends Service implements ISOSSer
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public Intent getISOSServiceIntentWhichAskForHelp() {
|
|
||||||
Intent intentService = new Intent();
|
|
||||||
intentService.putExtra(ISOSAPP.EXTRA_PACKAGE, this.getPackageName());
|
|
||||||
intentService.putExtra(ISOSAPP.EXTRA_SERVICE, this.getClass().getName());
|
|
||||||
return intentService;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean isEnable() {
|
|
||||||
mSimpleOperateSignalCenterServiceBean = SimpleOperateSignalCenterServiceBean.loadBean(this, SimpleOperateSignalCenterServiceBean.class);
|
|
||||||
return mSimpleOperateSignalCenterServiceBean.isEnable();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onDestroy() {
|
public void onDestroy() {
|
||||||
super.onDestroy();
|
super.onDestroy();
|
||||||
@ -84,8 +70,8 @@ public class SimpleOperateSignalCenterService extends Service implements ISOSSer
|
|||||||
mSimpleOperateSignalCenterServiceBean = SimpleOperateSignalCenterServiceBean.loadBean(this, SimpleOperateSignalCenterServiceBean.class);
|
mSimpleOperateSignalCenterServiceBean = SimpleOperateSignalCenterServiceBean.loadBean(this, SimpleOperateSignalCenterServiceBean.class);
|
||||||
if (mSimpleOperateSignalCenterServiceBean.isEnable()) {
|
if (mSimpleOperateSignalCenterServiceBean.isEnable()) {
|
||||||
LogUtils.d(TAG, "mSimpleOperateSignalCenterServiceBean.isEnable()");
|
LogUtils.d(TAG, "mSimpleOperateSignalCenterServiceBean.isEnable()");
|
||||||
ISOSAPP iSOSAPP = (ISOSAPP)getApplication();
|
// ISOSAPP iSOSAPP = (ISOSAPP)getApplication();
|
||||||
iSOSAPP.helpISOSService(getISOSServiceIntentWhichAskForHelp());
|
// iSOSAPP.helpISOSService(getISOSServiceIntentWhichAskForHelp());
|
||||||
}
|
}
|
||||||
if (_MainThread != null) {
|
if (_MainThread != null) {
|
||||||
_MainThread.isExist = true;
|
_MainThread.isExist = true;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user