JcPlayer
A simple audio player for Android that you can plugin to your apps quickly get audio playback working.
New features
- Raw files
- Asset Files
- Local files
Tested files
Not tested URLs
- http://xxxx/abc.m4a
- http://xxxx:1232
- http://xxxx/abc.pls
- http://xxxx/abc.ram
- http://xxxx/abc.wax
- rtmp://xxxx
- http://xxxx/abc.aspx
- http://xxxx/abc.php
- http://xxxx/abc.html
- mms://xxxx
Maven
allprojects {
repositories {
jcenter()
maven {
url "http://dl.bintray.com/jeancsanchez/maven"
}
}
}
Gradle Dependency
dependencies {
// ... other dependencies
compile 'io.github.jeancsanchez.jcplayer: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.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);
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();
// default icon
OR
jcplayerView.createNotification(R.drawable.myIcon);
// Your icon resource
How can I get callbacks of player status?
MyActivity implements JcPlayerService.JcPlayerServiceListener {
....
jcplayerView.registerServiceListener(this);
// Just be happy :D
}
How to contribute
Follow this guidelines, specially the commits style guide:
https://github.com/jeancsanchez/Android-Guidelines-and-Architecture/blob/master/code_guidelines.md
Note
The list view is developer responsibilty
TODO LIST
- Set custom layouts for player.
- Add Instrumentation tests
- Add unity tests.