Fix call ringtone not playing on some custom ROMs and Samsung Android 11 devices.

This commit is contained in:
Cody Henthorne
2021-03-26 12:58:17 -04:00
committed by Alex Hart
parent 243b4b9414
commit 2144dc3b67
5 changed files with 176 additions and 25 deletions

View File

@@ -24,16 +24,20 @@ import androidx.lifecycle.ViewModelProviders;
import com.annimon.stream.function.Consumer;
import org.signal.core.util.logging.Log;
import org.thoughtcrime.securesms.R;
import org.thoughtcrime.securesms.database.RecipientDatabase;
import org.thoughtcrime.securesms.notifications.NotificationChannels;
import org.thoughtcrime.securesms.recipients.RecipientId;
import org.thoughtcrime.securesms.util.RingtoneUtil;
import org.thoughtcrime.securesms.util.TextSecurePreferences;
import java.util.Objects;
public class CustomNotificationsDialogFragment extends DialogFragment {
private static final String TAG = Log.tag(CustomNotificationsDialogFragment.class);
private static final short MESSAGE_RINGTONE_PICKER_REQUEST_CODE = 13562;
private static final short CALL_RINGTONE_PICKER_REQUEST_CODE = 23621;
@@ -224,8 +228,7 @@ public class CustomNotificationsDialogFragment extends DialogFragment {
} else if (ringtone.toString().isEmpty()) {
return context.getString(R.string.preferences__silent);
} else {
Ringtone tone = RingtoneManager.getRingtone(getActivity(), ringtone);
Ringtone tone = RingtoneUtil.getRingtone(requireContext(), ringtone);
if (tone != null) {
return tone.getTitle(context);
}