From fd78a0c0e444b83f40a9225c98adceb87bbda329 Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期六, 18 一月 2020 15:10:34 +0800 Subject: [PATCH] 2020-1-18 1.修复RCU混合调光混合开关 类模块,使用物理回路问题。 --- app/src/main/java/com/hdl/sdk/hdl_sdk/activity/MainActivity.java | 170 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 162 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/MainActivity.java b/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/MainActivity.java index a1936d2..538b2d3 100644 --- a/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/MainActivity.java +++ b/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/MainActivity.java @@ -14,12 +14,20 @@ import android.widget.TextView; import android.widget.Toast; +import com.hdl.sdk.hdl_core.Config.Configuration; +import com.hdl.sdk.hdl_core.HDLAppliances.HDLAirCondition.Parser.AirCtrlParser; +import com.hdl.sdk.hdl_core.HDLDeviceManger.Bean.AppliancesInfo; import com.hdl.sdk.hdl_core.HDLDeviceManger.Bean.DevicesData; import com.hdl.sdk.hdl_core.HDLDeviceManger.Core.HDLCommand; +import com.hdl.sdk.hdl_core.HDLDeviceManger.Core.HDLDeviceManager; +import com.hdl.sdk.hdl_core.HDLDeviceManger.Core.HandleSearch; import com.hdl.sdk.hdl_core.HDLDeviceManger.EventBusEvent.BgmInfoEvent; import com.hdl.sdk.hdl_core.HDLDeviceManger.EventBusEvent.DevicesInfoEvent; import com.hdl.sdk.hdl_core.HDLDeviceManger.EventBusEvent.ThirdPartyBgmInfoEvent; import com.hdl.sdk.hdl_core.HDLDeviceManger.EventBusEvent.WarningInfoEvent; +import com.hdl.sdk.hdl_core.Util.NetUtil.NetWorkUtil; +import com.hdl.sdk.hdl_sdk.R; +import com.hdl.sdk.hdl_sdk.utlis.HDLLog; import org.greenrobot.eventbus.EventBus; import org.greenrobot.eventbus.Subscribe; @@ -33,6 +41,7 @@ public class MainActivity extends AppCompatActivity { private Button btn, btn2; + private Button btn_get_all,btn_on_all, btn_off_all,btn_getlocal,btn_getlocal_add; private TextView tv; private EditText editText; private List<DevicesData> devicesDatas; @@ -40,12 +49,13 @@ private ArrayAdapter<String> adapter; private ProgressDialog proDia; private ListView listView; - + private List<AppliancesInfo> airList = new ArrayList<>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(com.hdl.sdk.hdl_sdk.R.layout.activity_main); + setContentView(R.layout.activity_main); + NetWorkUtil.setIsGetWifiBroadCast(true); HDLCommand.init(this); // /**閰嶇疆鏄惁寮�鍚疭DK鎵撳嵃鏃ュ織锛岄粯璁や负鎵撳紑*/ // HDLCommand.setHDLLogOpen(false);// @@ -57,17 +67,25 @@ initView(); setOnClick(); - +// hideTestButton(); } private void initView() { - btn = findViewById(com.hdl.sdk.hdl_sdk.R.id.btn); - btn2 = findViewById(com.hdl.sdk.hdl_sdk.R.id.get); - tv = findViewById(com.hdl.sdk.hdl_sdk.R.id.tv); - editText = findViewById(com.hdl.sdk.hdl_sdk.R.id.edt); + btn = findViewById(R.id.btn); + btn2 = findViewById(R.id.get); + + btn_get_all = findViewById(R.id.btn_get_all); + btn_on_all = findViewById(R.id.btn_on_all); + btn_off_all = findViewById(R.id.btn_off_all); + btn_getlocal = findViewById(R.id.btn_getlocal); + + btn_getlocal_add = findViewById(R.id.btn_getlocal_add); + + tv = findViewById(R.id.tv); + editText = findViewById(R.id.edt); editText.setText("172.168.188.100"); adapter = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1, listString); - listView = findViewById(com.hdl.sdk.hdl_sdk.R.id.listView1); + listView = findViewById(R.id.listView1); proDia = new ProgressDialog(MainActivity.this); proDia.setTitle("姝e湪鑾峰彇鏁版嵁..."); proDia.setMessage("璇疯�愬績绛夊緟"); @@ -111,8 +129,98 @@ } }); + + btn_get_all.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + getAllAirList(); + } + }); + + btn_on_all.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + sendAll(true); + } + }); + + btn_off_all.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + sendAll(false); + } + }); + + + btn_getlocal.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + + clearListView(); + getLocalDevicesDataList(); + } + }); + + + + + btn_getlocal_add.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + startActivity(AddDevicesManuallyActivity.class); + + } + }); } + public void startActivity(Class<?> clazz) { + Intent intent = new Intent(this, clazz); + startActivity(intent); + } + /** + * 璇诲彇鍜屽姞杞芥湰鍦版暟鎹� + */ + private void getLocalDevicesDataList() { + devicesDatas = HDLDeviceManager.getLocalDevicesDataList(); + if (devicesDatas.size() > 0) { + updateDeviceListView(); + HandleSearch.refreshAllDevicesStateAndRemarks();//濡傛灉鏈湴鏈夋暟鎹紝鍙互璋冪敤璇ユ柟娉曪紝閬嶅巻鍙戦�佹寚浠わ紝鍒锋柊鎵�鏈夎澶囩殑澶囨敞鍜岀姸鎬� + } else { + showToast("鏈湴鏁版嵁涓虹┖"); + } + } + + /** + * 鍒锋柊璁惧鍒楄〃鏁版嵁 + */ + private void updateDeviceListView() { + int countAll = 0; + for (DevicesData devicesData : devicesDatas) { + countAll += devicesData.getAppliancesInfoList().size(); + } + tv.setText("鎬诲叡妯″潡鏁帮細" + devicesDatas.size() + " 鎬诲叡鍥炶矾鏁帮細" + countAll); + HDLLog.I("鑾峰彇鏁版嵁鎴愬姛锛氭�诲叡妯″潡鏁帮細" + devicesDatas.size() + " 鎬诲叡鍥炶矾鏁帮細" + countAll); + + for (int i = 0; i < devicesDatas.size(); i++) { + if (TextUtils.isEmpty(devicesDatas.get(i).getRemark())) { + listString.add("鏆傛棤澶囨敞"); + } else { + listString.add(devicesDatas.get(i).getRemark()); + } + } + adapter.notifyDataSetChanged(); + } + + + /** + * 娓呯┖鏁版嵁骞跺埛鏂板垪琛� + */ + private void clearListView() { + if (devicesDatas != null) devicesDatas.clear(); + if (listString != null) listString.clear(); + + adapter.notifyDataSetChanged(); + } @Override protected void onDestroy() { @@ -219,4 +327,50 @@ } + private void hideTestButton(){ + btn_get_all.setVisibility(View.GONE); + btn_on_all.setVisibility(View.GONE); + btn_off_all.setVisibility(View.GONE); + } + + private void getAllAirList(){ + airList.clear(); + if(devicesDatas == null || devicesDatas.size() == 0) { + showToast("娌℃湁璁惧"); + return; + } + for (int j = 0; j < devicesDatas.size(); j++) { + DevicesData mDevicesData = devicesDatas.get(j); + List<AppliancesInfo> appliancesInfos = mDevicesData.getAppliancesInfoList(); + for (int i = 0; i < appliancesInfos.size(); i++) { + if (appliancesInfos.get(i).getBigType() == Configuration.AIR_BIG_TYPE) { + airList.add(appliancesInfos.get(i)); + } + } + } + + String mes = "鍏辫幏寰楋細" + airList.size() + " 鍙扮┖璋�"; + showToast(mes); + } + + private void sendAll(Boolean bOn){ + if(airList == null || airList.size() == 0) { + showToast("娌℃湁璁惧"); + return; + } + for (int j = 0; j < airList.size(); j++) { + AppliancesInfo info = airList.get(j); + if(bOn){ + HDLCommand.airCtrl(info, AirCtrlParser.airSwich, AirCtrlParser.airOn); + }else { + HDLCommand.airCtrl(info, AirCtrlParser.airSwich, AirCtrlParser.airOff); + } + + } + + } + + private void showToast(String text) { + Toast.makeText(this, text, Toast.LENGTH_SHORT).show(); + } } -- Gitblit v1.8.0