91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 2KB
    文件類型: .zip
    金幣: 2
    下載: 2 次
    發布日期: 2021-06-07
  • 語言: Java
  • 標簽:

資源簡介

使用方法: 1.電腦需要安裝 Python 3.x 以上版本; 2.解壓 Android 的第三方 ROM 包,把 system.new.dat 和 system.transfer.list 兩個文件放入此文件夾內; 3.雙擊 sdat2img.bat 等待幾秒即可生成新的 system.img 文件。

資源截圖

代碼片段和文件信息

#!/usr/bin/env?python
#?-*-?coding:?utf-8?-*-
#====================================================
#??????????FILE:?sdat2img.py
#???????AUTHORS:?xpirt?-?luxi78?-?howellzhu
#??????????DATE:?2015-10-11?16:33:32?CST
#====================================================

import?sys?os

try:
????TRANSFER_LIST_FILE?=?str(sys.argv[1])
????NEW_DATA_FILE?=?str(sys.argv[2])
????OUTPUT_IMAGE_FILE?=?str(sys.argv[3])
except?IndexError:
???print?(“\nsdat2img?-?usage?is:?\n\n??????sdat2img???\n\n“)
???print?(“Visit?xda?thread?for?more?information.\n“)
???try:
???????input?=?raw_input
???except?NameError:?pass
???input?(“Press?ENTER?to?exit...\n“)
???sys.exit()

BLOCK_SIZE?=?4096

def?rangeset(src):
????src_set?=?src.split(‘‘)
????num_set?=??[int(item)?for?item?in?src_set]
????if?len(num_set)?!=?num_set[0]+1:
????????print?(‘Error?on?parsing?following?data?to?rangeset:\n%s‘?%?src)
????????sys.exit(1)

????return?tuple?([?(num_set[i]?num_set[i+1])?for?i?in?range(1?len(num_set)?2)?])

def?parse_transfer_list_file(path):
????trans_list?=?open(TRANSFER_LIST_FILE?‘r‘)
????version?=?int(trans_list.readline())????#?1st?line?=?transfer?list?version
????new_blocks?=?int(trans_list.readline())?#?2nd?line?=?total?number?of?blocks

????#?system.transfer.list:
????#???-?version?1:?android-5.0.0_r1
????#???-?version?2:?android-5.1.0_r1
????#???-?version?3:?android-6.0.0_r1

????#?skip?next?2?lines.?we?don‘t?need?this?stuff?now
????if?version?>=?2:
????????trans_list.readline()???????????????#?3rd?line?=?stash?entries?needed?simultaneously
????????trans_list.readline()???????????????#?4th?line?=?number?of?blocks?that?will?be?stashed

????commands?=?[]
????for?line?in?trans_list:
????????line?=?line.split(‘?‘)??????????????#?5th?&?next?lines?should?be?only?commands
????????cmd?=?line[0]
????????if?cmd?in?[‘erase‘?‘new‘?‘zero‘]:
????????????commands.append([cmd?rangeset(line[1])])
????????else:
????????????#?skip?lines?starting?with?numbers?they‘re?not?commands?anyway.
????????????if?not?cmd[0].isdigit():
????????????????print?(‘No?valid?command:?%s.‘?%?cmd)
????????????????trans_list.close()
????????????????sys.exit(1)

????trans_list.close()
????return?version?new_blocks?commands

def?init_output_file_size(output_file_obj?commands):
????all_block_sets?=?[i?for?command?in?commands?for?i?in?command[1]]
????max_block_num?=?max(pair[1]?for?pair?in?all_block_sets)
????output_file_obj.seek(max_block_num*BLOCK_SIZE?-?1)
????output_file_obj.write(‘\0‘.encode(‘utf-8‘))
????output_file_obj.flush()

def?main(argv):
????version?new_blocks?commands?=?parse_transfer_list_file(TRANSFER_LIST_FILE)
????output_img?=?open(OUTPUT_IMAGE_FILE?‘wb‘)
????init_output_file_size(output_img?commands)
????new_data_file?=?open(NEW_DATA_FILE?‘rb‘)

????for?command?in?commands:
????????if?command[0]?==?‘new‘:
????????????for?block?in?command[1]:
????????????????begin?=?block[0]
????????????????end?=?block[1]
????????????????block_count?=?end?-?be

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????????361??2018-04-22?14:31??readme.txt
?????文件??????????58??2016-02-14?12:43??sdat2img.bat
?????文件????????3489??2015-11-29?09:01??sdat2img.py

評論

共有 條評論

相關資源