mirror of
https://gitlab.com/fdroid/fdroidserver.git
synced 2024-11-04 22:40:12 +01:00
have fallback for XML icons also consider res/mipmap*
several apps (e.g. [FastHub](http://apt.qumran.org/fdroid/index/apk/com.fastaccess.github) and [Monety](http://apt.qumran.org/fdroid/index/apk/open.currency)) have their ic_launcher.png files not in res/drawable*dpi/, but in res/mipmap*/ -- so the regex has been adjusted by this patch. Additionally: if the only icon for a given resolution was an XML without existing fallback-PNG, it should be considered "non existent" (ie. "empty_density").
This commit is contained in:
parent
6940f9da43
commit
54a646bd93
@ -1391,9 +1391,12 @@ def extract_apk_icons(icon_filename, apk, apkzip, repo_dir):
|
|||||||
png = os.path.basename(icon_src)[:-4] + '.png'
|
png = os.path.basename(icon_src)[:-4] + '.png'
|
||||||
for f in apkzip.namelist():
|
for f in apkzip.namelist():
|
||||||
if f.endswith(png):
|
if f.endswith(png):
|
||||||
m = re.match(r'res/drawable-(x*[hlm]dpi).*/', f)
|
m = re.match(r'res/(drawable|mipmap)-(x*[hlm]dpi).*/', f)
|
||||||
if m and screen_resolutions[m.group(1)] == density:
|
if m and screen_resolutions[m.group(2)] == density:
|
||||||
icon_src = f
|
icon_src = f
|
||||||
|
if icon_src.endswith('.xml'):
|
||||||
|
empty_densities.append(density)
|
||||||
|
continue
|
||||||
try:
|
try:
|
||||||
with open(icon_dest, 'wb') as f:
|
with open(icon_dest, 'wb') as f:
|
||||||
f.write(get_icon_bytes(apkzip, icon_src))
|
f.write(get_icon_bytes(apkzip, icon_src))
|
||||||
|
Loading…
Reference in New Issue
Block a user