안녕하세요.
제가 이번에 플레이어를 실험삼아 만들어보는데 다음과 같은 이슈사항이 있어서 질문을 남깁니다.
제가 현재 핸드폰 2개 태블릿 2개 해서 총 4대의 안드로이드 기기를 가지고 있는데요.
- 핸드폰( 노트3 5.1, G 4.4 ), 태블릿 ( 7.0, 7.1 )
플레이어에서 알림 서랍 영역에 CustomNotification을 띄우는데 문제를 발견했습니다.
디바이스나 안드로이드 버전에 따라서 알림 서랍 영역의 Notification 높이 값이 다른거 같더라구요.
4.4 버전 핸드폰과 5.1 버전, 7.0, 7.1의 높이가 다른것을 확인했구요.
빨간색에 아이콘을 넣을 예정이구요. 높이에 맞춰 너비를 설정해주고 싶습니다.[정사각형]
(현재는 너비를 고정 크기로 쓰고 있습니다.)
코드입니다.
Notification
//customNoti = new RemoteViews(getPackageName(), R.layout.notification);
customNoti = new RemoteViews(getPackageName(), R.layout.noti);
PendingIntent bcsPlay = PendingIntent.getBroadcast(this, 0, new Intent(ACTION_REMOTE_PLAYPAUSE), 0);
PendingIntent bcsPause = PendingIntent.getBroadcast(this, 0, new Intent(ACTION_REMOTE_PAUSE), 0);
/* noti = new NotificationCompat.Builder(this)
.setContentTitle("title")
.setSmallIcon(R.drawable.app_icon)
.setLargeIcon(BitmapFactory.decodeResource(getResources(), R.drawable.app_icon))
.addAction(R.drawable.ic_btn_movie_play, "Play", bcsPlay)
.build();
*/
//CustomNoti
customNoti.setTextViewText(R.id.noti_txt_title, "Main Title");
//customNoti.setTextViewText(R.id.noti_txt_subtitle, "Sub Title");
customNoti.setOnClickPendingIntent(R.id.noti_img_pp, bcsPlay);
customNoti.setOnClickPendingIntent(R.id.noti_img_icon, bcsPause);
noti = new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.ic_btn_movie_play)
.setCustomContentView(customNoti)
//.setCustomBigContentView(customNoti)
.build();
noti.flags |= Notification.FLAG_NO_CLEAR;
notiManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
notiManager.notify(1, noti);
noti.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="72dp"
android:weightSum="1">
<ImageView
android:layout_width="72dp"
android:layout_height="match_parent"
android:id="@+id/noti_img_icon"
android:adjustViewBounds="false"
android:src="@drawable/app_icon" />
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<TextView
android:layout_width="match_parent"
android:layout_height="0dp"
android:text="어쩌구저쩌구앱"
android:id="@+id/noti_txt_title"
android:textIsSelectable="false"
android:textSize="20dp"
android:layout_marginLeft="5dp"
android:layout_weight="1" />
<ImageView
android:layout_width="18dp"
android:layout_height="0dp"
android:id="@+id/noti_img_pp"
android:layout_gravity="center_horizontal"
android:background="@android:drawable/ic_media_play"
android:layout_weight="1" />
</LinearLayout>
</LinearLayout>