[Android app][Open Beta] Volumio Control native android application

Thx for quick reply!

So back to starting point with the album thing, was thinking that maybe there is accidental loading of full size album art and you have like 10megabyte art files, which would cause an issue if even one is tried to load in the view, thought i did find some cases where the imageview is not measured properly yet when the art starts to load, which causes the app to load the full size image in memory.(instead of something that is enought for the small imageview).

With the size of +2000 albums, i think the issue must be the fact that i try to load it all at once, i will get the friends music collection probably tomorrow or day after, then i can really figure out whatā€™s going on in there.

I will try to play with those juke.nl radio urls perhaps i find the issue that way. Length of the url should not be an issue aslong as we donā€™t hit any restriction of the volumios websocket API, but then again the webpage would not show those either.

I handle all the ā€œradioā€™sā€ same way, so either all should show up or nothing, as an fail safe mechanism if the app canā€™t figure out if something is an album, webradio, artist etc. It will be parse the item as ā€œgeneralā€ type, and show it like that(you can notice that from the fact that there is no small icon on bottom left corner of the art icon)

with juke.nl there is no cover art. you have to do a bit ā€œillegalā€ to get it as stream in Volumio. But your not violating any law. You still use their stream on your own account.

  • Use chrome
  • Register with juke.nl
  • press F12
  • Click on image
  • Click => Network => Media
  • Copy the url (latest)
  • Paste it as new radio station
1 Like

Might have found the proplem.

got time to test it out?

nope, will be on sunday. Currently at our holiday residence/estate/barton/toft/property

2 Likes

@Wheaten lol, are you Dutch royalty :smiley:

Not Sure, Prince Bernard was a rascal.
But it sounds better than a mobile home (a big sleur hut)
And a small estate is an estateā€¦

1 Like

First thoughts:

*I like the design and general layout.

*doesnā€™t immediately find all of my devicesā€¦took a good 5 minutes or so for one, and then lost it again.

*manually entering ip address ā€¦ nothing happens when I click on ā€˜connect to ipā€™, and it is possible to enter multiple lines for ā€˜enter ip addressā€™

*probably my eyes, but I find it hard to see the black text on the brown background ā€¦ a little more contrast would be good :wink:

*searching works well on my smallish (6000 track, 550GB) library.

*about a 2 sec delay for artists list to pop up ā€¦ not very long, but your eye is waiting for something to happen, which is a bit jarring (when the response of the rest of the GUI is much more immediate). Perhaps pop up a subtle graphic/word ā€¦???

All in all a very good start; well done Joni. :smiley:

More detailed tests later.

Thanks for feedback.

Hmmn, i have not been able to test this functionality at all, since i have only one device, but i try to look what could be the cause in here.(Internally the app is using Googleā€™s own network scan library, which seemed to be really fast when i enabled it to find all LAN devices)

Sometimes, i have seen behaviour like this with one device only aswell, reboot of the volumio fixed it, it just simple refused to answer for the rest api call, but this not might the case with you.

Oups, this is completely my fault. i have forgotten to attach ā€œOnClickListenerā€ for the button, so it never actually calls the method to connect to the IP address which was typed in(Only one IP address can be typed, atleast for now)

Will fix, this is because i use adaptive theme, but have forgotten to override something.(later on there will be light and dark themes for the app, which change based on the system theming)

I will add loading screen in there which is visible until the data is ready to be shown, to give indication that something is happening in backround.

I will try to address these things by tomorrow night and push an update. There will also be launcher widget added to the next release, in case someone finds it useful. Aswell as some updates to UI so that it would be consistent all over the board.

tried to install the APK (V0.71) from the zip on a budget Nokia 1.3 (available on my estate :slight_smile: ), with Andriod Go (V10), but canā€™t install it.
The play store version installs without any issue.

  • Installed with playstore version still on it => Fails
  • Installed after removal playstore version => Fails

And yes, allowed installation from weird sources :slight_smile:
image
Definitely needs to wait till tomorrow.

What do you guys think, if possible should the app widget show songs in queue if expanded enought?

When expanded there would be enought space for it, or something completely else, Iā€™m open for ideas.
I donā€™t really need the widget myself, but think that it would be great addition considering thatā€™s what every other music app offers.

And the widget is rezisable of course, so if you want it small without extras itā€™s possible to just drag it smaller or bigger.

1 Like

I like widgets if they are well thought out & offer a condensed view of info. Go for it ā€¦ :wink:

maybe add rotate in it would be nice.

I believe i found the culprit with big local libraries, with my OnePlus 8 pro it takes me about 4s to load ~22400 albums and by that time the list is complete smooth to scroll already with no hiccups, when raspberry and phone are both connected via WiFi to the router. (The speed is affected by your device and LAN connection quality!)

Iā€™m quite happy with the result, since web UI is 2-3 slower on my PC or phone and lags alot when scrolling.

I will make some testing with lower end devices before releasing this version to see what happens when the ram is limited aswell as CPU speed

Itā€™s not that ancient :unamused:

Chipset - Qualcomm SDM660 Snapdragon 660 (14 nm)
CPU - Octa-core (4x2.2 GHz Kryo 260 Gold & 4x1.8 GHz Kryo 260 Silver)
Internal - 64GB 6GB RAM - eMMC 5.1

Let me compile you an test version quickly, the current speed improvements are not there yet.

E: it should be rather fast with that phone now, definatly faster than the web GUI
Here you go, This most likely wont install before you uninstall the store version, and contains some bugs in it, perhaps you could still verify if going to album/artist is better now?

It starts to becoming a great app!!!

Solved:

  • First Load Albums took 25 seconds. Scrolling is a breeze :slight_smile:
    Closed application, opened it and selected albums, it loaded within 1 sec.
    Only after restart volumio the first load takes 25 seconds :bowing_man:
  • Queue shows now the albumart from the NAS library :bowing_man:
  • Webradio, fixed. :bowing_man: However it shows name and #ffffffff
    image

Bug:

  • When selecting an album, track loads, cover art is not loading (not sure if this is designed like this)
    image
  • Music Library => NAS. Scrolling still suffers a delay of 1-2 seconds. Same when pressing home from this location, it takes 1-2 to get back to the home screen
  • Settings screen seems not be implemented yet
    image

So far nothing else found. Great job!!!

Its a bug at this point, i did observe same, but yet had no time to try and fix. Does the Web UI load the art for the same album?
This is kind of double edged sword, since its album the art before the tracks name is propably not needed at all, because its the same image for all the tracks in the album, and there is allready the big picture at the top of the view. either way need to fix the layout then, since for now it does reserve the space for the art, which is not shown.

I think this navigation location might still use the old ā€œnavigation codeā€, i do not have NAS, so i have zero idea how the views build up when you navigate in there. i will try to fix it aswell thought.

Yeah not implemented yet, its going to be like that for the time i can build all the core features, i did take a look at the settings, but need to dive more deep in there to actually figure out how i can load that information from volumio, i dont think there is any ready made apis for that.

@ashthespy
Do you have any insight how to load the device setting with websocket/rest api?

I did mess with that, but got frustrated and gave up - let say itā€™s not the cleanest way IMO. :stuck_out_tongue:
But you essentially need to use getUiConfig and setUiConfig and cycle through each sectionā€™s plugin.

I could be completely wrong, and there is a easier more straight forward way, but the core devs would have to chime in about thatā€¦

1 Like

I see, well if itā€™s that then thatā€™s how it is. Thx!
Iā€™ll have a starting point now, itā€™s not always clear to me from where to begin with very little JavaScript/node experience.(like i can read most of it but still, if i had to implement something with it i had my fingers on mouth)

I guess itā€™s fine like that, not too big Jsonā€™s to deal with.(easier to map on different screens without one huge ā€œgodā€ object all around the place)

I still got some small things to fix before play store update, i still put the current developement .APK to this post, because i dont know if i can finish everything today sadly.

there are multiple fixes if we take a look at the current store version, i write something about the most note worthy

  • Browsing Artist and Albums now works smoothly even with huge music library, as an bonus i added ā€œGo to Random artistā€ and ā€œPlay random albumā€ on these sections.(i always have hard time deciding what to listen and find this great way of letting someone else decide for me) Thx for @Wheaten to point out these issues for me, and helping to test the fix.

  • Radio section contains fixes. again thx to @Wheaten for pointing these out.

  • Contrast issues fixed(?) Thx to @chsims1 for pointing out these.

  • Manual connection now works after typing IP address(There is currently no validation of the input data!!!). thx to @chsims1 for pointing out

  • ā€œVolumio scannerā€ now persists the devices which have proven to be volumioā€™s, and as first thing, it checks if these devices are there to make the discover process faster on successive app launches.(If you manually connect to an device, also that IP address is persisted for future)

  • Very experiemental app wigdet(you can test, but i advice not to use it for now)