Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Kivy properly set own icon

I have my own icon (KO.png: 512x512 (also got in sizes 48, 72, 96, 144 and 192)) in the same folder as my main.py. I want to set it as a launcher icon (1), in ActionPrevious (2) and loading icon (3).

1) The first step is to put in main.py:

def build(self):
    self.icon = 'KO.png'

At some point this worked, but can't get it to work again?


2) I also have an ActionBar with ActionPrevious. I want to set my own logo here. So I have in the appname.kv:

ActionPrevious:
    app_icon: app.icon if app.icon else ''

This works in Linux, but not in Android. In Android I still have the Kivy logo. Also if I use the 512x512 icon, it is blurry on Linux. If I use the 92x92, it looks fine.

Edit: ActionPrevious does work, the app just didn't properly build because of the incorrect path in buildozer.spec (see 3)


3) Also I want the loader icon to be my own logo, so I have the following code in buildozer.spec:

icon.filename = KO.png
presplash.filename = KO.png

There was before '%(source.dir)s/', but this doesn't work either:

icon.filename = %(source.dir)s/KO.png
presplash.filename = %(source.dir)s/KO.png

Edit: However both these paths result in buildozer not building the .apk, what is the correct path?


Question

  • How do I properly set my own icon in Kivy as launcher, loading screen and in ActionPrevious (AP is working, see Edit under 2) ), what is the correct icon.filename path?
  • How can I get a sharp icon in my ActionPrevious with a 512x512 icon? (ActionItem doc: mipmap is a BooleanProperty and defaults to True.)
  • How can a single 512x512 icon work out on all devices with Kivy, when normally they recommend multiple sizes?: Set icon for android application. Doesn't re-scaling has its limits when making it very small?
like image 308
NumesSanguis Avatar asked Nov 22 '15 17:11

NumesSanguis


1 Answers

O wow... I was stuck on this so long because buildozer doesn't support in-line comments... I had it like this in my buildozer.spec:

icon.filename = %(source.dir)s/ko.png # %(source.dir)s/data/icon.png

This is what solved it:

# %(source.dir)s/data/icon.png
icon.filename = %(source.dir)s/ko.png
like image 129
NumesSanguis Avatar answered Oct 03 '22 18:10

NumesSanguis