Git Product home page Git Product logo

apollo-music's People

Contributors

artem13327 avatar izzysoft avatar nriver avatar nuclearfog avatar poussinou avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

apollo-music's Issues

Repository link inside the app

There is an About section in the parameters, but no link to this repository for bug reports and suggestions.
Having one would help get more feedback on this app and incentivize users into contributing.

No Multi Selection

Describe the bug
I have several folders to hide and you have to do it one by one. Can you add a multi-selection option?

to reproduce
Steps to reproduce the behavior:

  1. Go to Floder
  2. Click on folder by folder

Smartphone (please complete the following information):

  • OS: Android 14
  • App version 1.4.8

Feature request: Add option to repeat tracks over and over

Firstly the app is great, it has everything i need. The one thing missing is having the option of repeating songs, particularly a single track over and over which i find myself doing at times. Other than that fantasic app and i grateful that i found it and have been using with great satisfaction.

Show item list first letter when scrolling Titles, Albums, Artists…

Big lists of items can get hard to navigate and locate yourself in, especially for the Titles category for which i don't really find a use for as it is.

As i previously suggested in #17, having the first letter of the currently shown items appear along the scrollbar would tremendously help you get around quickly among your items, and alleviate this issue. The Titles section would seem much more usable to me as well.

Smaller scrollbar touch zone

I find the scrollbar touch zone to be very big ! in the album view, it takes almost the entire right side of an album cover. Which for me results in frequent accidental and instant scrolls to random spots in my Albums list.
Perhaps this comes from the app being a bit old and having been designed for smaller screens ?

Maybe the scrollbar touch zone should adapt to the size of the screen. Maybe its touch zone should only be located around the actual scrollbar button. Or maybe it should simply be smaller :)

To alleviate this issue, Apollo could show the current first letter of the Albums it is currently showing, like some apps do with their list:
ffshare-compressed
This example may not be the best as it's specific to contact lists (https://github.com/stephanritscher/Simple-Contacts) , but you probably get the idea.

Show Album/Playlist name in Album/Playlist view

When browsing a playlist or an album, you gets its cover displayed if it's got one, but not its name.

You could easily provide a space for that name by replacing the "Titles/Tracks" indication at the top of the list, over the album cover, by the name of the album (potentially accompanied by the artist name). The "Titles/Tracks" indication isn't really useful anyway as you can indeed see the below utems being tracks fwr that album :)

BUG: Equalizer state is ignored upon restart

While the settings seem to be kept between sessions, after startup the player ignores the equalizer even though it shows it as being on. The equalizer has to be toggled off and back on again after every restart to get the player to use it.

Feature Request: Crossfade

I'd love if there would be a crossfade option, not that many players seem to offer that which is unfortunate.

Hide some of the categories

I personally don't use al the categories in Apollo (namely: Genres, Titles and Recent) and they add a fair bit more swipes left or right when i want to get to the actual categories that i'm interested in.

Please add an option to hide some of the categories in the settings.

[Bug] Crashes at launch on Android 14 Pixel 7 (GrapheneOS)

type: crash
osVersion: google/panther/panther:14/UP1A.231005.007/2023101300:user/release-keys
package: org.nuclearfog.apollo:28
process: org.nuclearfog.apollo:music
processUptime: 34285 + 357 ms
installer: com.machiav3lli.fdroid

java.lang.RuntimeException: Unable to create service org.nuclearfog.apollo.service.MusicPlaybackService: java.lang.SecurityException: org.nuclearfog.apollo: One of RECEIVER_EXPORTED or RECEIVER_NOT_EXPORTED should be specified when a receiver isn't being registered exclusively for system broadcasts
	at android.app.ActivityThread.handleCreateService(ActivityThread.java:4681)
	at android.app.ActivityThread.-$$Nest$mhandleCreateService(Unknown Source:0)
	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2271)
	at android.os.Handler.dispatchMessage(Handler.java:106)
	at android.os.Looper.loopOnce(Looper.java:205)
	at android.os.Looper.loop(Looper.java:294)
	at android.app.ActivityThread.main(ActivityThread.java:8199)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:552)
	at com.android.internal.os.ExecInit.main(ExecInit.java:49)
	at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
	at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:359)
Caused by: java.lang.SecurityException: org.nuclearfog.apollo: One of RECEIVER_EXPORTED or RECEIVER_NOT_EXPORTED should be specified when a receiver isn't being registered exclusively for system broadcasts
	at android.os.Parcel.createExceptionOrNull(Parcel.java:3066)
	at android.os.Parcel.createException(Parcel.java:3050)
	at android.os.Parcel.readException(Parcel.java:3026)
	at android.os.Parcel.readException(Parcel.java:2968)
	at android.app.IActivityManager$Stub$Proxy.registerReceiverWithFeature(IActivityManager.java:5699)
	at android.app.ContextImpl.registerReceiverInternal(ContextImpl.java:1873)
	at android.app.ContextImpl.registerReceiver(ContextImpl.java:1813)
	at android.app.ContextImpl.registerReceiver(ContextImpl.java:1801)
	at android.content.ContextWrapper.registerReceiver(ContextWrapper.java:755)
	at org.nuclearfog.apollo.service.MusicPlaybackService.onCreate(SourceFile:277)
	at android.app.ActivityThread.handleCreateService(ActivityThread.java:4668)
	... 11 more

Exclude folders from music search

I have a big collection of short audio recordings on my device, and they all appear on my music collection – and music, they are not !

To prevent that, i'd like Apollo to exclude user-selected folders from being displayed, or to only show music from a user-selected folder.

Apollo sometimes doesn't find my music

Apollo sometimes doesn't find all the music i have stored on my device.

This is highly possible to be the same problem that affects other music players: MediaStore being old, inefficient and unmaintained.

As suggested in Auxio's issue tracker here : OxygenCobalt/Auxio#322

Bypass MediaStore entirely and just iterate through a Document Tree Uri provided by the user.

Maybe keep an eye on their progress, or try to come up with a solution yourself that could help you both, and potentialy many other developers.

Change the default album cover

In some cases (genre tracklists, folder tratklists), the default picture that is shown isn't the music note on a grey background, but this Apollo "billboard" with the name of the app and its motto. It's a bit too eye-catching, imho.
It was quite surprizing the first time i used the app and now after several months i still can't get accustomed to it.

Could you use the same default picture (music note on a grey background) everywhere in Apollo where a cover is needed ?

[BUG] Notification doesn't show buttons right away

Describe the bug
The notification doesn't show playback buttons right away :

Instead you need to pull the notification drawer down so that the buttons are shown, which takes an extra step and can get annoying :

It renders these buttons useless, as opening the app from a single tap would give access to these buttons in just the same amount of interactions.

To Reproduce
Steps to reproduce the behavior:

  1. Pull the notifications down
  2. Butons are not shown
  3. Fully pull the drawer down
  4. Buttons are now accessible

Expected behavior
Buttons should be accesible right away without the need to pull the full drawer down.

Smartphone (please complete the following information):

  • OS: Android 11
  • App Version 1.5.8

Is this compatible with themes?

I'd like to know if this app is compatible with all the old Apollo themes. If not, that's fine. I'm good with the color scheme changer.

Crash on initial run

App crashed when opened for the 1st time. Then it works normally. Checked few more times by uninstall-reinstall it crashes on 1st run everytime.

Logs:

FATAL EXCEPTION: ModernAsyncTask #1
Process: org.nuclearfog.apollo, PID: 6413
java.lang.RuntimeException: An error occurred while executing doInBackground()
	at t0.c$c.done(SourceFile:49)
	at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:383)
	at java.util.concurrent.FutureTask.setException(FutureTask.java:252)
	at java.util.concurrent.FutureTask.run(FutureTask.java:271)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
	at java.lang.Thread.run(Thread.java:764)
Caused by: java.lang.SecurityException: Permission Denial: reading com.android.providers.media.MediaProvider uri content://media/external/audio/albums from pid=6413, uid=10097 requires android.permission.READ_EXTERNAL_STORAGE, or grantUriPermission()
	at android.os.Parcel.createException(Parcel.java:1950)
	at android.os.Parcel.readException(Parcel.java:1918)
	at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:183)
	at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:135)
	at android.content.ContentProviderProxy.query(ContentProviderNative.java:418)
	at android.content.ContentResolver.query(ContentResolver.java:803)
	at android.content.ContentResolver.query(ContentResolver.java:753)
	at android.content.ContentResolver.query(ContentResolver.java:711)
	at c2.a.e(SourceFile:41)
	at t0.a$a.a(SourceFile:5)
	at t0.c$b.call(SourceFile:1)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	... 3 more
FATAL EXCEPTION: ModernAsyncTask #4

Device details:
App version: 1.4.2
Android: 9

refresh playlist manually

When I download a new song, the song will add to playlist automatically. However, when I change file name of the downloaded song, the playlist couldn't auto refresh, and I didn't find a way to refresh the playlist manually(clear app data dosen't work).

Question on permission

My updater just reported on the recent version:

! repo/org.nuclearfog.apollo_34.apk declares sensitive permission(s):
  android.permission.ACCESS_MEDIA_LOCATION
! repo/org.nuclearfog.apollo_34.apk contains signature block blobs: 0x504b4453 (DEPENDENCY_INFO_BLOCK; GOOGLE)

Can you please clarify why a media player would need to obtain the location from media? AFAIK this doesn't mean where it's stored, but where it was recorded (like GPS position).

DEPENDENCY_INFO_BLOCK can be easily avoided btw:

android {
    dependenciesInfo {
        // Disables dependency metadata when building APKs.
        includeInApk = false
        // Disables dependency metadata when building Android App Bundles.
        includeInBundle = false
    }
}

For some background: that BLOB is supposed to be just a binary representation of your app's dependency tree. But as it's encrypted with a public key belonging to Google, only Google can read it – and nobody else can even verify what it really contains.

Thanks in advance!

Is it possible to add lyrics?

Really great app, I love it!
Thanks for continuing Apollo legacy.
But if it were possible, and not that hard could lyrics be added? It's really all I need in a music player, but I also understand if it's too hard.

[BUG] F-Droid can't build

as you tagged https://github.com/nuclearfog/Apollo-Music/releases/tag/1.5.4 to https://github.com/nuclearfog/Apollo-Music/releases/tag/1.5.4

And F-Droid checked that and was reproducible and fine: https://gitlab.com/fdroid/fdroiddata/-/jobs/7166303063#L624

but today main build server tried to build and surprise: https://monitor.f-droid.org/builds/log/org.nuclearfog.apollo/44#site-footer not repro

why? you've rebuild the APK in the tagged release from another commit, from 29822a5

now, maybe you don't want to publish "test" releases? that's fine... but do mention that and have a consistent way that you name "test" tags so F-Droid can skip them

/LE: fyi https://gitlab.com/fdroid/fdroiddata/-/commit/0cd475a1ffec173a877ccd8d534777cf8ac29197

Bluetooth commands not working.

Hello,

No Bluetooth command works on this app.
No forward, no back, no pause ?

Love the app used to use in on older versions of android.
Your version is the only one witch works with newer android versions.
Great work !
Tell me if I can help in anyway ? I am a developer so if I can help improve my favorite music app.

Differentiate dynamic and user-made playlists

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Logcat
(OPTIONAL) If applicable, add a Logcat output see: https://developer.android.com/tools/logcat

Smartphone (please complete the following information):

  • OS: [e.g. Android 8.1]
  • App Version [e.g. 1.4.5]

Additional context
Add any other context about the problem here.

Differentiate dynamic and user-made playlists

Currently, dynamic playlists are not differentiated from user-made ones, which may be confusing because they are also affected by the alphabetical ordering and get mixed up with yours.

Please introduce a way to differentiate them.
My prefered solution would be to have the dynamic ones always at the top of the list, and have them be separated from the rest wf the list by a strong line separator, or any other kind of separation.
Alternatively, they could have their text appear in italics or bold, or their font and/or background colour differ from user-made playlists.

Change the package name

This should be done so that the applications are not confused with https://f-droid.org/packages/com.andrew.apollo/. However, it will be necessary to continue releasing updates with the old package name for some time with a notification that you need to use a new application so that old users understand that you need to download an application with a new package name

[BUG] Playback restarts when randomizing

I usually build my music queue as i listen to music from it, and it happened several times i wanted to randomize the playback of my queue while lustening to it. Unfortunately, this makes playback stop and restart the playing from the first item of the queue.

Playback shouldn't stop, but instead should randomize all tracks in the queue after you current track is done playing.

REQ: EQ Presets

I requested this here, but you seem not to be taking your time reading each issue and conflated it with a bug I also posted at about the same time. You closed my request apparently without understanding it & thinking it was related to the bug just because they both involved the equalizer.

What I was requesting was to be able to save each specific set of EQ settings as a preset - e.g. settings that emphasize bass for dance music, lower mid-range for speech, more treble for jazz, etc. each could be saved by the user under different names of their choosing and then quickly changed between by selecting those chosen names from a list.

Hopefully, I've made my request more clear this time. Please let me know if I've not. Thanks!

Crowdsourced translations

I'm a native french speaker, anv while the french translation is mostly fine, there are a few places in whuch strings are either not translated, or could use a better translation.
I'm used to doing crowdsourced translation for other opnsource projects, and was looking around for a way to contribut to the l10n or i18n of this app, but couldn't find a practical way to do it, as i'm not quite used to directly translate the strings.

Would you consider using a crowdsourced translation tool like Weblate for that matter ?
It would definitely help get better translation for this app, in languages you wouldn't have thought of, and could potentialy bring in more contributors from around the globe who would report bugs, provide suggestions and contribute code.

REQ: Save equalizer presets

As the title says. I don't want to routinely have to fight with getting the exact values I want for each range - I'd rather "set it & forget it." I have settings that lower the volume even lower than Android will allow, which I use for sleep music. Then I'd like to quickly switch among a few other equalizer settings for different music moods. Thanks!

[BUG] Apollo doesn't work with the play/pause button on bluetooth headphones

Describe the bug
Apollo does nothing whenever the play/pause button on my headphones is pressed.

I've double-checked my headphones to make sure they're not broken and tested it on other music players. The headphones function properly and the other music players work with the play/pause button.

What's strange is that the headphone also has a next and previous buttons, which Apollo is able to detect them and uses those buttons as intended, it just seems like the play/pause button is the only one that Apollo doesn't work with.

To Reproduce

  1. Connect the headphones to your device via bluetooth.
  2. Once connected, open the Apollo app and play any song.
  3. Let the song play for a while, then press the play/pause button on the headphones.
  4. The song continues to play, when it should have been paused.
  5. The opposite happens as well, if a song is paused, pressing the play/pause button will not resume the song.

Expected behavior
What should happen is the song should play or pause if the play/pause button is pressed.

Smartphone (please complete the following information):

  • Device: Samsung Galaxy S20+ 5G
  • OS: Android 13
  • Apollo Version: 1.5.3

Additional context
I'm using Sony WH-CH510 headphones which I've bought a few months ago. They are in good condition and are completely functional so they are not the cause of this issue.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.