Wear OS Notification Vibration and Sound

В моей службе переднего плана я получаю уведомления, и это работает отлично. Единственная проблема в том, что мои часы не вибрируют и не издают никаких звуков, когда я получаю уведомление. Я пытался настроить вибрацию на NotificationChannel или Notification, но ни один из них не работает. Устройство представляет собой часы Huawei Watch 2.

Каналы уведомлений:

private void createNotificationChannels() {
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
        NotificationChannel serviceChannel = new NotificationChannel(
                CHANNEL_ID,
                "Service Channel",
                NotificationManager.IMPORTANCE_LOW
        );
        serviceChannel.setDescription("Foreground Service");

        NotificationChannel messageChannel= new NotificationChannel(
                message_CHANNEL_ID,
                "messages Channel",
                NotificationManager.IMPORTANCE_HIGH
        );
        messageChannel.setDescription("message Channel");
        messageChannel.enableVibration(true);
        messageChannel.setLockscreenVisibility(Notification.VISIBILITY_PUBLIC);
        messageChannel.setVibrationPattern(new long[] {2000});


        NotificationManager manager = getSystemService(NotificationManager.class);
        manager.createNotificationChannel(serviceChannel);
        manager.createNotificationChannel(messageChannel);

    }

Уведомления от сервиса:

private void runNotification(Datamodel data)
{
    NotificationManagerCompat notificationManager = NotificationManagerCompat.from(this);

    Notification notification = new NotificationCompat.Builder(this, messageChannel)
            .setSmallIcon(R.drawable.alarm)
            .setContentTitle(data.getline1())
            .setContentText(data.getline2())
            .setStyle(new NotificationCompat.BigTextStyle()
                    .bigText(Html.fromHtml(data.toString(), FROM_HTML_MODE_COMPACT)))
            .setPriority(NotificationCompat.PRIORITY_HIGH)
            .setColor(Color.parseColor("#009999"))
            //.setSound(defaultSoundUri)
            //.setCategory(NotificationCompat.CATEGORY_ALARM)
            //.setVibrate(new long[]{2000})
            .build();

    notificationManager.notify(NOTIFICATION_ID, notification);

    NOTIFICATION_ID++;

}

Манифест:

<uses-feature android:name="android.hardware.type.watch" />

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
<uses-permission android:name="android.permission.VIBRATE"/>

person Community    schedule 17.08.2018    source источник


Ответы (1)


У меня была точно такая же проблема и модель часов. Когда вы тестируете уведомления, наденьте часы на запястье, а не подключайте их к компьютеру с помощью кабеля. Меня устраивает.

person Ian Chen    schedule 19.09.2018