反编译android步骤入下:
第一:使用apktool直接反编译apk
第六:把生成的hellodemo.apk安装到手机,可以看到主界面上已经显示的是hello,而不再是你好。说明反编译重新打包成功!
⑵ 如何对android的apk签名进行验证
在Android开发中,确保应用的安全性和完整性至关重要。其中一个重要步骤是对APK文件进行签名。签名不仅可以验证应用的真实身份,还能确保应用在安装过程中没有被篡改。下面是一个详细的签名流程,适用于希望深入了解签名过程的开发者。
首先,我们需要进入命令行模式。可以通过菜单键调用命令提示符(cmd)。然后,我们需要指定JDK安装目录下的Bin子目录。如果JDK安装在E盘,我们可以直接进入E盘,再进入JDK的安装目录。接下来,通过执行keytool.exe工具,创建一个keystore文件。执行命令如下:
keytool -genkeypair -alias mydemo -keyalg RSA -validity 100 -keystore mydemo.keystore
这条命令包括几个参数:-genkeypair指定生成密钥对,-alias用于指定别名,-keyalg用于指定密钥算法,-validity设置证书的有效期,-keystore指定了证书存储的路径。
执行命令后,系统会要求输入证书的详细信息,包括密码、姓名、组织等。完成后,keystore文件即创建完成,可以保存在指定目录。
接下来,我们需要对未签名的APK文件进行签名。使用JDK安装目录下的jarsigner.exe工具,执行如下命令:
jarsigner -verbose -keystore mydemo.keystore -signedjar Notes.apk Notes.apk mydemo.keystore
这条命令中,-verbose参数用于生成详细的输出,-keystore参数指定了存储证书的路径,-signedjar参数用于指定签名后的APK文件、未签名的APK文件和证书别名。
完成签名后,我们还需要对APK进行优化。在SDK目录下的tool目录下,找到zipalign.exe工具。执行如下命令:
zipalign -f -v 4 Notes.apk Notes.apk
这个命令中,-f参数表示强制覆盖已有文件,-v参数表示生成详细的输出,4表示基于4字节对齐。执行后,会生成一个新的优化过的APK文件,这个文件可以对外发布。
整个过程完成后,我们就可以得到一个签名并优化过的APK文件,确保其安全性和完整性。
⑶ 怎样查看android的apk文件的签名
以下介绍查看自己的应用签名及三方APK或系统APK签名信息,包含其中的MD5、SHA1、SHA256值和签名算法等信息。
1、查看自己的应用签名
可以通过两种方式查看
(1) debug的apk通过Eclipse查看,如下图:
可以查看签名的MD5、SHA1、SHA256值及签名算法
⑷ Android 如何对apk文件进行反编译以及重新
第一:使用apktool直接反编译apk
第六:把生成的hellodemo.apk安装到手机,可以看到主界面上已经显示的是hello,而不再是你好。说明反编译重新打包成功!
⑸ Android 如何对apk文件进行反编译以及重新
在Android开发中,反编译apk文件是一项重要的技术,可以用于研究代码、修改功能或破解应用。首先,我们需要使用apktool进行反编译。此工具可以将apk文件转换为资源和smali代码,便于我们进行修改。反编译后的apk文件通常会被解压到一个文件夹,例如hellodemo。
进入hellodemo\smali\com\example\hello文件夹,这里包含了修改应用逻辑所需的核心smali代码。打开MainActivity.smali文件,找到const-string v1, "\u4f60\u597d"这行代码,将其修改为const-string v1, "hello"。这样做的目的是将显示的字符串从“你好”改为“hello”。这一步是通过直接编辑smali代码实现的,smali是Dalvik虚拟机的汇编语言,用于编写Android应用。
完成修改后,我们需要重新打包apk文件。在命令行中输入apktool b hellodemo hellodemo1.apk,这将把修改后的代码重新打包成一个名为hellodemo1.apk的新apk文件。接下来,我们需要对这个新的apk文件进行签名,以确保它能够被安装到设备上。首先,将新生成的apk文件复制到autosign目录下,然后在命令行中输入java -jar signapk.jar testkey.x509.pem testkey.pk8 hellodemo1.apk hellodemo.apk。这里的signapk.jar是用于签名apk文件的工具,testkey.x509.pem和testkey.pk8是用于签名的密钥文件。
最后一步是安装这个签名后的apk文件。将生成的hellodemo.apk安装到手机上,打开应用后,可以看到主界面上已经显示的是“hello”,而不再是“你好”。这说明我们成功地完成了反编译、修改和重新打包的过程。
整个过程涉及到了apk文件的反编译、smali代码的修改、重新打包以及签名等步骤。通过这些步骤,我们不仅能够修改应用的内部逻辑,还可以学习到Android应用开发中的许多重要技术。
⑹ 瀹夊崜 apk 绛惧悕 odex 鐢ㄤ笉鐢 绛惧悕
涓嶉渶瑕佺惧悕镄
鐢熸垚apk链镍掓俨镄勬柟娉曟槸锛
鍙瑕佷綘杩愯岃繃android椤圭洰锛屽埌宸ヤ綔鐩褰旷殑bin鏂囦欢澶逛笅灏辫兘镓惧埌涓庨”鐩钖屽悕镄刟pk鏂囦欢锛岃繖绉峚pk榛樿ゆ槸宸茬粡浣跨敤debug鐢ㄦ埛绛惧悕镄勚
濡傛灉𨱍宠佽嚜宸辩粰apk绛惧悕锛
绛惧悕镄勬剰涔
銆銆涓轰简淇濊瘉姣忎釜搴旂敤绋嫔簭寮鍙戝晢钖堟硶ID锛岄槻姝㈤儴鍒嗗紑鏀惧晢鍙鑳介氲繃浣跨敤鐩稿悓镄凯ackage Name𨱒ユ贩娣嗘浛鎹㈠凡缁忓畨瑁呯殑绋嫔簭锛屾垜浠闇瑕佸规垜浠鍙戝竷镄𪞝PK鏂囦欢杩涜屽敮涓绛惧悕锛屼缭璇佹垜浠姣忔″彂甯幂殑鐗堟湰镄勪竴镊存(濡傝嚜锷ㄦ洿鏂颁笉浼氩洜涓虹増链涓崭竴镊磋屾棤娉曞畨瑁)銆
2.绛惧悕镄勬ラ
銆銆a.鍒涘缓key
銆銆b.浣跨敤姝ラa涓浜х敓镄刱ey瀵笕pk绛惧悕
3.鍏蜂綋镎崭綔
銆銆鏂规硶涓锛 锻戒护琛屼笅瀵笕pk绛惧悕锛埚师鐞嗭级
銆銆鍒涘缓key锛岄渶瑕佺敤鍒発eytool.exe (浣崭簬jdk1.6.0_24\jre\bin鐩褰曚笅)锛屼娇鐢ㄤ骇鐢熺殑key瀵笕pk绛惧悕鐢ㄥ埌镄勬槸jarsigner.exe (浣崭簬jdk1.6.0_24\bin鐩褰曚笅)锛屾妸涓娄袱涓杞浠舵墍鍦ㄧ殑鐩褰曟坊锷犲埌鐜澧冨彉閲弍ath钖庯纴镓揿紑cmd杈揿叆
D:\>keytool -genkey -alias demo.keystore -keyalg RSA -validity 40000 -keystore demo.keystore/*璇存槑锛-genkey 浜х敓瀵嗛挜 -alias demo.keystore 鍒钖 demo.keystore -keyalg RSA 浣跨敤RSA绠楁硶瀵圭惧悕锷犲瘑 -validity 40000 链夋晥链熼檺4000澶 -keystore demo.keystore */D:\>jarsigner -verbose -keystore demo.keystore -signedjar demo_signed.apk demo.apk demo.keystore/*璇存槑锛-verbose 杈揿嚭绛惧悕镄勮︾粏淇℃伅 -keystore demo.keystore 瀵嗛挜搴扑綅缃 -signedjar demor_signed.apk demo.apk demo.keystore 姝e纺绛惧悕锛屼笁涓鍙傛暟涓渚濇′负绛惧悕钖庝骇鐢熺殑鏂囦欢demo_signed锛岃佺惧悕镄勬枃浠秃emo.apk鍜屽瘑阍ュ簱demo.keystore.*/
銆銆娉ㄦ剰浜嬮”锛歛ndroid宸ョ▼镄刡in鐩褰曚笅镄刣emo.apk榛樿ゆ槸宸茬粡浣跨敤debug鐢ㄦ埛绛惧悕镄勶纴镓浠ヤ笉鑳戒娇鐢ㄤ笂杩版ラゅ规ゆ枃浠跺啀娆$惧悕銆傛g‘姝ラゅ簲璇ユ槸:鍦ㄥ伐绋嬬偣鍑诲彸阌->Anroid Tools-Export Unsigned Application Package瀵煎嚭镄刟pk閲囩敤涓婅堪姝ラょ惧悕銆
銆銆鏂规硶浜岋细浣跨敤Eclipse瀵煎嚭甯︾惧悕镄刟pk
銆銆Eclipse鐩存帴鑳藉煎嚭甯︾惧悕镄勬渶缁坅pk锛岄潪甯告柟渚匡纴鎺ㄨ崘浣跨敤锛屾ラゅ备笅锛
銆銆绗涓姝ワ细瀵煎嚭銆
銆銆绗浜屾ワ细鍒涘缓瀵嗛挜搴搆eystore,杈揿叆瀵嗛挜搴揿煎嚭浣岖疆鍜屽瘑镰侊纴璁颁綇瀵嗙爜锛屼笅娆Use existing keystore浼氱敤鍒般
銆銆绗涓夋ワ细濉鍐椤瘑阍ュ簱淇℃伅锛屽~鍐欎竴浜沘pk鏂囦欢镄勫瘑镰侊纴浣跨敤链熼檺鍜岀粍缁囧崟浣岖殑淇℃伅銆
銆銆绗锲涙ワ细鐢熸垚甯︾惧悕镄刟pk鏂囦欢锛屽埌姝ゅ氨缁撴潫浜嗐
銆銆绗浜旀ワ细濡傛灉涓嬫″彂甯幂増链镄勬椂鍊欙纴浣跨敤鍓嶉溃鐢熸垚镄刱eystore鍐岖惧悕銆
銆銆绗鍏姝ワ细Next,Next,缁撴潫锛
銆銆鏂规硶涓夛细浣跨敤IntelliJ IDEA瀵煎嚭甯︾惧悕镄刟pk
銆銆鏂规硶姝ラゅ熀链鍜孍clipse鐩稿悓锛屽ぇ姒傛搷浣滆矾寰勬槸锛氲彍鍗昑ools->Andrdoid->Export signed apk銆
4.绛惧悕涔嫔悗锛岀敤zipalign(铡嬬缉瀵归绨)浼桦寲浣犵殑APK鏂囦欢銆
銆銆链绛惧悕镄刟pk涓嶈兘浣跨敤锛屼篃涓嶈兘浼桦寲銆傜惧悕涔嫔悗镄刟pk璋锋瓕鎺ㄨ崘浣跨敤zipalign.exe(浣崭簬android-sdk-windows\tools鐩褰曚笅)宸ュ叿瀵瑰叾浼桦寲锛
D:\>zipalign -v 4 demo_signed.apk final.apk
銆銆濡备笂锛寊ipalign鑳藉熶娇apk鏂囦欢涓链铡嬬缉镄勬暟鎹鍦4涓瀛楄妭杈圭晫涓婂归绨锛4涓瀛楄妭鏄涓涓镐ц兘寰埚ソ镄勫硷级锛岃繖镙穉ndroid绯荤粺灏卞彲浠ヤ娇鐢╩map()(璇疯嚜琛屾煡阒呰繖涓鍑芥暟镄勭敤阃)鍑芥暟璇诲彇鏂囦欢锛屽彲浠ュ湪璇诲彇璧勬簮涓婅幏寰楄缉楂樼殑镐ц兘锛
銆銆PS:1.鍦4涓瀛楄妭杈圭晫涓婂归绨镄勬剰镐濆氨鏄锛屼竴鑸𨱒ヨ达纴鏄鎸囩紪璇戝櫒钖4涓瀛楄妭浣滀负涓涓鍗曚綅𨱒ヨ繘琛岃诲彇镄勭粨鏋滐纴杩欐牱镄勮瘽锛孋PU鑳藉熷瑰彉閲忚繘琛岄珮鏁堛佸揩阃熺殑璁块梾锛堣缉涔嫔墠涓嶅归绨锛夈
2.瀵归绨镄勬牴婧愶细android绯荤粺涓镄凞avlik铏氭嫙链轰娇鐢ㄨ嚜宸变笓链夌殑镙煎纺DEX锛娈EX镄勭粨鏋勬槸绱у噾镄勶纴涓轰简璁╄繍琛屾椂镄勬ц兘镟村ソ锛屽彲浠ヨ繘涓姝ョ敤"瀵归绨"杩涗竴姝ヤ紭鍖栵纴浣嗘槸澶у皬涓鑸浼氭湁镓澧炲姞銆
5.绛惧悕瀵逛綘镄𪞝pp镄勫奖鍝嶃
銆銆 浣犱笉鍙鑳藉彧锅氢竴涓狝PP锛屼綘鍙鑳芥湁涓涓瀹忎纻镄勬垬鐣ュ伐绋嬶纴𨱍宠佸湪鐢熸椿锛屾湇锷★纴娓告垙锛岀郴缁熷悇涓棰嗗烟閮芥兂鎻掕冻镄勮瘽锛屼綘涓嶅彲鑳藉彧锅氢竴涓狝PP锛岃胺姝屽缓璁浣犳妸浣犳墍链夌殑APP閮戒娇鐢ㄥ悓涓涓绛惧悕璇佷功銆
銆銆 浣跨敤浣犺嚜宸辩殑钖屼竴涓绛惧悕璇佷功锛屽氨娌℃湁浜鸿兘澶熻嗙洊浣犵殑搴旂敤绋嫔簭锛屽嵆浣垮寘钖岖浉钖岋纴镓浠ュ奖鍝嶆湁锛
銆銆1) App鍗囩骇銆 浣跨敤鐩稿悓绛惧悕镄勫崌绾ц蒋浠跺彲浠ユe父瑕嗙洊钥佺増链镄勮蒋浠讹纴钖﹀垯绯荤粺姣旇缉鍙戠幇鏂扮増链镄勭惧悕璇佷功鍜岃佺増链镄勭惧悕璇佷功涓崭竴镊达纴涓崭细鍏佽告柊鐗堟湰瀹夎呮垚锷熺殑銆
銆銆2) App妯″潡鍖栥俛ndroid绯荤粺鍏佽稿叿链夌浉钖岀殑App杩愯屽湪钖屼竴涓杩涚▼涓锛屽傛灉杩愯屽湪钖屼竴涓杩涚▼涓锛屽垯浠栦滑鐩稿綋浜庡悓涓涓狝pp锛屼絾鏄浣犲彲浠ュ崟镫瀵逛粬浠鍗囩骇镟存柊锛岃繖鏄涓绉岮pp绾у埆镄勬ā鍧楀寲镐濊矾銆
銆銆3) 鍏佽镐唬镰佸拰鏁版嵁鍏变韩銆俛ndroid涓鎻愪緵浜嗕竴涓锘轰簬绛惧悕镄凯ermission镙囩俱傞氲繃鍏佽哥殑璁剧疆锛屾垜浠鍙浠ュ疄鐜板逛笉钖孉pp涔嬮棿镄勮块梾鍜屽叡浜锛屽备笅锛
AndroidManifest.xml锛<permission android:protectionLevel="normal" />
鍏朵腑protectionLevel镙囩炬湁4绉嶅硷细normal(缂虹渷鍊),dangerous, signature,signatureOrSystem銆傜亩鍗曟潵璇达纴normal鏄浣庨庨橹镄勶纴镓链夌殑App涓嶈兘璁块梾鍜屽叡浜姝App銆俤angerous鏄楂橀庨橹镄勶纴镓链夌殑App閮借兘璁块梾鍜屽叡浜姝App銆俿ignature鏄鎸囧叿链夌浉钖岀惧悕镄𪞝pp鍙浠ヨ块梾鍜屽叡浜姝App銆俿ignatureOrSystem鏄鎸囩郴缁焛mage涓瑼pp鍜屽叿链夌浉钖岀惧悕镄𪞝pp鍙浠ヨ块梾鍜屽叡浜姝App锛岃胺姝屽缓璁涓嶈佷娇鐢ㄨ繖涓阃夐”锛屽洜涓虹惧悕灏辫冻澶熶简锛屼竴鑸杩欎釜璁稿彲浼氲鐢ㄥ湪鍦ㄤ竴涓猧mage涓闇瑕佸叡浜涓浜涚壒瀹氱殑锷熻兘镄勬儏鍐典笅銆