From 236b66bed42f4b09298237362ec1fcae595fbc77 Mon Sep 17 00:00:00 2001 From: Nagesh Susarla Date: Mon, 10 Nov 2014 16:33:43 -0800 Subject: Minor cleanup to fix a few things in the media sample Change-Id: Ie11b8f79ff1f5661b3fc17dc9410a61c021f7dee --- .../android/musicservicedemo/BrowseFragment.java | 8 ++-- .../musicservicedemo/MusicPlayerActivity.java | 2 +- .../android/musicservicedemo/QueueAdapter.java | 4 +- .../android/musicservicedemo/QueueFragment.java | 50 +++++--------------- MusicDemo/src/main/res/layout/fragment_list.xml | 2 +- MusicDemo/src/main/res/layout/list_item.xml | 55 ---------------------- MusicDemo/src/main/res/layout/media_list_item.xml | 55 ++++++++++++++++++++++ MusicDemo/src/main/res/values/dimens.xml | 4 +- 8 files changed, 80 insertions(+), 100 deletions(-) delete mode 100644 MusicDemo/src/main/res/layout/list_item.xml create mode 100644 MusicDemo/src/main/res/layout/media_list_item.xml (limited to 'MusicDemo') diff --git a/MusicDemo/src/main/java/com/example/android/musicservicedemo/BrowseFragment.java b/MusicDemo/src/main/java/com/example/android/musicservicedemo/BrowseFragment.java index 2b98263..1218c81 100644 --- a/MusicDemo/src/main/java/com/example/android/musicservicedemo/BrowseFragment.java +++ b/MusicDemo/src/main/java/com/example/android/musicservicedemo/BrowseFragment.java @@ -68,7 +68,6 @@ public class BrowseFragment extends Fragment { mBrowserAdapter.clear(); mBrowserAdapter.notifyDataSetInvalidated(); for (MediaBrowser.MediaItem item : children) { - LogHelper.d(TAG, "MediaItem: -> " + item.getDescription().getDescription()); mBrowserAdapter.add(item); } mBrowserAdapter.notifyDataSetChanged(); @@ -91,6 +90,9 @@ public class BrowseFragment extends Fragment { mMediaId = mMediaBrowser.getRoot(); } mMediaBrowser.subscribe(mMediaId, mSubscriptionCallback); + if (mMediaBrowser.getSessionToken() == null) { + throw new IllegalArgumentException("No Session token"); + } MediaController mediaController = new MediaController(getActivity(), mMediaBrowser.getSessionToken()); getActivity().setMediaController(mediaController); @@ -167,7 +169,7 @@ public class BrowseFragment extends Fragment { private static class BrowseAdapter extends ArrayAdapter { public BrowseAdapter(Context context) { - super(context, R.layout.list_item, new ArrayList()); + super(context, R.layout.media_list_item, new ArrayList()); } static class ViewHolder { @@ -183,7 +185,7 @@ public class BrowseFragment extends Fragment { if (convertView == null) { convertView = LayoutInflater.from(getContext()) - .inflate(R.layout.list_item, parent, false); + .inflate(R.layout.media_list_item, parent, false); holder = new ViewHolder(); holder.mImageView = (ImageView) convertView.findViewById(R.id.play_eq); holder.mImageView.setVisibility(View.GONE); diff --git a/MusicDemo/src/main/java/com/example/android/musicservicedemo/MusicPlayerActivity.java b/MusicDemo/src/main/java/com/example/android/musicservicedemo/MusicPlayerActivity.java index 7a2f8fb..39c46c4 100644 --- a/MusicDemo/src/main/java/com/example/android/musicservicedemo/MusicPlayerActivity.java +++ b/MusicDemo/src/main/java/com/example/android/musicservicedemo/MusicPlayerActivity.java @@ -46,7 +46,7 @@ public class MusicPlayerActivity extends Activity public void onMediaItemSelected(MediaBrowser.MediaItem item) { if (item.isPlayable()) { getMediaController().getTransportControls().playFromMediaId(item.getMediaId(), null); - QueueFragment queueFragment = QueueFragment.newInstance(item.getMediaId()); + QueueFragment queueFragment = QueueFragment.newInstance(); getFragmentManager().beginTransaction() .replace(R.id.container, queueFragment) .addToBackStack(null) diff --git a/MusicDemo/src/main/java/com/example/android/musicservicedemo/QueueAdapter.java b/MusicDemo/src/main/java/com/example/android/musicservicedemo/QueueAdapter.java index 9c7870b..d1f6ac5 100644 --- a/MusicDemo/src/main/java/com/example/android/musicservicedemo/QueueAdapter.java +++ b/MusicDemo/src/main/java/com/example/android/musicservicedemo/QueueAdapter.java @@ -35,7 +35,7 @@ public class QueueAdapter extends ArrayAdapter { private long mActiveQueueItemId = MediaSession.QueueItem.UNKNOWN_ID; public QueueAdapter(Activity context) { - super(context, R.layout.list_item, new ArrayList()); + super(context, R.layout.media_list_item, new ArrayList()); } public void setActiveQueueItemId(long id) { @@ -53,7 +53,7 @@ public class QueueAdapter extends ArrayAdapter { if (convertView == null) { convertView = LayoutInflater.from(getContext()) - .inflate(R.layout.list_item, parent, false); + .inflate(R.layout.media_list_item, parent, false); holder = new ViewHolder(); holder.mImageView = (ImageView) convertView.findViewById(R.id.play_eq); holder.mTitleView = (TextView) convertView.findViewById(R.id.title); diff --git a/MusicDemo/src/main/java/com/example/android/musicservicedemo/QueueFragment.java b/MusicDemo/src/main/java/com/example/android/musicservicedemo/QueueFragment.java index 233b282..5d2525b 100644 --- a/MusicDemo/src/main/java/com/example/android/musicservicedemo/QueueFragment.java +++ b/MusicDemo/src/main/java/com/example/android/musicservicedemo/QueueFragment.java @@ -17,7 +17,6 @@ package com.example.android.musicservicedemo; import android.app.Fragment; import android.content.ComponentName; -import android.media.MediaMetadata; import android.media.browse.MediaBrowser; import android.media.session.MediaController; import android.media.session.MediaSession; @@ -35,12 +34,11 @@ import com.example.android.musicservicedemo.utils.LogHelper; import java.util.List; /** - * A class that shows the queue to the user + * A class that shows the Media Queue to the user. */ public class QueueFragment extends Fragment { - private static final String TAG = QueueFragment.class.getSimpleName() + "BLAH"; - private static final String ARGS_MEDIA_ID = "media_id"; + private static final String TAG = QueueFragment.class.getSimpleName(); private ImageButton mSkipNext; private ImageButton mSkipPrevious; @@ -50,17 +48,18 @@ public class QueueFragment extends Fragment { private MediaController.TransportControls mTransportControls; private MediaController mMediaController; private PlaybackState mPlaybackState; - private boolean mConnected; private QueueAdapter mQueueAdapter; - private String mMediaId; - private ListView mListView; private MediaBrowser.ConnectionCallback mConnectionCallback = new MediaBrowser.ConnectionCallback() { @Override public void onConnected() { - LogHelper.d(TAG, "onConnected: session token " + mMediaBrowser.getSessionToken()); + LogHelper.d(TAG, "onConnected: session token ", mMediaBrowser.getSessionToken()); + + if (mMediaBrowser.getSessionToken() == null) { + throw new IllegalArgumentException("No Session token"); + } mMediaController = new MediaController(getActivity(), mMediaBrowser.getSessionToken()); @@ -70,12 +69,6 @@ public class QueueFragment extends Fragment { getActivity().setMediaController(mMediaController); mPlaybackState = mMediaController.getPlaybackState(); - long activeItemId = MediaSession.QueueItem.UNKNOWN_ID; - if (mPlaybackState != null) { - activeItemId = mPlaybackState.getActiveQueueItemId(); - } - mQueueAdapter.setActiveQueueItemId(activeItemId); - List queue = mMediaController.getQueue(); if (queue != null) { mQueueAdapter.clear(); @@ -83,16 +76,12 @@ public class QueueFragment extends Fragment { mQueueAdapter.addAll(queue); mQueueAdapter.notifyDataSetChanged(); } - - LogHelper.d(TAG, "got playback state " + mPlaybackState); - mConnected = true; onPlaybackStateChanged(mPlaybackState); } @Override public void onConnectionFailed() { LogHelper.d(TAG, "onConnectionFailed"); - mConnected = false; } @Override @@ -100,7 +89,6 @@ public class QueueFragment extends Fragment { LogHelper.d(TAG, "onConnectionSuspended"); mMediaController.unregisterCallback(mSessionCallback); mTransportControls = null; - mConnected = false; mMediaController = null; getActivity().setMediaController(null); } @@ -120,14 +108,14 @@ public class QueueFragment extends Fragment { if (state == null) { return; } - LogHelper.d(TAG, "Received playback state change to state " + state.getState()); + LogHelper.d(TAG, "Received playback state change to state ", state.getState()); mPlaybackState = state; QueueFragment.this.onPlaybackStateChanged(state); } @Override public void onQueueChanged(List queue) { - LogHelper.d(TAG, "onQueueChanged " + queue); + LogHelper.d(TAG, "onQueueChanged ", queue); if (queue != null) { mQueueAdapter.clear(); mQueueAdapter.notifyDataSetInvalidated(); @@ -137,15 +125,10 @@ public class QueueFragment extends Fragment { } }; - public static QueueFragment newInstance(String mediaId) { - QueueFragment fragment = new QueueFragment(); - Bundle args = new Bundle(); - args.putString(ARGS_MEDIA_ID, mediaId); - fragment.setArguments(args); - return fragment; + public static QueueFragment newInstance() { + return new QueueFragment(); } - @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { @@ -165,7 +148,7 @@ public class QueueFragment extends Fragment { mQueueAdapter = new QueueAdapter(getActivity()); - mListView = (ListView) rootView.findViewById(R.id.list_view); + ListView mListView = (ListView) rootView.findViewById(R.id.list_view); mListView.setAdapter(mQueueAdapter); mListView.setFocusable(true); mListView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @@ -173,14 +156,9 @@ public class QueueFragment extends Fragment { public void onItemClick(AdapterView parent, View view, int position, long id) { MediaSession.QueueItem item = mQueueAdapter.getItem(position); mTransportControls.skipToQueueItem(item.getQueueId()); - mQueueAdapter.setActiveQueueItemId(item.getQueueId()); - mQueueAdapter.notifyDataSetChanged(); } }); - Bundle args = getArguments(); - mMediaId = args.getString(ARGS_MEDIA_ID); - mMediaBrowser = new MediaBrowser(getActivity(), new ComponentName(getActivity(), MusicService.class), mConnectionCallback, null); @@ -188,7 +166,6 @@ public class QueueFragment extends Fragment { return rootView; } - @Override public void onResume() { super.onResume(); @@ -210,7 +187,7 @@ public class QueueFragment extends Fragment { private void onPlaybackStateChanged(PlaybackState state) { - LogHelper.d(TAG, "onPlaybackStateChanged " + state); + LogHelper.d(TAG, "onPlaybackStateChanged ", state); if (state == null) { return; } @@ -289,7 +266,6 @@ public class QueueFragment extends Fragment { skipToNext(); break; } - } }; diff --git a/MusicDemo/src/main/res/layout/fragment_list.xml b/MusicDemo/src/main/res/layout/fragment_list.xml index a40240f..c169fec 100644 --- a/MusicDemo/src/main/res/layout/fragment_list.xml +++ b/MusicDemo/src/main/res/layout/fragment_list.xml @@ -17,7 +17,7 @@ android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" - android:padding="16dp"> + android:padding="@dimen/fragment_list_padding"> - - - - - - - - - - - - - diff --git a/MusicDemo/src/main/res/layout/media_list_item.xml b/MusicDemo/src/main/res/layout/media_list_item.xml new file mode 100644 index 0000000..72c0ccf --- /dev/null +++ b/MusicDemo/src/main/res/layout/media_list_item.xml @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + diff --git a/MusicDemo/src/main/res/values/dimens.xml b/MusicDemo/src/main/res/values/dimens.xml index f905809..e57a8c9 100644 --- a/MusicDemo/src/main/res/values/dimens.xml +++ b/MusicDemo/src/main/res/values/dimens.xml @@ -15,5 +15,7 @@ limitations under the License. --> - 6dip + 16dp + 4dp + 6dp -- cgit v1.2.3