From d31f2155237aa65cee1cb6ce1d39c48191663226 Mon Sep 17 00:00:00 2001
From: panlili2024 <14743743+panlili2024@user.noreply.gitee.com>
Date: 星期五, 21 二月 2025 18:02:41 +0800
Subject: [PATCH] 新增source屏接口及房间及绑定关系接口

---
 HDLSDK/app/src/main/java/com/hdl/hdlsdk/SourceTestActivity.java |  556 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 556 insertions(+), 0 deletions(-)

diff --git a/HDLSDK/app/src/main/java/com/hdl/hdlsdk/SourceTestActivity.java b/HDLSDK/app/src/main/java/com/hdl/hdlsdk/SourceTestActivity.java
new file mode 100644
index 0000000..8c26596
--- /dev/null
+++ b/HDLSDK/app/src/main/java/com/hdl/hdlsdk/SourceTestActivity.java
@@ -0,0 +1,556 @@
+package com.hdl.hdlsdk;
+
+import android.Manifest;
+import android.app.Notification;
+import android.app.NotificationChannel;
+import android.app.NotificationManager;
+import android.content.Context;
+import android.content.Intent;
+import android.graphics.Color;
+import android.net.Uri;
+import android.os.Build;
+import android.os.Bundle;
+import android.os.Environment;
+import android.os.storage.StorageManager;
+import android.text.TextUtils;
+import android.util.Log;
+import android.view.KeyEvent;
+import android.view.Surface;
+import android.view.View;
+import android.widget.Button;
+import android.widget.EditText;
+import android.widget.TextView;
+import android.widget.Toast;
+
+import androidx.annotation.RequiresApi;
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.core.app.ActivityCompat;
+import androidx.core.app.NotificationCompat;
+
+import com.hdl.sdk.sourceos.knob.OsEventListener;
+import com.hdl.sdk.sourceos.OsManager;
+import com.hdl.sdk.sourceos.knob.IQuickKnobListenerAdapter;
+
+import java.lang.reflect.Method;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Timer;
+import java.util.TimerTask;
+
+
+public class SourceTestActivity extends AppCompatActivity implements View.OnClickListener {
+
+    private Button btnApiVersion, btnDeviceModel, btnOsVersion, btnRunningMemory, btnInnerStorage, btnFreeStorage, btnKernelVersion, btnBuilderNumber, btnFwVersion, btnShutDown, btnReboot, btnSystemConfiginfo, btnBrightness, btnRotation, notifyOpen, notifyClose, btnOpenBackLight, btnCloseBackLight, btnStatusBarShow, btnStatusBarHide, btnMicEnable, btnEthMacAddress, btnEthIpAddress, btnScardPath, btnInner, btnInstall, btnEthernetConnect, btnSubmitStaticIp, btnSleep, btnWakeUp, btnFilterPermission, btnOta, btnNetmask, btnGateway, btnDns, btnDisconnectEth, btnConnectEth, btnWwitchDhcp;
+    private TextView tvContent;
+    private EditText editIpAddress, editGateway, editNetmask, editDns1, editDns2, editBrightness, editRotation;
+
+    final private int LED_NOTIFICATION_ID = 100;
+
+    private NotificationManager notificationManager;
+    private String notificationId = "leds";
+    private String notificationName = "ledsTest";
+    private Timer mTimer;
+    private static String TAG = "SourceTestActivity";
+    private IQuickKnobListenerAdapter knobListenerAdapter;
+    private final int PERMISSION_REQUEST = 0xa00;
+    private OsEventListener eventListener = new OsEventListener() {
+        @Override
+        public void onKeyEvent(int keyCode, int state) {
+            try {
+                if (KeyEvent.KEYCODE_MUTE == keyCode) {
+                    //楹﹀厠椋庣姸鎬佸彉鍖�
+                    boolean micState = OsManager.getMicEnable();
+                }
+
+
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+    };
+
+    @RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN_MR2)
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.activity_source_test);
+        initView();
+        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
+            ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.REBOOT, Manifest.permission.READ_PHONE_STATE, Manifest.permission.WRITE_EXTERNAL_STORAGE}, PERMISSION_REQUEST);
+        }
+        //绯荤粺鎺ュ彛鍒濆鍖�
+        OsManager.init(SourceTestActivity.this);
+
+        OsManager.addEventListener(eventListener);
+
+        OsManager.startTof(1);
+
+        startTimerTask();
+
+        //鏃嬮挳鍒濆鍖�
+        initKnob();
+    }
+
+    @Override
+    public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) {
+
+        super.onRequestPermissionsResult(requestCode, permissions, grantResults);
+        switch (requestCode) {
+            case PERMISSION_REQUEST:
+                if (grantResults != null && permissions != null) {
+                    for (int i = 0; i < grantResults.length; i++) {
+                        Log.d(TAG, "grantResults[" + i + "]:" + grantResults[i]);
+                        Log.d(TAG, "permissions[" + i + "]:" + permissions[i]);
+                    }
+                }
+
+                break;
+        }
+    }
+
+    // 寮�鍚换鍔�
+    private void startTimerTask() {
+        mTimer = new Timer();
+        mTimer.schedule(new TimerTask() {
+            @Override
+            public void run() {
+                int data = OsManager.readTofData();
+                Log.d(TAG, "Tof data:" + data);
+            }
+        }, 500, 3000);
+    }
+
+    // 鍙栨秷浠诲姟
+    private void cancelTask() {
+        if (mTimer != null) {
+            mTimer.cancel();
+        }
+    }
+
+
+    private void initView() {
+        tvContent = findViewById(R.id.tv_content);
+        btnApiVersion = findViewById(R.id.btn_api_version);
+        btnDeviceModel = findViewById(R.id.btn_device_model);
+        btnOsVersion = findViewById(R.id.btn_os_version);
+        btnRunningMemory = findViewById(R.id.btn_running_memory);
+        btnInnerStorage = findViewById(R.id.btn_inner_storage);
+        btnFreeStorage = findViewById(R.id.btn_free_storage);
+        btnKernelVersion = findViewById(R.id.btn_kernel_version);
+        btnBuilderNumber = findViewById(R.id.btn_builder_number);
+        btnFwVersion = findViewById(R.id.btn_fwversion);
+        btnShutDown = findViewById(R.id.btn_shut_down);
+        btnReboot = findViewById(R.id.btn_reboot);
+        btnSystemConfiginfo = findViewById(R.id.btn_system_configinfo);
+
+        btnBrightness = findViewById(R.id.btn_brightness);
+        btnRotation = findViewById(R.id.btn_rotation);
+        notifyOpen = findViewById(R.id.btn_notifyLight_open);
+        notifyClose = findViewById(R.id.btn_notifyLight_close);
+        btnOpenBackLight = findViewById(R.id.btn_open_back_light);
+        btnCloseBackLight = findViewById(R.id.btn_close_back_light);
+        btnStatusBarShow = findViewById(R.id.btn_statusBar_show);
+        btnStatusBarHide = findViewById(R.id.btn_statusBar_hide);
+        btnMicEnable = findViewById(R.id.btn_mic_enable);
+        btnEthMacAddress = findViewById(R.id.btn_eth_mac_address);
+        btnEthIpAddress = findViewById(R.id.btn_eth_ip_address);
+        btnScardPath = findViewById(R.id.btn_sdcard);
+        btnInner = findViewById(R.id.btn_inner);
+
+        btnInstall = findViewById(R.id.btn_install);
+        btnEthernetConnect = findViewById(R.id.btn_ethernet_connect);
+        editRotation = findViewById(R.id.edit_rotation);
+
+        editIpAddress = findViewById(R.id.edit_ip_address);
+        editGateway = findViewById(R.id.edit_gateway);//缃戝叧
+        editNetmask = findViewById(R.id.edit_netmask);//鎺╃爜
+        editDns1 = findViewById(R.id.edit_dns1);
+        editDns2 = findViewById(R.id.edit_dns2);
+        btnSubmitStaticIp = findViewById(R.id.btn_submit_static_ip);
+
+        btnSleep = findViewById(R.id.btn_sleep);
+        editBrightness = findViewById(R.id.edit_brightness);
+        btnWakeUp = findViewById(R.id.btn_wake_up);
+        btnFilterPermission = findViewById(R.id.btn_filter_permission);
+        btnOta = findViewById(R.id.btn_ota);
+
+        btnNetmask = findViewById(R.id.btn_netmask);
+        btnGateway = findViewById(R.id.btn_gateway);
+        btnDns = findViewById(R.id.btn_dns);
+        btnDisconnectEth = findViewById(R.id.btn_disconnect_eth);
+        btnConnectEth = findViewById(R.id.btn_connect_eth);
+        btnWwitchDhcp = findViewById(R.id.btn_switch_dhcp);
+
+        btnApiVersion.setOnClickListener(this);
+        btnDeviceModel.setOnClickListener(this);
+        btnOsVersion.setOnClickListener(this);
+        btnRunningMemory.setOnClickListener(this);
+        btnInnerStorage.setOnClickListener(this);
+        btnFreeStorage.setOnClickListener(this);
+        btnKernelVersion.setOnClickListener(this);
+        btnBuilderNumber.setOnClickListener(this);
+        btnFwVersion.setOnClickListener(this);
+        btnShutDown.setOnClickListener(this);
+        btnReboot.setOnClickListener(this);
+        btnSystemConfiginfo.setOnClickListener(this);
+
+        btnBrightness.setOnClickListener(this);
+        btnRotation.setOnClickListener(this);
+        notifyOpen.setOnClickListener(this);
+        notifyClose.setOnClickListener(this);
+        btnOpenBackLight.setOnClickListener(this);
+        btnCloseBackLight.setOnClickListener(this);
+        btnStatusBarShow.setOnClickListener(this);
+        btnStatusBarHide.setOnClickListener(this);
+        btnMicEnable.setOnClickListener(this);
+        btnEthMacAddress.setOnClickListener(this);
+        btnEthIpAddress.setOnClickListener(this);
+        btnScardPath.setOnClickListener(this);
+        btnInner.setOnClickListener(this);
+        btnInstall.setOnClickListener(this);
+
+        btnEthernetConnect.setOnClickListener(this);
+        btnSubmitStaticIp.setOnClickListener(this);
+        btnSleep.setOnClickListener(this);
+        btnWakeUp.setOnClickListener(this);
+        btnFilterPermission.setOnClickListener(this);
+        btnOta.setOnClickListener(this);
+
+        btnNetmask.setOnClickListener(this);
+        btnGateway.setOnClickListener(this);
+        btnDns.setOnClickListener(this);
+        btnDisconnectEth.setOnClickListener(this);
+        btnConnectEth.setOnClickListener(this);
+        btnWwitchDhcp.setOnClickListener(this);
+
+    }
+
+    private void initKnob() {
+        knobListenerAdapter = new IQuickKnobListenerAdapter() {
+            @Override
+            public void onKnobLeftListener() {
+                super.onKnobLeftListener();
+                //婊戝姩鍒颁笂涓�涓�
+                //scrollPre();
+                tvContent.setText("鏃嬮挳婊戝姩鍒颁笂涓�涓�");
+            }
+
+            @Override
+            public void onKnobRightListener() {
+                super.onKnobRightListener();
+                //婊戝姩鍒颁笅涓�涓�
+                //scrollNext();
+                tvContent.setText("鏃嬮挳婊戝姩鍒颁笅涓�涓�");
+            }
+        };
+        OsManager.addEventListener(knobListenerAdapter);
+    }
+
+    // 鍒ゆ柇瀛樺偍鍗$殑璺緞鏄惁鍙敤
+    public static boolean getStorageState(Context context, String path) {
+        try {
+            StorageManager sm = (StorageManager) context.getSystemService(context.STORAGE_SERVICE);
+            Method getVolumeStateMethod = StorageManager.class.getMethod("getVolumeState", new Class[]{String.class});
+            String state = (String) getVolumeStateMethod.invoke(sm, path);
+            if (state.equals(Environment.MEDIA_MOUNTED_READ_ONLY) || state.equals(Environment.MEDIA_MOUNTED)) {
+                return true;
+            }
+            return false;
+        } catch (Exception e) {
+            Log.e(TAG, "getStorageState() failed", e);
+            return false;
+        }
+    }
+
+    @Override
+    public void onClick(View v) {
+        switch (v.getId()) {
+            case R.id.btn_api_version:
+                String apiVersion = OsManager.getAPIVersion();
+                Log.e(TAG, "apiVersion :" + apiVersion);
+                tvContent.setText(apiVersion);
+                Toast.makeText(this, "aip鐗堟湰 :" + apiVersion, Toast.LENGTH_SHORT).show();
+                break;
+            case R.id.btn_device_model:
+                String deviceModel = OsManager.getDeviceModel();
+                Log.e(TAG, "deviceModel :" + deviceModel);
+                tvContent.setText(deviceModel);
+                Toast.makeText(this, "璁惧model :" + deviceModel, Toast.LENGTH_SHORT).show();
+                break;
+            case R.id.btn_os_version:
+                String androidOSVersion = OsManager.getAndroidOSVersion();
+                Log.e(TAG, "androidOSVersion :" + androidOSVersion);
+                tvContent.setText(androidOSVersion);
+                Toast.makeText(this, "绯荤粺鐗堟湰 :" + androidOSVersion, Toast.LENGTH_SHORT).show();
+                break;
+            case R.id.btn_running_memory:
+                String runningMemory = OsManager.getRunningMemory();
+                Log.e(TAG, "runningMemory :" + runningMemory);
+                tvContent.setText(runningMemory);
+                Toast.makeText(this, "杩愯鍐呭瓨 :" + runningMemory, Toast.LENGTH_SHORT).show();
+                break;
+            case R.id.btn_inner_storage:
+                String internalStorageMemory = OsManager.getInternalStorageMemory();
+                Log.e(TAG, "internalStorageMemory :" + internalStorageMemory);
+                tvContent.setText(internalStorageMemory);
+                Toast.makeText(this, "鍐呴儴瀛樺偍璺緞 :" + internalStorageMemory, Toast.LENGTH_SHORT).show();
+                break;
+            case R.id.btn_free_storage:
+                String internalFreeStorageMemory = OsManager.getInternalFreeStorageMemory();
+                Log.e(TAG, "internalFreeStorageMemory :" + internalFreeStorageMemory);
+                tvContent.setText(internalFreeStorageMemory);
+                Toast.makeText(this, "鍐呴儴瀛樺偍鍙敤瀹归噺 :" + internalFreeStorageMemory, Toast.LENGTH_SHORT).show();
+
+                break;
+            case R.id.btn_kernel_version:
+                String kernelVersion = OsManager.getKernelVersion();
+                Log.e(TAG, "kernelVersion :" + kernelVersion);
+                tvContent.setText(kernelVersion);
+                Toast.makeText(this, "kernel鐗堟湰淇℃伅 :" + kernelVersion, Toast.LENGTH_SHORT).show();
+
+                break;
+            case R.id.btn_builder_number:
+                String builderNumberDisplay = OsManager.getBuilderNumberDisplay();
+                Log.e(TAG, "builderNumberDisplay :" + builderNumberDisplay);
+                tvContent.setText(builderNumberDisplay);
+                Toast.makeText(this, "DisplayId :" + builderNumberDisplay, Toast.LENGTH_SHORT).show();
+                break;
+            case R.id.btn_fwversion:
+                String fwVersion = OsManager.getFwVersion();
+                Log.e(TAG, "fwVersion :" + fwVersion);
+                tvContent.setText(fwVersion);
+                Toast.makeText(this, "fwVersion :" + fwVersion, Toast.LENGTH_SHORT).show();
+                break;
+            case R.id.btn_shut_down:
+                OsManager.shutdown();
+                break;
+            case R.id.btn_reboot:
+                OsManager.reboot();
+                break;
+            case R.id.btn_system_configinfo:
+                String jsondata = OsManager.readSystemConfigInfo();
+                tvContent.setText(jsondata);
+                break;
+            case R.id.btn_brightness:
+                String trim = editBrightness.getText().toString().trim();
+                if (!TextUtils.isEmpty(trim)) {
+                    OsManager.setBrightness(Integer.parseInt(trim));
+                } else {
+                    Toast.makeText(SourceTestActivity.this, "璇疯緭鍏ヤ寒搴﹀��", Toast.LENGTH_LONG).show();
+                }
+                break;
+            case R.id.btn_rotation:
+                String rotation = editRotation.getText().toString().trim();
+                if (!TextUtils.isEmpty(rotation)) {
+                    OsManager.setRotation(rotation);
+                } else {
+                    Toast.makeText(SourceTestActivity.this, "璇疯緭鍏ユ棆杞柟鍚�", Toast.LENGTH_LONG).show();
+                }
+                int value = Surface.ROTATION_0;
+                if (rotation.equals("90")) {
+                    value = Surface.ROTATION_90;
+                } else if (rotation.equals("180")) {
+                    value = Surface.ROTATION_180;
+                } else if (rotation.equals("270")) {
+                    value = Surface.ROTATION_270;
+                }
+                //Settings.System.putInt(getContentResolver(), Settings.System.USER_ROTATION, value);
+                Toast.makeText(SourceTestActivity.this, "鏃嬭浆锛�" + rotation, Toast.LENGTH_LONG).show();
+                break;
+            case R.id.btn_notifyLight_open:
+//                setNotificationAndForeground();
+                NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
+                if (notificationManager.isNotificationPolicyAccessGranted()) {
+                    Toast.makeText(SourceTestActivity.this, "閫氱煡OK锛�", Toast.LENGTH_LONG).show();
+                }
+                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
+                    NotificationChannel channel = new NotificationChannel(notificationId, notificationName, NotificationManager.IMPORTANCE_DEFAULT);
+                    channel.enableLights(true);
+                    channel.setLightColor(0x00ff1288);
+
+                    notificationManager.createNotificationChannel(channel);
+                }
+                Notification.Builder builder = new Notification.Builder(this).setLights(0x00ff1288, 50, 50).setDefaults(NotificationCompat.DEFAULT_LIGHTS).setSound(Uri.EMPTY).setSmallIcon(R.drawable.ic_launcher_foreground).setColor(Color.RED).setAutoCancel(true).setWhen(System.currentTimeMillis()).setContentTitle("鍛煎惛鐏�氱煡").setContentText("宸叉垚鍔熷紑鍚�");
+                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
+                    builder.setChannelId(notificationId);
+                }
+                notificationManager.notify(LED_NOTIFICATION_ID, builder.build()); //鍙戦�侀�氱煡
+                break;
+            case R.id.btn_notifyLight_close:
+                NotificationManager manager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
+                manager.cancel(LED_NOTIFICATION_ID);             //鍏抽棴閫氱煡鐏�
+                break;
+            case R.id.btn_open_back_light:
+                OsManager.setLcdBlackLight(true);
+                break;
+            case R.id.btn_close_back_light:
+                OsManager.setLcdBlackLight(false);
+                break;
+            case R.id.btn_statusBar_show:
+                Intent intent = new Intent();
+                intent.setAction("com.android.navigation.status");
+                intent.putExtra("hide", false);//auto true 涓烘樉绀� 锛宖alse 涓� 闅愯棌
+                sendBroadcast(intent);
+                break;
+            case R.id.btn_statusBar_hide:
+                Intent intent1 = new Intent();
+                intent1.setAction("com.android.navigation.status");
+                intent1.putExtra("hide", true);//auto true 涓烘樉绀� 锛宖alse 涓� 闅愯棌
+                sendBroadcast(intent1);
+                break;
+            case R.id.btn_mic_enable:
+                boolean micEnable = OsManager.getMicEnable();
+                Log.e(TAG, "micEnable :" + micEnable);
+                Toast.makeText(this, "楹﹀厠椋庣姸鎬� :" + micEnable, Toast.LENGTH_SHORT).show();
+
+                break;
+            case R.id.btn_eth_mac_address:
+                String ethMacAddress = OsManager.getEthMacAddress();
+                Log.e(TAG, "ethMacAddress :" + ethMacAddress);
+                tvContent.setText(ethMacAddress);
+                Toast.makeText(this, "Mac 鍦板潃 :" + ethMacAddress, Toast.LENGTH_SHORT).show();
+                break;
+            case R.id.btn_eth_ip_address:
+                String ethIPAddress = OsManager.getEthIpAddress();
+                Log.e(TAG, "ethIPAddress :" + ethIPAddress);
+                tvContent.setText(ethIPAddress);
+                Toast.makeText(this, "浠ュお缃慽p鍦板潃 :" + ethIPAddress, Toast.LENGTH_SHORT).show();
+
+                break;
+            case R.id.btn_sdcard:
+//                String sdcardPath = OsManager.getSdcardPath();
+//                Log.e(TAG, "sdcardPath :" + sdcardPath);
+//                tvContent.setText(sdcardPath);
+//                Toast.makeText(this, "sdcard璺緞 :" + sdcardPath, Toast.LENGTH_SHORT).show();
+
+                try {
+                    List<String> sdPaths = new ArrayList<>();
+                    StorageManager sm = (StorageManager) this.getSystemService(this.STORAGE_SERVICE);
+                    Method getVolumePathsMethod = StorageManager.class.getMethod("getVolumePaths");
+                    String[] paths = (String[]) getVolumePathsMethod.invoke(sm);//鑾峰彇鎵�鏈塻d鍗¤矾寰�
+                    if (paths.length >= 1) {
+                        for (int i = 1; i < paths.length; i++) {
+                            if (getStorageState(this, paths[i])) {
+                                sdPaths.add(paths[i]);
+                            }
+                        }
+                    }
+                    Toast.makeText(this, "sdcard璺緞 :" + sdPaths, Toast.LENGTH_SHORT).show();
+//                    return sdPaths;
+                } catch (Exception e) {
+                    Log.e(TAG, "getSecondaryStoragePath() failed", e);
+                }
+                break;
+
+            case R.id.btn_inner: {
+//                String primaryStoragePath = OsManager.getPrimaryStoragePath();
+//                Log.e(TAG, "primaryStoragePath :" + primaryStoragePath);
+//                tvContent.setText(primaryStoragePath);
+//                Toast.makeText(this, "鍐呴儴瀛樺偍璺緞 :" + primaryStoragePath, Toast.LENGTH_SHORT).show();
+
+                try {
+                    StorageManager sm = (StorageManager) this.getSystemService(this.STORAGE_SERVICE);
+                    Method getVolumePathsMethod = StorageManager.class.getMethod("getVolumePaths");
+                    String[] paths = (String[]) getVolumePathsMethod.invoke(sm);
+                    // first element in paths[] is primary storage path
+//                    return paths[0];
+                    Toast.makeText(this, "鍐呴儴瀛樺偍璺緞 :" + paths[0], Toast.LENGTH_SHORT).show();
+                } catch (Exception e) {
+                    Log.e(TAG, "getPrimaryStoragePath() failed", e);
+                }
+                break;
+            }
+
+            case R.id.btn_install:
+                Intent intent3 = new Intent();
+                intent3.setAction("com.hdl.os.SilentInstall");
+                intent3.putExtra("com.hdl.os.SilentInstall.path", "/storage/emulated/0/FactoryTools.apk");
+                intent3.putExtra("com.hdl.os.SilentInstall.packageName", "com.hdl.factory");
+                intent3.putExtra("com.hdl.os.SilentInstall.activityName", "MainMobile");
+                sendBroadcast(intent3);
+
+                break;
+
+            case R.id.btn_ethernet_connect:
+                int ethernetLinkStatus = OsManager.getEthernetLinkStatus();
+                Log.e(TAG, "ethernetLinkStatus :" + ethernetLinkStatus);
+                Toast.makeText(this, "浠ュお缃戣繛鎺ョ姸鎬� :" + ethernetLinkStatus, Toast.LENGTH_SHORT).show();
+
+                break;
+
+            case R.id.btn_submit_static_ip:
+                //璁剧疆闈欐�乮p
+                String ipAddress = editIpAddress.getText().toString().trim();
+                String gateway = editGateway.getText().toString().trim();
+                String netmask = editNetmask.getText().toString().trim();
+                String dns1 = editDns1.getText().toString().trim();
+                String dns2 = editDns2.getText().toString().trim();
+
+                EthernetUtils ethernetUtils = new EthernetUtils();
+                boolean b = ethernetUtils.checkIPValue(ipAddress, gateway, netmask, dns1, dns2);
+                if (b) {
+                    OsManager.setStaticIp(ipAddress, netmask, gateway, dns1, dns2);
+                }
+                break;
+            case R.id.btn_sleep:
+                OsManager.goToSleep("screen");
+                break;
+            case R.id.btn_wake_up:
+                OsManager.wakeUp("screen");
+                break;
+            case R.id.btn_filter_permission:
+                Log.d(TAG, "setFilterPermissionPackageName");
+                OsManager.setFilterPermissionPackageName("com.kugou.android");
+                OsManager.setFilterPermissionPackageName("com.tencent.qqmusic");
+                //Settings.System.putInt(getContentResolver(), Settings.System.SCREEN_BRIGHTNESS, 0);
+
+                break;
+            case R.id.btn_ota:
+                Intent intent2 = new Intent();
+                intent2.setAction("com.hdl.os.OTA");
+                intent2.putExtra("com.hdl.os.OTA.path", "/storage/emulated/0/rk3566-ota-115442.zip");
+                sendBroadcast(intent2);
+                break;
+
+            case R.id.btn_netmask:  //瀛愮綉鎺╃爜
+                String netmask1 = OsManager.getEthNetmask();
+                Toast.makeText(this, "瀛愮綉鎺╃爜锛�" + netmask1, Toast.LENGTH_LONG).show();
+                break;
+
+            case R.id.btn_gateway: //缃戝叧
+                String gateway1 = OsManager.getEthGateway();
+                Toast.makeText(this, "缃戝叧锛�" + gateway1, Toast.LENGTH_LONG).show();
+                break;
+
+            case R.id.btn_dns://dns
+                String ethDns1 = OsManager.getEthDns1();
+                String ethDns2 = OsManager.getEthDns1();
+                Toast.makeText(this, "ethDns1锛�" + ethDns1 + " ethDns2锛� " + ethDns2, Toast.LENGTH_LONG).show();
+                break;
+
+            case R.id.btn_disconnect_eth: //鏂紑浠ュお缃�
+                OsManager.disconnectEthernet("eth0");
+                break;
+
+            case R.id.btn_connect_eth: //杩炴帴浠ュお缃�
+                OsManager.connectEthernet("eth0");
+                break;
+
+            case R.id.btn_switch_dhcp: //鍒囨崲鍔ㄦ�乮p
+                OsManager.switchDHCP();
+                break;
+        }
+    }
+
+    @Override
+    protected void onDestroy() {
+        super.onDestroy();
+        cancelTask();
+        OsManager.stopTof();
+
+        if (eventListener != null) {
+            OsManager.removeEventListener(eventListener);
+        }
+
+    }
+}

--
Gitblit v1.8.0