Compare commits

...

2 Commits

Author SHA1 Message Date
xsean
5eba4eda53 Merge branch 'main' of http://git.zhenbs.com:9999/2-group-android/DevCheck-lib 2026-01-09 12:03:59 +08:00
xsean
49d4762fda 安卓12 没有wifi信息的问题 2026-01-09 12:03:55 +08:00
2 changed files with 19 additions and 8 deletions

View File

@ -12,6 +12,7 @@ import android.telephony.*
import android.util.Log
import androidx.annotation.RequiresPermission
import androidx.core.app.ActivityCompat
import java.util.Arrays
import kotlin.text.compareTo
/**
@ -133,11 +134,18 @@ class NetworkInfo(private val context: Context) {
return null
}
val cm = context
.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager
val activeNetwork = cm.activeNetwork ?: return createEmptyWifiDetails()
val caps = cm.getNetworkCapabilities(activeNetwork) ?: return createEmptyWifiDetails()
val connected = caps.hasTransport(NetworkCapabilities.TRANSPORT_WIFI)
if (!connected) return createEmptyWifiDetails()
return try {
val wifiInfo = wifiManager.connectionInfo ?: return createEmptyWifiDetails()
val connected = wifiInfo.networkId != -1
if (!connected) return createEmptyWifiDetails()
val dhcp = wifiManager.dhcpInfo
val ssid = wifiInfo.ssid?.removePrefix("\"")?.removeSuffix("\"")
@ -246,6 +254,7 @@ class NetworkInfo(private val context: Context) {
@RequiresPermission(Manifest.permission.READ_PHONE_STATE)
fun getMobileDetails(): MobileDetails? {
if (!checkPhonePermissions()) {
Log.i("XXXX","没有权限 READ_PHONE_STATE")
return null
}
@ -346,6 +355,7 @@ class NetworkInfo(private val context: Context) {
simInfos = sims
)
} catch (e: Exception) {
Log.i("XXXX","获取移动数据详情异常: ${e.message}")
null
}
}
@ -446,14 +456,14 @@ class NetworkInfo(private val context: Context) {
/**
* 获取Wi-Fi相关权限列表
*/
fun getWifiPermissionsList(): List<String> {
fun getWifiPermissionsList(): Array<String> {
val perms = mutableListOf<String>()
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
perms.add(Manifest.permission.ACCESS_FINE_LOCATION)
} else {
perms.add(Manifest.permission.ACCESS_WIFI_STATE)
}
return perms
return perms.toTypedArray()
}
/**
@ -469,8 +479,8 @@ class NetworkInfo(private val context: Context) {
/**
* 获取电话相关权限列表
*/
fun getPhonePermissionsList(): List<String> {
return listOf(Manifest.permission.READ_PHONE_STATE)
fun getPhonePermissionsList(): Array<String> {
return arrayOf(Manifest.permission.READ_PHONE_STATE)
}
/**

View File

@ -7,6 +7,7 @@ import android.util.Log
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import androidx.annotation.RequiresPermission
import androidx.core.app.ActivityCompat
import androidx.recyclerview.widget.GridLayoutManager
import com.xyzshell.andinfo.AndInfo
@ -74,8 +75,8 @@ class DashboardFragment : BaseFragment<FragmentDashboardBinding>() {
}
@RequiresPermission(Manifest.permission.READ_PHONE_STATE)
private fun initCpu() {
binding.layoutCpu.run {
recyclerCpu.run {
adapter = CpuAdapter(requireContext()).apply {