From 60741e964f5c9b81d5a728b16e9f1cad9ae9ec10 Mon Sep 17 00:00:00 2001 From: liuyang Date: Mon, 19 Nov 2018 09:27:23 +0800 Subject: [PATCH] =?UTF-8?q?APK=E6=8A=93=E5=8C=85>=E4=BB=8E=E9=A2=91?= =?UTF-8?q?=E9=81=931=E5=BC=80=E5=A7=8B=E4=BE=9D=E6=AC=A1=E6=8A=93?= =?UTF-8?q?=E5=8F=96,=20HDP=E5=A4=9A=E4=BA=8E100=E9=A2=91=E9=81=93?= =?UTF-8?q?=E6=8A=93=E5=8F=96=E6=88=90=E5=8A=9F=E4=B8=8A=E6=8A=A5=E5=A4=B1?= =?UTF-8?q?=E8=B4=A5=E8=B7=9F=E8=B8=AA=20#BYLSERVER-1693?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/duolebo/blyrobot/data/Task.kt | 28 +++++++++++++------ .../java/com/duolebo/blyrobot/util/AppUtil.kt | 12 ++++++++ 2 files changed, 32 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/duolebo/blyrobot/data/Task.kt b/app/src/main/java/com/duolebo/blyrobot/data/Task.kt index f57a454..d9a7749 100644 --- a/app/src/main/java/com/duolebo/blyrobot/data/Task.kt +++ b/app/src/main/java/com/duolebo/blyrobot/data/Task.kt @@ -35,7 +35,7 @@ class Task : Thread, IAppBaseCallback { lateinit var apkInfo: ApkInfo // 截图存放路径 - private lateinit var imagePath: String + private lateinit var taskPath: String // 抓包存放路径 private var capturePath = AppUtil.getAbsoluteSdcardPath() + "/capture.txt" @@ -71,10 +71,9 @@ class Task : Thread, IAppBaseCallback { */ fun from(apkInfo: ApkInfo) { this.apkInfo = apkInfo -// this.imagePath = this.context.cacheDir.absolutePath + "/" + apkInfo.packageName val sdPath = AppUtil.getAbsoluteSdcardPath() - this.imagePath = sdPath + "/upload/" + apkInfo.packageName - val dir = File(this.imagePath) + this.taskPath = sdPath + "/upload/" + apkInfo.packageName + val dir = File(this.taskPath) if (!dir.exists()) dir.mkdirs() } @@ -149,10 +148,13 @@ class Task : Thread, IAppBaseCallback { this.channelIndex = 0 this.uploadImages.clear() - val dir = File(this.imagePath) + val dir = File(this.taskPath) if (dir.exists()) { - for (file in dir.listFiles()) + for (file in dir.listFiles()) { + if (file.name.endsWith(".log")) + continue file.delete() + } } } @@ -177,6 +179,13 @@ class Task : Thread, IAppBaseCallback { this.taskListener?.run { onComplete(result) } + + try { + val logPath = this.taskPath + "/" + this.imageDateFormat.format(Date()) + ".log" + Runtime.getRuntime().exec("logcat -f $logPath") + } catch (e: Exception) { + e.printStackTrace() + } } /** @@ -268,13 +277,13 @@ class Task : Thread, IAppBaseCallback { val screenImages = ArrayList() var time = imageDateFormat.format(Date()) - val absName = this.imagePath + "/${this.apkInfo.packageName}_${channelIndex}_$time" + val absName = this.taskPath + "/${this.apkInfo.packageName}_${channelIndex}_$time" screenShot(absName) screenImages.add("$absName.jpg") AdbUtil.sendMultiKey(this.apkInfo.menuKeyEvent) time = imageDateFormat.format(Date()) - val absOkName = this.imagePath + "/${this.apkInfo.packageName}_${channelIndex}_${time}_ok" + val absOkName = this.taskPath + "/${this.apkInfo.packageName}_${channelIndex}_${time}_ok" screenShot(absOkName) screenImages.add("$absOkName.jpg") @@ -474,6 +483,9 @@ class Task : Thread, IAppBaseCallback { reportArray.put(this.reportJson) postJson.putOpt("data", reportArray) reportProtocol.withBody(postJson.toString()).execute(dataHandler) + + val reportPath = this.taskPath + "/" + this.imageDateFormat.format(Date()) + "_report.json" + AppUtil.saveToFile(reportPath, postJson.toString()) } override fun onProtocolFailed(p0: IProtocol?) { diff --git a/app/src/main/java/com/duolebo/blyrobot/util/AppUtil.kt b/app/src/main/java/com/duolebo/blyrobot/util/AppUtil.kt index c209a43..3004cd9 100644 --- a/app/src/main/java/com/duolebo/blyrobot/util/AppUtil.kt +++ b/app/src/main/java/com/duolebo/blyrobot/util/AppUtil.kt @@ -188,4 +188,16 @@ object AppUtil { } return false } + + fun saveToFile(fileName: String, content: String) { + try { + val fw = FileWriter(File(fileName)) + fw.write(content) + fw.close() + } catch (e: FileNotFoundException) { + e.printStackTrace() + } catch (e: IOException) { + e.printStackTrace() + } + } } \ No newline at end of file -- 2.21.0