Skip to content

Commit ef110b0

Browse files
committed
Drop play-services-core-proto dependency from play-services-base/core
Probably should never have ended up there. We have some minimal code duplication now, but that can be tackled in the future
1 parent 54db391 commit ef110b0

6 files changed

Lines changed: 55 additions & 42 deletions

File tree

play-services-base/core/build.gradle

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ apply plugin: 'signing'
1010

1111
dependencies {
1212
api project(':play-services-basement-ktx')
13-
implementation project(":play-services-core-proto")
1413

1514
implementation "androidx.annotation:annotation:$annotationVersion"
1615
implementation "androidx.appcompat:appcompat:$appcompatVersion"

play-services-base/core/src/main/kotlin/org/microg/gms/checkin/LastCheckinInfo.kt

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,6 @@ data class LastCheckinInfo(
1717
val deviceDataVersionInfo: String,
1818
) {
1919

20-
constructor(r: CheckinResponse) : this(
21-
lastCheckin = r.timeMs ?: 0L,
22-
androidId = r.androidId ?: 0L,
23-
securityToken = r.securityToken ?: 0L,
24-
digest = r.digest ?: SettingsContract.CheckIn.INITIAL_DIGEST,
25-
versionInfo = r.versionInfo ?: "",
26-
deviceDataVersionInfo = r.deviceDataVersionInfo ?: "",
27-
)
28-
2920
companion object {
3021
@JvmStatic
3122
fun read(context: Context): LastCheckinInfo {
@@ -74,4 +65,4 @@ data class LastCheckinInfo(
7465
put(SettingsContract.CheckIn.VERSION_INFO, versionInfo)
7566
put(SettingsContract.CheckIn.DEVICE_DATA_VERSION_INFO, deviceDataVersionInfo)
7667
}
77-
}
68+
}

play-services-base/core/src/main/kotlin/org/microg/gms/common/DeviceConfigProto.kt

Lines changed: 0 additions & 26 deletions
This file was deleted.

play-services-core/src/main/java/org/microg/gms/checkin/CheckinClient.java

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
import android.content.Context;
2020
import android.util.Log;
2121

22-
import org.microg.gms.common.DeviceConfigProtoKt;
2322
import org.microg.gms.common.DeviceConfiguration;
2423
import org.microg.gms.common.DeviceIdentifier;
2524
import org.microg.gms.common.PhoneInfo;
@@ -79,6 +78,26 @@ public static CheckinResponse request(CheckinRequest request) throws IOException
7978
return response;
8079
}
8180

81+
private static DeviceConfig createDeviceConfig(DeviceConfiguration deviceConfiguration) {
82+
return new DeviceConfig.Builder()
83+
.availableFeature(deviceConfiguration.availableFeatures)
84+
.densityDpi(deviceConfiguration.densityDpi)
85+
.glEsVersion(deviceConfiguration.glEsVersion)
86+
.glExtension(deviceConfiguration.glExtensions)
87+
.hasFiveWayNavigation(deviceConfiguration.hasFiveWayNavigation)
88+
.hasHardKeyboard(deviceConfiguration.hasHardKeyboard)
89+
.heightPixels(deviceConfiguration.heightPixels)
90+
.keyboardType(deviceConfiguration.keyboardType)
91+
.locale(deviceConfiguration.locales)
92+
.nativePlatform(deviceConfiguration.nativePlatforms)
93+
.navigation(deviceConfiguration.navigation)
94+
.screenLayout(deviceConfiguration.screenLayout)
95+
.sharedLibrary(deviceConfiguration.sharedLibraries)
96+
.touchScreen(deviceConfiguration.touchScreen)
97+
.widthPixels(deviceConfiguration.widthPixels)
98+
.build();
99+
}
100+
82101
public static CheckinRequest makeRequest(Context context, DeviceConfiguration deviceConfiguration,
83102
DeviceIdentifier deviceIdent, PhoneInfo phoneInfo,
84103
LastCheckinInfo checkinInfo, Locale locale,
@@ -117,7 +136,7 @@ public static CheckinRequest makeRequest(Context context, DeviceConfiguration de
117136
.stat(TODO_LIST_CHECKIN)
118137
.userNumber(0)
119138
.build())
120-
.deviceConfiguration(DeviceConfigProtoKt.asProto(deviceConfiguration))
139+
.deviceConfiguration(createDeviceConfig(deviceConfiguration))
121140
.digest(checkinInfo.getDigest())
122141
.esn(deviceIdent.esn)
123142
.fragment(0)

play-services-core/src/main/java/org/microg/gms/checkin/CheckinManager.java

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import org.microg.gms.common.DeviceConfiguration;
2828
import org.microg.gms.common.Utils;
2929
import org.microg.gms.gservices.GServices;
30+
import org.microg.gms.settings.SettingsContract;
3031

3132
import java.io.IOException;
3233
import java.util.ArrayList;
@@ -61,8 +62,19 @@ public static synchronized LastCheckinInfo checkin(Context context, boolean forc
6162
return handleResponse(context, CheckinClient.request(request));
6263
}
6364

65+
private static LastCheckinInfo createLastCheckinInfo(CheckinResponse r) {
66+
return new LastCheckinInfo(
67+
r.timeMs != null ? r.timeMs : 0L,
68+
r.androidId != null ? r.androidId: 0L,
69+
r.securityToken != null ? r.securityToken : 0L,
70+
r.digest != null ? r.digest: SettingsContract.CheckIn.INITIAL_DIGEST,
71+
r.versionInfo != null ? r.versionInfo : "",
72+
r.deviceDataVersionInfo != null ? r.deviceDataVersionInfo : ""
73+
);
74+
}
75+
6476
private static LastCheckinInfo handleResponse(Context context, CheckinResponse response) {
65-
LastCheckinInfo info = new LastCheckinInfo(response);
77+
LastCheckinInfo info = createLastCheckinInfo(response);
6678
info.write(context);
6779

6880
ContentResolver resolver = context.getContentResolver();

vending-app/src/main/java/org/microg/vending/ui/WorkAppsActivity.kt

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@ import com.android.vending.installer.uninstallPackage
3434
import kotlinx.coroutines.runBlocking
3535
import org.microg.gms.auth.AuthConstants
3636
import org.microg.gms.common.DeviceConfiguration
37-
import org.microg.gms.common.asProto
3837
import org.microg.gms.profile.Build
3938
import org.microg.gms.profile.ProfileManager
4039
import org.microg.vending.UploadDeviceConfigRequest
@@ -57,6 +56,7 @@ import org.microg.vending.enterprise.Pending
5756
import org.microg.vending.enterprise.UpdateAvailable
5857
import org.microg.vending.enterprise.proto.AppInstallPolicy
5958
import com.android.vending.installer.InstallService
59+
import org.microg.gms.checkin.DeviceConfig
6060
import org.microg.vending.proto.AppMeta
6161
import org.microg.vending.proto.GetItemsRequest
6262
import org.microg.vending.proto.RequestApp
@@ -144,6 +144,24 @@ class WorkAppsActivity : ComponentActivity() {
144144
unbindService(serviceConnection)
145145
}
146146

147+
private fun DeviceConfiguration.asProto(): DeviceConfig = DeviceConfig(
148+
availableFeature = availableFeatures,
149+
densityDpi = densityDpi,
150+
glEsVersion = glEsVersion,
151+
glExtension = glExtensions,
152+
hasFiveWayNavigation = hasFiveWayNavigation,
153+
hasHardKeyboard = hasHardKeyboard,
154+
heightPixels = heightPixels,
155+
keyboardType = keyboardType,
156+
locale = locales,
157+
nativePlatform = nativePlatforms,
158+
navigation = navigation,
159+
screenLayout = screenLayout,
160+
sharedLibrary = sharedLibraries,
161+
touchScreen = touchScreen,
162+
widthPixels = widthPixels
163+
)
164+
147165
private fun load(account: Account) {
148166
networkState = NetworkState.ACTIVE
149167
Thread {
@@ -295,4 +313,4 @@ class WorkAppsActivity : ComponentActivity() {
295313
companion object {
296314
const val TAG = "GmsVendingWorkApp"
297315
}
298-
}
316+
}

0 commit comments

Comments
 (0)