Android8.1 Music模块 通知和播放界面 修改
通知的控制是在
src/com/android/music/MediaPlaybackService.java ->updateNotification();
播放界面:
src/com/android/music/MediaPlaybackActivity.java ;
先看通知,通知的布局是:
res/layout/newstatusbar.xml
这里简单的修改了一下局部,增加了一个右上角的关闭按钮,其他控件略有调整
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/rl_newstatus"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="0dip"
android:paddingLeft="0dip"
android:paddingTop="0dip">
<ImageView
android:id="@+id/iv_cover"
android:layout_width="92dp"
android:layout_height="92dp"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:scaleType="centerCrop"
android:src="@drawable/albumart_mp_unknown_list"/>
<TextView
android:id="@+id/txt_trackinfo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_toRightOf="@+id/iv_cover"
android:ellipsize="marquee"
android:focusable="true"
android:focusableInTouchMode="true"
android:gravity="center"
android:paddingLeft="33dip"
android:paddingRight="33dip"
android:paddingTop="4dip"
android:singleLine="true"
android:textColor="#33B5E5"
android:layout_marginRight="40dp"
android:textSize="15sp"/>
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentBottom="true"
android:layout_toRightOf="@+id/iv_cover"
android:layout_marginTop="40dp"
android:orientation="horizontal"
android:paddingBottom="8dip"
android:paddingLeft="20dp"
android:paddingRight="20dp">
<ImageView
android:id="@+id/btn_prev"
android:layout_width="36dp"
android:layout_height="36dp"
android:layout_gravity="center_vertical|left"
android:background="@drawable/stat_notif_prev"/>
<ImageView
android:id="@+id/btn_pause"
android:layout_width="36dp"
android:layout_height="36dp"
android:layout_gravity="center_vertical|center_horizontal"
android:src="@drawable/stat_notif_pause"/>
<ImageView
android:id="@+id/btn_next"
android:layout_width="36dp"
android:layout_height="36dp"
android:layout_gravity="center_vertical|right"
android:background="@drawable/stat_notif_next"/>
</FrameLayout>
// add begin
<TextView
android:id="@+id/btn_close"
android:layout_width="40dp"
android:layout_height="40dp"
android:background="@drawable/ic_media_pause"
android:layout_alignParentRight="true"/>
// add end
</RelativeLayout>
然后就看下service中的updateNotification方法,原生通知的按钮是 上一首 停止 下一首,我这里要修改为 上一首,暂停(开始) 下一首 ,另外在增加一个关闭,所以增加pendingintent,
private void updateNotification(Context context, Bitmap bitmap) {
......
// add begin
views.setOnClickPendingIntent(R