一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - 關于使用python反編譯apk簽名出包的問題

關于使用python反編譯apk簽名出包的問題

2021-09-25 00:10花了臉 Python

這篇文章主要介紹了使用python反編譯apk簽名出包,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

demo實現腳本下載

安裝工具

?
1
需要python3,apktool.jar,apktool

1.用apktool進行反編譯

?
1
cmd = 'apktool d -f '+apkpath+' -o '+outpath

2.修改需要配置的參數值

說明:如果是androidmanifest.xml,注意在 parse 前 一定要設置namespace, 不然就會出現 ns0:name錯誤, 而不是預期的 android:name,設置namespace的方法 et.register_namespace('android', "http://schemas.android.com/apk/res/android")

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
curpath = (apktoolpath+'/ihdrm202103161405apk/')
 tree = et.parse(curpath + 'androidmanifest.xml'#打開xml
 root = tree.getroot() #找到manifest的根文件
 print(root.tag)    #我們輸出一下就知道root目錄就是manifest目錄
 print(root.attrib)   #輸出一下root目錄的成員
 #獲取package
 versionname = root.get('package')
 #修改
 root.set('package', 'com.youxi.jiayou')
 #獲取application目錄
 application = root.find('application')
 #遍歷所有meta-data
 for item in application.iter('meta-data'):
  name = item.attrib.get(space +'name')
  value = item.attrib.get(space +'value')

3.修改應用名字

?
1
2
3
4
5
6
7
def appnamechang():
 print('--------修改應用名字完成--------')
 tree = read_xml(in_path)
 text_nodes = get_node_by_keyvalue(find_nodes(tree, "string"), {"name": "app_name"})
 change_node_text(text_nodes, "霸道傳奇")
# write_xml(tree, "./strings的絕對路徑.xml")
 write_xml(tree,apktoolpath+"/ihdrm202103161405apk/res/values/strings.xml")

4.修改icon圖標

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
source_path = (apktoolpath+'/icon')
target_path = (apktoolpath+'/ihdrm202103161405apk/res')
def copy_search_file():
 print('--------修改icon成功--------')
 '''將一個目錄下的全部文件和目錄,完整地<拷貝并覆蓋>到另一個目錄'''
 # source_path 源目錄
 # target_path 目標目錄
 if not (os.path.isdir(source_path) and os.path.isdir(target_path)):
  return
 for a in os.walk(source_path):
#  #創建目錄
  for d in a[1]:
   dir_path = os.path.join(a[0].replace(source_path,target_path),d)
   if not os.path.isdir(dir_path):
    os.makedirs(dir_path)
  #拷貝文件
  for p in a[2]:
   dep_path = os.path.join(a[0],p)
   arr_path = os.path.join(a[0].replace(source_path,target_path),p)
   shutil.copy(dep_path,arr_path)

5.刪除簽名回編譯

?
1
cmd = 'apktool b -f '+outpath

6.創建證書

?
1
2
3
4
def createzu():
 cmd = 'keytool -genkey -alias jayoux.keystore -keyalg rsa -validity 20000 -keystore jayoux.keystore'
 print('-------- 創建證書--------')
 os.system(cmd)

到此這篇關于使用python反編譯apk簽名出包的文章就介紹到這了,更多相關python反編譯apk內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

原文鏈接:https://blog.csdn.net/zmjwf521/article/details/114885390

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 欧美精品v欧洲高清 | 日本在线色 | 国色天香视频资源网 | 果冻传媒在线播放1 | 99国产成人精品2021 | 日本不卡视频免费的 | 成人丁香婷婷 | 韩国理论三级在线观看视频 | 精品淑女少妇AV久久免费 | 国产主播99| 日本人成动漫网站在线观看 | nhdta系列媚药系列 | 国产美女屁股直流白浆视频无遮挡 | 久久综合网久久综合 | 日本免费在线播放 | 风间由美一区二区播放合集 | 日韩欧美中文字幕一区二区三区 | 欧美日韩亚洲国内综合网香蕉 | 国产精品久久久久久久久齐齐 | 男人午夜免费视频 | 免费视频一级片 | 青青草在视线频久久 | 饭冈加奈子在线播放观看 | 亚洲精品视频在线 | 免费福利资源站在线视频 | 久久精视频 | 201天天爱天天做 | 精品国产乱码久久久久久人妻 | 欧美一级片免费 | 毛片区 | 日韩在线视精品在亚洲 | 亚洲一二三区久久五月天婷婷 | 楚乔传第二部免费观看全集完整版 | 欧洲久久| 91大神亚洲影视在线 | 好吊色青青青国产综合在线观看 | 好 舒服 好 粗 好硬免费视频 | 91视频a| 蜜色影院 | 男人狂躁女人下面狂叫图片 | 久久水蜜桃亚洲AV无码精品偷窥 |