mirror of
https://github.com/samsonjs/media.git
synced 2026-03-26 09:35:47 +00:00
Do not require package visibility when obtaining SessionTokens
The only reason this is required at the moment is to set the
process UID field in the token, that is supposed to make it easier
for controller apps to identify the session. However, if this
visibility is not provided, it shouldn't stop us from creating
the controller for this session.
Also docuement more clearly what UID means in this context.
PiperOrigin-RevId: 490184508
(cherry picked from commit c41a5c8420)
This commit is contained in:
parent
3476ca9296
commit
fa6b8fe06d
1 changed files with 7 additions and 3 deletions
|
|
@ -36,6 +36,7 @@ import androidx.annotation.IntDef;
|
|||
import androidx.annotation.Nullable;
|
||||
import androidx.media.MediaBrowserServiceCompat;
|
||||
import androidx.media3.common.Bundleable;
|
||||
import androidx.media3.common.C;
|
||||
import androidx.media3.common.MediaLibraryInfo;
|
||||
import androidx.media3.common.util.UnstableApi;
|
||||
import com.google.common.collect.ImmutableSet;
|
||||
|
|
@ -179,7 +180,11 @@ public final class SessionToken implements Bundleable {
|
|||
return impl.toString();
|
||||
}
|
||||
|
||||
/** Returns the uid of the session */
|
||||
/**
|
||||
* Returns the UID of the session process, or {@link C#INDEX_UNSET} if the UID can't be determined
|
||||
* due to missing <a href="https://developer.android.com/training/package-visibility">package
|
||||
* visibility</a>.
|
||||
*/
|
||||
public int getUid() {
|
||||
return impl.getUid();
|
||||
}
|
||||
|
|
@ -393,8 +398,7 @@ public final class SessionToken implements Bundleable {
|
|||
try {
|
||||
return manager.getApplicationInfo(packageName, 0).uid;
|
||||
} catch (PackageManager.NameNotFoundException e) {
|
||||
throw new IllegalArgumentException(
|
||||
"Cannot find package " + packageName + " or package is not visible", e);
|
||||
return C.INDEX_UNSET;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue