Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 265551de authored by Jeff Sharkey's avatar Jeff Sharkey
Browse files

Resolve ringtone Uris using Context user.

The Context passed in has already been tied strongly to a specific
user, so resolve Settings based on that user.

Bug: 27568161
Change-Id: I1365c25f97c4177afe592d7c9f410eab777110e7
parent 7426a652
Loading
Loading
Loading
Loading
+8 −8
Original line number Diff line number Diff line
@@ -16,10 +16,6 @@

package android.media;

import com.android.internal.database.SortCursor;

import libcore.io.Streams;

import android.annotation.SdkConstant;
import android.annotation.SdkConstant.SdkConstantType;
import android.app.Activity;
@@ -32,12 +28,15 @@ import android.net.Uri;
import android.os.Environment;
import android.os.ParcelFileDescriptor;
import android.os.Process;
import android.os.RemoteException;
import android.provider.MediaStore;
import android.provider.Settings;
import android.provider.Settings.System;
import android.util.Log;

import com.android.internal.database.SortCursor;

import libcore.io.Streams;

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
@@ -644,7 +643,8 @@ public class RingtoneManager {
    public static Uri getActualDefaultRingtoneUri(Context context, int type) {
        String setting = getSettingForType(type);
        if (setting == null) return null;
        final String uriString = Settings.System.getString(context.getContentResolver(), setting);
        final String uriString = Settings.System.getStringForUser(context.getContentResolver(),
                setting, context.getUserId());
        return uriString != null ? Uri.parse(uriString) : null;
    }
    
@@ -663,8 +663,8 @@ public class RingtoneManager {

        String setting = getSettingForType(type);
        if (setting == null) return;
        Settings.System.putString(resolver, setting,
                ringtoneUri != null ? ringtoneUri.toString() : null);
        Settings.System.putStringForUser(resolver, setting,
                ringtoneUri != null ? ringtoneUri.toString() : null, context.getUserId());

        // Stream selected ringtone into cache so it's available for playback
        // when CE storage is still locked