A simple audio player for Android that you can plugin to your apps quickly get audio playback working.
New features
- Raw files
- Asset Files
- Custom layout
Tested files
Not tested URLs
Support us
You can support us by becoming a patron on Patreon, any support is much appreciated.
Gradle Dependency (Project level)
allprojects {
repositories {
jcenter()
maven { url "https://jitpack.io" }
}
}
Gradle Dependency (Module level)
dependencies {
// ... other dependencies
implementation 'com.github.jeancsanchez:JcPlayer:{version}'
}
Getting Started
You only need a JcPlayerView on your Layout Activity/Fragment. All the controls and everything else are created by the player view itself.
<com.example.jean.jcplayer.view.JcPlayerView
android:id="@+id/jcplayer"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
Code Setup
Find your JcPlayerView xml and...
jcplayerView = (JcPlayerView) findViewById(R.id.jcplayerView);
Option 1: Just init a playlist
ArrayList<JcAudio> jcAudios = new ArrayList<>();
jcAudios.add(JcAudio.createFromURL("url audio","http://xxx/audio.mp3"));
jcAudios.add(JcAudio.createFromAssets("Asset audio", "audio.mp3"));
jcAudios.add(JcAudio.createFromRaw("Raw audio", R.raw.audio));
jcplayerView.initPlaylist(jcAudios, null);
Option 2: Initialize an anonymous playlist with a default title for all
jcplayerView.initAnonPlaylist(jcAudios);
Option 3: Initialize an playlist with a custom title for all
jcplayerView.initWithTitlePlaylist(urls, "Awesome music");
Call the notification player where you want.
jcplayerView.createNotification();
OR
jcplayerView.createNotification(R.drawable.myIcon);
How can I get callbacks of player status?
MyActivity implements JcPlayerManagerListener {
....
jcplayerView.setJcPlayerManagerListener(this);
}
Custom layout
You can customize the player layout by manipulating these attributes.
app:next_icon
app:next_icon_color
app:pause_icon
app:pause_icon_color
app:play_icon
app:play_icon_color
app:previous_icon
app:previous_icon_color
app:progress_color
app:random_icon_color
app:repeat_icon
app:repeat_icon_color
app:seek_bar_color
app:text_audio_current_duration_color
app:text_audio_duration_color
app:text_audio_title_color
TODO LIST