diff --git a/myphoneinfo/src/main/java/com/xyzshell/myphoneinfo/dashboard/HardWareFragment.kt b/myphoneinfo/src/main/java/com/xyzshell/myphoneinfo/dashboard/HardWareFragment.kt
index e67c6a1..3244bc2 100644
--- a/myphoneinfo/src/main/java/com/xyzshell/myphoneinfo/dashboard/HardWareFragment.kt
+++ b/myphoneinfo/src/main/java/com/xyzshell/myphoneinfo/dashboard/HardWareFragment.kt
@@ -44,7 +44,11 @@ class HardWareFragment : Fragment() {
refreshBluetoothInfo()
} else {
// 显示权限被拒绝的UI
- Toast.makeText(requireContext(), getString(R.string.permissions_required), Toast.LENGTH_SHORT).show()
+ Toast.makeText(
+ requireContext(),
+ getString(R.string.permissions_required),
+ Toast.LENGTH_SHORT
+ ).show()
}
}
@@ -81,8 +85,6 @@ class HardWareFragment : Fragment() {
}
private fun initText() {
-
- val device = AndInfo.instance.device//设备信息
setProcessorInfo()
setGpuInfo()
setDisplayInfo()
@@ -106,22 +108,22 @@ class HardWareFragment : Fragment() {
* */
private fun setInputInfo() {
val inputInfo = AndInfo.instance.input
- binding.otherCheck1.content.text=getString(R.string.usb_host_support)
- binding.otherCheck1.image.isSelected=inputInfo.hasUsbHostSupport()
- binding.otherCheck2.content.text=getString(R.string.usb_accessory_support)
- binding.otherCheck2.image.isSelected=inputInfo.hasUsbAccessorySupport()
- binding.otherCheck3.content.text=getString(R.string.fingerprint)
- binding.otherCheck3.image.isSelected=inputInfo.hasFingerprintSensor()
- binding.otherCheck4.content.text=getString(R.string.infrared_transmitter)
- binding.otherCheck4.image.isSelected=inputInfo.hasInfraredSensor()
- binding.otherCheck5.content.text=getString(R.string.uwb_support)
- binding.otherCheck5.image.isSelected=inputInfo.hasUwbSupport()
- binding.otherCheck6.content.text=getString(R.string.nfc_support)
- binding.otherCheck6.image.isSelected=inputInfo.hasNfcSupport()
- binding.otherCheck7.content.text=getString(R.string.secure_nfc_support)
- binding.otherCheck7.image.isSelected=inputInfo.hasSecureNfcSupport()
- binding.otherCheck8.content.text=getString(R.string.gps)
- binding.otherCheck8.image.isSelected=inputInfo.hasGpsSupport()
+ binding.otherCheck1.content.text = getString(R.string.usb_host_support)
+ binding.otherCheck1.image.isSelected = inputInfo.hasUsbHostSupport()
+ binding.otherCheck2.content.text = getString(R.string.usb_accessory_support)
+ binding.otherCheck2.image.isSelected = inputInfo.hasUsbAccessorySupport()
+ binding.otherCheck3.content.text = getString(R.string.fingerprint)
+ binding.otherCheck3.image.isSelected = inputInfo.hasFingerprintSensor()
+ binding.otherCheck4.content.text = getString(R.string.infrared_transmitter)
+ binding.otherCheck4.image.isSelected = inputInfo.hasInfraredSensor()
+ binding.otherCheck5.content.text = getString(R.string.uwb_support)
+ binding.otherCheck5.image.isSelected = inputInfo.hasUwbSupport()
+ binding.otherCheck6.content.text = getString(R.string.nfc_support)
+ binding.otherCheck6.image.isSelected = inputInfo.hasNfcSupport()
+ binding.otherCheck7.content.text = getString(R.string.secure_nfc_support)
+ binding.otherCheck7.image.isSelected = inputInfo.hasSecureNfcSupport()
+ binding.otherCheck8.content.text = getString(R.string.gps)
+ binding.otherCheck8.image.isSelected = inputInfo.hasGpsSupport()
binding.othertext.setOnClickListener {
dialogInput = dialogInput ?: DialogInput()
dialogInput?.show(childFragmentManager, "Input")
@@ -134,38 +136,34 @@ class HardWareFragment : Fragment() {
* */
private fun setMemoryInfo() {
val storageInfo = AndInfo.instance.storage//存储信息
- val used =
- Formatter.formatFileSize(AndInfo.instance.context, storageInfo.internalStorageUsedSpace)
- val free = Formatter.formatFileSize(
- AndInfo.instance.context,
- storageInfo.internalStorageAvailableSpace
- )
- val total = Formatter.formatFileSize(
- AndInfo.instance.context,
- storageInfo.internalStorageTotalSpace
- )
+ // 获取详细的存储分解
+ val breakdown = storageInfo.getInternalStorageBreakdown()
+ //内部存储器
+ val interused = storageInfo.formatBytes(breakdown.usedSpace)
+ val interfree = storageInfo.formatBytes(breakdown.freeSpace)
+ val intertotal = storageInfo.formatBytes(breakdown.totalSpace)
- val outused = Formatter.formatFileSize(
- AndInfo.instance.context,
- storageInfo.externalStorageUsedSpace ?: 0
- )
- val outfree = Formatter.formatFileSize(
- AndInfo.instance.context,
- storageInfo.externalStorageAvailableSpace ?: 0
- )
- val outtotal = Formatter.formatFileSize(
- AndInfo.instance.context,
- storageInfo.externalStorageTotalSpace ?: 0
- )
+ //总存储信息
+ val outused =Formatter.formatFileSize(AndInfo.instance.context, storageInfo.internalStorageUsedSpace)
+ val outfree = Formatter.formatFileSize(AndInfo.instance.context, storageInfo.internalStorageAvailableSpace)
+ val outtotal = Formatter.formatFileSize(AndInfo.instance.context, storageInfo.internalStorageTotalSpace)
+
+ //内存:todo
binding.memoryLayout.memText1.textTitle.text = getString(R.string.ram_size)
- binding.memoryLayout.memText1.textContent.text = total
- binding.memoryLayout.ram1.text = used + " used"
- binding.memoryLayout.ram2.text = free + " free"
- binding.memoryLayout.seekbar.progress =
- (used.substringBefore(" ").toDouble() / total.substringBefore(" ").toDouble() * 100).toInt()
+// binding.memoryLayout.memText1.textContent.text = total
+// binding.memoryLayout.ram1.text = used + " used"
+// binding.memoryLayout.ram2.text = free + " free"
+// binding.memoryLayout.seekbar.progress =
+// (used.substringBefore(" ").toDouble() / total.substringBefore(" ")
+// .toDouble() * 100).toInt()
+
+ //appsAndData
+ val appsAndData = storageInfo.getFormattedAppsAndDataSize()
+ val system = storageInfo.getFormattedSystemSize()
+ val other= storageInfo.getFormattedFreeSpace()+storageInfo.getFormattedCacheSize()
+ //zarm
- //storage
binding.memoryLayout.memText3.textTitle.text = getString(R.string.zram)
binding.memoryLayout.memText3.textContent.text = Formatter.formatFileSize(
AndInfo.instance.context,
@@ -174,31 +172,35 @@ class HardWareFragment : Fragment() {
binding.memoryLayout.ram3.text = outused + " used"
binding.memoryLayout.ram4.text = outfree + " free"
binding.memoryLayout.seekbar2.progress =
- (outused.substringBefore(" ").toDouble() / outtotal.substringBefore(" ").toDouble() * 100).toInt()
+ (outused.substringBefore(" ").toDouble() / outtotal.substringBefore(" ")
+ .toDouble() * 100).toInt()
- //fileSystem
- binding.memoryLayout.storText1.textTitle.text = getString(R.string.filesystem)
- binding.memoryLayout.storText1.textContent.text = total
- binding.memoryLayout.stor1.text = used + " used"
- binding.memoryLayout.stor2.text = free + " free"
- binding.memoryLayout.radius1.text = used
- binding.memoryLayout.radius2.text = used
- binding.memoryLayout.radius3.text = free
+ //storage
+
+ binding.memoryLayout.storText1.textTitle.text = getString(R.string.size)
+ binding.memoryLayout.storText1.textContent.text = outtotal
+ binding.memoryLayout.stor1.text = outused + " used"
+ binding.memoryLayout.stor2.text = outtotal + " total"
+ binding.memoryLayout.radius1.text = appsAndData
+ binding.memoryLayout.radius2.text = system
+ binding.memoryLayout.radius3.text = other
binding.memoryLayout.seekbar3.progress =
- (used.substringBefore(" ").toDouble() / total.substringBefore(" ").toDouble() * 100).toInt()
+ (outused.substringBefore(" ").toDouble() / outtotal.substringBefore(" ")
+ .toDouble() * 100).toInt()
//internalStorage
binding.memoryLayout.interText1.textTitle.text = getString(R.string.filesystem)
binding.memoryLayout.interText1.textContent.text =
storageInfo.internalStorageEncryptionType.toString()
binding.memoryLayout.interText2.textTitle.text = getString(R.string.block_size)
- binding.memoryLayout.interText2.textContent.text = total
+ binding.memoryLayout.interText2.textContent.text = intertotal
binding.memoryLayout.interText3.textTitle.text = "/data"
- binding.memoryLayout.interText3.textContent.text = total
- binding.memoryLayout.stor3.text = used + " used"
- binding.memoryLayout.stor4.text = free + " free"
+ binding.memoryLayout.interText3.textContent.text = intertotal
+ binding.memoryLayout.stor3.text = interused + " used"
+ binding.memoryLayout.stor4.text = interfree + " free"
binding.memoryLayout.seekbar2.progress =
- (used.substringBefore(" ").toDouble() / total.substringBefore(" ").toDouble() * 100).toInt()
+ (interused.substringBefore(" ").toDouble() / intertotal.substringBefore(" ")
+ .toDouble() * 100).toInt()
}
/**
@@ -222,12 +224,13 @@ class HardWareFragment : Fragment() {
defaultDisplayInfo?.densityDpi.toString() + "(xxhdpi)\n" + defaultDisplayInfo?.xdpi?.roundToInt() + "dpx" + defaultDisplayInfo?.ydpi?.roundToInt() + "dp"
binding.disText3.textContent.text = dpiStr
binding.disText4.textTitle.text = getString(R.string.screen_size_e)
-
+ val screenSize = "${String.format("%.2f", display.getScreenSize()?.diagonalInches)}/ ${String.format("%.1f", display.getScreenSize()?.diagonalMm)} mm"
+ binding.disText4.textContent.text = screenSize
binding.disText5.textTitle.text = getString(R.string.aspect_ratio)
binding.disText5.textContent.text = convertToApproximateAspectRatio(
width = width.toInt(),
height = height.toInt()
- ).toString()
+ )
binding.disText6.textTitle.text = getString(R.string.refresh_rate)
binding.disText6.textContent.text = defaultDisplayInfo?.refreshRate.toString() + "HZ"
binding.disText7.textTitle.text = getString(R.string.wide_color_gamut)
@@ -261,11 +264,11 @@ class HardWareFragment : Fragment() {
binding.gpuText3.textTitle.text = getString(R.string.max_frequency)
binding.gpuText3.textContent.text = "${gpu.getMaxFrequency()} MHz"
binding.gpuText4.textTitle.text = getString(R.string.architecture)
- binding.gpuText4.textContent.text=gpu.getArchitecture()
+ binding.gpuText4.textContent.text = gpu.getArchitecture()
binding.gpuText5.textTitle.text = getString(R.string.cores)
binding.gpuText5.textContent.text = gpu.getOpenGLExtensionCount().toString()
binding.gpuText6.textTitle.text = getString(R.string.total_l2)
- binding.gpuText6.textContent.text="${gpu.getCacheSize()} KB"
+ binding.gpuText6.textContent.text = "${gpu.getCacheSize()} KB"
binding.gpuText7.textTitle.text = getString(R.string.bus_width)
binding.gpuText7.textContent.text = "${gpu.getBandwidth()} GB/s"
binding.gpuText8.textTitle.text = getString(R.string.vulkan_support)
@@ -326,38 +329,47 @@ class HardWareFragment : Fragment() {
@SuppressLint("SuspiciousIndentation")
private fun setBlueToothInfo() {
val bluetoothInfo = AndInfo.instance.bluetooth//蓝牙信息
- if (!bluetoothInfo.isEnabled) return
- binding.bluetoothLayout.showLayout.setOnClickListener {
- requestBluetoothPermissions()
- }
+ if (!bluetoothInfo.isEnabled) return
+ binding.bluetoothLayout.showLayout.setOnClickListener {
+ requestBluetoothPermissions()
+ }
//蓝牙features支持
bluetoothInfo.getBluetoothFeatures().let { features ->
- binding.bluetoothLayout.blueCheck1.content.text=getString(R.string.bluetooth_le)
- binding.bluetoothLayout.blueCheck1.image.isSelected=features.bluetoothLe
- binding.bluetoothLayout.blueCheck2.content.text=getString(R.string.multiple_advertisement)
- binding.bluetoothLayout.blueCheck2.image.isSelected=features.multipleAdvertisement
- binding.bluetoothLayout.blueCheck3.content.text=getString(R.string.offloaded_filtering)
- binding.bluetoothLayout.blueCheck3.image.isSelected=features.offloadedFiltering
- binding.bluetoothLayout.blueCheck4.content.text=getString(R.string.offloaded_scan_batching)
- binding.bluetoothLayout.blueCheck4.image.isSelected=features.offloadedScanBatching
- binding.bluetoothLayout.blueCheck01.content.text=getString(R.string.le_periodic_advertising)
- binding.bluetoothLayout.blueCheck01.image.isSelected=features.lePeriodicAdvertising
- binding.bluetoothLayout.blueCheck02.content.text=getString(R.string.le_extended_advertising)
- binding.bluetoothLayout.blueCheck02.image.isSelected=features.leExtendedAdvertising
- binding.bluetoothLayout.blueCheck03.content.text=getString(R.string.le_2m_phy_high_speed)
- binding.bluetoothLayout.blueCheck03.image.isSelected=features.leCodedPhy
- binding.bluetoothLayout.blueCheck04.content.text=getString(R.string.le_2m_phy_low_power)
- binding.bluetoothLayout.blueCheck04.image.isSelected=features.le2MbPhy
- binding.bluetoothLayout.blueCheck05.content.text=getString(R.string.le_audio_support)
- binding.bluetoothLayout.blueCheck05.image.isSelected=features.leAudioSupport
+ binding.bluetoothLayout.blueCheck1.content.text = getString(R.string.bluetooth_le)
+ binding.bluetoothLayout.blueCheck1.image.isSelected = features.bluetoothLe
+ binding.bluetoothLayout.blueCheck2.content.text =
+ getString(R.string.multiple_advertisement)
+ binding.bluetoothLayout.blueCheck2.image.isSelected = features.multipleAdvertisement
+ binding.bluetoothLayout.blueCheck3.content.text =
+ getString(R.string.offloaded_filtering)
+ binding.bluetoothLayout.blueCheck3.image.isSelected = features.offloadedFiltering
+ binding.bluetoothLayout.blueCheck4.content.text =
+ getString(R.string.offloaded_scan_batching)
+ binding.bluetoothLayout.blueCheck4.image.isSelected = features.offloadedScanBatching
+ binding.bluetoothLayout.blueCheck01.content.text =
+ getString(R.string.le_periodic_advertising)
+ binding.bluetoothLayout.blueCheck01.image.isSelected = features.lePeriodicAdvertising
+ binding.bluetoothLayout.blueCheck02.content.text =
+ getString(R.string.le_extended_advertising)
+ binding.bluetoothLayout.blueCheck02.image.isSelected = features.leExtendedAdvertising
+ binding.bluetoothLayout.blueCheck03.content.text =
+ getString(R.string.le_2m_phy_high_speed)
+ binding.bluetoothLayout.blueCheck03.image.isSelected = features.leCodedPhy
+ binding.bluetoothLayout.blueCheck04.content.text =
+ getString(R.string.le_2m_phy_low_power)
+ binding.bluetoothLayout.blueCheck04.image.isSelected = features.le2MbPhy
+ binding.bluetoothLayout.blueCheck05.content.text = getString(R.string.le_audio_support)
+ binding.bluetoothLayout.blueCheck05.image.isSelected = features.leAudioSupport
}
}
+
// 请求蓝牙权限的方法
private fun requestBluetoothPermissions() {
val permissions = AndInfo.instance.bluetooth.requiredPermissions
requestPermissionLauncher.launch(permissions)
}
+
// 检查权限的方法
private fun checkBluetoothPermissions(): Boolean {
val bluetoothInfo = AndInfo.instance.bluetooth
@@ -366,6 +378,7 @@ class HardWareFragment : Fragment() {
PackageManager.PERMISSION_GRANTED
}
}
+
/**
* 检查并显示蓝牙信息
*/
@@ -412,6 +425,7 @@ class HardWareFragment : Fragment() {
openBluetoothSettings()
}
}
+
/**
* 显示已配对设备弹窗
*/
@@ -420,6 +434,7 @@ class HardWareFragment : Fragment() {
println("showBluetoothDialog" + AndInfo.instance.bluetooth.bondedDevices.size)
dialogBlueTooth?.show(childFragmentManager, "BlueTooth1")
}
+
/**
* 显示扫描到附近设备弹窗
*/
@@ -441,8 +456,6 @@ class HardWareFragment : Fragment() {
}
-
-
/**
* 刷新蓝牙信息
*/
@@ -471,6 +484,7 @@ class HardWareFragment : Fragment() {
}
}
}
+
/**
* 权限检查结果回调
*/
@@ -484,11 +498,17 @@ class HardWareFragment : Fragment() {
// 权限已授予,刷新UI
checkAndDisplayBluetoothInfo()
} else {
- Toast.makeText(requireContext(), "Bluetooth permission is required.", Toast.LENGTH_SHORT).show()
+ Toast.makeText(
+ requireContext(),
+ "Bluetooth permission is required.",
+ Toast.LENGTH_SHORT
+ ).show()
}
}
+
companion object {
private const val REQUEST_ENABLE_BT = 1001
+
@JvmStatic
fun newInstance() =
HardWareFragment().apply {
diff --git a/myphoneinfo/src/main/java/com/xyzshell/myphoneinfo/dashboard/SystemShowFragment.kt b/myphoneinfo/src/main/java/com/xyzshell/myphoneinfo/dashboard/SystemShowFragment.kt
index 3063d42..7494b46 100644
--- a/myphoneinfo/src/main/java/com/xyzshell/myphoneinfo/dashboard/SystemShowFragment.kt
+++ b/myphoneinfo/src/main/java/com/xyzshell/myphoneinfo/dashboard/SystemShowFragment.kt
@@ -26,57 +26,9 @@ private lateinit var binding: FragmentSystemShowBinding
}
private fun initView() {
- binding.phoneName.text=AndInfo.instance.device.brand
- binding.text0.textTitle.text=getString(R.string.model)
- binding.text0.textContent.text=AndInfo.instance.device.model
- binding.text1.textTitle.text=getString(R.string.product)
- binding.text1.textContent.text=AndInfo.instance.device.productName
- binding.text2.textTitle.text=getString(R.string.device)
- binding.text2.textContent.text=AndInfo.instance.device.device
- binding.text3.textTitle.text=getString(R.string.board)
- binding.text3.textContent.text=AndInfo.instance.device.boardName
- binding.text4.textTitle.text=getString(R.string.manufacturer)
- binding.text4.textContent.text=AndInfo.instance.device.manufacturer
- binding.text5.textTitle.text=getString(R.string.baseband)
- binding.text6.textTitle.text=getString(R.string.google_play_services_version)
-
- //操作系统
- val buildInfo = AndInfo.instance.build
- binding.textOp1.textTitle.text=getString(R.string.android_version)
- binding.textOp1.textContent.text=buildInfo.versionRelease
- binding.textOp2.textTitle.text=getString(R.string.api)
- binding.textOp2.textContent.text=buildInfo.versionSdkInt.toString()
- binding.textOp3.textTitle.text=getString(R.string.emui)
-
- binding.textOp4.textTitle.text=getString(R.string.security_patch)
- binding.textOp4.textContent.text=buildInfo.securityPatch
- binding.textOp5.textTitle.text=getString(R.string.version)
- binding.textOp5.textContent.text=buildInfo.display
- binding.textOp6.textTitle.text=getString(R.string.baseband)
-
- binding.textOp7.textTitle.text=getString(R.string.fingerprint)
- binding.textOp7.textContent.text=buildInfo.fingerprint
- binding.textOp8.textTitle.text=getString(R.string.build_time)
- binding.textOp8.textContent.text=buildInfo.buildDate.toString()
- binding.textOp9.textTitle.text=getString(R.string.initial_release)
-
- binding.textOp10.textTitle.text=getString(R.string.architecture)
-
- binding.textOp11.textTitle.text=getString(R.string.instruction_sets)
-
- binding.textOp12.textTitle.text=getString(R.string.treble)
- binding.textOp13.textTitle.text=getString(R.string.root_access)
- binding.textOp14.textTitle.text=getString(R.string.google_play_services)
- binding.textOp15.textTitle.text=getString(R.string.toybox)
- binding.textOp16.textTitle.text=getString(R.string.java_VM)
- binding.textOp16.textContent.text=AndInfo.instance.build.jvmName + " " + AndInfo.instance.build.jvmVersion
- binding.textOp17.textTitle.text=getString(R.string.ssl_version)
- binding.textOp18.textTitle.text=getString(R.string.language)
- binding.textOp19.textTitle.text=getString(R.string.usb_debugging)
- //内核
- binding.textOp20.textTitle.text=getString(R.string.kernel)
- binding.textOp20.textContent.text=AndInfo.instance.build.kernelCompleteVersion
-
+ setDeviceInfo()
+ setOperatingSystem()
+ setIdentifier()
binding.textclear1.textTitle.text=getString(R.string.vendor)
binding.textclear2.textTitle.text=getString(R.string.version)
@@ -88,7 +40,85 @@ private lateinit var binding: FragmentSystemShowBinding
binding.textwide4.textTitle.text=getString(R.string.device_id)
binding.textwide5.textTitle.text=getString(R.string.security_level)
binding.textwide6.textTitle.text=getString(R.string.highest_hdcp_level)
+ }
+ /**
+ * Identifier
+ * */
+ private fun setIdentifier() {
+ val buildInfo = AndInfo.instance.build
+ binding.idDev1.text=buildInfo.googlePlayServicesVersionCode.toString()
+ binding.idDev2.text=buildInfo.deviceUniqueId
+ //google play services
+ binding.textgoogle.textTitle.text=getString(R.string.google_play_services_version)
+ binding.textgoogle.textContent.text=buildInfo.googlePlayServicesVersion
+ }
+
+ /**
+ * 操作系统
+ * */
+ private fun setOperatingSystem() {
+ val buildInfo = AndInfo.instance.build
+ binding.textOp1.textTitle.text=getString(R.string.android_version)
+ binding.textOp1.textContent.text=buildInfo.versionRelease
+ binding.textOp2.textTitle.text=getString(R.string.api)
+ binding.textOp2.textContent.text=buildInfo.versionSdkInt.toString()
+// binding.textOp3.textTitle.text=getString(R.string.emui)
+
+ binding.textOp4.textTitle.text=getString(R.string.security_patch)
+ binding.textOp4.textContent.text=buildInfo.securityPatch
+ binding.textOp5.textTitle.text=getString(R.string.version)
+ binding.textOp5.textContent.text=buildInfo.display
+ binding.textOp6.textTitle.text=getString(R.string.baseband)
+ binding.textOp6.textContent.text=buildInfo.brand
+ binding.textOp7.textTitle.text=getString(R.string.fingerprint)
+ binding.textOp7.textContent.text=buildInfo.fingerprint
+ binding.textOp8.textTitle.text=getString(R.string.build_time)
+ binding.textOp8.textContent.text=buildInfo.buildDate.toString()
+ binding.textOp9.textTitle.text=getString(R.string.initial_release)
+ // todo
+ binding.textOp10.textTitle.text=getString(R.string.architecture)
+ binding.textOp10.textContent.text=buildInfo.kernelArchitecture
+ binding.textOp11.textTitle.text=getString(R.string.instruction_sets)
+ // todo
+ binding.textOp12.textTitle.text=getString(R.string.treble)
+ binding.textOp12.textContent.text=if (buildInfo.isTrebleEnabled) "Supported" else "Not supported"
+ binding.textOp13.textTitle.text=getString(R.string.root_access)
+ binding.textOp13.textContent.text=if (AndInfo.instance.build.isRooted) "Yes" else "No"
+ binding.textOp14.textTitle.text=getString(R.string.google_play_services)
+ binding.textOp14.textContent.text=buildInfo.googlePlayServicesVersion
+ binding.textOp15.textTitle.text=getString(R.string.toybox)
+ binding.textOp15.textContent.text=buildInfo.toyboxVersion
+ binding.textOp16.textTitle.text=getString(R.string.java_VM)
+ binding.textOp16.textContent.text=AndInfo.instance.build.jvmName + " " + AndInfo.instance.build.jvmVersion
+ binding.textOp17.textTitle.text=getString(R.string.ssl_version)
+ binding.textOp17.textContent.text=AndInfo.instance.build.openSslVersion + " " + AndInfo.instance.build.boringSslVersion
+ binding.textOp18.textTitle.text=getString(R.string.language)
+ binding.textOp18.textContent.text=AndInfo.instance.build.systemLanguage
+ binding.textOp19.textTitle.text=getString(R.string.usb_debugging)
+ binding.textOp19.textContent.text=if (buildInfo.isUsbDebuggingEnabled) "Enabled" else "Disabled"
+ //内核
+ binding.textOp20.textTitle.text=getString(R.string.kernel)
+ binding.textOp20.textContent.text=AndInfo.instance.build.kernelCompleteVersion
+ }
+
+ /**
+ * 设置设备信息
+ * */
+ private fun setDeviceInfo() {
+ val deviceInfo = AndInfo.instance.device
+ binding.phoneName.text=deviceInfo.brand
+ binding.text0.textTitle.text=getString(R.string.model)
+ binding.text0.textContent.text=deviceInfo.model
+ binding.text1.textTitle.text=getString(R.string.product)
+ binding.text1.textContent.text=deviceInfo.productName
+ binding.text2.textTitle.text=getString(R.string.device)
+ binding.text2.textContent.text=deviceInfo.device
+ binding.text3.textTitle.text=getString(R.string.board)
+ binding.text3.textContent.text=deviceInfo.boardName
+ binding.text4.textTitle.text=getString(R.string.manufacturer)
+ binding.text4.textContent.text=deviceInfo.manufacturer
+// binding.text5.textTitle.text=getString(R.string.baseband)
}
companion object {
diff --git a/myphoneinfo/src/main/res/layout/fragment_system_show.xml b/myphoneinfo/src/main/res/layout/fragment_system_show.xml
index cb51b95..06c03dd 100644
--- a/myphoneinfo/src/main/res/layout/fragment_system_show.xml
+++ b/myphoneinfo/src/main/res/layout/fragment_system_show.xml
@@ -59,6 +59,7 @@
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:textSize="16sp"
+ android:layout_marginStart="20dp"
tools:ignore="RelativeOverlap" />
@@ -77,9 +78,9 @@
-
+
+
+
@@ -146,9 +147,9 @@
-
+
+
+
@@ -236,20 +237,16 @@
android:id="@+id/idDev1"
style="@style/LeftContent"
android:layout_marginStart="20dp"
- android:layout_width="wrap_content"
+ android:layout_width="0dp"
+ android:layout_weight="1"
android:layout_height="wrap_content"
android:text="@string/apps"
android:textColor="@color/right_color"
tools:ignore="RelativeOverlap" />
-
-
diff --git a/myphoneinfo/src/main/res/layout/hard_memory.xml b/myphoneinfo/src/main/res/layout/hard_memory.xml
index 0bd54ca..9256580 100644
--- a/myphoneinfo/src/main/res/layout/hard_memory.xml
+++ b/myphoneinfo/src/main/res/layout/hard_memory.xml
@@ -62,7 +62,6 @@
style="@style/LeftContent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:text="2.22 GB used"
tools:ignore="RelativeOverlap" />
@@ -87,7 +85,7 @@
android:maxHeight="10dp"
android:minHeight="10dp"
android:padding="0dp"
- android:progress="50"
+ android:progress="0"
android:progressDrawable="@drawable/progress_bg"
android:thumb="@drawable/progress_oval"
android:thumbOffset="0dp" />
@@ -116,7 +114,6 @@
style="@style/LeftContent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:text="2.22 GB used"
tools:ignore="RelativeOverlap" />
@@ -141,7 +137,7 @@
android:maxHeight="10dp"
android:minHeight="10dp"
android:padding="0dp"
- android:progress="50"
+ android:progress="0"
android:progressDrawable="@drawable/progress_bg"
android:thumb="@drawable/progress_oval"
android:thumbOffset="0dp" />
@@ -204,7 +200,6 @@
style="@style/LeftContent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:text="2.22 GB used"
tools:ignore="RelativeOverlap" />
@@ -231,7 +225,7 @@
android:maxHeight="10dp"
android:minHeight="10dp"
android:padding="0dp"
- android:progress="50"
+ android:progress="0"
android:progressDrawable="@drawable/progress_bg"
android:thumb="@drawable/progress_oval"
android:thumbOffset="0dp" />
@@ -397,7 +391,6 @@
style="@style/LeftContent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:text="2.22 GB used"
tools:ignore="RelativeOverlap" />
@@ -421,7 +413,7 @@
android:maxHeight="10dp"
android:minHeight="10dp"
android:padding="0dp"
- android:progress="50"
+ android:progress="0"
android:progressDrawable="@drawable/progress_bg"
android:thumb="@drawable/progress_oval"
android:thumbOffset="0dp" />