Giter Site home page Giter Site logo

vhaudiquet / blade-player Goto Github PK

View Code? Open in Web Editor NEW
67.0 8.0 12.0 127.92 MB

Android music player that plays from local library, Spotify or Deezer

License: GNU General Public License v3.0

Java 100.00%
android-application player music-player spotify deezer soundcloud

blade-player's People

Contributors

bambi-bf avatar harryheights avatar olayhemy avatar vhaudiquet 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

blade-player's Issues

Playlist images loading

Load playlist images from Spotify and Deezer, and maybe generate somes for local playlists (using playlist content (albumarts))

App crashes during series of events

Series of events

  • Play a song
  • Click play on empty playlist
  • Click on album cover of playing song from below the playlist

Expected Behaviour

The app must be stable during the series of event of described on how to reproduce.

Actual Behaviour

But the app crashes during clicking on the song icon in playlist page when the song is playing.

How to reproduce

  1. Launch the app and play any song.
  2. Now navigate to playlist option from left sliding menu.
  3. Click on three dots after the playlist name and click on play.

    It will not play anything.
  4. Now click on the song cover as appeared below the playlist.


    The app crashes.
  • App Version: 0.5
  • Device: Samsung Galaxy J5
  • Operating System: Android 6.0.1

Recording Of The Bug

https://youtu.be/o6vb79kMvDA

Song links

Feature to 'link' a song to another to say they're the same, even if title/album/artist is different. (example : on spotify, Angie from the Rolling Stones is called Angie - Remastered 2015 and on deezer it's Angie (Remastered 2015)... The fact that they have a different title makes that Blade does not see that it's the same song. Song links could resolve theses problems (same goes with different album names for same songs or ...)

Add a "data saver" mode

Blade seems to play music in the highest quality (with spotify, which is all I use, anyway), and it consumes a lot of a mobile data. So it would be great to have the option to lower music quality, 'cause data ain't cheap

Save music to local libraries

When i understand it correctly you should be able to download the music to your local libraries if you push the three dots on the right side of the screen when you opened a song under "manage libraries", but i cannot choose this option on my phone.
Also the app asks me under sd card permisson, to choose the root folder of the sd card. But i dont have an sd card, only my internal storage. Also i cannot choose the root folder of my phone in android 11 for privacy reasons.

The app is crashing for deleting the newly/latest created playlist

Actual behavior

The application crashes when I try to delete the newly created playlist.

Expected behavior

The users should be able to delete the playlist successfully without the crashing.

How to reproduce

  1. Open the app and go to the "Songs" menu.
  2. Choose a song and click on ⋮ (Three dots/ Vertical ellipsis) at the side of the song.
  3. Then click on "Add to playlist".
  4. After that click on the"New Playlist" to create a new playlist.
  5. Give a name and click ok. (Your playlist will successfully be created)
  6. Then delete your newly created playlist.
  7. See error.
  • App version: v1.4.0.1
  • Device: Samsung A5
  • Operating system: Android 6.0.1

Recording Of The Bug

bladebug

Logcat

D AndroidRuntime: Shutting down VM

04-03 14:53:04.258 30746 30746 E AndroidRuntime: FATAL EXCEPTION: main

04-03 14:53:04.258 30746 30746 E AndroidRuntime: Process: v.blade, PID: 30746

04-03 14:53:04.258 30746 30746 E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.equals(java.lang.Object)' on a null object reference

04-03 14:53:04.258 30746 30746 E AndroidRuntime: 	at v.blade.library.sources.Source$1.removePlaylist(Source.java:462)

04-03 14:53:04.258 30746 30746 E AndroidRuntime: 	at v.blade.ui.MainActivity$4$1$2.onClick(MainActivity.java:316)

04-03 14:53:04.258 30746 30746 E AndroidRuntime: 	at android.support.v7.app.AlertController$ButtonHandler.handleMessage(AlertController.java:166)

04-03 14:53:04.258 30746 30746 E AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:102)

04-03 14:53:04.258 30746 30746 E AndroidRuntime: 	at android.os.Looper.loop(Looper.java:148)

04-03 14:53:04.258 30746 30746 E AndroidRuntime: 	at android.app.ActivityThread.main(ActivityThread.java:7325)

04-03 14:53:04.258 30746 30746 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)

04-03 14:53:04.258 30746 30746 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)

04-03 14:53:04.258 30746 30746 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)

Port to Android 11

App starts and works, but the message that it was developed for a lower android versions appears. Also getting various App crashes as described in previous issues. But i love this app, its the only open-source music client who supports Deezer (as far as i know) i would love it, if the projected would be continued <3

Contributor's guide.

Hi! I'm glad to see that you are still actively maintaining this project. Great job. Been looking for other ways to add value to the project again after such a long time. And, you know I'm good at creating written content. I looked up the repo again and found no contributor's guide. I think it will be a nice document to have. Just give the go ahead and I'll get to work right away.
Once again, great job.

Tidal Integration

Hey I'm not sure if you've looked into Tidal or Qobuz integration but I think there's a lot of audiophiles who may have either + spotify (prior for high-res, latter for selection) like myself who would appreciate the integration and a single central interface.

Blade player crashes when trying to play music

Expected behavior

The app being a music player app should play music files when selected to play.
 
 

Actual behavior  

The app crashes and fails to play music .
 
 

How to reproduce

1.     Download and install latest version of the app from github release
2.     Launch the app and grant storage permissions
3.     Access the menu slider options by sliding the left end of the screen and then click on songs
4.     Click on a song to play
It will be seen that the app crashes , hence, the bug.

  • Browser/App version: app version 0.6
    *Operating system: Android 6.0
     

Recording Of The Bug  

https://youtu.be/VPBw2Kd65u8

log

05-28 14:51:39.714 I/ActivityManager(942): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=v.blade/.ui.MainActivity bnds=[860,1248][1073,1527] (has extras)} from uid 1000 from pid 1771 on display 0
05-28 14:51:39.723 V/WindowManager(942): Set focused app to: AppWindowToken{f170d09 token=Token{3080e10 ActivityRecord{d1de2d3 u0 v.blade/.ui.MainActivity t77271}}} old focus=AppWindowToken{bfbba08 token=Token{a5563ab ActivityRecord{338f1fa u0 com.infinix.xlauncher/com.android.launcher3.Launcher t77147}}} moveFocusNow=true
05-28 14:51:39.724 V/WindowManager(942): findFocusedWindow: Reached focused app=AppWindowToken{f170d09 token=Token{3080e10 ActivityRecord{d1de2d3 u0 v.blade/.ui.MainActivity t77271}}}
05-28 14:51:39.735 V/WindowManager(942): findFocusedWindow: Reached focused app=AppWindowToken{f170d09 token=Token{3080e10 ActivityRecord{d1de2d3 u0 v.blade/.ui.MainActivity t77271}}}
05-28 14:51:39.742 D/AppOps  (942): noteOperation: allowing code 59 uid 10430 package v.blade
05-28 14:51:39.742 D/AppOps  (942): noteOperation: allowing code 60 uid 10430 package v.blade
05-28 14:51:39.755 I/ActivityManager(942): Start proc 10223:v.blade/u0a430 for activity v.blade/.ui.MainActivity
05-28 14:51:39.759 I/WindowStateAnimator(942): lockCanvas, mToken =AppWindowToken{f170d09 token=Token{3080e10 ActivityRecord{d1de2d3 u0 v.blade/.ui.MainActivity t77271}}}
05-28 14:51:39.887 I/PPS     (942): [notifyActivityState] v.blade, .ui.MainActivity, Resumed
05-28 14:51:39.887 I/PPS     (942): [PPSNotifyAppState] nPackNum:60, pack:v.blade, com:.ui.MainActivity, state:1, pid:10223, last_boost_tid:10223
05-28 14:51:40.009 I/ACRA    (10223): ACRA is enabled for v.blade, initializing...
05-28 14:51:40.042 D/ActivityThread(10223): BIND_APPLICATION handled : 0 / AppBindData{appInfo=ApplicationInfo{4335076 v.blade}}
05-28 14:51:40.042 V/ActivityThread(10223): Handling launch of ActivityRecord{da16677 token=android.os.BinderProxy@1fb12e4 {v.blade/v.blade.ui.MainActivity}} startsNotResumed=false
05-28 14:51:40.054 V/ActivityThread(10223): ActivityRecord{da16677 token=android.os.BinderProxy@1fb12e4 {v.blade/v.blade.ui.MainActivity}}: app=v.blade.BladeApplication@97bfe02, appName=v.blade, pkg=v.blade, comp={v.blade/v.blade.ui.MainActivity}, dir=/data/app/v.blade-1/base.apk
05-28 14:51:40.112 D/Resources(10223): resEntryNameFinal = v_blade_colorPrimaryDark
05-28 14:51:40.124 D/Resources(10223): resEntryNameFinal = v_blade_colorPrimary
05-28 14:51:40.129 D/Resources(10223): resEntryNameFinal = v_blade_colorPrimary
05-28 14:51:40.148 D/Resources(10223): resEntryNameFinal = v_blade_colorPrimary
05-28 14:51:40.151 D/Resources(10223): resEntryNameFinal = v_blade_ic_unknown
05-28 14:51:40.166 D/Resources(10223): resEntryNameFinal = v_blade_ic_play_action
05-28 14:51:40.218 D/Resources(10223): resEntryNameFinal = v_blade_ic_search
05-28 14:51:40.220 D/Resources(10223): resEntryNameFinal = v_blade_ic_artists
05-28 14:51:40.222 D/Resources(10223): resEntryNameFinal = v_blade_colorPrimary
05-28 14:51:40.292 W/ActivityManager(942): Unable to start service Intent { cmp=v.blade/.library.LibraryService } U=0: not found
05-28 14:51:40.293 I/System.out(10223): [BLADE-LOCAL] Registering songs...
05-28 14:51:40.294 V/ActivityThread(10223): Performing resume of ActivityRecord{da16677 token=android.os.BinderProxy@1fb12e4 {v.blade/v.blade.ui.MainActivity}}
05-28 14:51:40.294 D/ActivityThread ```

Error during playback (spotify)

Hello, I'm using v. 1.4 on android 9

I logged in with my free spotify account and can search for music, when I try to play anything it says "Error during playback". Could it be that a premium account is required?
Though, in browser I can play any song I like even with free account.

Blade player crashes when trying to edit song informations

Expected behavior

Users should be able to be able to edit songs info with the help of the app successfully without the app crashing.

Actual behavior

The application closes and crashed when user is saving edited info.

How to reproduce

  1. Download and install app from fdroid.

  2. Launch the app.

  3. Grant all permissions.

  4. Navigate to the list of songs and play any song, then click on the 3-horizontal dots in front of a song.

  5. Click on the "Edit Informations" option.

  6. Make an change to name, then click on "OK"

It will be observed that the app crashes and closes. Hence, the bug.

  • Browser: Blade Player version 1.4
  • Operating system: android version 6.0

Recording Of The Bug

https://youtu.be/NsGd9vTk4K0

LOG

03-27 10:13:46.417 I/BufferQueue(271): [v.blade/v.blade.ui.MainActivity](this:0x7fb0c30400,id:362,api:1,p:-1,c:-1) ~BufferQueueCore
03-27 10:13:46.544 D/ActivityManager(7069): ACT-IDLE_NOW_MSG from windowsVisible() for idle: ActivityRecord{39272dd u0 v.blade/.ui.TagEditorActivity t110799}
03-27 10:13:46.545 V/WindowManager(7069): findFocusedWindow: Found new focus @ 13 = Window{1485fd9 u0 v.blade/v.blade.ui.TagEditorActivity}
03-27 10:13:46.556 W/BLADE-DEBUG(23172): SaveInstanceState : null
03-27 10:13:46.559 V/ActivityThread(23172): Finishing stop of ActivityRecord{38c77ac token=android.os.BinderProxy@a4d8c75 {v.blade/v.blade.ui.MainActivity}}: show=false win=com.android.internal.policy.PhoneWindow@40e867e
03-27 10:13:46.559 I/BufferQueueProducer(271): [v.blade/v.blade.ui.TagEditorActivity](this:0x7fad16b000,id:365,api:1,p:23172,c:271) new GraphicBuffer needed
03-27 10:13:46.560 V/PhoneWindow(23172): DecorView setVisiblity: visibility = 4 ,Parent =ViewRoot{fefce32 v.blade/v.blade.ui.MainActivity,ident = 0}, this =com.android.internal.policy.PhoneWindow$DecorView{5d47d57 I.E...... R......D 0,0-1080,1920}
03-27 10:13:46.592 I/PPS     (7069): [notifyActivityState] v.blade, .ui.MainActivity, Stopped
03-27 10:13:46.592 I/PPS     (7069): [PPSNotifyAppState] nPackNum:60, pack:v.blade, com:.ui.MainActivity, state:4, pid:23172, last_boost_tid:23172
03-27 10:13:46.930 D/xionghui(18754): xionghui TaskKey pkg=v.blade isLocked=false
03-27 10:13:47.163 I/BufferQueueProducer(271): [v.blade/v.blade.ui.TagEditorActivity](this:0x7fad16b000,id:365,api:1,p:23172,c:271) queueBuffer: fps=21.96 dur=1001.98 max=307.15 min=8.08
03-27 10:13:48.222 E/AndroidRuntime(23172): Process: v.blade, PID: 23172
03-27 10:13:48.222 E/AndroidRuntime(23172): 	at v.blade.ui.TagEditorActivity.save(TagEditorActivity.java:172)
03-27 10:13:48.222 E/AndroidRuntime(23172): Caused by: java.lang.ClassNotFoundException: Didn't find class "sun.nio.ch.DirectBuffer" on path: DexPathList[[zip file "/data/app/v.blade-1/base.apk"],nativeLibraryDirectories=[/data/app/v.blade-1/lib/arm64, /data/app/v.blade-1/base.apk!/lib/arm64-v8a, /vendor/lib64, /system/lib64]]

Implement FastScroll on MainActivity listView

I want to implement fastScroll (with sort by name).
I tried to add fastscroll attributes and it worked well, but when the list was little the elements became not clickable resulting in an UI bug...
I also need to implement fastscroll categories, after i solved this...

The app crashes during the playlist creation process using Spotify

Actual behavior

The app crashes when I use Spotify to create a new playlist.

Expected behavior

The users should be able to create a new playlist by selecting Spotify without the app crashing.

How to reproduce

  1. Open the app and choose a song.
  2. Click on ⋮ (Three dots/ Vertical ellipsis) at the right side of the song.
  3. Then click "Add to playlist".
  4. After that click on "New Playlist"
  5. Then tap on the "Local" to locate your playlist's path and select Spotify.
  6. Give a name and click ok.
  7. See error.
  • App version: v1.4.0.1
  • Device: Samsung A5
  • Operating system: Android 6.0.1

Recording Of The Bug

spotify

Logcat

04-04 23:03:51.211 20197 20263 E AndroidRuntime: FATAL EXCEPTION: Thread-3387

04-04 23:03:51.211 20197 20263 E AndroidRuntime: Process: v.blade, PID: 20197

04-04 23:03:51.211 20197 20263 E AndroidRuntime: java.lang.NullPointerException: Attempt to read from field 'java.lang.String kaaes.spotify.webapi.android.models.UserPublic.id' on a null object reference

04-04 23:03:51.211 20197 20263 E AndroidRuntime: 	at v.blade.library.sources.Spotify$6.run(Spotify.java:874)

Main ListView resizing

On the main activity, there is a little layout that shows the current track and a play/pause button.
The problem is that it appears above the ListView, and hides the last element.
The solution is to resize the ListView programatically when it appears ; the problem is that i'm currently doing that using absolute sizes (setting the list view to 1500dp directly) and it doesnt work on a lot of phones (that have a different resolution).
-> find a way to do that with relative sizes, so that it can work on all phones and using automatic rotation

Adding a song to current playlist crashes the app

Expected behavior

I should be able add songs to current playlist on clicking the option.

Actual behavior

But the app crashes on adding a song to current playlist.

How to reproduce

  1. Install the app and launch it.
  2. Go to songs option. Click on three vertical dots next to any song and click "Add to current playlist" option.

    The app crashes.
  • App Version: 0.6
  • Device: Samsung Galaxy J5
  • Operating System: Android 6.0.1

Recording Of The Bug

https://youtu.be/EKMe2JOHCMU

Spotify player : playback error

After using the spotify player for a while, it throws a "kSpErrorFailed" and stop working.
I tried to change the code to handle theses errors, in a way that after a kSpErrorFailed, the spotify token is refreshed and the spotify player is re-initialized ; but it doesn't work.
The only way to make it work again is to exit and restart Blade.
Maybe the issue is related to my device which has a bad connection, or to the spotify sdk...
Or maybe it is related to the spotify token as i thought in the first place and i'm doing something wrong...
Anyway i'll need to work on that, and i would like to know if that happens on other devices.

Licenses of libraries

Hi,

Do you know the exact licenses of com.spotify.android:auth:1.0.0-alpha, com.github.kaaes:spotify-web-api-android:0.4.1, com.spotify.sdk:spotify-player-24-noconnect-2.20 and com.deezer.sdk:deezer-sdk-0.11.2?

The goal would be to include this app in F-Droid, if you're ok.

Cannot establish connection to deezer

Device: Fairphone3
OS: /e/OS Q (Android 10)

When trying to connect to deezer the app crashes after I put in my credentials.

05-06 21:28:15.411  8128  8128 I chromium: [INFO:CONSOLE(2)] "Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience. For more help, check https://xhr.spec.whatwg.org/.", source: https://e-cdns-files.dzcdn.net/cache/js/legacy.a392d93c330815648fa5.js (2)
05-06 21:28:16.249  2827  2827 D NotificationRepository: updateNotification() called with: list = [4]
--------- beginning of crash
05-06 21:28:16.546  8128  9426 E AndroidRuntime: FATAL EXCEPTION: AsyncDeezerRequest_279742
05-06 21:28:16.546  8128  9426 E AndroidRuntime: Process: v.blade, PID: 8128
05-06 21:28:16.546  8128  9426 E AndroidRuntime: java.lang.NoClassDefFoundError: Failed resolution of: Lorg/apache/http/client/utils/URLEncodedUtils;
05-06 21:28:16.546  8128  9426 E AndroidRuntime: 	at com.deezer.sdk.network.b.ClassicRock.accordion(Unknown Source:28)
05-06 21:28:16.546  8128  9426 E AndroidRuntime: 	at com.deezer.sdk.network.connect.DeezerConnect.requestSync(Unknown Source:120)
05-06 21:28:16.546  8128  9426 E AndroidRuntime: 	at com.deezer.sdk.network.connect.DeezerConnect$Country.run(Unknown Source:10)
05-06 21:28:16.546  8128  9426 E AndroidRuntime: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
05-06 21:28:16.546  8128  9426 E AndroidRuntime: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
05-06 21:28:16.546  8128  9426 E AndroidRuntime: 	at java.lang.Thread.run(Thread.java:919)
05-06 21:28:16.546  8128  9426 E AndroidRuntime: Caused by: java.lang.ClassNotFoundException: org.apache.http.client.utils.URLEncodedUtils
05-06 21:28:16.546  8128  9426 E AndroidRuntime: 	... 6 more
05-06 21:28:16.582  1582  1600 W ActivityTaskManager:   Force finishing activity v.blade/.ui.settings.SourcesActivity
05-06 21:28:16.583  1582  9428 I DropBoxManagerService: add tag=data_app_crash isTagEnabled=true flags=0x2
05-06 21:28:16.614  8128  9426 I Process : Sending signal. PID: 8128 SIG: 9
05-06 21:28:16.785  1582  1684 W InputDispatcher: channel '36922b6 v.blade/v.blade.ui.settings.SourcesActivity (server)' ~ Consumer closed input channel or an error occurred.  events=0x9
05-06 21:28:16.785  1582  1684 E InputDispatcher: channel '36922b6 v.blade/v.blade.ui.settings.SourcesActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
05-06 21:28:16.851  1582  2715 I ActivityManager: Process com.android.webview:sandboxed_process0:org.chromium.content.app.SandboxedProcessService0:0 (pid 9121) has died: fore BTOP
05-06 21:28:16.852  1582  1612 W libprocessgroup: Failed to open process cgroup uid 99023 pid 9121: Permission denied
05-06 21:28:16.852  1582  1612 E libprocessgroup: Error encountered killing process cgroup uid 99023 pid 9121: Permission denied
05-06 21:28:16.852  1893  1893 I Zygote  : Process 9121 exited cleanly (0)
05-06 21:28:16.855  1582  2715 W ActivityManager: Scheduling restart of crashed service v.blade/org.chromium.content.app.SandboxedProcessService0:0 in 1000ms

The settings page also states now that Spotify is disconnected.
When I try to connect again, it instantly crashes

05-06 21:35:30.956  9828  9866 W ocessService0:: Accessing hidden field Ljava/util/Collections$SynchronizedCollection;->mutex:Ljava/lang/Object; (greylist-max-o, reflection, denied)
05-06 21:35:30.956  9828  9866 W ocessService0:: Accessing hidden method Ljava/util/Collections$SynchronizedSet;-><init>(Ljava/util/Set;Ljava/lang/Object;)V (greylist-max-o, reflection, denied)
05-06 21:35:30.957  9828  9866 W ocessService0:: Accessing hidden method Ljava/util/Collections$SynchronizedCollection;-><init>(Ljava/util/Collection;Ljava/lang/Object;)V (greylist-max-o, reflection, denied)
05-06 21:35:30.958  9828  9866 I cr_CachingUmaRecorder: Flushed 1 samples from 1 histograms.
05-06 21:35:30.970  9748  9820 D Retrofit: <--- HTTP 200 https://api.spotify.com/v1/me (422ms)
05-06 21:35:30.987  9828  9866 W SystemServiceRegistry: No service published for: uimode
05-06 21:35:31.022  9748  9820 W linker  : Warning: "/data/app/v.blade-OUkJck_UrqVbQt_d78dpQQ==/lib/arm64/libspotify_embedded_shared.so" unused DT entry: DT_RPATH (type 0xf arg 0x6b3) (ignoring)
05-06 21:35:31.272   604  9885 E ResolverController: No valid NAT64 prefix (111, <unspecified>/0)
05-06 21:35:31.299  9748  9886 E AndroidRuntime: FATAL EXCEPTION: AsyncDeezerRequest_279742
05-06 21:35:31.299  9748  9886 E AndroidRuntime: Process: v.blade, PID: 9748
05-06 21:35:31.299  9748  9886 E AndroidRuntime: java.lang.NoClassDefFoundError: Failed resolution of: Lorg/apache/http/client/utils/URLEncodedUtils;
05-06 21:35:31.299  9748  9886 E AndroidRuntime: 	at com.deezer.sdk.network.b.ClassicRock.accordion(Unknown Source:28)
05-06 21:35:31.299  9748  9886 E AndroidRuntime: 	at com.deezer.sdk.network.connect.DeezerConnect.requestSync(Unknown Source:120)
05-06 21:35:31.299  9748  9886 E AndroidRuntime: 	at com.deezer.sdk.network.connect.DeezerConnect$Country.run(Unknown Source:10)
05-06 21:35:31.299  9748  9886 E AndroidRuntime: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
05-06 21:35:31.299  9748  9886 E AndroidRuntime: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
05-06 21:35:31.299  9748  9886 E AndroidRuntime: 	at java.lang.Thread.run(Thread.java:919)
05-06 21:35:31.299  9748  9886 E AndroidRuntime: Caused by: java.lang.ClassNotFoundException: org.apache.http.client.utils.URLEncodedUtils
05-06 21:35:31.299  9748  9886 E AndroidRuntime: 	... 6 more
05-06 21:35:31.323  1582  2171 W ActivityTaskManager:   Force finishing activity v.blade/.ui.settings.SourcesActivity
05-06 21:35:31.329  1582  9888 I DropBoxManagerService: add tag=data_app_crash isTagEnabled=true flags=0x2
05-06 21:35:31.397  1582  1602 I ActivityManager: Showing crash dialog for package v.blade u0
05-06 21:35:31.398  1582  1602 E system_server: Invalid ID 0x00000000.

Completely closing the app and reopening at least brings back the Spotify connection.
But Deezer just doesn't work for me.

This also happens if I'm not connected to Spotify at all.

Deezer/Spotify player are not stopped when bluetooth speaker/headphones disconnected

The standard android MediaPlayer stops automatically when bluetooth audio output device is disconnected, but Deezer and Spotify player don't.
Maybe i need to set an option / handle an event to make them do so, but i did not find it.
Maybe the issue comes from the Spotify SDK / Deezer SDK.
Anyway, i'll need to work on that some day...

Improve / Replace song linking system

Actual behavior

The app crashes after I linked a song to another from the Artist folder and clicked on the previous/next track changer button of that song.

Expected behavior

I expected that after linking a song to another, the song will stop playing. But this not weirder than crashing the app by clicking on the next/previous button.

How to reproduce

  1. Open the app and go to "Artists" folder.
  2. Choose an artist and play a song from it.
  3. Click on ⋮ (Three dots/ Vertical ellipsis) at the right side of the song.
  4. Then click "Link to"
  5. Select a song from your local library. (The song will be successfully added to your chosen song & The song will still be playing in your player).
  6. Open the current playing song page by tapping on its name. (At the downside of your display).
  7. At last Click on the next button.
  8. See error.
  • Browser/App version: v1.4.0.1
  • Device: Samsung A5
  • Operating system: Android 6.0.1

Recording Of The Bug

bladebug

Logcat

04-05 00:16:02.421 26140 26140 E AndroidRuntime: FATAL EXCEPTION: main

04-05 00:16:02.421 26140 26140 E AndroidRuntime: Process: v.blade, PID: 26140

04-05 00:16:02.421 26140 26140 E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'v.blade.library.sources.Source v.blade.library.SongSources$SongSource.getSource()' on a null object reference

04-05 00:16:02.421 26140 26140 E AndroidRuntime: 	at v.blade.player.PlayerMediaPlayer.playSong(PlayerMediaPlayer.java:252)

04-05 00:16:02.421 26140 26140 E AndroidRuntime: 	at v.blade.player.PlayerService$2.onSkipToNext(PlayerService.java:157)

04-05 00:16:02.421 26140 26140 E AndroidRuntime: 	at android.support.v4.media.session.MediaSessionCompat$Callback$StubApi21.onSkipToNext(MediaSessionCompat.java:1284)

04-05 00:16:02.421 26140 26140 E AndroidRuntime: 	at android.support.v4.media.session.MediaSessionCompatApi21$CallbackProxy.onSkipToNext(MediaSessionCompatApi21.java:219)

04-05 00:16:02.421 26140 26140 E AndroidRuntime: 	at android.media.session.MediaSession$CallbackMessageHandler.handleMessage(MediaSession.java:1228)

04-05 00:16:02.421 26140 26140 E AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:102)

04-05 00:16:02.421 26140 26140 E AndroidRuntime: 	at android.os.Looper.loop(Looper.java:148)

04-05 00:16:02.421 26140 26140 E AndroidRuntime: 	at android.app.ActivityThread.main(ActivityThread.java:7325)

04-05 00:16:02.421 26140 26140 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)

04-05 00:16:02.421 26140 26140 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)

Documentation contribution to blade music player.

Hello, I'm Harry. Blade-Player is really cool having utilized it for few days now. I'll like to make documentation contributions to your project. I noticed your readme document contains mostly pictures and doesn't give prospective users in-depth knowledge of the app, I'll work on the readme document and include more details about the app. Furthermore, I could create a privacy policy document that will enlighten users about how their information while using the music player is handled and utilized.
My documentation will include;

  • Improved readme
  • Privacy Policy
  • About Us (Brief information about the project and developer)
  • Contact Us (How you can be contacted).

Hope to hear from you soon. Thanks.

Improve lyrics search engine

Expected behavior

  • I expected the lyrics of any music I played to be displayed so I could sing along with the flow of the music.

Actual behavior

  • Once I click on the 'lyrics' option, no lyric is displayed. Except for a feedback that said “Song lyric not found. Sorry...” or “Error occurred while parsing lyrics.”

How to reproduce

  • Download and install the latest version of the Blade Player.
  • Launch the application
  • Start playing a music
  • Click on the music (at the bottom of your screen) which has started playing
  • Click on the three vertically arranged dots around the bottom of the screen
  • Then click on the 'Lyrics' option
  • See error

  • App version: 1.4.0.1
  • Device: Gionee f100s
  • Operating system: android version 6.0

Recording of the bug

Themes

Implement multiple themes that the user could choose in the app.

WebDav support

Please consider to add WebDav protocol support to the app. It'll allow users to play music from their Nextcloud/Owncloud/etc storages. Also Nextcloud's music webapp supports Ampache protocol.

Soundcloud support and API key

I wanted to work on SoundCloud support before 1.0 alpha release (which i hope will be coming soon); but it looks like they're trying to change their API, and they do not deliver API keys anymore...
Looks like i'll have to wait till they do something about that...

Application crashes on opening

Project Information
-Repository
https://github.com/Valou3433/blade-player

-Project Name: Blade player

Expected Behaviour
User should be able to start and run the app without crashing

Actual behaviour
Application crash on open ,thereby not allowing user to perform any operation

How to reproduce

  1. Download and install latest version of the app from github release
  2. Open the application
  3. The application crash immediately

-Browser:blade player v0.6
-Operating System:Android 7.0

Recording of the bug
https://youtu.be/1vw2PQYjMO8

Qobuz Integration

Hey I'm not sure if you've looked into Qobuz integration but I think there's a lot of audiophiles who may have Qobuz + spotify (prior for high-res, latter for selection) who would appreciate the integration and a single central interface.

I can try to look into this and put together som PR's soon.

Option not working while music is on

Expected behavior

The option ought to work perfectly well while playing music.

Actual Behavior

The option button is not working, while playing music on the application.

How to reproduce

  • Download and install the application here
  • Lunch the application
  • Select the Artist you want
  • Select the album
  • Click on the song
  • Click below on the current song
  • Click on the option button

And notice it is not working.


Application version: v 0.5
Operating system: Android v7.0

Recording Of The Bug

https://youtu.be/Ug4GhD4yftA

The app crashed when I tried to play an ended song again after deleting its local library path.

Expected behavior

I expected that the player would not crash after deleting a running song's library path and pressing the play button at the end of that song.

Actual behavior

When I tried to play again an ended song after deleting that song's library path from artist/album folder, then, unfortunately, it crashed.

How to reproduce

  1. Open the app.
  2. Go to "Artists/Albums" folder.
  3. Choose and play a song from "Artists/Albums" folder.
  4. Then click on ⋮ (Three dots/ Vertical ellipsis) at the right side of that song and click on "Manage libraries"
  5. Click on the right side of the "Local" and then press "YES" to delete it, then press ok.
  6. Tap on the song name at the bottom of your display (The playing song will appear on your display).
  7. Move forward your song to finish it.
  8. When your running song will end, then try to play that again and notice the bug.
  • Browser/App version: v1.4.0.1
  • Operating system: Android 6.0.1

Recording Of The Bug

blade

LogCat

04-22 18:44:11.831 12515 12515 E AndroidRuntime: FATAL EXCEPTION: main

04-22 18:44:11.831 12515 12515 E AndroidRuntime: Process: v.blade, PID: 12515

04-22 18:44:11.831 12515 12515 E AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'v.blade.library.sources.Source v.blade.library.SongSources$SongSource.getSource()' on a null object reference

04-22 18:44:11.831 12515 12515 E AndroidRuntime: 	at v.blade.player.PlayerMediaPlayer.playSong(PlayerMediaPlayer.java:252)

04-22 18:44:11.831 12515 12515 E AndroidRuntime: 	at v.blade.player.PlayerService$2.onSkipToPrevious(PlayerService.java:167)

04-22 18:44:11.831 12515 12515 E AndroidRuntime: 	at android.support.v4.media.session.MediaSessionCompat$Callback$StubApi21.onSkipToPrevious(MediaSessionCompat.java:1289)

04-22 18:44:11.831 12515 12515 E AndroidRuntime: 	at android.support.v4.media.session.MediaSessionCompatApi21$CallbackProxy.onSkipToPrevious(MediaSessionCompatApi21.java:224)

04-22 18:44:11.831 12515 12515 E AndroidRuntime: 	at android.media.session.MediaSession$CallbackMessageHandler.handleMessage(MediaSession.java:1231)

04-22 18:44:11.831 12515 12515 E AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:102)

04-22 18:44:11.831 12515 12515 E AndroidRuntime: 	at android.os.Looper.loop(Looper.java:148)

04-22 18:44:11.831 12515 12515 E AndroidRuntime: 	at android.app.ActivityThread.main(ActivityThread.java:7325)

04-22 18:44:11.831 12515 12515 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)

04-22 18:44:11.831 12515 12515 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)

04-22 18:44:11.831 12515 12515 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)

Add to playlist function does nothing .

Expected behavior

Blade-player offers the option to add tracks to playlist so it is expected that when the option is selected, the track is added to a playlist either automatically created since the app currently has no option to manually create playlist or allow users assign tracks to a playlist manually.

Actual behavior

\When the add to playlist option is selected, there is no toast message signifying if the operation was successful and the song is not added to any available playlist neither is a new playlist created.

How to reproduce

  • Launch the app
  • swipe from left to right to reveal menu
  • click songs
  • click 3 dots beside a track wished to be added to a playlist.
  • click add to playlist option
  • App name/App version: Blade Player v0.4
  • Operating system: Android 7.0

Blade playlists

Another category of playlist, that would be available only on Blade, that could be formed with songs from local/spotify/deezer at the same time (songs that are only on deezer and only on spotify as an example).

Frequently Asked Question (FAQ) Proposal

Hello there, I'd like to contribute to your awesome project by writing a Frequent Asked Questions (FAQ) for users self-service. Would love to hear from you, thanks

New Logo Design For Blade Player

Hi @Valou3433 , I want to contribute to your project, I want to design a logo and icon for the app and it's free, do you want it?

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.