Add Discord community version (64-bit only)

- Added realracing3-community.apk (71.57 MB)
- Removed 32-bit support (armeabi-v7a)
- Only includes arm64-v8a libraries
- Decompiled source code included
- Added README-community.md with analysis
This commit is contained in:
2026-02-18 15:48:36 -08:00
parent c19eb3d7ff
commit c080f0d97f
26930 changed files with 2529574 additions and 0 deletions

View File

@@ -0,0 +1,477 @@
package android.support.v4.media.session;
import android.os.Binder;
import android.os.Bundle;
import android.os.IBinder;
import android.os.IInterface;
import android.os.Parcel;
import android.os.RemoteException;
import android.support.v4.media.MediaMetadataCompat;
import android.support.v4.media.session.MediaSessionCompat;
import android.text.TextUtils;
import java.util.List;
/* loaded from: classes.dex */
public interface IMediaControllerCallback extends IInterface {
public static class Default implements IMediaControllerCallback {
@Override // android.os.IInterface
public IBinder asBinder() {
return null;
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onCaptioningEnabledChanged(boolean z) throws RemoteException {
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onEvent(String str, Bundle bundle) throws RemoteException {
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onExtrasChanged(Bundle bundle) throws RemoteException {
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onMetadataChanged(MediaMetadataCompat mediaMetadataCompat) throws RemoteException {
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onPlaybackStateChanged(PlaybackStateCompat playbackStateCompat) throws RemoteException {
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onQueueChanged(List<MediaSessionCompat.QueueItem> list) throws RemoteException {
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onQueueTitleChanged(CharSequence charSequence) throws RemoteException {
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onRepeatModeChanged(int i) throws RemoteException {
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onSessionDestroyed() throws RemoteException {
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onSessionReady() throws RemoteException {
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onShuffleModeChanged(int i) throws RemoteException {
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onShuffleModeChangedRemoved(boolean z) throws RemoteException {
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onVolumeInfoChanged(ParcelableVolumeInfo parcelableVolumeInfo) throws RemoteException {
}
}
void onCaptioningEnabledChanged(boolean z) throws RemoteException;
void onEvent(String str, Bundle bundle) throws RemoteException;
void onExtrasChanged(Bundle bundle) throws RemoteException;
void onMetadataChanged(MediaMetadataCompat mediaMetadataCompat) throws RemoteException;
void onPlaybackStateChanged(PlaybackStateCompat playbackStateCompat) throws RemoteException;
void onQueueChanged(List<MediaSessionCompat.QueueItem> list) throws RemoteException;
void onQueueTitleChanged(CharSequence charSequence) throws RemoteException;
void onRepeatModeChanged(int i) throws RemoteException;
void onSessionDestroyed() throws RemoteException;
void onSessionReady() throws RemoteException;
void onShuffleModeChanged(int i) throws RemoteException;
void onShuffleModeChangedRemoved(boolean z) throws RemoteException;
void onVolumeInfoChanged(ParcelableVolumeInfo parcelableVolumeInfo) throws RemoteException;
public static abstract class Stub extends Binder implements IMediaControllerCallback {
private static final String DESCRIPTOR = "android.support.v4.media.session.IMediaControllerCallback";
static final int TRANSACTION_onCaptioningEnabledChanged = 11;
static final int TRANSACTION_onEvent = 1;
static final int TRANSACTION_onExtrasChanged = 7;
static final int TRANSACTION_onMetadataChanged = 4;
static final int TRANSACTION_onPlaybackStateChanged = 3;
static final int TRANSACTION_onQueueChanged = 5;
static final int TRANSACTION_onQueueTitleChanged = 6;
static final int TRANSACTION_onRepeatModeChanged = 9;
static final int TRANSACTION_onSessionDestroyed = 2;
static final int TRANSACTION_onSessionReady = 13;
static final int TRANSACTION_onShuffleModeChanged = 12;
static final int TRANSACTION_onShuffleModeChangedRemoved = 10;
static final int TRANSACTION_onVolumeInfoChanged = 8;
public static IMediaControllerCallback getDefaultImpl() {
return Proxy.sDefaultImpl;
}
@Override // android.os.IInterface
public IBinder asBinder() {
return this;
}
public Stub() {
attachInterface(this, DESCRIPTOR);
}
public static IMediaControllerCallback asInterface(IBinder iBinder) {
if (iBinder == null) {
return null;
}
IInterface queryLocalInterface = iBinder.queryLocalInterface(DESCRIPTOR);
if (queryLocalInterface != null && (queryLocalInterface instanceof IMediaControllerCallback)) {
return (IMediaControllerCallback) queryLocalInterface;
}
return new Proxy(iBinder);
}
@Override // android.os.Binder
public boolean onTransact(int i, Parcel parcel, Parcel parcel2, int i2) throws RemoteException {
if (i == 1598968902) {
parcel2.writeString(DESCRIPTOR);
return true;
}
switch (i) {
case 1:
parcel.enforceInterface(DESCRIPTOR);
onEvent(parcel.readString(), parcel.readInt() != 0 ? (Bundle) Bundle.CREATOR.createFromParcel(parcel) : null);
return true;
case 2:
parcel.enforceInterface(DESCRIPTOR);
onSessionDestroyed();
return true;
case 3:
parcel.enforceInterface(DESCRIPTOR);
onPlaybackStateChanged(parcel.readInt() != 0 ? PlaybackStateCompat.CREATOR.createFromParcel(parcel) : null);
return true;
case 4:
parcel.enforceInterface(DESCRIPTOR);
onMetadataChanged(parcel.readInt() != 0 ? MediaMetadataCompat.CREATOR.createFromParcel(parcel) : null);
return true;
case 5:
parcel.enforceInterface(DESCRIPTOR);
onQueueChanged(parcel.createTypedArrayList(MediaSessionCompat.QueueItem.CREATOR));
return true;
case 6:
parcel.enforceInterface(DESCRIPTOR);
onQueueTitleChanged(parcel.readInt() != 0 ? (CharSequence) TextUtils.CHAR_SEQUENCE_CREATOR.createFromParcel(parcel) : null);
return true;
case 7:
parcel.enforceInterface(DESCRIPTOR);
onExtrasChanged(parcel.readInt() != 0 ? (Bundle) Bundle.CREATOR.createFromParcel(parcel) : null);
return true;
case 8:
parcel.enforceInterface(DESCRIPTOR);
onVolumeInfoChanged(parcel.readInt() != 0 ? ParcelableVolumeInfo.CREATOR.createFromParcel(parcel) : null);
return true;
case 9:
parcel.enforceInterface(DESCRIPTOR);
onRepeatModeChanged(parcel.readInt());
return true;
case 10:
parcel.enforceInterface(DESCRIPTOR);
onShuffleModeChangedRemoved(parcel.readInt() != 0);
return true;
case 11:
parcel.enforceInterface(DESCRIPTOR);
onCaptioningEnabledChanged(parcel.readInt() != 0);
return true;
case 12:
parcel.enforceInterface(DESCRIPTOR);
onShuffleModeChanged(parcel.readInt());
return true;
case 13:
parcel.enforceInterface(DESCRIPTOR);
onSessionReady();
return true;
default:
return super.onTransact(i, parcel, parcel2, i2);
}
}
public static class Proxy implements IMediaControllerCallback {
public static IMediaControllerCallback sDefaultImpl;
private IBinder mRemote;
@Override // android.os.IInterface
public IBinder asBinder() {
return this.mRemote;
}
public String getInterfaceDescriptor() {
return Stub.DESCRIPTOR;
}
public Proxy(IBinder iBinder) {
this.mRemote = iBinder;
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onEvent(String str, Bundle bundle) throws RemoteException {
Parcel obtain = Parcel.obtain();
try {
obtain.writeInterfaceToken(Stub.DESCRIPTOR);
obtain.writeString(str);
if (bundle != null) {
obtain.writeInt(1);
bundle.writeToParcel(obtain, 0);
} else {
obtain.writeInt(0);
}
if (this.mRemote.transact(1, obtain, null, 1) || Stub.getDefaultImpl() == null) {
obtain.recycle();
} else {
Stub.getDefaultImpl().onEvent(str, bundle);
obtain.recycle();
}
} catch (Throwable th) {
obtain.recycle();
throw th;
}
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onSessionDestroyed() throws RemoteException {
Parcel obtain = Parcel.obtain();
try {
obtain.writeInterfaceToken(Stub.DESCRIPTOR);
if (this.mRemote.transact(2, obtain, null, 1) || Stub.getDefaultImpl() == null) {
return;
}
Stub.getDefaultImpl().onSessionDestroyed();
} finally {
obtain.recycle();
}
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onPlaybackStateChanged(PlaybackStateCompat playbackStateCompat) throws RemoteException {
Parcel obtain = Parcel.obtain();
try {
obtain.writeInterfaceToken(Stub.DESCRIPTOR);
if (playbackStateCompat != null) {
obtain.writeInt(1);
playbackStateCompat.writeToParcel(obtain, 0);
} else {
obtain.writeInt(0);
}
if (this.mRemote.transact(3, obtain, null, 1) || Stub.getDefaultImpl() == null) {
obtain.recycle();
} else {
Stub.getDefaultImpl().onPlaybackStateChanged(playbackStateCompat);
obtain.recycle();
}
} catch (Throwable th) {
obtain.recycle();
throw th;
}
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onMetadataChanged(MediaMetadataCompat mediaMetadataCompat) throws RemoteException {
Parcel obtain = Parcel.obtain();
try {
obtain.writeInterfaceToken(Stub.DESCRIPTOR);
if (mediaMetadataCompat != null) {
obtain.writeInt(1);
mediaMetadataCompat.writeToParcel(obtain, 0);
} else {
obtain.writeInt(0);
}
if (this.mRemote.transact(4, obtain, null, 1) || Stub.getDefaultImpl() == null) {
obtain.recycle();
} else {
Stub.getDefaultImpl().onMetadataChanged(mediaMetadataCompat);
obtain.recycle();
}
} catch (Throwable th) {
obtain.recycle();
throw th;
}
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onQueueChanged(List<MediaSessionCompat.QueueItem> list) throws RemoteException {
Parcel obtain = Parcel.obtain();
try {
obtain.writeInterfaceToken(Stub.DESCRIPTOR);
obtain.writeTypedList(list);
if (this.mRemote.transact(5, obtain, null, 1) || Stub.getDefaultImpl() == null) {
return;
}
Stub.getDefaultImpl().onQueueChanged(list);
} finally {
obtain.recycle();
}
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onQueueTitleChanged(CharSequence charSequence) throws RemoteException {
Parcel obtain = Parcel.obtain();
try {
obtain.writeInterfaceToken(Stub.DESCRIPTOR);
if (charSequence != null) {
obtain.writeInt(1);
TextUtils.writeToParcel(charSequence, obtain, 0);
} else {
obtain.writeInt(0);
}
if (this.mRemote.transact(6, obtain, null, 1) || Stub.getDefaultImpl() == null) {
obtain.recycle();
} else {
Stub.getDefaultImpl().onQueueTitleChanged(charSequence);
obtain.recycle();
}
} catch (Throwable th) {
obtain.recycle();
throw th;
}
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onExtrasChanged(Bundle bundle) throws RemoteException {
Parcel obtain = Parcel.obtain();
try {
obtain.writeInterfaceToken(Stub.DESCRIPTOR);
if (bundle != null) {
obtain.writeInt(1);
bundle.writeToParcel(obtain, 0);
} else {
obtain.writeInt(0);
}
if (this.mRemote.transact(7, obtain, null, 1) || Stub.getDefaultImpl() == null) {
obtain.recycle();
} else {
Stub.getDefaultImpl().onExtrasChanged(bundle);
obtain.recycle();
}
} catch (Throwable th) {
obtain.recycle();
throw th;
}
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onVolumeInfoChanged(ParcelableVolumeInfo parcelableVolumeInfo) throws RemoteException {
Parcel obtain = Parcel.obtain();
try {
obtain.writeInterfaceToken(Stub.DESCRIPTOR);
if (parcelableVolumeInfo != null) {
obtain.writeInt(1);
parcelableVolumeInfo.writeToParcel(obtain, 0);
} else {
obtain.writeInt(0);
}
if (this.mRemote.transact(8, obtain, null, 1) || Stub.getDefaultImpl() == null) {
obtain.recycle();
} else {
Stub.getDefaultImpl().onVolumeInfoChanged(parcelableVolumeInfo);
obtain.recycle();
}
} catch (Throwable th) {
obtain.recycle();
throw th;
}
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onRepeatModeChanged(int i) throws RemoteException {
Parcel obtain = Parcel.obtain();
try {
obtain.writeInterfaceToken(Stub.DESCRIPTOR);
obtain.writeInt(i);
if (this.mRemote.transact(9, obtain, null, 1) || Stub.getDefaultImpl() == null) {
return;
}
Stub.getDefaultImpl().onRepeatModeChanged(i);
} finally {
obtain.recycle();
}
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onShuffleModeChangedRemoved(boolean z) throws RemoteException {
Parcel obtain = Parcel.obtain();
try {
obtain.writeInterfaceToken(Stub.DESCRIPTOR);
obtain.writeInt(z ? 1 : 0);
if (this.mRemote.transact(10, obtain, null, 1) || Stub.getDefaultImpl() == null) {
return;
}
Stub.getDefaultImpl().onShuffleModeChangedRemoved(z);
} finally {
obtain.recycle();
}
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onCaptioningEnabledChanged(boolean z) throws RemoteException {
Parcel obtain = Parcel.obtain();
try {
obtain.writeInterfaceToken(Stub.DESCRIPTOR);
obtain.writeInt(z ? 1 : 0);
if (this.mRemote.transact(11, obtain, null, 1) || Stub.getDefaultImpl() == null) {
return;
}
Stub.getDefaultImpl().onCaptioningEnabledChanged(z);
} finally {
obtain.recycle();
}
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onShuffleModeChanged(int i) throws RemoteException {
Parcel obtain = Parcel.obtain();
try {
obtain.writeInterfaceToken(Stub.DESCRIPTOR);
obtain.writeInt(i);
if (this.mRemote.transact(12, obtain, null, 1) || Stub.getDefaultImpl() == null) {
return;
}
Stub.getDefaultImpl().onShuffleModeChanged(i);
} finally {
obtain.recycle();
}
}
@Override // android.support.v4.media.session.IMediaControllerCallback
public void onSessionReady() throws RemoteException {
Parcel obtain = Parcel.obtain();
try {
obtain.writeInterfaceToken(Stub.DESCRIPTOR);
if (this.mRemote.transact(13, obtain, null, 1) || Stub.getDefaultImpl() == null) {
return;
}
Stub.getDefaultImpl().onSessionReady();
} finally {
obtain.recycle();
}
}
}
public static boolean setDefaultImpl(IMediaControllerCallback iMediaControllerCallback) {
if (Proxy.sDefaultImpl != null) {
throw new IllegalStateException("setDefaultImpl() called twice");
}
if (iMediaControllerCallback == null) {
return false;
}
Proxy.sDefaultImpl = iMediaControllerCallback;
return true;
}
}
}