|
|
|
@ -32,7 +32,7 @@ class DexDumpRepository { |
|
|
|
|
fun getAppList(mAppListLiveData: MutableLiveData<List<AppInfo>>) { |
|
|
|
|
|
|
|
|
|
val installedApplications: List<ApplicationInfo> = |
|
|
|
|
getPackageManager().getInstalledApplications(0) |
|
|
|
|
getPackageManager().getInstalledApplications(0) |
|
|
|
|
val installedList = mutableListOf<AppInfo>() |
|
|
|
|
|
|
|
|
|
for (installedApplication in installedApplications) { |
|
|
|
@ -44,9 +44,9 @@ class DexDumpRepository { |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
val info = AppInfo( |
|
|
|
|
installedApplication.loadLabel(getPackageManager()).toString(), |
|
|
|
|
installedApplication.packageName, |
|
|
|
|
installedApplication.loadIcon(getPackageManager()) |
|
|
|
|
installedApplication.loadLabel(getPackageManager()).toString(), |
|
|
|
|
installedApplication.packageName, |
|
|
|
|
installedApplication.loadIcon(getPackageManager()) |
|
|
|
|
) |
|
|
|
|
installedList.add(info) |
|
|
|
|
} |
|
|
|
@ -83,22 +83,17 @@ class DexDumpRepository { |
|
|
|
|
private fun startCountdown(dexDumpLiveData: MutableLiveData<DumpInfo>) { |
|
|
|
|
GlobalScope.launch { |
|
|
|
|
val tempId = dumpTaskId |
|
|
|
|
|
|
|
|
|
while (BlackDexCore.get().isRunning){ |
|
|
|
|
while (BlackDexCore.get().isRunning) { |
|
|
|
|
delay(10000) |
|
|
|
|
//10s |
|
|
|
|
|
|
|
|
|
if(!AppManager.mBlackBoxLoader.isFixCodeItem()){ |
|
|
|
|
break |
|
|
|
|
if (!AppManager.mBlackBoxLoader.isFixCodeItem()) { |
|
|
|
|
break |
|
|
|
|
} |
|
|
|
|
//fixCodeItem 需要长时间运行,普通内存dump不需要 |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if (tempId == dumpTaskId) { |
|
|
|
|
dexDumpLiveData.postValue(DumpInfo(DumpInfo.TIMEOUT)) |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
} |