我们可以为android Wear项目做一个自定义布局通知

时间:2014-07-24 11:19:14

标签: android notifications android-notifications wear-os

我为android穿戴设备创建了一个项目。 我需要在可穿戴设备上自定义通知样式。有什么方法吗。

我的方法是

Intent displayIntent = new Intent(getApplicationContext(), CustomNotification.class);
 PendingIntent displayPendingIntent = PendingIntent.getActivity(getApplicationContext(),
         0, displayIntent, PendingIntent.FLAG_UPDATE_CURRENT);

    Notification notification =
            new NotificationCompat.Builder(context)
                    .extend(new WearableExtender()
                            .setDisplayIntent(displayPendingIntent))
                            .build();

    int notificationId = 001;

    // Get an instance of the NotificationManager service
    NotificationManagerCompat notificationManager =
            NotificationManagerCompat.from(this);

    notificationManager.notify(notificationId , notification);

但我没有收到通知。

是否有任何方法可以使用我的自定义布局设计进行自定义?

这是明显的部分

 <activity android:name="com.client.android.CustomNotification"
     android:exported="true"
     android:allowEmbedded="true"
     android:taskAffinity=""
     android:theme="@android:style/Theme.DeviceDefault.Light" />

1 个答案:

答案 0 :(得分:4)

请查看有关在Android Wear上创建自定义通知的官方文档。

使用大视图:

您可以将样式应用于通知,例如BigPictureStyleBigTextStyleInboxStyle

以下是使用BigTextStyle

的示例
// Specify the 'big view' content to display the long
// event description that may not fit the normal content text.
BigTextStyle bigStyle = new NotificationCompat.BigTextStyle();
bigStyle.bigText(eventDescription);

NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this)
    .setSmallIcon(R.drawable.ic_event)
    .setLargeIcon(BitmapFractory.decodeResource(getResources(), R.drawable.notif_background))
    .setContentTitle(eventTitle)
    .setContentText(eventLocation)
    .setContentIntent(viewPendingIntent)
    .addAction(R.drawable.ic_map, getString(R.string.map), mapPendingIntent)
    .setStyle(bigStyle);

更多信息:
http://developer.android.com/training/wearables/notifications/creating.html#BigView

使用自定义通知布局:

您可以在Activity中创建布局并将其嵌入通知中: https://developer.android.com/training/wearables/apps/layouts.html#CustomNotifications

注意:请注意,此方法有一些限制,仅适用于直接从Android Wear设备(而不是手机)提交的通知。

请同时阅读该教程末尾的注释:

  

注意:当主屏幕上显示通知时,系统会显示一个标准模板,该模板是从主屏幕生成的   通知的语义数据。这个模板适用于所有人   watchfaces。当用户向上滑动通知时,他们会看到   通知的自定义活动。