Skip to content

Commit

Permalink
supplementary number 57 fitness.HistoryApi implementation
Browse files Browse the repository at this point in the history
  • Loading branch information
DaVinci9196 authored and ale5000-git committed Feb 20, 2024
1 parent 48ed878 commit 1289685
Show file tree
Hide file tree
Showing 33 changed files with 911 additions and 81 deletions.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

1 change: 1 addition & 0 deletions play-services-core/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,7 @@ dependencies {
implementation project(':play-services-recaptcha')
implementation project(':play-services-safetynet')
implementation project(':play-services-tasks-ktx')
implementation project(':play-services-fitness')

mapboxRuntimeOnly project(':play-services-maps-core-mapbox')
vtmRuntimeOnly project(':play-services-maps-core-vtm')
Expand Down
10 changes: 9 additions & 1 deletion play-services-core/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -900,6 +900,15 @@
</intent-filter>
</service>

<service
android:name="com.google.android.gms.fitness.service.history.FitHistoryBroker"
android:enabled="true"
android:exported="true">
<intent-filter>
<action android:name="com.google.android.gms.fitness.HistoryApi" />
</intent-filter>
</service>

<service android:name="org.microg.gms.DummyService">
<intent-filter>
<action android:name="com.google.android.contextmanager.service.ContextManagerService.START" />
Expand Down Expand Up @@ -955,7 +964,6 @@
<action android:name="com.google.android.gms.fitness.ConfigApi" />
<action android:name="com.google.android.gms.fitness.GoalsApi" />
<action android:name="com.google.android.gms.fitness.GoogleFitnessService.START" />
<action android:name="com.google.android.gms.fitness.HistoryApi" />
<action android:name="com.google.android.gms.fitness.InternalApi" />
<action android:name="com.google.android.gms.fitness.RecordingApi" />
<action android:name="com.google.android.gms.fitness.SensorsApi" />
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/

package com.google.android.gms.fitness.service.history

import android.os.Bundle
import android.util.Log
import com.google.android.gms.common.api.CommonStatusCodes
import com.google.android.gms.common.internal.GetServiceRequest
import com.google.android.gms.common.internal.IGmsCallbacks
import com.google.android.gms.fitness.internal.IGoogleFitHistoryApi
import com.google.android.gms.fitness.request.DataDeleteRequest
import com.google.android.gms.fitness.request.DataInsertRequest
import com.google.android.gms.fitness.request.DataReadRequest
import com.google.android.gms.fitness.request.GetSyncInfoRequest
import org.microg.gms.BaseService
import org.microg.gms.common.GmsService

const val TAG = "FitHistoryBroker"

class FitHistoryBroker : BaseService(TAG, GmsService.FITNESS_HISTORY) {
override fun handleServiceRequest(callback: IGmsCallbacks, request: GetServiceRequest, service: GmsService) {
callback.onPostInitComplete(CommonStatusCodes.SUCCESS, FitHistoryBrokerImpl().asBinder(), Bundle())
}
}

class FitHistoryBrokerImpl : IGoogleFitHistoryApi.Stub() {
override fun getDeleteData(dataDeleteRequest: DataDeleteRequest) {
Log.d(TAG, "Not implemented getDeleteData: $dataDeleteRequest")
}

override fun getSyncInfo(getSyncInfoRequest: GetSyncInfoRequest) {
Log.d(TAG, "Not implemented getSyncInfo: $getSyncInfoRequest")
}

override fun getInsertData(dataInsertRequest: DataInsertRequest) {
Log.d(TAG, "Not implemented getInsertData: $dataInsertRequest")
}

override fun getReadData(dataReadRequest: DataReadRequest) {
Log.d(TAG, "Not implemented getReadData: $dataReadRequest")
}
}
1 change: 1 addition & 0 deletions play-services-fitness/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/build
34 changes: 34 additions & 0 deletions play-services-fitness/build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
plugins {
id 'com.android.library'
id 'kotlin-android'
}

android {
namespace "com.google.android.gms.fitness"

compileSdkVersion androidCompileSdk
buildToolsVersion "$androidBuildVersionTools"

buildFeatures {
aidl = true
}

defaultConfig {
versionName version
minSdkVersion androidMinSdk
targetSdkVersion androidTargetSdk
}

compileOptions {
sourceCompatibility = 1.8
targetCompatibility = 1.8
}
}

dependencies {
api project(':play-services-base')
api project(':play-services-base-core')
api project(':play-services-basement')

annotationProcessor project(':safe-parcel-processor')
}
4 changes: 4 additions & 0 deletions play-services-fitness/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">

</manifest>
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/

package com.google.android.gms.fitness.internal;

import com.google.android.gms.fitness.request.DataReadResult;

interface IDataReadCallback {
void onPostResult(in DataReadResult dataReadResult) = 0;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/

package com.google.android.gms.fitness.internal;

import com.google.android.gms.fitness.request.DataDeleteRequest;
import com.google.android.gms.fitness.request.GetSyncInfoRequest;
import com.google.android.gms.fitness.request.DataInsertRequest;
import com.google.android.gms.fitness.request.DataReadRequest;

interface IGoogleFitHistoryApi {
void getDeleteData(in DataDeleteRequest dataDeleteRequest) = 0;
void getSyncInfo(in GetSyncInfoRequest getSyncInfoRequest) = 1;
void getInsertData(in DataInsertRequest dataInsertRequest) = 2;
void getReadData(in DataReadRequest dataReadRequest) = 3;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/

package com.google.android.gms.fitness.internal;

import com.google.android.gms.common.api.Status;

interface IStatusCallback {
void onPostResult(in Status status) = 0;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/

package com.google.android.gms.fitness.internal;

interface ISyncInfoCallback {

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/

package com.google.android.gms.fitness.request;

parcelable DataDeleteRequest;
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/

package com.google.android.gms.fitness.request;

parcelable DataInsertRequest;
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/

package com.google.android.gms.fitness.request;

parcelable DataReadRequest;
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/

package com.google.android.gms.fitness.request;

parcelable DataReadResult;
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/

package com.google.android.gms.fitness.request;

parcelable GetSyncInfoRequest;
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/

package com.google.android.gms.fitness.data;

import android.os.Parcel;

import androidx.annotation.NonNull;

import com.google.android.gms.common.internal.safeparcel.AbstractSafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelableCreatorAndWriter;

import org.microg.gms.utils.ToStringHelper;

@SafeParcelable.Class
public class AppInfo extends AbstractSafeParcelable {

public static final AppInfo DEFAULT = new AppInfo("com.google.android.gms");

@Field(1)
public String packageName;

public AppInfo() {
}

public AppInfo(String packageName) {
this.packageName = packageName;
}

@NonNull
@Override
public String toString() {
return ToStringHelper.name("AppInfo")
.field("packageName", packageName)
.end();
}

@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
CREATOR.writeToParcel(this, dest, flags);
}

public static final SafeParcelableCreatorAndWriter<AppInfo> CREATOR = findCreator(AppInfo.class);

}
Loading

0 comments on commit 1289685

Please sign in to comment.