Make createSource(ContentResolver, Uri, Resources) a SystemApi

Bug: 152322291
Test: make

Once ImageDecoder is in a mainline module, the system (i.e. ImageView)
needs to be able to access this method.

External clients can already use createSource(ContentResolver, Uri). If
they want density scaling, they can use
createSource(Resources, int resId).

Change-Id: I560972c1ef08ee5e610e3c2c182353a6767fd082
This commit is contained in:
Leon Scroggins III
2020-03-24 15:38:35 -04:00
parent 8060fa8328
commit 97eacc36a3
2 changed files with 13 additions and 0 deletions

View File

@@ -17,6 +17,14 @@ package android.content.rollback {
}
package android.graphics {
public final class ImageDecoder implements java.lang.AutoCloseable {
method @AnyThread @NonNull public static android.graphics.ImageDecoder.Source createSource(@NonNull android.content.ContentResolver, @NonNull android.net.Uri, @Nullable android.content.res.Resources);
}
}
package android.net {
public final class TetheredClient implements android.os.Parcelable {

View File

@@ -27,6 +27,7 @@ import android.annotation.IntRange;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.Px;
import android.annotation.SystemApi;
import android.annotation.TestApi;
import android.annotation.WorkerThread;
import android.compat.annotation.UnsupportedAppUsage;
@@ -923,8 +924,12 @@ public final class ImageDecoder implements AutoCloseable {
/**
* Provide Resources for density scaling.
*
* This is a SystemApi to enable legacy behavior, so there is no need to
* make it public like the version above, which does not have a Resources
* parameter.
* @hide
*/
@SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
@AnyThread
@NonNull
public static Source createSource(@NonNull ContentResolver cr,