diff --git a/app/src/main/aidl/com/aoleyun/sn/SystemInfoInterface.aidl b/app/src/main/aidl/com/aoleyun/sn/SystemInfoInterface.aidl index 422184a..f2d0836 100644 --- a/app/src/main/aidl/com/aoleyun/sn/SystemInfoInterface.aidl +++ b/app/src/main/aidl/com/aoleyun/sn/SystemInfoInterface.aidl @@ -12,10 +12,6 @@ interface SystemInfoInterface { double aDouble, String aString); String getSerial(); - List getHideIcon(); - List getDisableIcon(); - String getTopAppPackage(); - boolean SystemPutInt(String name, int value); - void setDefaultDesktop(String pkg); - List getDisableApp(); + boolean isDeviceLocked(); + boolean isBrowserInput(); } diff --git a/app/src/main/java/com/aoleyun/sn/network/NetInterfaceManager.java b/app/src/main/java/com/aoleyun/sn/network/NetInterfaceManager.java index dd8ac58..793e6c4 100644 --- a/app/src/main/java/com/aoleyun/sn/network/NetInterfaceManager.java +++ b/app/src/main/java/com/aoleyun/sn/network/NetInterfaceManager.java @@ -482,7 +482,7 @@ public class NetInterfaceManager { Utils.obtainWifiInfo(mContext), mMMKV.decodeString(NetInterfaceManager.PublicIP, ""), Utils.getIPAddress(mContext), - Utils.getBluetoothList(), + Utils.getBluetoothList(mContext), Utils.getWifiAlias(mContext), Utils.getAPPVersionName(PackageNames.BROWSER, mContext), Utils.getAPPVersionName(PackageNames.NOTIFICATIONS, mContext), diff --git a/app/src/main/java/com/aoleyun/sn/service/RemoteService.java b/app/src/main/java/com/aoleyun/sn/service/RemoteService.java index e50273b..a569588 100644 --- a/app/src/main/java/com/aoleyun/sn/service/RemoteService.java +++ b/app/src/main/java/com/aoleyun/sn/service/RemoteService.java @@ -5,22 +5,14 @@ import android.content.Intent; import android.os.IBinder; import android.os.RemoteException; import android.provider.Settings; -import android.text.TextUtils; import android.util.Log; import com.aoleyun.sn.SystemInfoInterface; import com.aoleyun.sn.comm.CommonConfig; -import com.aoleyun.sn.comm.PackageNames; -import com.aoleyun.sn.utils.CacheUtils; -import com.aoleyun.sn.utils.ForegroundAppUtil; -import com.aoleyun.sn.utils.JgyUtils; +import com.aoleyun.sn.comm.JGYActions; import com.aoleyun.sn.utils.Utils; import com.tencent.mmkv.MMKV; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - public class RemoteService extends Service { private String TAG = "RemoteService"; @@ -52,60 +44,73 @@ public class RemoteService extends Service { } @Override - public List getHideIcon() throws RemoteException { - List hide = JgyUtils.getInstance().getHidePackage(); - return hide; + public boolean isDeviceLocked() throws RemoteException { + int locked = Settings.System.getInt(getContentResolver(), JGYActions.ACTION_QCH_UNLOCK_IPAD, JGYActions.FRAME_CODE_LOCKED); + Log.e(TAG, "isDeviceLocked: " + locked); + return locked == JGYActions.FRAME_CODE_LOCKED; } @Override - public List getDisableIcon() throws RemoteException { - List disable = JgyUtils.getInstance().getDisablePackage(); - return disable; + public boolean isBrowserInput() throws RemoteException { + int state = Settings.System.getInt(getContentResolver(), "qch_Browser_input", 1); + return state == 0; } - @Override - public String getTopAppPackage() throws RemoteException { - String pkg = Settings.Global.getString(getContentResolver(), ForegroundAppUtil.TOPAPP_KEY); - Log.e(TAG, "getTopAppPackage: " + pkg); - return pkg; - } - - @Override - public boolean SystemPutInt(String name, int value) throws RemoteException { - Log.e(TAG, "SystemPutInt: " + "name = " + name + "\t value = " + value); - return Settings.System.putInt(getContentResolver(), name, value); - } - - @Override - public void setDefaultDesktop(String pkg) throws RemoteException { - Log.e(TAG, "setDefaultDesktop: " + "pkg = " + pkg); -// SPUtils.put(RemoteService.this, "default_launcher", pkg); - mMMKV.encode(CommonConfig.DEFAULT_LAUNCHER_PACKAGE_NAME, pkg); - JgyUtils.getInstance().setDefaultDesktop(pkg); - if (PackageNames.DESKTOP.equals(pkg)) { -// JgyUtils.getInstance().killPackage(PackageNames.DESKTOP); - try { - new CacheUtils().cleanApplicationUserData(RemoteService.this, PackageNames.DESKTOP); - new CacheUtils().cleanApplicationUserData(RemoteService.this, PackageNames.APPSTORE); - new CacheUtils().cleanApplicationUserData(RemoteService.this, "com.aoleyunos.dop2"); - } catch (Exception e) { - Log.e(TAG, "onReceive: " + e.getMessage()); - e.printStackTrace(); - } - JgyUtils.getInstance().killPackage("com.aoleyunos.dop2"); - } - - } - - @Override - public List getDisableApp() throws RemoteException { - String disable_app_list = Settings.Global.getString(getContentResolver(), CommonConfig.AOLE_ACTION_DISABLE_APP); - Log.e(TAG, "getDisableApp: " + disable_app_list); - if (TextUtils.isEmpty(disable_app_list)) { - return new ArrayList<>(); - } else { - return new ArrayList<>(Arrays.asList(disable_app_list.split(","))); - } - } +// @Override +// public List getHideIcon() throws RemoteException { +// List hide = JgyUtils.getInstance().getHidePackage(); +// return hide; +// } +// +// @Override +// public List getDisableIcon() throws RemoteException { +// List disable = JgyUtils.getInstance().getDisablePackage(); +// return disable; +// } +// +// @Override +// public String getTopAppPackage() throws RemoteException { +// String pkg = Settings.Global.getString(getContentResolver(), ForegroundAppUtil.TOPAPP_KEY); +// Log.e(TAG, "getTopAppPackage: " + pkg); +// return pkg; +// } +// +// @Override +// public boolean SystemPutInt(String name, int value) throws RemoteException { +// Log.e(TAG, "SystemPutInt: " + "name = " + name + "\t value = " + value); +// return Settings.System.putInt(getContentResolver(), name, value); +// } +// +// @Override +// public void setDefaultDesktop(String pkg) throws RemoteException { +// Log.e(TAG, "setDefaultDesktop: " + "pkg = " + pkg); +//// SPUtils.put(RemoteService.this, "default_launcher", pkg); +// mMMKV.encode(CommonConfig.DEFAULT_LAUNCHER_PACKAGE_NAME, pkg); +// JgyUtils.getInstance().setDefaultDesktop(pkg); +// if (PackageNames.DESKTOP.equals(pkg)) { +//// JgyUtils.getInstance().killPackage(PackageNames.DESKTOP); +// try { +// new CacheUtils().cleanApplicationUserData(RemoteService.this, PackageNames.DESKTOP); +// new CacheUtils().cleanApplicationUserData(RemoteService.this, PackageNames.APPSTORE); +// new CacheUtils().cleanApplicationUserData(RemoteService.this, "com.aoleyunos.dop2"); +// } catch (Exception e) { +// Log.e(TAG, "onReceive: " + e.getMessage()); +// e.printStackTrace(); +// } +// JgyUtils.getInstance().killPackage("com.aoleyunos.dop2"); +// } +// +// } +// +// @Override +// public List getDisableApp() throws RemoteException { +// String disable_app_list = Settings.Global.getString(getContentResolver(), CommonConfig.AOLE_ACTION_DISABLE_APP); +// Log.e(TAG, "getDisableApp: " + disable_app_list); +// if (TextUtils.isEmpty(disable_app_list)) { +// return new ArrayList<>(); +// } else { +// return new ArrayList<>(Arrays.asList(disable_app_list.split(","))); +// } +// } }; } diff --git a/app/src/main/java/com/aoleyun/sn/utils/JgyUtils.java b/app/src/main/java/com/aoleyun/sn/utils/JgyUtils.java index 179da0f..f72665b 100644 --- a/app/src/main/java/com/aoleyun/sn/utils/JgyUtils.java +++ b/app/src/main/java/com/aoleyun/sn/utils/JgyUtils.java @@ -2912,7 +2912,7 @@ public class JgyUtils { // jsonObject.addProperty("wifi_status", Utils.obtainWifiInfo(mContext)); jsonObject.addProperty("PN_ip", mMMKV.decodeString(NetInterfaceManager.PublicIP, "")); jsonObject.addProperty("LAN_ip", Utils.getIPAddress(mContext)); - jsonObject.addProperty("bluetooth", Utils.getBluetoothList()); + jsonObject.addProperty("bluetooth", Utils.getBluetoothList(mContext)); jsonObject.addProperty("wifi_name", Utils.getWifiAlias(mContext)); jsonObject.addProperty("platform", JgyUtils.getInstance().getAppPlatform()); return jsonObject.toString(); diff --git a/app/src/main/java/com/aoleyun/sn/utils/Utils.java b/app/src/main/java/com/aoleyun/sn/utils/Utils.java index 0bb1d14..ccd3a41 100644 --- a/app/src/main/java/com/aoleyun/sn/utils/Utils.java +++ b/app/src/main/java/com/aoleyun/sn/utils/Utils.java @@ -4,6 +4,8 @@ import android.annotation.SuppressLint; import android.app.ActivityManager; import android.bluetooth.BluetoothAdapter; import android.bluetooth.BluetoothDevice; +import android.bluetooth.BluetoothManager; +import android.bluetooth.BluetoothProfile; import android.content.ActivityNotFoundException; import android.content.ComponentName; import android.content.Context; @@ -806,7 +808,7 @@ public class Utils { // if (NOSN.equalsIgnoreCase(getSn())) { // return getIMEI(context); // } else { - return getSn(); + return getSn(); // } } } @@ -1940,13 +1942,24 @@ public class Utils { } - public static String getBluetoothList() { + public static String getBluetoothList(Context context) { + BluetoothManager bluetoothManager = (BluetoothManager) context.getSystemService(Context.BLUETOOTH_SERVICE); + // 获取所有通过 GATT 连接的设备(适用于低功耗蓝牙 BLE) + List connectedDevices = bluetoothManager.getConnectedDevices(BluetoothProfile.GATT); + + for (BluetoothDevice device : connectedDevices) { + String deviceName = device.getName(); // 获取设备名称 + String deviceAddress = device.getAddress(); // 获取 MAC 地址 + Log.e("getBluetoothList", "已连接设备: " + deviceName + "(" + deviceAddress + ")"); + } + BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter(); if (bluetoothAdapter == null) { return "没有蓝牙设备"; } else { - if (!bluetoothAdapter.isEnabled())//判断蓝牙设备是否已开起 - { + Log.e(TAG, "getBluetoothList: getName = " + bluetoothAdapter.getName()); + //判断蓝牙设备是否已开起 + if (!bluetoothAdapter.isEnabled()) { return "蓝牙未开启"; // //开起蓝牙设备 // Intent intent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); @@ -1956,9 +1969,12 @@ public class Utils { StringBuilder stringBuilder = new StringBuilder(); for (Iterator iterator = devices.iterator(); iterator.hasNext(); ) { BluetoothDevice device = iterator.next(); - stringBuilder.append(device.getAlias()).append(";"); + if (device.isConnected()) { + stringBuilder.append(device.getAlias()).append(";"); + } } - Log.e(TAG, "getBluetoothList: " + stringBuilder.toString()); + Log.e(TAG, "getConnectedBluetoothList: " + stringBuilder.toString()); + return stringBuilder.toString(); } } diff --git a/build.gradle b/build.gradle index b6ec2b2..f14c0af 100644 --- a/build.gradle +++ b/build.gradle @@ -3,11 +3,13 @@ buildscript { repositories { google() - mavenCentral() +// mavenCentral() maven { url "https://jitpack.io" } maven { url 'https://developer.huawei.com/repo/' } - maven { url 'https://maven.aliyun.com/repository/central/' } - maven { url 'https://maven.aliyun.com/repository/public/' } + maven { url 'https://maven.aliyun.com/repository/central' } + maven { url "https://maven.aliyun.com/repository/jcenter" } + maven { url 'https://maven.aliyun.com/repository/public' } + maven { url 'https://maven.aliyun.com/repository/google' } } dependencies { classpath 'com.android.tools.build:gradle:3.6.4'