Git Product home page Git Product logo

zahraheydari / musicplayer Goto Github PK

View Code? Open in Web Editor NEW
603.0 603.0 87.0 10.76 MB

Implemented using Clean Arch, MVVM, LiveData, Room, Koin, Coil, Service, Notification and ExoPlayer

License: Apache License 2.0

Kotlin 100.00%
android-application clean-architecture coil-kotlin exoplayer koin livedata livedata-viewmodel mockito mockito-kotlin musicplayer mvvm-android mvvm-architecture mvvm-pattern notifications player player-service playlist room-database unit-testing unittesting

musicplayer's People

Contributors

drjacky avatar zahraheydari 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  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  avatar  avatar  avatar  avatar

musicplayer's Issues

Did not then call Service.startForeground()

Hi, MusicPlayer need to call startForeground() when it use Foreground service.

2020-02-02 09:22:25.769 1534-1566/? E/ActivityManager: ANR in com.android.musicplayer
PID: 10683
Reason: Context.startForegroundService() did not then call Service.startForeground()
Load: 0.57 / 0.49 / 0.79
CPU usage from 29995ms to 0ms ago (2020-02-02 09:21:53.398 to 2020-02-02 09:22:23.393):
38% 1844/com.android.systemui: 32% user + 5.5% kernel / faults: 14150 minor 75 major
14% 696/surfaceflinger: 8.4% user + 6.3% kernel / faults: 581 minor 13 major
13% 666/[email protected]: 6% user + 7.5% kernel / faults: 38 minor
10% 1534/system_server: 4.9% user + 5.3% kernel / faults: 16839 minor 181 major
3.3% 3033/com.asus.launcher: 2.7% user + 0.5% kernel / faults: 11367 minor 116 major
3.1% 3082/com.android.vending: 2.4% user + 0.7% kernel / faults: 5838 minor 27 major
2.9% 251/crtc_commit:111: 0% user + 2.9% kernel
2.3% 258/kgsl_worker_thr: 0% user + 2.3% kernel
1.9% 6751/kworker/u16:15: 0% user + 1.9% kernel
1.8% 4262/com.google.android.googlequicksearchbox:search: 1.6% user + 0.2% kernel / faults: 7234 minor 2 major
1.7% 9625/kworker/u16:10: 0% user + 1.7% kernel
1.5% 9644/kworker/u16:22: 0% user + 1.5% kernel
1.5% 9631/kworker/u16:13: 0% user + 1.5% kernel
1.3% 671/[email protected]: 0.6% user + 0.7% kernel / faults: 86 minor
0.2% 1027/media.codec: 0.1% user + 0% kernel / faults: 4454 minor 19 major
0.9% 562/logd: 0.5% user + 0.4% kernel / faults: 9 minor 5 major
0.9% 2274/com.asus.services: 0.4% user + 0.4% kernel / faults: 1543 minor 74 major
0.9% 2839/adbd: 0.2% user + 0.7% kernel / faults: 1538 minor 1 major
0.7% 2018/com.android.phone: 0.3% user + 0.4% kernel / faults: 1220 minor 69 major
0.6% 7780/com.asus.nextappcore: 0.4% user + 0.2% kernel / faults: 1712 minor 1039 major
0.6% 6755/kworker/u16:16: 0% user + 0.6% kernel
0.6% 9297/com.google.android.gm: 0.3% user + 0.2% kernel / faults: 1130 minor 3 major
0.6% 252/crtc_event:111: 0% user + 0.6% kernel
0.4% 2612/com.google.android.gms: 0.3% user + 0.1% kernel / faults: 316 minor
0.4% 9622/kworker/u16:5: 0% user + 0.4% kernel
0.4% 3175/com.lilithgame.hgame.gp.tw:lilith_sdk: 0.2% user + 0.1% kernel / faults: 1060 minor
0.3% 2455/com.google.android.gms.persistent: 0.2% user + 0.1% kernel / faults: 691 minor
0.3% 146/kswapd0: 0% user + 0.3% kernel
0.3% 563/servicemanager: 0.1% user + 0.2% kernel
0.3% 695/lmkd: 0% user + 0.3% kernel
0.3% 3141/com.facebook.katana: 0.3% user + 0% kernel / faults: 87 minor
0.3% 8407/kworker/1:6: 0% user + 0.3% kernel
0.3% 9925/kworker/0:6: 0% user + 0.3% kernel
0.3% 22551/com.android.chrome:sandboxed: 0% user + 0.2% kernel / faults: 1128 minor 273 major
0.3% 9714/kworker/3:0: 0% user + 0.3% kernel
0.2% 7/rcu_preempt: 0% user + 0.2% kernel
0% 1019/media.extractor: 0% user + 0% kernel / faults: 2514 minor 22 major
0.2% 3894/jp.naver.line.android: 0.2% user + 0% kernel / faults: 18 minor
0.2% 9977/kworker/2:0: 0% user + 0.2% kernel
0.2% 19548/com.facebook.orca:videoplayer: 0.1% user + 0.1% kernel / faults: 1 minor
0.2% 21131/kworker/u17:0: 0% user + 0.2% kernel
0.2% 10/rcuop/0: 0% user + 0.2% kernel
0.2% 102/system: 0% user + 0.2% kernel
0% 1831/com.google.android.apps.inputmethod.zhuyin: 0% user + 0% kernel / faults: 1024 minor 77 major
0.2% 29/rcuop/2: 0% user + 0.2% kernel
0.2% 2723/sugov:0: 0% user + 0.2% kernel
0% 4470/com.asus.deskclock:ui: 0% user + 0% kernel / faults: 216 minor 328 major
0.1% 1//init: 0.1% user + 0% kernel / faults: 157 minor
0.1% 665/[email protected]: 0% user + 0.1% kernel / faults: 7 minor
0% 1982/com.qualcomm.qti.telephonyservice: 0% user + 0% kernel / faults: 1128 minor 84 major
0% 2034/com.qualcomm.qtil.aptxui: 0% user + 0% kernel / faults: 1281 minor 303 major
0.1% 2944/com.android.nfc: 0.1% user + 0% kernel / faults: 1039 minor 84 major
0.1% 681/[email protected]: 0% user + 0.1% kernel / faults: 43 minor
0.1% 962/jbd2/dm-2-8: 0% user + 0.1% kernel
0.1% 1223/msm_irqbalance: 0% user + 0.1% kernel
0% 1998/org.ifaa.andr

Build Issue

Did any one successfully build this project to an apk?

License?

What's the license of this repository?

Using wavy sliders?

Hi,

I'm doing a self-promotion here :)
Please ignore/close it if you are not interested.

Would you like to use the wavy-slider in your app?
I think Android 13 uses this kind of slider for its media controls.

Demo.

Although it's for Jetpack Compose, there are ways to use Composables in Views and vice versa.

play error in pixel xl 3 ( android 10.0 )

There is a bug that does not play with the following error when adding music and playing.
The file exists in that path as well.
Changing compileSdkVersion / targetSdkVersion to 28 works fine.

( In addition, the UI should be marked for play failures.)

2019-12-05 16:34:47.018 12149-12149/com.android.musicplayer E/com.android.musicplayer.utils.player.logger.PlayerEventLogger: internalError [0.07, loadError]
com.google.android.exoplayer2.upstream.FileDataSource$FileDataSourceException: java.io.FileNotFoundException: /storage/emulated/0/media/audio/ringtones/NasLifeisBichRasenMixTonollamada.m4a: open failed: EACCES (Permission denied)
at com.google.android.exoplayer2.upstream.FileDataSource.open(FileDataSource.java:73)
at com.google.android.exoplayer2.upstream.DefaultDataSource.open(DefaultDataSource.java:250)
at com.google.android.exoplayer2.upstream.TeeDataSource.open(TeeDataSource.java:53)
at com.google.android.exoplayer2.upstream.cache.CacheDataSource.openNextSource(CacheDataSource.java:479)
at com.google.android.exoplayer2.upstream.cache.CacheDataSource.open(CacheDataSource.java:308)
at com.google.android.exoplayer2.upstream.StatsDataSource.open(StatsDataSource.java:83)
at com.google.android.exoplayer2.source.ExtractorMediaPeriod$ExtractingLoadable.load(ExtractorMediaPeriod.java:885)
at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:381)
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:919)
Caused by: java.io.FileNotFoundException: /storage/emulated/0/media/audio/ringtones/NasLifeisBichRasenMixTonollamada.m4a: open failed: EACCES (Permission denied)
at libcore.io.IoBridge.open(IoBridge.java:496)
at java.io.RandomAccessFile.(RandomAccessFile.java:289)
at java.io.RandomAccessFile.(RandomAccessFile.java:152)
at com.google.android.exoplayer2.upstream.FileDataSource.open(FileDataSource.java:65)
at com.google.android.exoplayer2.upstream.DefaultDataSource.open(DefaultDataSource.java:250) 
at com.google.android.exoplayer2.upstream.TeeDataSource.open(TeeDataSource.java:53) 
at com.google.android.exoplayer2.upstream.cache.CacheDataSource.openNextSource(CacheDataSource.java:479) 
at com.google.android.exoplayer2.upstream.cache.CacheDataSource.open(CacheDataSource.java:308) 
at com.google.android.exoplayer2.upstream.StatsDataSource.open(StatsDataSource.java:83) 
at com.google.android.exoplayer2.source.ExtractorMediaPeriod$ExtractingLoadable.load(ExtractorMediaPeriod.java:885) 
at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:381) 
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:919) 
Caused by: android.system.ErrnoException: open failed: EACCES (Permission denied)
at libcore.io.Linux.open(Native Method)
at libcore.io.ForwardingOs.open(ForwardingOs.java:167)
at libcore.io.BlockGuardOs.open(BlockGuardOs.java:252)
at libcore.io.ForwardingOs.open(ForwardingOs.java:167)
at android.app.ActivityThread$AndroidOs.open(ActivityThread.java:7255)
at libcore.io.IoBridge.open(IoBridge.java:482)
at java.io.RandomAccessFile.(RandomAccessFile.java:289) 
at java.io.RandomAccessFile.(RandomAccessFile.java:152) 
at com.google.android.exoplayer2.upstream.FileDataSource.open(FileDataSource.java:65) 
at com.google.android.exoplayer2.upstream.DefaultDataSource.open(DefaultDataSource.java:250) 
at com.google.android.exoplayer2.upstream.TeeDataSource.open(TeeDataSource.java:53) 
at com.google.android.exoplayer2.upstream.cache.CacheDataSource.openNextSource(CacheDataSource.java:479) 
at com.google.android.exoplayer2.upstream.cache.CacheDataSource.open(CacheDataSource.java:308) 
at com.google.android.exoplayer2.upstream.StatsDataSource.open(StatsDataSource.java:83) 
at com.google.android.exoplayer2.source.ExtractorMediaPeriod$ExtractingLoadable.load(ExtractorMediaPeriod.java:885) 
at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:381) 
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:919) 

Can't run MusicPlayer

Hi, I encountered the following error when executing the project

D:\Android\MusicPlayer\app\build\tmp\kapt3\stubs\debug\com\android\musicplayer\data\model\Song.java:8: error: Multiple fields have the same columnName: duration. Field names: duration, duration.
public final class Song extends com.android.player.model.ASong implements android.os.Parcelable {
^

After trying several methods are still unable to run the project order:

  1. Delete .idea file and restart Project.
  2. Build → Clean project → Rebuild Project.
  3. Build → Clean project → Make Project.

Did I miss something?

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.