refactor(fileutils): 重构文件相关函数
- 将 TaskUtils 中的文件操作相关函数移至 FileUtils - 优化了文件路径获取逻辑,统一到 FileUtils 中处理 - 删除了 TaskUtils 中的冗余函数 - 新增 FileUtils.makeFile 函数用于创建文件
This commit is contained in:
parent
66ee32d0e2
commit
af757222c1
|
@ -46,10 +46,10 @@ import com.android.grape.util.FileUtils.forceMakeDir
|
||||||
import com.android.grape.util.FileUtils.getFileContent
|
import com.android.grape.util.FileUtils.getFileContent
|
||||||
import com.android.grape.util.FileUtils.getRecordDataFileName
|
import com.android.grape.util.FileUtils.getRecordDataFileName
|
||||||
import com.android.grape.util.FileUtils.getRecordSdcardApkVerFileName
|
import com.android.grape.util.FileUtils.getRecordSdcardApkVerFileName
|
||||||
|
import com.android.grape.util.FileUtils.getSessionTxtFileName
|
||||||
import com.android.grape.util.InstallUtils.installApks4Tmp
|
import com.android.grape.util.InstallUtils.installApks4Tmp
|
||||||
import com.android.grape.util.ShellUtils.chownSh
|
import com.android.grape.util.ShellUtils.chownSh
|
||||||
import com.android.grape.util.ShellUtils.unzipAPkSh
|
import com.android.grape.util.ShellUtils.unzipAPkSh
|
||||||
import com.android.grape.util.TaskUtils.getSessionTxtFileName
|
|
||||||
import com.android.grape.util.TaskUtils.isInstallRet
|
import com.android.grape.util.TaskUtils.isInstallRet
|
||||||
import com.blankj.utilcode.util.ActivityUtils
|
import com.blankj.utilcode.util.ActivityUtils
|
||||||
import java.io.File
|
import java.io.File
|
||||||
|
|
|
@ -20,8 +20,8 @@ import com.android.grape.data.AppState.mainUserAndGroup
|
||||||
import com.android.grape.data.AppState.monitorDir
|
import com.android.grape.data.AppState.monitorDir
|
||||||
import com.android.grape.data.AppState.recordPackageName
|
import com.android.grape.data.AppState.recordPackageName
|
||||||
import com.android.grape.util.ContextUtils.getBaseFilesDir
|
import com.android.grape.util.ContextUtils.getBaseFilesDir
|
||||||
import com.android.grape.util.TaskUtils.getRecordTxtFileName
|
import com.android.grape.util.FileUtils.getRecordTxtFileName
|
||||||
import com.android.grape.util.TaskUtils.getSelfRecordTxtFileName
|
import com.android.grape.util.FileUtils.getSelfRecordTxtFileName
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import java.io.InputStreamReader
|
import java.io.InputStreamReader
|
||||||
import java.io.LineNumberReader
|
import java.io.LineNumberReader
|
||||||
|
|
|
@ -25,6 +25,7 @@ import java.io.IOException
|
||||||
import java.io.InputStream
|
import java.io.InputStream
|
||||||
import java.io.InputStreamReader
|
import java.io.InputStreamReader
|
||||||
import java.io.OutputStream
|
import java.io.OutputStream
|
||||||
|
import java.io.PrintWriter
|
||||||
import java.io.RandomAccessFile
|
import java.io.RandomAccessFile
|
||||||
import java.io.UnsupportedEncodingException
|
import java.io.UnsupportedEncodingException
|
||||||
import java.nio.charset.StandardCharsets
|
import java.nio.charset.StandardCharsets
|
||||||
|
@ -85,7 +86,46 @@ object FileUtils {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public fun getSessionTxtFileName(context: Context): String {
|
||||||
|
return getBaseFilesDir(context) + "/" + monitorDir + "/" + apkDir + "/sessionTxt.txt"
|
||||||
|
}
|
||||||
|
|
||||||
|
public fun getRecordTxtFileName(context: Context): String {
|
||||||
|
return getBaseFilesDir(context) + "/" + monitorDir + "/" + apkDir + "/" + recordPackageName + ".txt"
|
||||||
|
}
|
||||||
|
|
||||||
|
public fun getSelfRecordTxtFileName(context: Context): String {
|
||||||
|
return getBaseFilesDir(context) + "/" + monitorDir + "/" + apkDir + "/" + context.packageName + ".txt"
|
||||||
|
}
|
||||||
|
|
||||||
|
public fun getRecordApkVerFileName(context: Context): String {
|
||||||
|
return getBaseFilesDir(context) + "/" + monitorDir + "/" + apkDir + "/" + recordFileName
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public fun getRecordApkFileName(context: Context): String {
|
||||||
|
return getBaseFilesDir(context) + "/" + monitorDir + "/" + apkDir + "/" + recordPackageName + ".apk"
|
||||||
|
}
|
||||||
|
public fun makeFile(fileName: String) {
|
||||||
|
var PrintWriter: PrintWriter? = null
|
||||||
|
var process: Process? = null
|
||||||
|
try {
|
||||||
|
process = Runtime.getRuntime().exec("su")
|
||||||
|
PrintWriter = PrintWriter(process.outputStream)
|
||||||
|
//String cmd = "cd " + path+" \n";
|
||||||
|
val cmd = "touch $fileName"
|
||||||
|
Log.i("TaskUtils", "makefile-> cmd:$cmd")
|
||||||
|
PrintWriter.println(cmd)
|
||||||
|
|
||||||
|
PrintWriter.flush()
|
||||||
|
PrintWriter.close()
|
||||||
|
val value = process.waitFor()
|
||||||
|
} catch (e: Exception) {
|
||||||
|
e.printStackTrace()
|
||||||
|
} finally {
|
||||||
|
process?.destroy()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public fun getRecordListTxtFileName(context: Context): String {
|
public fun getRecordListTxtFileName(context: Context): String {
|
||||||
return getBaseFilesDir(context) + "/" + monitorDir + "/" + apkDir + "/" + recordPackageName + ".list.txt"
|
return getBaseFilesDir(context) + "/" + monitorDir + "/" + apkDir + "/" + recordPackageName + ".list.txt"
|
||||||
|
|
|
@ -7,7 +7,7 @@ import android.util.Log
|
||||||
import com.android.grape.data.AppState.recordPackageName
|
import com.android.grape.data.AppState.recordPackageName
|
||||||
import com.android.grape.util.AppUtils.getPackageUserID
|
import com.android.grape.util.AppUtils.getPackageUserID
|
||||||
import com.android.grape.util.ContextUtils.getMonitorDir
|
import com.android.grape.util.ContextUtils.getMonitorDir
|
||||||
import com.android.grape.util.TaskUtils.getRecordListTxtFileName
|
import com.android.grape.util.FileUtils.getRecordListTxtFileName
|
||||||
import com.blankj.utilcode.util.LogUtils
|
import com.blankj.utilcode.util.LogUtils
|
||||||
import java.io.BufferedOutputStream
|
import java.io.BufferedOutputStream
|
||||||
import java.io.BufferedReader
|
import java.io.BufferedReader
|
||||||
|
|
|
@ -129,11 +129,6 @@ object TaskUtils {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public fun getRecordListTxtFileName(context: Context): String {
|
|
||||||
return getBaseFilesDir(context) + "/" + monitorDir + "/" + apkDir + "/" + recordPackageName + ".list.txt"
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
fun setInstallRet(installRetV: Boolean) {
|
fun setInstallRet(installRetV: Boolean) {
|
||||||
Log.i("TaskUtils", "setInstallRet: $installRetV")
|
Log.i("TaskUtils", "setInstallRet: $installRetV")
|
||||||
installRet = installRetV
|
installRet = installRetV
|
||||||
|
@ -335,24 +330,6 @@ object TaskUtils {
|
||||||
val paramString: String
|
val paramString: String
|
||||||
get() = paramsJson.toString()
|
get() = paramsJson.toString()
|
||||||
|
|
||||||
public fun getRecordTxtFileName(context: Context): String {
|
|
||||||
return getBaseFilesDir(context) + "/" + monitorDir + "/" + apkDir + "/" + recordPackageName + ".txt"
|
|
||||||
}
|
|
||||||
|
|
||||||
public fun getSelfRecordTxtFileName(context: Context): String {
|
|
||||||
return getBaseFilesDir(context) + "/" + monitorDir + "/" + apkDir + "/" + context.packageName + ".txt"
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public fun getRecordApkFileName(context: Context): String {
|
|
||||||
return getBaseFilesDir(context) + "/" + monitorDir + "/" + apkDir + "/" + recordPackageName + ".apk"
|
|
||||||
}
|
|
||||||
|
|
||||||
public fun getRecordApkVerFileName(context: Context): String {
|
|
||||||
return getBaseFilesDir(context) + "/" + monitorDir + "/" + apkDir + "/" + recordFileName
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public fun notcl(context: Context) {
|
public fun notcl(context: Context) {
|
||||||
val url = "http://127.0.0.1:8090/ctl/notcl"
|
val url = "http://127.0.0.1:8090/ctl/notcl"
|
||||||
|
@ -385,12 +362,6 @@ object TaskUtils {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public fun getSessionTxtFileName(context: Context): String {
|
|
||||||
return getBaseFilesDir(context) + "/" + monitorDir + "/" + apkDir + "/sessionTxt.txt"
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public fun returnResult(value: Int): Boolean {
|
public fun returnResult(value: Int): Boolean {
|
||||||
// 代表成功
|
// 代表成功
|
||||||
return if (value == 0) {
|
return if (value == 0) {
|
||||||
|
@ -414,28 +385,6 @@ object TaskUtils {
|
||||||
}, 5000)
|
}, 5000)
|
||||||
}
|
}
|
||||||
|
|
||||||
public fun makeFile(fileName: String) {
|
|
||||||
var PrintWriter: PrintWriter? = null
|
|
||||||
var process: Process? = null
|
|
||||||
try {
|
|
||||||
process = Runtime.getRuntime().exec("su")
|
|
||||||
PrintWriter = PrintWriter(process.outputStream)
|
|
||||||
//String cmd = "cd " + path+" \n";
|
|
||||||
val cmd = "touch $fileName"
|
|
||||||
Log.i("TaskUtils", "makefile-> cmd:$cmd")
|
|
||||||
PrintWriter.println(cmd)
|
|
||||||
|
|
||||||
PrintWriter.flush()
|
|
||||||
PrintWriter.close()
|
|
||||||
val value = process.waitFor()
|
|
||||||
} catch (e: Exception) {
|
|
||||||
e.printStackTrace()
|
|
||||||
} finally {
|
|
||||||
process?.destroy()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
//将xapk格式变成zip格式,并进行解压
|
//将xapk格式变成zip格式,并进行解压
|
||||||
// public fun changeZip() {
|
// public fun changeZip() {
|
||||||
// val split = name!!.split(".xapk".toRegex()).dropLastWhile { it.isEmpty() }.toTypedArray()
|
// val split = name!!.split(".xapk".toRegex()).dropLastWhile { it.isEmpty() }.toTypedArray()
|
||||||
|
|
Loading…
Reference in New Issue