Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7575d3f9 authored by Yurii Zubrytskyi's avatar Yurii Zubrytskyi Committed by Gerrit Code Review
Browse files

Merge "Revert^2 "Fix signing failure for split APKs"" into main

parents 80a07d68 10e47e37
Loading
Loading
Loading
Loading
+11 −0
Original line number Original line Diff line number Diff line
@@ -2434,12 +2434,23 @@ def GetMinSdkVersion(apk_name):
        "Failed to obtain minSdkVersion for {}: aapt2 return code {}:\n{}\n{}".format(
        "Failed to obtain minSdkVersion for {}: aapt2 return code {}:\n{}\n{}".format(
            apk_name, proc.returncode, stdoutdata, stderrdata))
            apk_name, proc.returncode, stdoutdata, stderrdata))


  is_split_apk = False
  for line in stdoutdata.split("\n"):
  for line in stdoutdata.split("\n"):
    # See b/353837347 , split APKs do not have sdk version defined,
    # so we default to 21 as split APKs are only supported since SDK
    # 21.
    if (re.search(r"split=[\"'].*[\"']", line)):
      is_split_apk = True
    # Due to ag/24161708, looking for lines such as minSdkVersion:'23',minSdkVersion:'M'
    # Due to ag/24161708, looking for lines such as minSdkVersion:'23',minSdkVersion:'M'
    # or sdkVersion:'23', sdkVersion:'M'.
    # or sdkVersion:'23', sdkVersion:'M'.
    m = re.match(r'(?:minSdkVersion|sdkVersion):\'([^\']*)\'', line)
    m = re.match(r'(?:minSdkVersion|sdkVersion):\'([^\']*)\'', line)
    if m:
    if m:
      return m.group(1)
      return m.group(1)
  if is_split_apk:
    logger.info("%s is a split APK, it does not have minimum SDK version"
                " defined. Defaulting to 21 because split APK isn't supported"
                " before that.", apk_name)
    return 21
  raise ExternalError("No minSdkVersion returned by aapt2 for apk: {}".format(apk_name))
  raise ExternalError("No minSdkVersion returned by aapt2 for apk: {}".format(apk_name))