From 090d5f7a8c8d02695210cc374a9e1f7e416f357d Mon Sep 17 00:00:00 2001 From: dyglcc <15901418657@163.com> Date: Fri, 10 Apr 2020 09:34:56 +0800 Subject: [PATCH 1/2] add abc file --- abc | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 abc diff --git a/abc b/abc new file mode 100644 index 0000000..e69de29 From 63fa2e6a20719de2eaf53374f458f9eef7f20abd Mon Sep 17 00:00:00 2001 From: dyglcc <15901418657@163.com> Date: Wed, 15 Apr 2020 21:40:59 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E5=B0=9D=E8=AF=95=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=E4=BB=A3=E7=A0=81=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/brut/apktool/Main.java | 4 ++-- .../reversetoy/inject/ReflectionOper.java | 19 +++++++++---------- todo.md | 10 +++++++++- 3 files changed, 20 insertions(+), 13 deletions(-) diff --git a/brut.apktool/apktool-cli/src/main/java/brut/apktool/Main.java b/brut.apktool/apktool-cli/src/main/java/brut/apktool/Main.java index dd19b8f..a77352d 100644 --- a/brut.apktool/apktool-cli/src/main/java/brut/apktool/Main.java +++ b/brut.apktool/apktool-cli/src/main/java/brut/apktool/Main.java @@ -672,13 +672,13 @@ private static void _Options() { //// String uploadUrl = "https://arkpaastest.analysys.cn:4089"; Option uploadUrlOption = Option.builder("ousc") .longOpt("only-update-source-code") - .desc("仅仅更新代码") + .desc("仅更新SDK代码,不向Application插入初始化代码,适用场景:apk已经有初始化代码") .argName("tag") .hasArg(true) .build(); Option upgradeExcepDir = Option.builder("exclude") .longOpt("excludeDir") - .desc("升级sdk删除旧目录但不包含目录") + .desc("升级sdk删除旧目录但不包含子目录") .argName("tag") .hasArg(true) .build(); diff --git a/brut.apktool/apktool-lib/src/main/java/com/appadhoc/reversetoy/inject/ReflectionOper.java b/brut.apktool/apktool-lib/src/main/java/com/appadhoc/reversetoy/inject/ReflectionOper.java index 158844d..0594e88 100644 --- a/brut.apktool/apktool-lib/src/main/java/com/appadhoc/reversetoy/inject/ReflectionOper.java +++ b/brut.apktool/apktool-lib/src/main/java/com/appadhoc/reversetoy/inject/ReflectionOper.java @@ -23,7 +23,8 @@ public class ReflectionOper { private final static Logger LOGGER = Logger.getLogger(ReflectionOper.class.getName()); private HashMap options; String stubDir = "com.reverse.stub"; - private String SDK_DIR = "com.analysys";//代码路径 +// private String SDK_DIR = "com.analysys";//代码路径 + private String SDK_DIR = null;//代码路径 比如吆喝科技的A/BTest代码路径是com.adhoc private String exclue = "track";//路径路径下面有子项目不能删除 private static final String appNameStub = "com.reverse.stub.ReverseApp"; // private File jsonFile; @@ -248,15 +249,13 @@ private InputStream getAssetsCodeMethodInit() { // 删除旧sdk 的smali文件 // upgrade sdk may be useful public void deleteOldSdkSmaliFile(File hostdir, List aarSmaliFolder, XmlParser hostAndmanifestData) throws Exception { - String path = SDK_DIR; + String path = options.get("code") String excludeSDKdir = exclue; - if (options != null) { - if (options.get("exclude") != null) { - excludeSDKdir = (String) options.get("exclude"); - } - if (options.get("ousc") != null) { - path = (String) options.get("ousc"); - } + if (options.get("exclude") != null) { + excludeSDKdir = (String) options.get("exclude"); + } + if (options.get("ousc") != null) { + path = (String) options.get("ousc"); } if (path == null || path.equals("")) { @@ -285,7 +284,7 @@ public void deleteOldSdkSmaliFile(File hostdir, List aarSmaliFolder, XmlPa } } } - if (options == null || options.get("upg") == null) { + if (options.get("upg") == null) { this.addOrModifyApplicationSmali(hostdir, aarSmaliFolder, hostAndmanifestData); } } diff --git a/todo.md b/todo.md index 6994fde..7668d18 100644 --- a/todo.md +++ b/todo.md @@ -24,7 +24,15 @@ java -jar ~/work/apktool_2.4.1.jar d -f -only-main-classes signed1584858989429.a merge -ousc com.android.reyunsdk -exclude abc /Users/dongyuangui/Desktop/apk-blue/lingdan-fixed.apk /Users/dongyuangui/Desktop/aar-1/riskmanager-release.aar /Users/dongyuangui/Desktop/apk-blue/reverse_init_code.txt -mapping 作为一个成员变量 注:暂时没有问题,先不修改 2。debugable 3。mobileqq旧版R.raw ,暂时找不到问题原因,可以通过分析android studio的arsc报错原因找到相应代码错误的地方,推测问题。 + +bug: +1.msa文件找不到,arsc文件问题修复。 +2。更新sdk问题 +3。bugly注入成功却运行不起来。 + + + +