mirror of
https://github.com/TeamVanced/VancedMicroG
synced 2024-09-04 21:45:57 +02:00
Update to latest upstream
This commit is contained in:
parent
7a7f663c72
commit
aa816ef84b
15
.travis.yml
Normal file
15
.travis.yml
Normal file
@ -0,0 +1,15 @@
|
||||
language: java
|
||||
jdk: openjdk8
|
||||
install:
|
||||
- mkdir $HOME/android-cmdline-tools
|
||||
- curl https://dl.google.com/android/repository/commandlinetools-linux-6609375_latest.zip > $HOME/android-cmdline-tools/cmdline-tools.zip
|
||||
- unzip -qq -n $HOME/android-cmdline-tools/cmdline-tools.zip -d $HOME/android-cmdline-tools
|
||||
- echo y | $HOME/android-cmdline-tools/tools/bin/sdkmanager --sdk_root=$HOME/android-sdk 'platform-tools'
|
||||
- echo y | $HOME/android-cmdline-tools/tools/bin/sdkmanager --sdk_root=$HOME/android-sdk 'build-tools;29.0.3'
|
||||
- echo y | $HOME/android-cmdline-tools/tools/bin/sdkmanager --sdk_root=$HOME/android-sdk 'platforms;android-30'
|
||||
env:
|
||||
- ANDROID_HOME=$HOME/android-sdk TERM=dumb JAVA_OPTS="-Xmx2048m"
|
||||
before_script:
|
||||
- echo sdk.dir $ANDROID_HOME > local.properties
|
||||
script:
|
||||
- ./gradlew --no-daemon build
|
@ -27,7 +27,7 @@ buildscript {
|
||||
|
||||
ext.androidMinSdk = 21
|
||||
ext.androidTargetSdk = 29
|
||||
ext.androidCompileSdk = 29
|
||||
ext.androidCompileSdk = 30
|
||||
|
||||
repositories {
|
||||
jcenter()
|
||||
|
@ -0,0 +1,3 @@
|
||||
package com.google.android.gms.phenotype;
|
||||
|
||||
parcelable Configurations;
|
@ -0,0 +1,9 @@
|
||||
package com.google.android.gms.phenotype.internal;
|
||||
|
||||
import com.google.android.gms.common.api.Status;
|
||||
import com.google.android.gms.phenotype.Configurations;
|
||||
|
||||
interface IPhenotypeCallbacks {
|
||||
void onRegister(in Status status) = 0;
|
||||
void onConfigurations(in Status status, in Configurations configurations) = 3;
|
||||
}
|
@ -0,0 +1,8 @@
|
||||
package com.google.android.gms.phenotype.internal;
|
||||
|
||||
import com.google.android.gms.phenotype.internal.IPhenotypeCallbacks;
|
||||
|
||||
interface IPhenotypeService {
|
||||
void register(IPhenotypeCallbacks callbacks, String p1, int p2, in String[] p3, in byte[] p4) = 0;
|
||||
void getConfigurationSnapshot(IPhenotypeCallbacks callbacks, String p1, String p2, String p3) = 10;
|
||||
}
|
@ -7,13 +7,55 @@ package com.google.android.gms.measurement.internal;
|
||||
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class AppMetadata extends AutoSafeParcelable {
|
||||
@Field(2)
|
||||
public String packageName;
|
||||
@Field(3)
|
||||
public String googleAppId;
|
||||
@Field(4)
|
||||
public String versionName;
|
||||
@Field(5)
|
||||
public String installerPackageName;
|
||||
@Field(6)
|
||||
private long field6;
|
||||
@Field(7)
|
||||
private long field7;
|
||||
@Field(8)
|
||||
private String field8;
|
||||
@Field(9)
|
||||
private boolean field9 = true;
|
||||
@Field(10)
|
||||
private boolean field10;
|
||||
@Field(11)
|
||||
public long versionCode;
|
||||
public long versionCode = Integer.MIN_VALUE;
|
||||
@Field(12)
|
||||
private String field12;
|
||||
@Field(13)
|
||||
private long field13;
|
||||
@Field(14)
|
||||
private long field14;
|
||||
@Field(15)
|
||||
public int appType;
|
||||
@Field(16)
|
||||
private boolean field16;
|
||||
@Field(17)
|
||||
public boolean ssaidCollectionEnabled = true;
|
||||
@Field(18)
|
||||
public boolean deferredAnalyticsCollection;
|
||||
@Field(19)
|
||||
public String admobAppId;
|
||||
@Field(21)
|
||||
public Boolean allowAdPersonalization;
|
||||
@Field(22)
|
||||
private long field22;
|
||||
@Field(23)
|
||||
public List<String> safelistedEvents;
|
||||
@Field(24)
|
||||
public String gaAppId;
|
||||
@Field(25)
|
||||
private String field25;
|
||||
|
||||
public static final Creator<AppMetadata> CREATOR = new AutoCreator<>(AppMetadata.class);
|
||||
}
|
||||
|
@ -8,5 +8,28 @@ package com.google.android.gms.measurement.internal;
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
|
||||
public class ConditionalUserPropertyParcel extends AutoSafeParcelable {
|
||||
@Field(2)
|
||||
public String appId;
|
||||
@Field(3)
|
||||
public String origin;
|
||||
@Field(4)
|
||||
public UserAttributeParcel userAttribute;
|
||||
@Field(5)
|
||||
public long creationTimestamp;
|
||||
@Field(6)
|
||||
public boolean active;
|
||||
@Field(7)
|
||||
public String triggerEventName;
|
||||
@Field(8)
|
||||
public EventParcel timedOutEvent;
|
||||
@Field(9)
|
||||
public long triggerTimeout;
|
||||
@Field(10)
|
||||
public EventParcel triggerEvent;
|
||||
@Field(11)
|
||||
public long timeToLive;
|
||||
@Field(12)
|
||||
public EventParcel expiredEvent;
|
||||
|
||||
public static final Creator<ConditionalUserPropertyParcel> CREATOR = new AutoCreator<>(ConditionalUserPropertyParcel.class);
|
||||
}
|
||||
|
@ -0,0 +1,18 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2020, microG Project Team
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
package com.google.android.gms.phenotype;
|
||||
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
|
||||
public class Configuration extends AutoSafeParcelable {
|
||||
@Field(2)
|
||||
public int field2;
|
||||
@Field(3)
|
||||
public Flag[] field3;
|
||||
@Field(4)
|
||||
public String[] field4;
|
||||
public static final Creator<Configuration> CREATOR = new AutoCreator<>(Configuration.class);
|
||||
}
|
@ -0,0 +1,25 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2020, microG Project Team
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
package com.google.android.gms.phenotype;
|
||||
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
|
||||
public class Configurations extends AutoSafeParcelable {
|
||||
@Field(2)
|
||||
public String field2;
|
||||
@Field(3)
|
||||
public String field3;
|
||||
@Field(4)
|
||||
public Configuration[] field4;
|
||||
@Field(5)
|
||||
public boolean field5;
|
||||
@Field(6)
|
||||
public byte[] field6;
|
||||
@Field(7)
|
||||
public long field7;
|
||||
|
||||
public static final Creator<Configurations> CREATOR = new AutoCreator<>(Configurations.class);
|
||||
}
|
@ -0,0 +1,12 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2020, microG Project Team
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
package com.google.android.gms.phenotype;
|
||||
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
|
||||
public class Flag extends AutoSafeParcelable {
|
||||
public static final Creator<Flag> CREATOR = new AutoCreator<>(Flag.class);
|
||||
}
|
@ -23,33 +23,26 @@ import com.google.android.gms.cast.framework.media.CastMediaOptions;
|
||||
import com.google.android.gms.cast.LaunchOptions;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class CastOptions extends AutoSafeParcelable {
|
||||
@SafeParceled(1)
|
||||
@Field(1)
|
||||
private int versionCode = 1;
|
||||
|
||||
@SafeParceled(2)
|
||||
@Field(2)
|
||||
private String receiverApplicationId;
|
||||
|
||||
@SafeParceled(3)
|
||||
@Field(3)
|
||||
private ArrayList<String> supportedNamespaces;
|
||||
|
||||
@SafeParceled(4)
|
||||
@Field(4)
|
||||
private boolean stopReceiverApplicationWhenEndingSession;
|
||||
|
||||
@SafeParceled(5)
|
||||
@Field(5)
|
||||
private LaunchOptions launchOptions;
|
||||
|
||||
@SafeParceled(6)
|
||||
@Field(6)
|
||||
private boolean resumeSavedSession;
|
||||
|
||||
@SafeParceled(7)
|
||||
@Field(7)
|
||||
private CastMediaOptions castMediaOptions;
|
||||
|
||||
@SafeParceled(8)
|
||||
@Field(8)
|
||||
private boolean enableReconnectionService;
|
||||
|
||||
@SafeParceled(9)
|
||||
@Field(9)
|
||||
private double volumeDeltaBeforeIceCreamSandwich;
|
||||
|
||||
public String getReceiverApplicationId() {
|
||||
@ -60,5 +53,5 @@ public class CastOptions extends AutoSafeParcelable {
|
||||
return this.launchOptions;
|
||||
}
|
||||
|
||||
public static Creator<CastOptions> CREATOR = new AutoCreator<>(CastOptions.class);
|
||||
public static Creator<CastOptions> CREATOR = new AutoCreator<CastOptions>(CastOptions.class);
|
||||
}
|
||||
|
@ -21,16 +21,20 @@ import org.microg.safeparcel.SafeParceled;
|
||||
|
||||
public class CastMediaOptions extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1)
|
||||
@Field(1)
|
||||
private int versionCode = 1;
|
||||
@SafeParceled(2)
|
||||
@Field(2)
|
||||
public String mediaIntentReceiverClassName;
|
||||
@SafeParceled(3)
|
||||
@Field(3)
|
||||
public String expandedControllerActivityClassName;
|
||||
@SafeParceled(4)
|
||||
@Field(4)
|
||||
public IImagePicker imagePicker;
|
||||
@SafeParceled(5)
|
||||
@Field(5)
|
||||
public NotificationOptions notificationOptions;
|
||||
@Field(6)
|
||||
public boolean bool6;
|
||||
@Field(7)
|
||||
public boolean bool7;
|
||||
|
||||
public static Creator<CastMediaOptions> CREATOR = new AutoCreator<>(CastMediaOptions.class);
|
||||
public static Creator<CastMediaOptions> CREATOR = new AutoCreator<CastMediaOptions>(CastMediaOptions.class);
|
||||
}
|
||||
|
@ -25,72 +25,72 @@ import org.microg.safeparcel.SafeParceled;
|
||||
|
||||
public class NotificationOptions extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1)
|
||||
@Field(1)
|
||||
private int versionCode = 1;
|
||||
@SafeParceled(2)
|
||||
@Field(2)
|
||||
public List<String> actions;
|
||||
@SafeParceled(3)
|
||||
@Field(3)
|
||||
public int[] compatActionIndices;
|
||||
@SafeParceled(4)
|
||||
@Field(4)
|
||||
public long skipStepMs;
|
||||
@SafeParceled(5)
|
||||
@Field(5)
|
||||
public String targetActivityClassName;
|
||||
@SafeParceled(6)
|
||||
@Field(6)
|
||||
public int getSmallIconDrawableResId;
|
||||
@SafeParceled(7)
|
||||
@Field(7)
|
||||
public int getStopLiveStreamDrawableResId;
|
||||
@SafeParceled(8)
|
||||
@Field(8)
|
||||
public int getPauseDrawableResId;
|
||||
@SafeParceled(9)
|
||||
@Field(9)
|
||||
public int getPlayDrawableResId;
|
||||
@SafeParceled(10)
|
||||
@Field(10)
|
||||
public int getSkipNextDrawableResId;
|
||||
@SafeParceled(11)
|
||||
@Field(11)
|
||||
public int getSkipPrevDrawableResId;
|
||||
@SafeParceled(12)
|
||||
@Field(12)
|
||||
public int getForwardDrawableResId;
|
||||
@SafeParceled(13)
|
||||
@Field(13)
|
||||
public int getForward10DrawableResId;
|
||||
@SafeParceled(14)
|
||||
@Field(14)
|
||||
public int getForward30DrawableResId;
|
||||
@SafeParceled(15)
|
||||
@Field(15)
|
||||
public int getRewindDrawableResId;
|
||||
@SafeParceled(16)
|
||||
@Field(16)
|
||||
public int getRewind10DrawableResId;
|
||||
@SafeParceled(17)
|
||||
@Field(17)
|
||||
public int getRewind30DrawableResId;
|
||||
@SafeParceled(18)
|
||||
@Field(18)
|
||||
public int getDisconnectDrawableResId;
|
||||
@SafeParceled(19)
|
||||
@Field(19)
|
||||
public int intvar19;
|
||||
@SafeParceled(20)
|
||||
@Field(20)
|
||||
public int getCastingToDeviceStringResId;
|
||||
@SafeParceled(21)
|
||||
@Field(21)
|
||||
public int getStopLiveStreamTitleResId;
|
||||
@SafeParceled(22)
|
||||
@Field(22)
|
||||
public int intvar22;
|
||||
@SafeParceled(23)
|
||||
@Field(23)
|
||||
public int intvar23;
|
||||
@SafeParceled(24)
|
||||
@Field(24)
|
||||
public int intvar24;
|
||||
@SafeParceled(25)
|
||||
@Field(25)
|
||||
public int intvar25;
|
||||
@SafeParceled(26)
|
||||
@Field(26)
|
||||
public int intvar26;
|
||||
@SafeParceled(27)
|
||||
@Field(27)
|
||||
public int intvar27;
|
||||
@SafeParceled(28)
|
||||
@Field(28)
|
||||
public int intvar28;
|
||||
@SafeParceled(29)
|
||||
@Field(29)
|
||||
public int intvar29;
|
||||
@SafeParceled(30)
|
||||
@Field(30)
|
||||
public int intvar30;
|
||||
@SafeParceled(31)
|
||||
@Field(31)
|
||||
public int intvar31;
|
||||
@SafeParceled(32)
|
||||
@Field(32)
|
||||
public int intvar32;
|
||||
@SafeParceled(33)
|
||||
@Field(33)
|
||||
public INotificationActionsProvider notificationActionsProvider;
|
||||
|
||||
public static Creator<NotificationOptions> CREATOR = new AutoCreator<>(NotificationOptions.class);
|
||||
public static Creator<NotificationOptions> CREATOR = new AutoCreator<NotificationOptions>(NotificationOptions.class);
|
||||
}
|
||||
|
@ -76,6 +76,7 @@
|
||||
tools:ignore="ProtectedPermissions" />
|
||||
|
||||
<application
|
||||
android:forceQueryable="true"
|
||||
android:allowBackup="false"
|
||||
android:extractNativeLibs="true"
|
||||
android:icon="@mipmap/ic_launcher"
|
||||
@ -115,8 +116,15 @@
|
||||
|
||||
<receiver android:name="org.microg.gms.checkin.TriggerReceiver">
|
||||
<intent-filter>
|
||||
<action android:name="android.server.checkin.CHECKIN" />
|
||||
<action android:name="android.intent.action.BOOT_COMPLETED" />
|
||||
<action android:name="android.intent.action.AIRPLANE_MODE" />
|
||||
<action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
|
||||
<action android:name="android.net.conn.BACKGROUND_DATA_SETTING_CHANGED" />
|
||||
|
||||
<action android:name="android.server.checkin.CHECKIN" />
|
||||
|
||||
<action android:name="android.intent.action.MY_PACKAGE_REPLACED" />
|
||||
<action android:name="android.intent.action.PACKAGE_RESTARTED" />
|
||||
</intent-filter>
|
||||
<intent-filter>
|
||||
<action android:name="com.mgoogle.android.c2dm.intent.RECEIVE" />
|
||||
@ -331,13 +339,21 @@
|
||||
</activity>
|
||||
|
||||
|
||||
<!-- Other -->
|
||||
<!-- Phenotype -->
|
||||
|
||||
<provider
|
||||
android:name="org.microg.gms.phenotype.ConfigurationProvider"
|
||||
android:authorities="com.mgoogle.android.gms.phenotype"
|
||||
android:exported="true" />
|
||||
|
||||
<service android:name="org.microg.gms.phenotype.PhenotypeService">
|
||||
<intent-filter>
|
||||
<action android:name="com.mgoogle.android.gms.phenotype.service.START" />
|
||||
</intent-filter>
|
||||
</service>
|
||||
|
||||
<!-- Other -->
|
||||
|
||||
<service
|
||||
android:name="org.microg.gms.measurement.MeasurementBrokerService"
|
||||
android:exported="true">
|
||||
@ -384,7 +400,6 @@
|
||||
<action android:name="com.google.android.gms.cast_mirroring.service.START" />
|
||||
<action android:name="com.google.android.gms.common.service.START" />
|
||||
<action android:name="com.google.android.contextmanager.service.ContextManagerService.START" />
|
||||
<action android:name="com.mgoogle.android.gms.phenotype.service.START" />
|
||||
<action android:name="com.google.android.gms.auth.api.credentials.service.START" />
|
||||
<action android:name="com.google.android.gms.gass.START" />
|
||||
</intent-filter>
|
||||
|
@ -22,6 +22,8 @@ import android.os.IBinder;
|
||||
import android.os.RemoteException;
|
||||
import android.util.Log;
|
||||
|
||||
import androidx.lifecycle.LifecycleService;
|
||||
|
||||
import com.google.android.gms.common.internal.GetServiceRequest;
|
||||
import com.google.android.gms.common.internal.IGmsCallbacks;
|
||||
import com.google.android.gms.common.internal.IGmsServiceBroker;
|
||||
@ -31,7 +33,7 @@ import org.microg.gms.common.GmsService;
|
||||
import java.util.Arrays;
|
||||
import java.util.EnumSet;
|
||||
|
||||
public abstract class BaseService extends Service {
|
||||
public abstract class BaseService extends LifecycleService {
|
||||
private final IGmsServiceBroker broker;
|
||||
protected final String TAG;
|
||||
|
||||
@ -55,6 +57,7 @@ public abstract class BaseService extends Service {
|
||||
|
||||
@Override
|
||||
public IBinder onBind(Intent intent) {
|
||||
super.onBind(intent);
|
||||
Log.d(TAG, "onBind: " + intent);
|
||||
return broker.asBinder();
|
||||
}
|
||||
|
@ -18,7 +18,10 @@ package org.microg.gms.checkin;
|
||||
|
||||
import android.accounts.Account;
|
||||
import android.accounts.AccountManager;
|
||||
import android.app.AlarmManager;
|
||||
import android.app.IntentService;
|
||||
import android.app.PendingIntent;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.os.IBinder;
|
||||
import android.os.RemoteException;
|
||||
@ -35,6 +38,8 @@ import org.microg.gms.people.PeopleManager;
|
||||
|
||||
public class CheckinService extends IntentService {
|
||||
private static final String TAG = "GmsCheckinSvc";
|
||||
public static final long REGULAR_CHECKIN_INTERVAL = 12 * 60 * 60 * 1000; // 12 hours
|
||||
public static final long BACKUP_CHECKIN_DELAY = 3 * 60 * 60 * 1000; // 3 hours
|
||||
public static final String BIND_ACTION = "com.google.android.gms.checkin.BIND_TO_SERVICE";
|
||||
public static final String EXTRA_FORCE_CHECKIN = "force";
|
||||
public static final String EXTRA_CALLBACK_INTENT = "callback";
|
||||
@ -73,6 +78,7 @@ public class CheckinService extends IntentService {
|
||||
Log.w(TAG, e);
|
||||
} finally {
|
||||
WakefulBroadcastReceiver.completeWakefulIntent(intent);
|
||||
schedule(this);
|
||||
stopSelf();
|
||||
}
|
||||
}
|
||||
@ -85,4 +91,10 @@ public class CheckinService extends IntentService {
|
||||
return super.onBind(intent);
|
||||
}
|
||||
}
|
||||
|
||||
static void schedule(Context context) {
|
||||
AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
|
||||
PendingIntent pendingIntent = PendingIntent.getService(context, TriggerReceiver.class.getName().hashCode(), new Intent(context, TriggerReceiver.class), PendingIntent.FLAG_ONE_SHOT | PendingIntent.FLAG_UPDATE_CURRENT);
|
||||
alarmManager.set(AlarmManager.RTC, Math.max(LastCheckinInfo.read(context).lastCheckin + REGULAR_CHECKIN_INTERVAL, System.currentTimeMillis() + BACKUP_CHECKIN_DELAY), pendingIntent);
|
||||
}
|
||||
}
|
||||
|
@ -27,10 +27,10 @@ import androidx.legacy.content.WakefulBroadcastReceiver;
|
||||
import org.microg.gms.common.ForegroundServiceContext;
|
||||
|
||||
import static org.microg.gms.checkin.CheckinService.EXTRA_FORCE_CHECKIN;
|
||||
import static org.microg.gms.checkin.CheckinService.REGULAR_CHECKIN_INTERVAL;
|
||||
|
||||
public class TriggerReceiver extends WakefulBroadcastReceiver {
|
||||
private static final String TAG = "GmsCheckinTrigger";
|
||||
private static final long REGULAR_CHECKIN_INTERVAL = 12 * 60 * 60 * 1000; // 12 hours
|
||||
|
||||
@Override
|
||||
public void onReceive(Context context, Intent intent) {
|
||||
@ -41,6 +41,7 @@ public class TriggerReceiver extends WakefulBroadcastReceiver {
|
||||
if (CheckinPrefs.get(context).isEnabled() || force) {
|
||||
if (ConnectivityManager.CONNECTIVITY_ACTION.equals(intent.getAction()) &&
|
||||
LastCheckinInfo.read(context).lastCheckin > System.currentTimeMillis() - REGULAR_CHECKIN_INTERVAL) {
|
||||
CheckinService.schedule(context);
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -0,0 +1,45 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2020, microG Project Team
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
package org.microg.gms.phenotype
|
||||
|
||||
import android.os.Parcel
|
||||
import android.util.Log
|
||||
import com.google.android.gms.common.api.Status
|
||||
import com.google.android.gms.common.internal.GetServiceRequest
|
||||
import com.google.android.gms.common.internal.IGmsCallbacks
|
||||
import com.google.android.gms.phenotype.Configurations
|
||||
import com.google.android.gms.phenotype.internal.IPhenotypeCallbacks
|
||||
import com.google.android.gms.phenotype.internal.IPhenotypeService
|
||||
import org.microg.gms.BaseService
|
||||
import org.microg.gms.common.GmsService
|
||||
|
||||
private const val TAG = "GmsPhenotypeSvc"
|
||||
|
||||
class PhenotypeService : BaseService(TAG, GmsService.PHENOTYPE) {
|
||||
override fun handleServiceRequest(callback: IGmsCallbacks, request: GetServiceRequest?, service: GmsService?) {
|
||||
callback.onPostInitComplete(0, PhenotypeServiceImpl().asBinder(), null)
|
||||
}
|
||||
}
|
||||
|
||||
class PhenotypeServiceImpl : IPhenotypeService.Stub() {
|
||||
override fun register(callbacks: IPhenotypeCallbacks, p1: String?, p2: Int, p3: Array<out String>?, p4: ByteArray?) {
|
||||
Log.d(TAG, "register($p1, $p2, ${p3?.contentToString()}, $p4)")
|
||||
callbacks.onRegister(Status.SUCCESS)
|
||||
}
|
||||
|
||||
override fun getConfigurationSnapshot(callbacks: IPhenotypeCallbacks, p1: String?, p2: String?, p3: String?) {
|
||||
Log.d(TAG, "getConfigurationSnapshot($p1, $p2, $p3)")
|
||||
callbacks.onConfigurations(Status.SUCCESS, Configurations().apply {
|
||||
field4 = emptyArray()
|
||||
})
|
||||
}
|
||||
|
||||
override fun onTransact(code: Int, data: Parcel, reply: Parcel?, flags: Int): Boolean {
|
||||
if (super.onTransact(code, data, reply, flags)) return true
|
||||
Log.d(TAG, "onTransact [unknown]: $code, $data, $flags")
|
||||
return false
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user