Working on playing a song from the song list
This commit is contained in:
-12
@@ -118,38 +118,26 @@
|
|||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/annotation_processor_list" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/annotation_processor_list" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/apk_list" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/apk_list" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/build-info" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/builds" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/bundle_manifest" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/bundle_manifest" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/check_manifest_result" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/check_manifest_result" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/compatible_screen_manifest" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/compatible_screen_manifest" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/dex" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/dex" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-runtime-classes" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental-verifier" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant-run-apk" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant-run-resources" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant_app_manifest" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant_app_manifest" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant_run_app_info_output_file" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant_run_merged_manifests" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant_run_merged_manifests" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant_run_split_apk_resources" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/javac" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/javac" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/jniLibs" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/jniLibs" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/lint_jar" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/lint_jar" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/manifest-checker" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/merged_assets" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/merged_assets" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/merged_manifests" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/merged_manifests" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/metadata_feature_manifest" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/metadata_feature_manifest" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/prebuild" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/prebuild" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/processed_res" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/processed_res" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/reload-dex" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/resources" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/rs" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/rs" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/shader_assets" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/shader_assets" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/shaders" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/shaders" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/signing_config" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/signing_config" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/split-apk" />
|
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/transforms" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/transforms" />
|
||||||
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/validate_signing_config" />
|
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/validate_signing_config" />
|
||||||
|
|||||||
@@ -10,13 +10,14 @@ import java.lang.Exception
|
|||||||
import kotlinx.android.synthetic.main.activity_song_view.*
|
import kotlinx.android.synthetic.main.activity_song_view.*
|
||||||
import kotlinx.android.synthetic.main.content_song_view.*
|
import kotlinx.android.synthetic.main.content_song_view.*
|
||||||
|
|
||||||
|
import com.example.mear.activities.BaseServiceActivity
|
||||||
import com.example.mear.adapters.RecyclerAdapter
|
import com.example.mear.adapters.RecyclerAdapter
|
||||||
import com.example.mear.models.TrackItems
|
import com.example.mear.models.TrackItems
|
||||||
import com.example.mear.R
|
import com.example.mear.R
|
||||||
import com.example.mear.repositories.TrackRepository
|
import com.example.mear.repositories.TrackRepository
|
||||||
import com.example.mear.util.ExtractCover
|
import com.example.mear.util.ExtractCover
|
||||||
|
|
||||||
class SongViewActivity : AppCompatActivity() {
|
class SongViewActivity : BaseServiceActivity() {
|
||||||
private var trackListItems = arrayListOf<TrackItems>()
|
private var trackListItems = arrayListOf<TrackItems>()
|
||||||
private lateinit var adapter: RecyclerAdapter
|
private lateinit var adapter: RecyclerAdapter
|
||||||
private lateinit var linearLayoutManager: LinearLayoutManager
|
private lateinit var linearLayoutManager: LinearLayoutManager
|
||||||
@@ -31,6 +32,7 @@ class SongViewActivity : AppCompatActivity() {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
window.statusBarColor = resources.getColor(R.color.track_seek)
|
window.statusBarColor = resources.getColor(R.color.track_seek)
|
||||||
|
doBindService()
|
||||||
initializeAdapter()
|
initializeAdapter()
|
||||||
}
|
}
|
||||||
catch (ex: Exception) {
|
catch (ex: Exception) {
|
||||||
@@ -57,9 +59,10 @@ class SongViewActivity : AppCompatActivity() {
|
|||||||
trackListItems = retrieveTrackItems()
|
trackListItems = retrieveTrackItems()
|
||||||
|
|
||||||
adapter = RecyclerAdapter(trackListItems)
|
adapter = RecyclerAdapter(trackListItems)
|
||||||
|
adapter.musicService = musicService
|
||||||
trackList.adapter = adapter
|
trackList.adapter = adapter
|
||||||
trackList.setHasFixedSize(true)
|
trackList.setHasFixedSize(true)
|
||||||
//trackList.setItemViewCacheSize(20);
|
trackList.setItemViewCacheSize(20);
|
||||||
//trackList.setDrawingCacheEnabled(true);
|
//trackList.setDrawingCacheEnabled(true);
|
||||||
//trackList.setDrawingCacheQuality(View.DRAWING_CACHE_QUALITY_HIGH);
|
//trackList.setDrawingCacheQuality(View.DRAWING_CACHE_QUALITY_HIGH);
|
||||||
}
|
}
|
||||||
@@ -102,8 +105,9 @@ class SongViewActivity : AppCompatActivity() {
|
|||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
for (track in tracks) {
|
for (track in tracks) {
|
||||||
val cover = ExtractCover(track.songPath)
|
//val cover = ExtractCover(track.songPath)
|
||||||
var trackCover = ByteArray(0)
|
var trackCover = ByteArray(0)
|
||||||
|
/**
|
||||||
if (cover.hasCover() && !done) {
|
if (cover.hasCover() && !done) {
|
||||||
if (index < max ) {
|
if (index < max ) {
|
||||||
trackCover = cover.retrieveCover()
|
trackCover = cover.retrieveCover()
|
||||||
@@ -116,7 +120,7 @@ class SongViewActivity : AppCompatActivity() {
|
|||||||
if (done) {
|
if (done) {
|
||||||
return trackItems
|
return trackItems
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
val trackItem = TrackItems(track.id, track.title, track.artist, trackCover!!)
|
val trackItem = TrackItems(track.id, track.title, track.artist, trackCover!!)
|
||||||
trackItems.add(trackItem)
|
trackItems.add(trackItem)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -15,9 +15,12 @@ import com.example.mear.constants.Filenames
|
|||||||
import com.example.mear.inflate
|
import com.example.mear.inflate
|
||||||
import com.example.mear.models.TrackItems
|
import com.example.mear.models.TrackItems
|
||||||
import com.example.mear.R
|
import com.example.mear.R
|
||||||
|
import com.example.mear.playback.service.MusicService
|
||||||
|
import com.example.mear.repositories.TrackRepository
|
||||||
|
|
||||||
class RecyclerAdapter( private val trackItemsSourceInit: ArrayList<TrackItems>) :
|
class RecyclerAdapter( private val trackItemsSourceInit: ArrayList<TrackItems>) :
|
||||||
RecyclerView.Adapter<RecyclerAdapter.TrackItemsHolder>() {
|
RecyclerView.Adapter<RecyclerAdapter.TrackItemsHolder>() {
|
||||||
|
var musicService: MusicService? = null
|
||||||
|
|
||||||
override fun getItemCount(): Int {
|
override fun getItemCount(): Int {
|
||||||
return trackItemsSourceInit!!.size
|
return trackItemsSourceInit!!.size
|
||||||
@@ -30,12 +33,13 @@ class RecyclerAdapter( private val trackItemsSourceInit: ArrayList<TrackItems>)
|
|||||||
|
|
||||||
override fun onCreateViewHolder(parent: ViewGroup, position: Int): TrackItemsHolder {
|
override fun onCreateViewHolder(parent: ViewGroup, position: Int): TrackItemsHolder {
|
||||||
val inflatedView = parent.inflate(R.layout.fragment_song_view, false)
|
val inflatedView = parent.inflate(R.layout.fragment_song_view, false)
|
||||||
return TrackItemsHolder(inflatedView)
|
return TrackItemsHolder(inflatedView, musicService!!)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
class TrackItemsHolder(v: View) : RecyclerView.ViewHolder(v), View.OnClickListener {
|
class TrackItemsHolder(v: View, musicService: MusicService) : RecyclerView.ViewHolder(v), View.OnClickListener {
|
||||||
private var view: View = v
|
private var view: View = v
|
||||||
|
private var musicService: MusicService = musicService
|
||||||
private var trackItem: TrackItems? = null
|
private var trackItem: TrackItems? = null
|
||||||
private val imgWidth = 90
|
private val imgWidth = 90
|
||||||
private val imgHeight = 90
|
private val imgHeight = 90
|
||||||
@@ -50,6 +54,8 @@ class RecyclerAdapter( private val trackItemsSourceInit: ArrayList<TrackItems>)
|
|||||||
val context = itemView.context
|
val context = itemView.context
|
||||||
val showPhotoIntent = Intent(context, SongViewActivity::class.java)
|
val showPhotoIntent = Intent(context, SongViewActivity::class.java)
|
||||||
//showPhotoIntent.putExtra(PHOTO_KEY, trackItem)
|
//showPhotoIntent.putExtra(PHOTO_KEY, trackItem)
|
||||||
|
val id = trackItem!!.id
|
||||||
|
musicService.playTrack(id)
|
||||||
context.startActivity(showPhotoIntent)
|
context.startActivity(showPhotoIntent)
|
||||||
}
|
}
|
||||||
catch (ex: Exception) {
|
catch (ex: Exception) {
|
||||||
|
|||||||
@@ -65,6 +65,9 @@ class MusicService: Service() {
|
|||||||
return super.onUnbind(intent)
|
return super.onUnbind(intent)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun playTrack(id: Int) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
fun goToPosition(progress: Int) {
|
fun goToPosition(progress: Int) {
|
||||||
trackPlayer!!.seekTo(progress)
|
trackPlayer!!.seekTo(progress)
|
||||||
|
|||||||
+2
-2
@@ -4,5 +4,5 @@
|
|||||||
# Location of the SDK. This is only used by Gradle.
|
# Location of the SDK. This is only used by Gradle.
|
||||||
# For customization when using a Version Control System, please read the
|
# For customization when using a Version Control System, please read the
|
||||||
# header note.
|
# header note.
|
||||||
#Thu Mar 07 22:21:30 EST 2019
|
#Sun Mar 24 20:27:46 EDT 2019
|
||||||
sdk.dir=/home/phoenix/Android/Sdk
|
sdk.dir=/home/brahmix/Android/Sdk
|
||||||
|
|||||||
Reference in New Issue
Block a user