losion.liu@sikey.com.cn 5 months ago
parent
commit
ddc1d4e34e

+ 5 - 0
app/src/main/AndroidManifest.xml

@@ -149,6 +149,11 @@
             android:exported="true"
             android:configChanges="keyboardHidden|orientation|screenSize"
             android:launchMode="singleInstance" />
+        <activity
+            android:name=".Activity.ConnectionsActivity"
+            android:exported="true"
+            android:configChanges="keyboardHidden|orientation|screenSize"
+            android:launchMode="singleInstance" />
         <activity
             android:name=".Activity.TelephoneActivity"
             android:exported="true"

+ 129 - 0
app/src/main/java/com/xplora/xpsettings/Activity/ConnectionsActivity.java

@@ -0,0 +1,129 @@
+package com.xplora.xpsettings.Activity;
+
+import android.bluetooth.BluetoothAdapter;
+import android.content.Context;
+import android.content.Intent;
+import android.graphics.Color;
+import android.graphics.drawable.ColorDrawable;
+import android.net.wifi.SupplicantState;
+import android.net.wifi.WifiInfo;
+import android.net.wifi.WifiManager;
+import android.os.Bundle;
+import android.os.ParcelUuid;
+import android.provider.ContactsContract;
+import android.util.Log;
+import android.widget.ListView;
+
+import com.xplora.xpsettings.Adapter.ConnectionsAdapter;
+import com.xplora.xpsettings.Data.DataManager;
+import com.xplora.xpsettings.Model.BaseModel;
+import com.xplora.xpsettings.R;
+import com.xplora.xpsettings.Utils.Constant;
+import com.xplora.xpsettings.Utils.Macros;
+import com.xplora.xpsettings.Utils.ResUtils;
+
+import java.util.ArrayList;
+import java.util.List;
+
+
+public class ConnectionsActivity extends BaseActivity {
+    public ConnectionsAdapter adapter;
+
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.activity_list);
+        initData();
+        initValue();
+        initView();
+    }
+
+    private void initData() {
+        String[] stringList = ResUtils.getStringArray("connections_title_array_", 2);
+        for (int i = 0; i < stringList.length; i++) {
+            BaseModel model = new BaseModel();
+            model.title = stringList[i].trim();
+            model.cellType = Constant.CellType.XPSTYLE;
+            mDataList.add(model);
+        }
+    }
+
+    public void initValue() {
+        if (Macros.DEBUG) {
+            mDataList.get(0).isOn = false;
+            mDataList.get(1).isOn = false;
+            mDataList.get(1).subTitle = "";
+        } else {
+            BluetoothAdapter bluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
+            boolean isBluetoothOn = bluetoothAdapter.isEnabled();
+            mDataList.get(0).isOn = isBluetoothOn;
+
+            WifiManager wifiManager = (WifiManager) getApplicationContext().getSystemService(Context.WIFI_SERVICE);
+            boolean isWifiOn = wifiManager.isWifiEnabled();
+            WifiInfo info = wifiManager.getConnectionInfo();
+            boolean isConnected = info.getSupplicantState() == SupplicantState.COMPLETED;
+            String ssid = info.getSSID();
+            String subTitle = "";
+            if (ssid == null || ssid.trim().isEmpty() || ssid.contains("<unknown ssid>")) {
+                ssid = info.getBSSID();
+            } else {
+                ssid = ssid.replace("\"", "");
+            }
+            subTitle = isConnected ? (ssid == null ? "" : ssid) : "";
+
+            mDataList.get(1).isOn = isWifiOn;
+            mDataList.get(1).subTitle = subTitle;
+        }
+
+        boolean isRoamingOn = DataManager.getDataRoamingType() == 1;
+        if (mDataList.size() > 2) {
+            mDataList.get(2).isOn = isRoamingOn;
+            Log.d(TAG, "isRoamingOn: " + isRoamingOn);
+        }
+
+        int value = DataManager.getVoLTE();
+        if (mDataList.size() > 3) {
+            mDataList.get(3).isOn = value == 1;
+        }
+    }
+
+    private void initView() {
+        adapter = new ConnectionsAdapter(ConnectionsActivity.this, R.layout.item_xpstyle, mDataList);
+        ListView listView = findViewById(R.id.activity_listview);
+        listView.setAdapter(adapter);
+        listView.setDivider(new ColorDrawable(Color.TRANSPARENT));
+        listView.setDividerHeight(0);
+
+        listView.setOnItemClickListener((adapterView, view, i, l) -> {
+            Intent intent;
+            switch (i) {
+                case 0:
+                    intent = new Intent(ConnectionsActivity.this, BluetoothActivity.class);
+                    startActivityForResult(intent, 0);
+                    break;
+                case 1:
+                    intent = new Intent(ConnectionsActivity.this, WiFiActivity.class);
+                    startActivityForResult(intent, 0);
+                    break;
+                case 2:
+                    intent = new Intent(ConnectionsActivity.this, DataRoamingActivity.class);
+                    startActivityForResult(intent, 0);
+                    break;
+                case 3:
+                    intent = new Intent(ConnectionsActivity.this, VoLTEActivity.class);
+                    startActivityForResult(intent, 0);
+                    break;
+                default:
+                    break;
+            }
+        });
+    }
+
+    @Override
+    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+        super.onActivityResult(requestCode, resultCode, data);
+        initValue();
+        adapter.setBaseObjects(mDataList);
+        adapter.notifyDataSetInvalidated();
+    }
+}

+ 4 - 4
app/src/main/java/com/xplora/xpsettings/Activity/SettingsActivity.java

@@ -22,7 +22,7 @@ public class SettingsActivity extends BaseActionActivity {
         Log.d(TAG, "onCreate: ");
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_list_title);
-        setWatchTitle(getString(R.string.app_name));
+        //setWatchTitle(getString(R.string.app_name));
         initData();
         initView();
     }
@@ -31,10 +31,10 @@ public class SettingsActivity extends BaseActionActivity {
         String[] stringList = ResUtils.getStringArray("sk_settings_title_array_", 8);
         for (int i = 0; i < stringList.length; i++) {
             BaseModel model = new BaseModel();
-            model.backgroundImage = ResUtils.getImageId("settings_bg_", i);
+            //model.backgroundImage = ResUtils.getImageId("settings_bg_", i);
             model.title = stringList[i].trim();
             model.icon = ResUtils.getImageId("settings_icon_", i);
-            model.cellType = Constant.CellType.ICON_TITLE;
+            model.cellType = Constant.CellType.XPSTYLE2;
             model.isShowArrow = false;
             mDataList.add(model);
         }
@@ -56,7 +56,7 @@ public class SettingsActivity extends BaseActionActivity {
             Intent intent;
             switch (i) {
                 case 0:
-                    intent = new Intent(this, TelephoneActivity.class);
+                    intent = new Intent(this, ConnectionsActivity.class);
                     startActivity(intent);
                     break;
                 case 1:

+ 12 - 0
app/src/main/res/drawable/shape_bg_xpstyle.xml

@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+    android:shape="rectangle">
+    <solid android:color="@color/sk_gray" />
+
+    <corners
+        android:bottomLeftRadius="0dp"
+        android:bottomRightRadius="25dp"
+        android:topLeftRadius="0dp"
+        android:topRightRadius="25dp" />
+
+</shape>

+ 12 - 9
app/src/main/res/layout/item_xpstyle2.xml

@@ -2,7 +2,9 @@
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
-    android:layout_height="match_parent"
+    android:layout_height="wrap_content"
+    android:paddingTop="1dp"
+    android:paddingBottom="1dp"
     >
 
     <RelativeLayout
@@ -12,16 +14,18 @@
 
         <ImageView
             android:id="@+id/item_background"
-            android:layout_width="wrap_content"
+            android:layout_width="match_parent"
             android:layout_height="45dp"
+            android:layout_marginEnd="2dp"
             android:layout_centerVertical="true"
+            android:background="@drawable/shape_bg_xpstyle"
             />
 
         <ImageView
             android:id="@+id/item_icon"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_marginStart="12dp"
+            android:layout_width="31dp"
+            android:layout_height="31dp"
+            android:layout_marginStart="8dp"
             android:layout_centerVertical="true"
             />
 
@@ -30,14 +34,13 @@
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:layout_toEndOf="@+id/item_icon"
-            android:layout_marginStart="3dp"
+            android:layout_marginStart="5dp"
             android:layout_alignEnd="@id/item_background"
             android:layout_marginEnd="6dp"
             android:layout_centerVertical="true"
-            android:fontFamily="Roboto"
-            android:textFontWeight="700"
+            android:textFontWeight="400"
             android:textColor="@color/white"
-            android:textSize="12dp" />
+            android:textSize="17dp" />
 
         <TextView
             android:id="@+id/item_detail"