diff options
| author | Philip P. Moltmann <moltmann@google.com> | 2019-09-27 08:44:12 -0700 |
|---|---|---|
| committer | Philip P. Moltmann <moltmann@google.com> | 2019-10-29 15:41:28 -0700 |
| commit | 128b70364ee9ea9bd588908d8002ffa610d3794e (patch) | |
| tree | b9d33186f228c265bab8ed7b0db08352a572ec22 /core/java/android/content/ContentProviderClient.java | |
| parent | a7f66b7ee882a50e7fabd618638a001720f78dac (diff) | |
Note with featureId from ContentProvider
This takes the Context#getFeatureId from the calling context and pipes
it all way through to the noteOp calls done by the content provider.
Bug: 136595429
Test: atest CtsAppOpsTestCases (new test added to capture this case)
TelecomUnitTests:CallLogManagerTest
ContentProviderClientTest
TelecomUnitTests:MissedCallNotifierImplTest
TelecomUnitTests:BasicCallTests
MediaInserterTest
PreferencesHelperTest
RankingHelperTest
PinnedSliceStateTest
FrameworksCoreTests:ContentResolverTest
Change-Id: I53b1035626229c920b353509a5bece157b52fb51
Diffstat (limited to 'core/java/android/content/ContentProviderClient.java')
| -rw-r--r-- | core/java/android/content/ContentProviderClient.java | 36 |
1 files changed, 22 insertions, 14 deletions
diff --git a/core/java/android/content/ContentProviderClient.java b/core/java/android/content/ContentProviderClient.java index 8a4330ec0ede..d2632e78c00c 100644 --- a/core/java/android/content/ContentProviderClient.java +++ b/core/java/android/content/ContentProviderClient.java @@ -80,6 +80,7 @@ public class ContentProviderClient implements ContentInterface, AutoCloseable { private final IContentProvider mContentProvider; @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.P, trackingBug = 115609023) private final String mPackageName; + private final @Nullable String mFeatureId; private final String mAuthority; private final boolean mStable; @@ -103,6 +104,7 @@ public class ContentProviderClient implements ContentInterface, AutoCloseable { mContentResolver = contentResolver; mContentProvider = contentProvider; mPackageName = contentResolver.mPackageName; + mFeatureId = contentResolver.mFeatureId; mAuthority = authority; mStable = stable; @@ -193,7 +195,7 @@ public class ContentProviderClient implements ContentInterface, AutoCloseable { cancellationSignal.setRemote(remoteCancellationSignal); } final Cursor cursor = mContentProvider.query( - mPackageName, uri, projection, queryArgs, remoteCancellationSignal); + mPackageName, mFeatureId, uri, projection, queryArgs, remoteCancellationSignal); if (cursor == null) { return null; } @@ -253,7 +255,7 @@ public class ContentProviderClient implements ContentInterface, AutoCloseable { beforeRemote(); try { - return mContentProvider.canonicalize(mPackageName, url); + return mContentProvider.canonicalize(mPackageName, mFeatureId, url); } catch (DeadObjectException e) { if (!mStable) { mContentResolver.unstableProviderDied(mContentProvider); @@ -271,7 +273,7 @@ public class ContentProviderClient implements ContentInterface, AutoCloseable { beforeRemote(); try { - return mContentProvider.uncanonicalize(mPackageName, url); + return mContentProvider.uncanonicalize(mPackageName, mFeatureId, url); } catch (DeadObjectException e) { if (!mStable) { mContentResolver.unstableProviderDied(mContentProvider); @@ -296,7 +298,8 @@ public class ContentProviderClient implements ContentInterface, AutoCloseable { remoteCancellationSignal = mContentProvider.createCancellationSignal(); cancellationSignal.setRemote(remoteCancellationSignal); } - return mContentProvider.refresh(mPackageName, url, args, remoteCancellationSignal); + return mContentProvider.refresh(mPackageName, mFeatureId, url, args, + remoteCancellationSignal); } catch (DeadObjectException e) { if (!mStable) { mContentResolver.unstableProviderDied(mContentProvider); @@ -315,7 +318,8 @@ public class ContentProviderClient implements ContentInterface, AutoCloseable { beforeRemote(); try { - return mContentProvider.checkUriPermission(mPackageName, uri, uid, modeFlags); + return mContentProvider.checkUriPermission(mPackageName, mFeatureId, uri, uid, + modeFlags); } catch (DeadObjectException e) { if (!mStable) { mContentResolver.unstableProviderDied(mContentProvider); @@ -334,7 +338,7 @@ public class ContentProviderClient implements ContentInterface, AutoCloseable { beforeRemote(); try { - return mContentProvider.insert(mPackageName, url, initialValues); + return mContentProvider.insert(mPackageName, mFeatureId, url, initialValues); } catch (DeadObjectException e) { if (!mStable) { mContentResolver.unstableProviderDied(mContentProvider); @@ -354,7 +358,7 @@ public class ContentProviderClient implements ContentInterface, AutoCloseable { beforeRemote(); try { - return mContentProvider.bulkInsert(mPackageName, url, initialValues); + return mContentProvider.bulkInsert(mPackageName, mFeatureId, url, initialValues); } catch (DeadObjectException e) { if (!mStable) { mContentResolver.unstableProviderDied(mContentProvider); @@ -373,7 +377,8 @@ public class ContentProviderClient implements ContentInterface, AutoCloseable { beforeRemote(); try { - return mContentProvider.delete(mPackageName, url, selection, selectionArgs); + return mContentProvider.delete(mPackageName, mFeatureId, url, selection, + selectionArgs); } catch (DeadObjectException e) { if (!mStable) { mContentResolver.unstableProviderDied(mContentProvider); @@ -392,7 +397,8 @@ public class ContentProviderClient implements ContentInterface, AutoCloseable { beforeRemote(); try { - return mContentProvider.update(mPackageName, url, values, selection, selectionArgs); + return mContentProvider.update(mPackageName, mFeatureId, url, values, selection, + selectionArgs); } catch (DeadObjectException e) { if (!mStable) { mContentResolver.unstableProviderDied(mContentProvider); @@ -436,7 +442,8 @@ public class ContentProviderClient implements ContentInterface, AutoCloseable { remoteSignal = mContentProvider.createCancellationSignal(); signal.setRemote(remoteSignal); } - return mContentProvider.openFile(mPackageName, url, mode, remoteSignal, null); + return mContentProvider.openFile(mPackageName, mFeatureId, url, mode, remoteSignal, + null); } catch (DeadObjectException e) { if (!mStable) { mContentResolver.unstableProviderDied(mContentProvider); @@ -480,7 +487,8 @@ public class ContentProviderClient implements ContentInterface, AutoCloseable { remoteSignal = mContentProvider.createCancellationSignal(); signal.setRemote(remoteSignal); } - return mContentProvider.openAssetFile(mPackageName, url, mode, remoteSignal); + return mContentProvider.openAssetFile(mPackageName, mFeatureId, url, mode, + remoteSignal); } catch (DeadObjectException e) { if (!mStable) { mContentResolver.unstableProviderDied(mContentProvider); @@ -521,7 +529,7 @@ public class ContentProviderClient implements ContentInterface, AutoCloseable { signal.setRemote(remoteSignal); } return mContentProvider.openTypedAssetFile( - mPackageName, uri, mimeTypeFilter, opts, remoteSignal); + mPackageName, mFeatureId, uri, mimeTypeFilter, opts, remoteSignal); } catch (DeadObjectException e) { if (!mStable) { mContentResolver.unstableProviderDied(mContentProvider); @@ -548,7 +556,7 @@ public class ContentProviderClient implements ContentInterface, AutoCloseable { beforeRemote(); try { - return mContentProvider.applyBatch(mPackageName, authority, operations); + return mContentProvider.applyBatch(mPackageName, mFeatureId, authority, operations); } catch (DeadObjectException e) { if (!mStable) { mContentResolver.unstableProviderDied(mContentProvider); @@ -574,7 +582,7 @@ public class ContentProviderClient implements ContentInterface, AutoCloseable { beforeRemote(); try { - return mContentProvider.call(mPackageName, authority, method, arg, extras); + return mContentProvider.call(mPackageName, mFeatureId, authority, method, arg, extras); } catch (DeadObjectException e) { if (!mStable) { mContentResolver.unstableProviderDied(mContentProvider); |
