68 lines
1.8 KiB
Python
68 lines
1.8 KiB
Python
import os
|
|
|
|
###############################################################################
|
|
# Overcomplicated script that increments the versionCode in build.gradle by 1 #
|
|
###############################################################################
|
|
|
|
script_path = os.path.dirname(os.path.realpath(__file__))
|
|
|
|
# open build.gradle as read
|
|
with open(script_path + "\\build.gradle", "r") as f:
|
|
# read lines
|
|
lines = f.readlines()
|
|
|
|
# find versionCode
|
|
for line_i in range(len(lines)):
|
|
# find char_i of "project.ext.set("versionCode", "
|
|
char_i = lines[line_i].find("project.ext.set(\"versionCode\",")
|
|
|
|
if char_i != -1:
|
|
char_i += 30
|
|
|
|
line_max_i = len(lines[line_i]) - 1
|
|
|
|
# find start of number
|
|
while True:
|
|
if char_i > line_max_i:
|
|
print("Error: number in versionCode not found")
|
|
input("Press Enter to exit...")
|
|
exit()
|
|
|
|
char_unicode = ord(lines[line_i][char_i])
|
|
if 48 <= char_unicode <= 57:
|
|
break
|
|
char_i += 1
|
|
|
|
# find end of number
|
|
num_end_i = char_i + 1
|
|
|
|
while True:
|
|
char_unicode = ord(lines[line_i][num_end_i])
|
|
if 48 > char_unicode or char_unicode > 57:
|
|
break
|
|
num_end_i += 1
|
|
|
|
# get number
|
|
num = int(lines[line_i][char_i:num_end_i])
|
|
|
|
print(f"OLD versionCode: {num}")
|
|
num += 1
|
|
print(f"NEW versionCode: {num}")
|
|
|
|
# replace number
|
|
lines[line_i] = lines[line_i][:char_i] + str(num) + lines[line_i][num_end_i:]
|
|
|
|
# write lines
|
|
with open(script_path + "\\build.gradle", "w") as f:
|
|
f.writelines(lines)
|
|
|
|
break
|
|
|
|
|
|
if char_i == -1:
|
|
print("Error: versionCode not found")
|
|
else:
|
|
print("Done!")
|
|
|
|
input("Press Enter to exit...")
|