Commit 9de782f1 authored by wanglei's avatar wanglei

[新功能]设备信息

parent aaf58ba6
......@@ -135,6 +135,16 @@
android:exported="false"
android:screenOrientation="portrait"
tools:ignore="DiscouragedApi,LockedOrientationActivity" />
<activity
android:name=".ui.deviceinfo.DeviceInfoActivity"
android:exported="false"
android:screenOrientation="portrait"
tools:ignore="DiscouragedApi,LockedOrientationActivity" />
<activity
android:name=".ui.deviceinfo.DeviceInfoDetailActivity"
android:exported="false"
android:screenOrientation="portrait"
tools:ignore="DiscouragedApi,LockedOrientationActivity" />
<provider
android:name="androidx.core.content.FileProvider"
......
......@@ -34,6 +34,7 @@ import com.base.appzxhy.SpConstObject.appLanguageSp
import com.base.appzxhy.R
import com.base.appzxhy.SpConstObject.cleanedSize
import com.base.appzxhy.bean.FeatureBean.Companion.BATTERY_INFO
import com.base.appzxhy.bean.FeatureBean.Companion.DEVICE_INFO
import com.base.appzxhy.bean.FeatureBean.Companion.JUNK_CLEAN
import com.base.appzxhy.bean.FeatureBean.Companion.LARGE_FILE_CLEAN
import com.base.appzxhy.bean.FeatureBean.Companion.PHOTO_COMPRESSION
......@@ -49,6 +50,7 @@ import com.base.appzxhy.business.helper.EventUtils
import com.base.appzxhy.ui.appuninstall.AppUninstallActivity
import com.base.appzxhy.ui.batteryinfo.BatteryInfoActivity
import com.base.appzxhy.ui.clean.JunkCleanActivity
import com.base.appzxhy.ui.deviceinfo.DeviceInfoActivity
import com.base.appzxhy.ui.dialog.FunctionBackDialog
import com.base.appzxhy.ui.largefile.LargeFileCleanActivity
import com.base.appzxhy.ui.main.MainActivity
......@@ -457,6 +459,10 @@ fun Activity.jumpAction(key: String) {
UNINSTALL_APP -> {
goToAc(AppUninstallActivity::class.java)
}
DEVICE_INFO -> {
goToAc(DeviceInfoActivity::class.java)
}
}
}
......
package com.base.appzxhy.bean
data class DeviceInfoBean(
val key: String,
val iconRes: Int = 0,
val titleRes: Int = 0,
val value: String = "",
) {
companion object {
const val DEVICE_INFORMATION = "device information"
const val PROCESSOR_INFORMATION = "processor information"
const val WIFI_INFORMATION = "wifi information"
const val DISPLAY_INFORMATION = "display information"
const val RAM_INFORMATION = "ram information"
const val ROM_INFORMATION = "rom information"
const val CAMERA_INFORMATION = "camera information"
const val BATTERY_INFORMATION = "battery information"
}
}
data class DeviceDetailBean(
val title: String,
var value: String
)
package com.base.appzxhy.ui.deviceinfo
import android.content.Context
import android.view.ViewGroup
import com.base.appzxhy.R
import com.base.appzxhy.base.BaseActivity
import com.base.appzxhy.bean.DeviceInfoBean
import com.base.appzxhy.bean.DeviceInfoBean.Companion.BATTERY_INFORMATION
import com.base.appzxhy.bean.DeviceInfoBean.Companion.CAMERA_INFORMATION
import com.base.appzxhy.bean.DeviceInfoBean.Companion.DEVICE_INFORMATION
import com.base.appzxhy.bean.DeviceInfoBean.Companion.DISPLAY_INFORMATION
import com.base.appzxhy.bean.DeviceInfoBean.Companion.PROCESSOR_INFORMATION
import com.base.appzxhy.bean.DeviceInfoBean.Companion.RAM_INFORMATION
import com.base.appzxhy.bean.DeviceInfoBean.Companion.ROM_INFORMATION
import com.base.appzxhy.bean.DeviceInfoBean.Companion.WIFI_INFORMATION
import com.base.appzxhy.databinding.ActivityDeviceInfoBinding
import com.base.appzxhy.databinding.ItemDeviceInformationBinding
import com.base.appzxhy.ui.adapter.CommonViewHolder
import com.base.appzxhy.ui.deviceinfo.DeviceInfoDetailActivity.Companion.DeviceInfoKey
import com.base.appzxhy.utils.XmlEx.inflate
import com.chad.library.adapter4.BaseQuickAdapter
class DeviceInfoActivity : BaseActivity<ActivityDeviceInfoBinding>(ActivityDeviceInfoBinding::inflate) {
private val list by lazy {
listOf(
DeviceInfoBean(DEVICE_INFORMATION, R.drawable.icon_shouji, R.string.device_information),
DeviceInfoBean(PROCESSOR_INFORMATION, R.drawable.icon_processor, R.string.processor_information),
DeviceInfoBean(BATTERY_INFORMATION, R.drawable.icon_battery, R.string.battery_information),
DeviceInfoBean(WIFI_INFORMATION, R.drawable.icon_wifi, R.string.wifi_information),
DeviceInfoBean(DISPLAY_INFORMATION, R.drawable.icon_display, R.string.display_information),
DeviceInfoBean(RAM_INFORMATION, R.drawable.icon_ram, R.string.ram_information),
DeviceInfoBean(ROM_INFORMATION, R.drawable.icon_rom, R.string.rom_information),
DeviceInfoBean(CAMERA_INFORMATION, R.drawable.icon_camera, R.string.camera_information),
)
}
val adapter = object : BaseQuickAdapter<DeviceInfoBean, CommonViewHolder>() {
override fun onBindViewHolder(
holder: CommonViewHolder,
position: Int,
item: DeviceInfoBean?
) {
item ?: return
val itemBinding = ItemDeviceInformationBinding.bind(holder.itemView)
itemBinding.ivIcon.setImageResource(item.iconRes)
itemBinding.tv.setText(item.titleRes)
itemBinding.root.setOnClickListener {
DeviceInfoKey = item.key
goToAc(DeviceInfoDetailActivity::class.java)
overridePendingTransition(R.anim.slide_in_right, R.anim.slide_out_left);
}
}
override fun onCreateViewHolder(
context: Context,
parent: ViewGroup,
viewType: Int
): CommonViewHolder {
return CommonViewHolder(R.layout.item_device_information.inflate(parent))
}
}
override fun initView() {
super.initView()
binding.rv.adapter = adapter
adapter.submitList(list)
}
override fun initListener() {
super.initListener()
binding.ivBack.setOnClickListener {
onBackPressedDispatcher.onBackPressed()
}
}
}
\ No newline at end of file
......@@ -3,7 +3,6 @@ package com.base.appzxhy.ui.main
import android.annotation.SuppressLint
import android.app.ActivityManager
import android.view.View
import androidx.coordinatorlayout.widget.CoordinatorLayout.Behavior.setTag
import androidx.core.content.ContextCompat
import androidx.core.content.ContextCompat.getSystemService
import androidx.core.graphics.Insets
......@@ -13,7 +12,6 @@ import androidx.core.view.WindowInsetsCompat
import androidx.lifecycle.lifecycleScope
import androidx.recyclerview.widget.GridLayoutManager
import com.airbnb.lottie.LottieDrawable
import com.applovin.impl.sb
import com.base.appzxhy.R
import com.base.appzxhy.base.BaseFragment
import com.base.appzxhy.base.jumpAction
......@@ -158,7 +156,7 @@ class HomeFragment : BaseFragment<FragmentHome1Binding>(FragmentHome1Binding::in
binding.wave3.setWaves(randomWave)
binding.wave3.colorAlpha = 1f
binding.wave3.progress = 0.15f
binding.wave3.progress = 0.13f
binding.wave3.startColor = ContextCompat.getColor(requireContext(), R.color.colorPrimary)
binding.wave3.closeColor = ContextCompat.getColor(requireContext(), R.color.colorPrimary)
binding.wave3.waveHeight = Random.nextInt(15, 30)
......@@ -229,7 +227,7 @@ class HomeFragment : BaseFragment<FragmentHome1Binding>(FragmentHome1Binding::in
(requireActivity() as MainActivity).permissionStorageJump(it.key)
}
BATTERY_INFO, UNINSTALL_APP -> {
BATTERY_INFO, UNINSTALL_APP, DEVICE_INFO -> {
(requireActivity() as MainActivity).jumpAction(it.key)
}
......
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="@android:integer/config_mediumAnimTime"
android:fromXDelta="-100%"
android:toXDelta="0%"/>
</set>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="@android:integer/config_mediumAnimTime"
android:fromXDelta="100%"
android:toXDelta="0%"/>
</set>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="@android:integer/config_mediumAnimTime"
android:fromXDelta="0%"
android:toXDelta="-100%"/>
</set>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate
android:duration="@android:integer/config_mediumAnimTime"
android:fromXDelta="0%"
android:toXDelta="100%"/>
</set>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="@color/white" />
<corners
android:topLeftRadius="@dimen/dp_24"
android:topRightRadius="@dimen/dp_24"/>
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/colorPrimary"
tools:context="com.base.appzxhy.ui.deviceinfo.DeviceInfoActivity">
<FrameLayout
android:id="@+id/flTop"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintTop_toTopOf="parent">
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/ivBack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginVertical="@dimen/dp_8"
android:layout_marginStart="@dimen/dp_8"
android:padding="@dimen/dp_8"
app:srcCompat="@drawable/icon_back_w" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical|start"
android:layout_marginStart="@dimen/dp_60"
android:text="@string/device_info"
android:textColor="@color/white"
android:textSize="@dimen/sp_18"
android:textStyle="bold" />
</FrameLayout>
<View
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginTop="@dimen/dp_20"
android:background="@drawable/bg_ffffff_tlr24"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toBottomOf="@id/flTop" />
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/iv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/flTop"
app:srcCompat="@drawable/icon_device_info_big" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv"
android:layout_width="match_parent"
android:layout_height="0dp"
android:paddingVertical="@dimen/dp_16"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toBottomOf="@id/iv">
</androidx.recyclerview.widget.RecyclerView>
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/colorPrimary">
<FrameLayout
android:id="@+id/flTop"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintTop_toTopOf="parent">
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/ivBack"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginVertical="@dimen/dp_8"
android:layout_marginStart="@dimen/dp_8"
android:padding="@dimen/dp_8"
app:srcCompat="@drawable/icon_back_w" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical|start"
android:layout_marginStart="@dimen/dp_60"
android:text="@string/device_info"
android:textColor="@color/white"
android:textSize="@dimen/sp_18"
android:textStyle="bold" />
</FrameLayout>
<View
android:id="@+id/v"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginTop="@dimen/dp_20"
android:background="@drawable/bg_ffffff_tlr24"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toBottomOf="@id/flTop" />
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv"
android:layout_width="match_parent"
android:layout_height="0dp"
android:paddingVertical="@dimen/dp_30"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toTopOf="@id/v">
</androidx.recyclerview.widget.RecyclerView>
<ProgressBar
android:id="@+id/progressBar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:indeterminateTint="@color/colorPrimary"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="@id/rv" />
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
......@@ -205,7 +205,7 @@
android:layout_marginBottom="@dimen/dp_50"
android:gravity="center"
android:text="@string/involve_ad"
android:textColor="#F2FEF8"
android:textColor="@color/black"
android:textSize="@dimen/sp_14"
android:textStyle="bold" />
......
<?xml version="1.0" encoding="utf-8"?>
<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_56"
android:layout_marginHorizontal="@dimen/dp_16"
android:layout_marginVertical="@dimen/dp_4"
app:cardCornerRadius="@dimen/dp_12">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_vertical">
<TextView
android:id="@+id/tvTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_10"
android:includeFontPadding="false"
android:textColor="#1A1A1A"
android:textSize="@dimen/sp_16"
tools:text="Screen Resolution" />
<TextView
android:id="@+id/tvValue"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/dp_10"
android:layout_weight="1"
android:gravity="end"
android:includeFontPadding="false"
android:textColor="#6E6E6E"
tools:text="1080 x 2260" />
</LinearLayout>
</androidx.cardview.widget.CardView>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/dp_16"
android:layout_marginVertical="@dimen/dp_4"
app:cardCornerRadius="@dimen/dp_12">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:foreground="?attr/selectableItemBackground"
android:gravity="center_vertical"
android:orientation="horizontal">
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/ivIcon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginVertical="@dimen/dp_16"
android:layout_marginStart="@dimen/dp_10"
app:srcCompat="@drawable/icon_shouji" />
<TextView
android:id="@+id/tv"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginHorizontal="@dimen/dp_12"
android:layout_weight="1"
android:includeFontPadding="false" />
<androidx.appcompat.widget.AppCompatImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/dp_10"
app:srcCompat="@drawable/icon_jiantou" />
</LinearLayout>
</androidx.cardview.widget.CardView>
\ No newline at end of file
......@@ -69,4 +69,5 @@
<dimen name="dp_3">3dp</dimen>
<dimen name="dp__50">-50dp</dimen>
<dimen name="dp__25">-25dp</dimen>
<dimen name="dp_56">56dp</dimen>
</resources>
\ No newline at end of file
......@@ -172,6 +172,14 @@ Please rest assured that we will handle your information in strict accordance wi
<string name="scanning">Scanning...</string>
<string name="device_info">Device Info</string>
<string name="junk_files">%1$s Junk Files</string>
<string name="device_information">Device Information</string>
<string name="processor_information">Processor Information</string>
<string name="wifi_information">Wifi Information</string>
<string name="display_information">Display Information</string>
<string name="ram_information">RAM Information</string>
<string name="rom_information">ROM Information</string>
<string name="camera_information">Camera Information</string>
<string name="battery_information">Battery Information</string>
</resources>
......@@ -22,4 +22,5 @@
</style>
</resources>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment