From 6555997664b83ccc7aa20edaa9ea780a5da2ed8a Mon Sep 17 00:00:00 2001 From: Marvin W Date: Sun, 6 Jun 2021 16:00:43 -0600 Subject: [PATCH] Location: fix LocationSettingsRequest parcelable --- .../LocationSettingsConfiguration.java | 19 ++++++++++++ .../gms/location/LocationSettingsRequest.java | 31 ++++++++----------- 2 files changed, 32 insertions(+), 18 deletions(-) create mode 100644 play-services-location-api/src/main/java/com/google/android/gms/location/LocationSettingsConfiguration.java diff --git a/play-services-location-api/src/main/java/com/google/android/gms/location/LocationSettingsConfiguration.java b/play-services-location-api/src/main/java/com/google/android/gms/location/LocationSettingsConfiguration.java new file mode 100644 index 00000000..29dabea9 --- /dev/null +++ b/play-services-location-api/src/main/java/com/google/android/gms/location/LocationSettingsConfiguration.java @@ -0,0 +1,19 @@ +/* + * SPDX-FileCopyrightText: 2021, microG Project Team + * SPDX-License-Identifier: Apache-2.0 + */ + +package com.google.android.gms.location; + +import org.microg.safeparcel.AutoSafeParcelable; + +public class LocationSettingsConfiguration extends AutoSafeParcelable { + @Field(1) + public String justificationText; + @Field(2) + public String experimentId; + @Field(5) + public String titleText; + + public static final Creator CREATOR = new AutoCreator<>(LocationSettingsConfiguration.class); +} diff --git a/play-services-location-api/src/main/java/com/google/android/gms/location/LocationSettingsRequest.java b/play-services-location-api/src/main/java/com/google/android/gms/location/LocationSettingsRequest.java index 517ab1c8..f77a392e 100644 --- a/play-services-location-api/src/main/java/com/google/android/gms/location/LocationSettingsRequest.java +++ b/play-services-location-api/src/main/java/com/google/android/gms/location/LocationSettingsRequest.java @@ -1,17 +1,6 @@ /* - * Copyright (C) 2013-2017 microG Project Team - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. + * SPDX-FileCopyrightText: 2015, microG Project Team + * SPDX-License-Identifier: Apache-2.0 */ package com.google.android.gms.location; @@ -26,27 +15,33 @@ import java.util.List; @PublicApi public class LocationSettingsRequest extends AutoSafeParcelable { - @SafeParceled(1000) + @Field(1000) private int versionCode = 2; - @SafeParceled(value = 1, subClass = LocationRequest.class) + @Field(value = 1, subClass = LocationRequest.class) @PublicApi(exclude = true) public List requests; - @SafeParceled(2) + @Field(2) @PublicApi(exclude = true) public boolean alwaysShow; + @Field(3) @PublicApi(exclude = true) public boolean needBle; + @Field(5) + @PublicApi(exclude = true) + public LocationSettingsConfiguration configuration; + private LocationSettingsRequest() { } - private LocationSettingsRequest(List requests, boolean alwaysShow, boolean needBle) { + private LocationSettingsRequest(List requests, boolean alwaysShow, boolean needBle, LocationSettingsConfiguration configuration) { this.requests = requests; this.alwaysShow = alwaysShow; this.needBle = needBle; + this.configuration = configuration; } /** @@ -79,7 +74,7 @@ public class LocationSettingsRequest extends AutoSafeParcelable { * Creates a LocationSettingsRequest that can be used with SettingsApi. */ public LocationSettingsRequest build() { - return new LocationSettingsRequest(requests, alwaysShow, needBle); + return new LocationSettingsRequest(requests, alwaysShow, needBle, null); } /**