佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > 關于使用python反編譯apk簽名出包的問題

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

熱門標簽:呼叫中心市場需求 企業(yè)做大做強 Win7旗艦版 百度AI接口 客戶服務 電話運營中心 語音系統(tǒng) 硅谷的囚徒呼叫中心

demo實現(xiàn)腳本下載

安裝工具

需要python3,apktool.jar,apktool

1.用apktool進行反編譯

cmd = 'apktool d -f '+apkPath+' -o '+outPath

2.修改需要配置的參數(shù)值

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

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.修改應用名字

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圖標

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):
#  #創(chuàng)建目錄
  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.刪除簽名回編譯

cmd = 'apktool b -f '+outPath

6.創(chuàng)建證書

def createzu():
 cmd = 'keytool -genkey -alias jayoux.keystore -keyalg RSA -validity 20000 -keystore jayoux.keystore'
 print('-------- 創(chuàng)建證書--------')
 os.system(cmd)

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

您可能感興趣的文章:
  • PyInstaller將Python文件打包為exe后如何反編譯(破解源碼)以及防止反編譯
  • python 反編譯exe文件為py文件的實例代碼
  • python反編譯學習之字節(jié)碼詳解
  • Python使用dis模塊把Python反編譯為字節(jié)碼的用法詳解
  • Python3加密解密庫Crypto的RSA加解密和簽名/驗簽實現(xiàn)方法實例
  • PYTHON實現(xiàn)SIGN簽名的過程解析
  • Python下實現(xiàn)的RSA加密/解密及簽名/驗證功能示例

標簽:山西 濟南 山西 長沙 海南 安康 崇左 喀什

巨人網(wǎng)絡通訊聲明:本文標題《關于使用python反編譯apk簽名出包的問題》,本文關鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    建湖县| 齐河县| 龙泉市| 改则县| 兰州市| 北京市| 来宾市| 义乌市| 麦盖提县| 砚山县| 安徽省| 那坡县| 潍坊市| 宣化县| 扶沟县| 岫岩| 行唐县| 四平市| 通城县| 阳江市| 富顺县| 巴楚县| 磐安县| 大余县| 新蔡县| 宜丰县| 铅山县| 阿拉善右旗| 钦州市| 井冈山市| 霍林郭勒市| 赣州市| 南昌县| 秦安县| 习水县| 通许县| 方城县| 新疆| 扶余县| 鹰潭市| 蒲江县|