Files
packages_apps_Settings/src/com/android/settings/notification/NotificationRingtonePreferenceController.java
yumeichen 23bba426b5 Hide the Default Notification Sound if enabling customized vibration
Flag:com.android.server.notification.notification_vibration_in_sound_uri
Test: atest NotificationRingtonePreferenceControllerTest
Bug: 358525376

Change-Id: Ic7517828df746700ceb6e0605a9d32066c7aed50
2024-09-17 14:38:02 +00:00

56 lines
1.7 KiB
Java

/*
* Copyright (C) 2016 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.settings.notification;
import android.content.Context;
import android.media.RingtoneManager;
import com.android.server.notification.Flags;
import com.android.settings.R;
public class NotificationRingtonePreferenceController extends RingtonePreferenceControllerBase {
private static final String KEY_NOTIFICATION_RINGTONE = "notification_ringtone";
public NotificationRingtonePreferenceController(Context context) {
super(context);
}
@Override
public boolean isAvailable() {
if (isVibrationInSoundUriEnabled()) {
return false;
}
return mContext.getResources().getBoolean(R.bool.config_show_notification_ringtone);
}
@Override
public String getPreferenceKey() {
return KEY_NOTIFICATION_RINGTONE;
}
@Override
public int getRingtoneType() {
return RingtoneManager.TYPE_NOTIFICATION;
}
private boolean isVibrationInSoundUriEnabled() {
return Flags.notificationVibrationInSoundUri() && mContext.getResources().getBoolean(
com.android.internal.R.bool.config_ringtoneVibrationSettingsSupported);
}
}