APKTOOL怎样用的,我反编译成功之后回编译失败,出现下图这样的情况是怎样的?

APKTOOL怎样用的,我反编译成功之后回编译失败,出现下图这样的情况是怎样的?,第1张

编译失败是操作过程中错误造成的。解决方式如下:

1、首先去官方网站点击下载可用的最新ApkTool。

2、在上一步的弹出窗口中点击截图红圈处的位置进行下载,由于是国外服务器点击后可能出现没反应情况,稍作等待即可。

3、下载完成后将文件放到新建的一个文件夹中,然后右键点击我的电脑选择-高级系统设置。

4、然后在高级选项中选择环境变量。

5、新建一个java环境的变量点击确定。

6、配置好java环境后在开始菜单中输入cmd,打开dos命令窗口。首先输入命令f,然后回车。

7、进入对应盘符后,在此输入命令cd apktool,然后回车进入保存ApkTooljar的文件夹中。

8、随便下载一个apk文件发到apktool所在的文件夹中,然后执行命令java -jar apktooljar d -f XXXXapk文件所在的路径。然后程序就会开始反编译

9、反编译完成后会在该文件夹内生成一个和apk同名的文件夹,apk反编译完的内容即存在于该文件夹内。

JavaScript Document

function show(str)

{

var str1="td"+str;

var str="show"+str;

for (var i=1; i<18; i++)

{

var obj = documentgetElementById('show' + itoString());

if (obj) objstyledisplay = 'none';

}

documentgetElementById(str)styledisplay="block";

}

1、首先新建一个android项目,里面只有一个MainActivity,而且主界面只会显示一个字符串:你好。

2、下面,切换到这个项目生成的apk文件所在的目录,可以看到有一个hellodemoapk。

3、在命令行输入:apktool d -r hellodemoapk。可以看到在当前目录下生成了一个hellodemo文件夹。

4、进入到hellodemo\smali\com\example\hello,打开MainActivitysmali。找到:

const-string v1, "\u4f60\u597d",

修改为:

const-string v1, "hello",

5、然后在命令行输入:apktool b hellodemo hellodemo1apk。这回重新打包成hellodemo1apk。

6、然后给新生成的apk进行签名。把这个apk拷贝到autosign的目录下面,然后切换过去,在命令行输入:java -jar signapkjar testkeyx509pem testkeypk8 hellodemo1apk hellodemoapk。

7、把生成的hellodemoapk安装到手机,可以看到主界面上已经显示的是hello,而不再是你好。说明反编译重新打包成功!

使用apktool进行apk的反汇编时,没有出现问题(有问题的自行解决),

但是进行回汇编时出现:

F:\apktool>apktool b Hello Helloapk

Exception in thread "main" brutandrolibAndrolibException: brutdirectoryPathN

otExist: apktoolyml

at brutandrolibAndrolibreadMetaFile(Unknown Source)

at brutandrolibAndrolibbuild(Unknown Source)

at brutandrolibAndrolibbuild(Unknown Source)

at brutapktoolMaincmdBuild(Unknown Source)

at brutapktoolMainmain(Unknown Source)

Caused by: brutdirectoryPathNotExist: apktoolyml

at brutdirectoryAbstractDirectorygetFileInput(Unknown Source)

5 more

经验证是,反汇编时没有生成apktoolyml

进行反汇编时,改用命令apktool d -r xxapk xx便可以解决(加上了-r选项)

反编译后的java文件引用了你现在编译环境中没有的包,而这些包是原作者在开发的时候专用配置好的,所以你编译的时候 某些import就会报错了

我可以帮助你,你先设置我最佳答案后,我百度Hii教你。

欢迎分享,转载请注明来源:品搜搜测评网

原文地址:https://pinsoso.cn/shuma/1381562.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-09-18
下一篇2023-09-18

随机推荐

  • 欧珀莱黑精灵精华怎么样?欧珀莱黑精灵精华使用方法

    欧珀莱黑精灵精华主打密实肌底,光润透亮,那么欧珀莱黑精灵精华怎么样?欧珀莱黑精灵精华使用方法是什么?面对这些问题,以下是针对欧珀莱黑精灵精华进行的全面分析,以了解欧珀莱黑精灵精华的其他性能,并帮助你解决更多的问题,有兴趣的朋友快来看看!

    2024-04-15
    62800
  • 精华露和精华液的顺序

    精华露和精华液的顺序,其实并没有固定的标准。不同品牌、不同产品之间,使用顺序也可能存在一些差异。但是,一般来说,我们可以这样理解:我们需要明确两者的功能区别。精华液是一种具有高浓度活性成分的保养品,可以为肌肤提供深层营养滋润,在保持肌肤水油

    2024-04-15
    55100
  • 妮维雅防晒喷雾和妮维雅防晒紧肤精华有什么区别?哪个防晒效果更好?

    两者相比当然是妮维雅防晒喷雾防晒好,但以专业美容来看的话选择防晒最好是防晒霜对皮肤伤害小些,防晒喷雾防晒是物理防晒最好不要直接接触皮肤,因为防晒霜本身就添加防水剂还有化学成分,所以一般我们都建议在擦防晒霜之前要擦霜这样对皮肤的伤害到最低又能

    2024-04-15
    45300
  • olay水感透白六件套顺序

    Olay水感透白六件套的使用顺序如下:1 玉兰油深层洁肤乳。2 玉兰油莹肌亮肤液。3 玉兰油水感透白透视美白精华露。4 玉兰油水漾动力莹眸走珠精华笔。5 玉兰油水感透白防晒修护凝乳。6 玉兰油轻透倍护隔离防晒液。以上步骤有助于提亮你的肤色,

    2024-04-15
    60700
  • 精华素和精华液有什么区别

    精华素的质地比精华液稀薄,更容易被肌肤所吸收。精华素与精华液都是美容护肤常用到的产品,但是精华液的质地比精华素厚重,涂抹上脸后需要较长的时间才能被肌肤所吸收,而分子较小的精华素却很容易被肌肤吸收进去。精华素与精华液的共同点很多,比如美白、保

    2024-04-15
    44200
  • 露安适是哪个国家的-是德国生产的么?

    Lelch®露安适,德国Dehaa Rossun旗下健康护理品牌。品牌定位:具有医学背景的强健薄皮肤专家技术支持:欧盟GMPC认证(德国品质)、SebumCareTM技术、独有年龄分段配方、天然进口原料、通过口腔粘膜无刺激试验、Non-in

    2024-04-15
    37300
  • 开封关于公布疫情风险点位的通告开封市疫情中风险地区

    近日,我市主城区在流调核查时发现风险人员活动轨迹涉及多个点位,现将涉及风险点位通告如下:11月23日10:00-19:30宋宫酒店管理有限公司10:00-10:30化三驴肉汤老店11:00-11:29笑笑蛋糕房12:30-17:30卧龙街棋

    2024-04-15
    39800

发表评论

登录后才能评论
保存