mirror of
https://github.com/KitsunePie/AppErrorsTracking.git
synced 2025-09-01 08:45:16 +08:00
Modify support Android 7.0
This commit is contained in:
@@ -18,7 +18,7 @@
|
||||
|
||||
应用发生崩溃的错误日志对开发者来说是无价的财富,若你不是开发者,你依然可以安装此模块,以便给开发者提供更多异常信息快速解决问题。
|
||||
|
||||
> 最低支持 Android 8.1
|
||||
> 最低支持 Android 7.0
|
||||
|
||||
## 项目缘由
|
||||
|
||||
|
@@ -20,7 +20,7 @@ any installed apps, so as to quickly locate the problem.
|
||||
The error log of apps crashing is an invaluable asset for developers. If you are not a developer, you can still install this module to provide
|
||||
developers with more exception information to quickly solve problems.
|
||||
|
||||
> Minimum support Android 8.1
|
||||
> Minimum support Android 7.0
|
||||
|
||||
## Project Reason
|
||||
|
||||
|
@@ -21,7 +21,7 @@ android {
|
||||
|
||||
defaultConfig {
|
||||
applicationId "com.fankes.apperrorstracking"
|
||||
minSdk 27
|
||||
minSdk 24
|
||||
targetSdk 33
|
||||
versionCode rootProject.ext.appVersionCode
|
||||
versionName rootProject.ext.appVersionName
|
||||
|
@@ -27,7 +27,10 @@
|
||||
android:value="@string/xposed_desc" />
|
||||
<meta-data
|
||||
android:name="xposedminversion"
|
||||
android:value="93" />
|
||||
android:value="89" />
|
||||
<meta-data
|
||||
android:name="xposedsharedprefs"
|
||||
android:value="true" />
|
||||
<meta-data
|
||||
android:name="xposedscope"
|
||||
android:resource="@array/module_scope" />
|
||||
|
@@ -23,6 +23,8 @@
|
||||
|
||||
package com.fankes.apperrorstracking.ui.activity.base
|
||||
|
||||
import android.app.ActivityManager
|
||||
import android.content.Intent
|
||||
import android.os.Build
|
||||
import android.os.Bundle
|
||||
import androidx.appcompat.app.AppCompatActivity
|
||||
@@ -67,6 +69,24 @@ abstract class BaseActivity<VB : ViewBinding> : AppCompatActivity() {
|
||||
/** 回调 [onCreate] 方法 */
|
||||
abstract fun onCreate()
|
||||
|
||||
/**
|
||||
* 在旧版的 Android 系统中使用了 activity-alias 标签从启动器启动 Activity 会造成其组件名称 (完整类名) 为代理名称
|
||||
*
|
||||
* 为了获取真实的顶层 Activity 组件名称 (完整类名) - 如果名称不正确将自动执行一次结束并重新打开当前 Activity
|
||||
*/
|
||||
fun checkingTopComponentName() {
|
||||
/** 当前顶层的 Activity 组件名称 (完整类名) */
|
||||
val topComponentName = runCatching {
|
||||
@Suppress("DEPRECATION")
|
||||
(getSystemService(ACTIVITY_SERVICE) as? ActivityManager?)
|
||||
?.getRunningTasks(9999)?.firstOrNull()?.topActivity?.className ?: ""
|
||||
}.getOrNull() ?: ""
|
||||
if (topComponentName.isNotBlank() && topComponentName != javaClass.name) {
|
||||
finish()
|
||||
startActivity(Intent(this, javaClass))
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 弹出提示并退出
|
||||
* @param name 名称
|
||||
|
@@ -52,6 +52,7 @@ class MainActivity : BaseActivity<ActivityMainBinding>() {
|
||||
}
|
||||
|
||||
override fun onCreate() {
|
||||
checkingTopComponentName()
|
||||
binding.mainTextVersion.text = LocaleString.moduleVersion(BuildConfig.VERSION_NAME)
|
||||
binding.mainTextSystemVersion.text = LocaleString.systemVersion(systemVersion)
|
||||
binding.onlyShowErrorsInFrontSwitch.bind(ConfigData.ENABLE_ONLY_SHOW_ERRORS_IN_FRONT)
|
||||
|
@@ -19,7 +19,7 @@
|
||||
*
|
||||
* This file is Created by fankes on 2022/5/7.
|
||||
*/
|
||||
@file:Suppress("unused")
|
||||
@file:Suppress("unused", "NotificationPermission")
|
||||
|
||||
package com.fankes.apperrorstracking.utils.factory
|
||||
|
||||
@@ -261,7 +261,8 @@ fun Context.snake(msg: String, actionText: String = "", callback: () -> Unit = {
|
||||
*/
|
||||
fun Context.pushNotify(channelId: String, channelName: String, title: String, content: String, icon: IconCompat, color: Int, intent: Intent) {
|
||||
getSystemService<NotificationManager>()?.apply {
|
||||
createNotificationChannel(NotificationChannel(channelId, channelName, NotificationManager.IMPORTANCE_HIGH))
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O)
|
||||
createNotificationChannel(NotificationChannel(channelId, channelName, NotificationManager.IMPORTANCE_HIGH))
|
||||
notify((0..999).random(), NotificationCompat.Builder(this@pushNotify, channelId).apply {
|
||||
this.color = color
|
||||
setAutoCancel(true)
|
||||
|
@@ -6,7 +6,7 @@
|
||||
android:background="@color/colorThemeBackground"
|
||||
android:orientation="vertical"
|
||||
tools:context=".ui.activity.debug.LoggerActivity"
|
||||
tools:ignore="ContentDescription,UseCompoundDrawables">
|
||||
tools:ignore="ContentDescription,UseCompoundDrawables,UnusedAttribute">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
@@ -8,7 +8,7 @@
|
||||
android:background="@color/colorThemeBackground"
|
||||
android:orientation="vertical"
|
||||
tools:context=".ui.activity.errors.AppErrorsDetailActivity"
|
||||
tools:ignore="ContentDescription,UseCompoundDrawables,SmallSp">
|
||||
tools:ignore="ContentDescription,UseCompoundDrawables,SmallSp,UnusedAttribute">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
@@ -6,7 +6,7 @@
|
||||
android:background="@color/colorThemeBackground"
|
||||
android:orientation="vertical"
|
||||
tools:context=".ui.activity.errors.AppErrorsRecordActivity"
|
||||
tools:ignore="ContentDescription,UseCompoundDrawables">
|
||||
tools:ignore="ContentDescription,UseCompoundDrawables,UnusedAttribute">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
@@ -6,7 +6,7 @@
|
||||
android:background="@color/colorThemeBackground"
|
||||
android:orientation="vertical"
|
||||
tools:context=".ui.activity.errors.AppErrorsRecordActivity"
|
||||
tools:ignore="ContentDescription,UseCompoundDrawables">
|
||||
tools:ignore="ContentDescription,UseCompoundDrawables,UnusedAttribute">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
@@ -6,7 +6,7 @@
|
||||
android:background="@color/colorThemeBackground"
|
||||
android:orientation="vertical"
|
||||
tools:context=".ui.activity.main.ConfigureActivity"
|
||||
tools:ignore="ContentDescription,UseCompoundDrawables">
|
||||
tools:ignore="ContentDescription,UseCompoundDrawables,UnusedAttribute">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
@@ -7,7 +7,7 @@
|
||||
android:background="@color/colorThemeBackground"
|
||||
android:orientation="vertical"
|
||||
tools:context=".ui.activity.main.MainActivity"
|
||||
tools:ignore="UseCompoundDrawables,ContentDescription,SmallSp">
|
||||
tools:ignore="UseCompoundDrawables,ContentDescription,SmallSp,UnusedAttribute">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
|
@@ -20,7 +20,7 @@ android {
|
||||
}
|
||||
|
||||
defaultConfig {
|
||||
minSdk 27
|
||||
minSdk 24
|
||||
targetSdk 33
|
||||
versionCode 1
|
||||
versionName "1.0"
|
||||
|
Reference in New Issue
Block a user