Commit 15ac3cf7 authored by wanglei's avatar wanglei

...

parent 848dc3be
......@@ -15,6 +15,17 @@
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_DATA_SYNC" />
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
<queries>
<intent>
<action android:name="android.intent.action.MAIN" />
</intent>
<intent>
<action android:name="android.intent.action.VIEW" />
</intent>
</queries>
<application
android:name=".MyApplication"
android:allowBackup="true"
......
package com.base.browserwhite.bean
import android.graphics.drawable.Drawable
class AppBean(
val icon: Drawable, val name: String, val packageName: String
)
\ No newline at end of file
package com.base.browserwhite.ui.activity.appprocess
import android.content.Context
import android.view.View
import android.view.ViewGroup
import androidx.recyclerview.widget.RecyclerView
import com.base.browserwhite.bean.AppBean
import com.chad.library.adapter4.BaseQuickAdapter
class AppBeanAdapter : BaseQuickAdapter<AppBean, AppBeanAdapter.AppHolder>() {
inner class AppHolder(view: View) : RecyclerView.ViewHolder(view)
override fun onBindViewHolder(holder: AppHolder, position: Int, item: AppBean?) {
}
override fun onCreateViewHolder(context: Context, parent: ViewGroup, viewType: Int): AppHolder {
TODO("Not yet implemented")
}
}
\ No newline at end of file
package com.base.browserwhite.ui.activity.appprocess
import android.annotation.SuppressLint
import android.content.Context
import android.content.pm.ApplicationInfo
import android.content.pm.PackageInfo
import androidx.lifecycle.lifecycleScope
import com.base.browserwhite.bean.AppBean
import com.base.browserwhite.databinding.ActivityAppProcessBinding
import com.base.browserwhite.ui.activity.BaseActivity
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
class AppProcessActivity : BaseActivity<ActivityAppProcessBinding>() {
......@@ -13,4 +21,32 @@ class AppProcessActivity : BaseActivity<ActivityAppProcessBinding>() {
override fun initView() {
}
@SuppressLint("QueryPermissionsNeeded")
private fun initData() = lifecycleScope.launch(Dispatchers.IO) {
val pm = packageManager
val packages = pm.getInstalledPackages(0)
val list = arrayListOf<AppBean>()
packages.forEach { app ->
if (isLaunchApp(this@AppProcessActivity, app)) {
val appBean = AppBean(
app.applicationInfo.loadIcon(pm),
app.applicationInfo.loadLabel(pm).toString(),
app.applicationInfo.packageName
)
list.add(appBean)
}
}
}
private fun isLaunchApp(context: Context, app: PackageInfo, filterSystem: Boolean = true): Boolean {
val flagSystem = (app.applicationInfo.flags and ApplicationInfo.FLAG_SYSTEM) < 1
val flag = if (filterSystem) flagSystem else true
return flag && app.applicationInfo.packageName != context.packageName
}
}
\ No newline at end of file
......@@ -49,8 +49,9 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="5dp"
android:includeFontPadding="false"
android:paddingHorizontal="20dp"
android:paddingVertical="4dp"
android:text="Home"
android:textColor="@color/color_tab_text"
android:textSize="12sp"
......@@ -78,8 +79,9 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="5dp"
android:includeFontPadding="false"
android:paddingHorizontal="20dp"
android:paddingVertical="4dp"
android:text="File"
android:textColor="@color/color_tab_text"
android:textSize="12sp"
......
......@@ -22,6 +22,7 @@
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:ignore="ContentDescription" />
</androidx.cardview.widget.CardView>
<TextView
......@@ -50,4 +51,12 @@
app:layout_constraintTop_toTopOf="@id/card"
tools:ignore="HardcodedText" />
<View
android:layout_width="0dp"
android:layout_height="1px"
android:layout_marginBottom="2dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@id/card" />
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
......@@ -10,7 +10,7 @@
android:id="@+id/rv_website"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:layout_marginTop="12dp"
app:layoutManager="androidx.recyclerview.widget.GridLayoutManager"
tools:listitem="@layout/item_website_grid" />
......
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