91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在python中使用反編譯apk簽名出包

發布時間:2021-03-18 15:10:42 來源:億速云 閱讀:253 作者:Leah 欄目:開發技術

本篇文章為大家展示了怎么在python中使用反編譯apk簽名出包,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

安裝工具

需要python3,apktool.jar,apktool

1.用apktool進行反編譯

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")

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):
#  #創建目錄
  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.創建證書

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

上述內容就是怎么在python中使用反編譯apk簽名出包,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

新兴县| 阿坝县| 绥中县| 新竹市| 江安县| 丽江市| 东兰县| 北辰区| 伊川县| 巴彦县| 盐亭县| 临安市| 来宾市| 淮北市| 神农架林区| 铜鼓县| 长葛市| 西林县| 泰和县| 南昌县| 陆良县| 萨迦县| 金昌市| 巢湖市| 宿州市| 台安县| 澎湖县| 武山县| 宣恩县| 罗田县| 岳西县| 南投市| 资中县| 敖汉旗| 晴隆县| 鄄城县| 滦平县| 三穗县| 偏关县| 大英县| 五家渠市|