【问题标题】:RemoteServiceException: Bad notification posted.Couldn't expand RemoteViews for: StatusBarNotificationRemoteServiceException:已发布错误通知。无法扩展 RemoteViews:StatusBarNotification
【发布时间】:2017-06-17 13:01:17
【问题描述】:

我在 Android 中发出此类通知,但不知何故得到以下类型的异常。请帮我解决问题。我为 rootview 使用了 64dp 的高度,这是通知的自定义视图。然后使用 notificationCompat 构建器中的 setContent 设置此自定义视图。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="64dp"
    android:layout_marginLeft="@dimen/marginBig"
    android:layout_marginRight="@dimen/marginBig">

    <ImageView
        android:id="@+id/mg_logo"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="12dp"
        android:src="@drawable/mg_round_image"/>

    <TextView
        android:id="@+id/mg_emergency"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignTop="@id/mg_logo"
        android:layout_toRightOf="@id/mg_logo"
        android:text="@string/mg_emergency_card"
        android:textAppearance="@style/P1.Medium.Vermillion"/>

    <TextView
        android:id="@+id/call_ambulance"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@id/mg_emergency"
        android:layout_alignParentRight="true"
        android:layout_marginLeft="4dp"
        android:layout_marginRight="@dimen/marginBig"
        android:clickable="true"
        android:text="@string/call_ambulance"
        android:textAllCaps="true"
        android:textAppearance="@style/P3.Bold.Vermillion"/>

    <TextView
        android:id="@+id/vertical_line"
        android:layout_width="1dp"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@id/mg_logo"
        android:layout_alignTop="@id/call_ambulance"
        android:layout_toLeftOf="@id/call_ambulance"
        android:background="@color/divider_line">
    </TextView>

    <TextView
        android:id="@+id/emergency_contact_number"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@id/mg_emergency"
        android:layout_below="@id/mg_emergency"
        android:layout_marginRight="8dp"
        android:layout_toLeftOf="@id/vertical_line"
        android:lines="2"
        android:text="@string/my_emergency_contact"
        android:textAppearance="@style/P2.Regular.Grey2"
        tools:text="My Emergency Contact Manisha- 0987654321"/>

    <TextView
        android:id="@+id/horizontal_line"
        android:layout_width="match_parent"
        android:layout_height="1dp"
        android:layout_centerVertical="true"
        android:layout_toRightOf="@id/vertical_line"
        android:background="@color/divider_line">
    </TextView>

    <TextView
        android:id="@+id/send_alert_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@id/call_ambulance"
        android:layout_below="@id/call_ambulance"
        android:layout_marginTop="8dp"
        android:clickable="true"
        android:text="@string/send_alerts"
        android:textAllCaps="true"
        android:textAppearance="@style/P3.Bold.Primary"/>
</RelativeLayout>

【问题讨论】:

    标签: android android-notifications remoteview


    【解决方案1】:

    这个问题的答案很愚蠢....我刚刚将 rootview(相对布局)的边距从 @dimen/marginBig 更改为硬代码(16dp),它工作正常。 @M_AWADI 在这篇文章中的回答 android - Bad notification posted - Couldn't expand RemoteViews for: StatusBarNotification 帮助我实现了。

    【讨论】:

    • 非常感谢您!硬编码根视图上的值(对我来说是线性布局)修复了它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-06-15
    • 2018-04-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多