Jrfeng Snow Versions Save

Android music player framework, compatible with MediaSession. Support custom music player (MediaPlayer, ExoPlayer), custom Notification, custom audio effect engine, only WiFi network, sound quality/dynamic URL, headset clicks, sleep timer, playback history, player state persistence.

1.2.13

7 months ago

Fix BUG:

  • PlayerService crash on target API 34 #53

1.2.12

7 months ago

Fix BUG:

  • SINGLE_ONCE mode #47
  • Quickly invoke the setVolume method causes the player to mute #47

Update:

  • Migrate ExoPlayer to media3

Feature:

  • Add support for disable MusicPlayer volume ease effect

1.2.11

10 months ago

Fix BUG

  • start foreground on API 31
  • PlayerService#isCached

Feature

  • add support for setting player volume

1.2.8

11 months ago

Fix BUG

  • icon missing on MIUI 14 #40
  • wake lock was released during playing #44
  • setNextPlay #42

1.2.5

1 year ago

Fix BUG

  • update AppWidget failed

1.2.4

1 year ago

Fix BUG

  • update icon failed on API 33
  • ForegroundServiceStartNotAllowedException on Android 12
  • crash when ignore audio focus is enabled
  • moveMusicItem #37

Other

  • optimize IDLE alarm

1.2

1 year ago

New Features

  • add play mode: SINGLE_ONCE: play a song once, then pause the player
  • new callback method: PlayerService#onPrepareMusicItem(MusicItem, SoundQuality, AsyncResult<MusicItem>)

Fix BUG

  • LiveProgress playback progress error when playback speed changes
  • startForeground on Android 12
  • playback speed metadata update
  • ForegroundServiceStartNotAllowedException on Android 12
  • update notification icon on MIUI 13
  • AndroidAudioEffectManager crash on Android 12
  • icon loader crash by java.util.concurrent.CancellationException

Upgrade Dependencies

all module:

  • upgrade gradle version to 7.2
  • remove jcenter()
  • upgrade targetSdkVersion to 32
  • upgrade compileSdkVersion to 32

player module:

  • upgrade androidx appcompat version to 1.4.1
  • upgrade androidx media version to 1.5.0
  • upgrade objectbox version to 3.1.2
  • upgrade MMKV verions to 1.2.12

exo module:

  • upgrade minSdkVersion to 21
  • upgrade exoplayer version to 2.17.0

Note: ExoPlayer 2.17.0 require minSdkVersion 21.

ui module:

  • upgrade androidx appcompat version to 1.4.1
  • upgrade androidx lifecycle-runtime version to 2.4.1

app module:

  • upgrade androidx appcompat version to 1.4.1
  • upgrade androidx recyclerview version to 1.2.1
  • upgrade MMKV verions to 1.2.12

add new module: exo-api16:

  • support ExoPlayer on API 16, because the exo module now require minSdkVersion 21

1.1

3 years ago
  • add support for playback speed
  • add util: AudioScanner

1.0.9

3 years ago

Fix BUG:

  • PlayerService#onRetrieveMusicItemUri(MusicItem, SoundQuality, AsyncResult<Uri>)

1.0.8

3 years ago

Fix BUG:

  • PlayerService.NotificationView#setDefaultIcon(Bitmap)
  • 'seekTo' is ignored when not prepared
  • only wifi network
  • audio focus loss transient

Deprecated methods:

  • PlayerService#isCached(MusicItem, SoundQuality)
  • PlayerService#onRetrieveMusicItemUri(MusicItem, SoundQuality)
  • PlayerService#attachAudioEffect(int)
  • PlayerService#detachAudioEffect()

Add methods:

  • PlayerService#isCached(MusicItem, SoundQuality, AsyncResult<Boolean>)
  • PlayerService#onRetrieveMusicItemUri(MusicItem, SoundQuality, AsyncResult<Uri>)