mirror of
https://github.com/TeamVanced/VancedMicroG
synced 2024-12-24 11:45:50 +01:00
Implement API for AppInvite and Firebase Dynamic Links
This commit is contained in:
parent
ed68a9482e
commit
94de371cb9
49
firebase-dynamic-links-api/build.gradle
Normal file
49
firebase-dynamic-links-api/build.gradle
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2019 e Foundation
|
||||||
|
*
|
||||||
|
* 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
apply plugin: 'com.android.library'
|
||||||
|
|
||||||
|
String getMyVersionName() {
|
||||||
|
def stdout = new ByteArrayOutputStream()
|
||||||
|
if (rootProject.file("gradlew").exists())
|
||||||
|
exec { commandLine 'git', 'describe', '--tags', '--always', '--dirty'; standardOutput = stdout }
|
||||||
|
else // automatic build system, don't tag dirty
|
||||||
|
exec { commandLine 'git', 'describe', '--tags', '--always'; standardOutput = stdout }
|
||||||
|
return stdout.toString().trim().substring(1)
|
||||||
|
}
|
||||||
|
|
||||||
|
group = 'org.microg'
|
||||||
|
version = getMyVersionName()
|
||||||
|
|
||||||
|
android {
|
||||||
|
compileSdkVersion androidCompileSdk()
|
||||||
|
buildToolsVersion "$androidBuildVersionTools"
|
||||||
|
|
||||||
|
defaultConfig {
|
||||||
|
versionName getMyVersionName()
|
||||||
|
minSdkVersion androidMinSdk()
|
||||||
|
targetSdkVersion androidTargetSdk()
|
||||||
|
}
|
||||||
|
|
||||||
|
compileOptions {
|
||||||
|
sourceCompatibility JavaVersion.VERSION_1_8
|
||||||
|
targetCompatibility JavaVersion.VERSION_1_8
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
api project(':play-services-basement')
|
||||||
|
}
|
34
firebase-dynamic-links-api/gradle.properties
Normal file
34
firebase-dynamic-links-api/gradle.properties
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
#
|
||||||
|
# Copyright 2019 e Foundation
|
||||||
|
#
|
||||||
|
# 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.
|
||||||
|
#
|
||||||
|
|
||||||
|
POM_NAME=Firebase Dynamic Links API
|
||||||
|
POM_DESCRIPTION=Interfaces and objects for IPC between Firebase Library and microG
|
||||||
|
|
||||||
|
POM_PACKAGING=aar
|
||||||
|
|
||||||
|
POM_URL=https://github.com/microg/android_external_GmsApi
|
||||||
|
|
||||||
|
POM_SCM_URL=https://github.com/microg/android_external_GmsApi
|
||||||
|
POM_SCM_CONNECTION=scm:git@github.com:microg/android_external_GmsApi.git
|
||||||
|
POM_SCM_DEV_CONNECTION=scm:git@github.com:microg/android_external_GmsApi.git
|
||||||
|
|
||||||
|
POM_LICENCE_NAME=The Apache Software License, Version 2.0
|
||||||
|
POM_LICENCE_URL=http://www.apache.org/licenses/LICENSE-2.0.txt
|
||||||
|
POM_LICENCE_DIST=repo
|
||||||
|
|
||||||
|
POM_DEVELOPER_ID=alexandruchircu
|
||||||
|
POM_DEVELOPER_NAME=Alexandru Chircu
|
||||||
|
|
18
firebase-dynamic-links-api/src/main/AndroidManifest.xml
Normal file
18
firebase-dynamic-links-api/src/main/AndroidManifest.xml
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!--
|
||||||
|
~ Copyright (C) 2019 e Foundation
|
||||||
|
~
|
||||||
|
~ 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.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<manifest package="org.microg.gms.firebase.dynamiclinks.api"/>
|
@ -0,0 +1,3 @@
|
|||||||
|
package com.google.firebase.dynamiclinks.internal;
|
||||||
|
|
||||||
|
parcelable DynamicLinkData;
|
@ -0,0 +1,12 @@
|
|||||||
|
package com.google.firebase.dynamiclinks.internal;
|
||||||
|
|
||||||
|
|
||||||
|
import com.google.firebase.dynamiclinks.internal.DynamicLinkData;
|
||||||
|
import com.google.firebase.dynamiclinks.internal.ShortDynamicLink;
|
||||||
|
|
||||||
|
import com.google.android.gms.common.api.Status;
|
||||||
|
|
||||||
|
interface IDynamicLinksCallbacks {
|
||||||
|
void onStatusDynamicLinkData(in Status status, in DynamicLinkData dldata) = 0;
|
||||||
|
void onStatusShortDynamicLink(in Status status, in ShortDynamicLink sdlink) = 1;
|
||||||
|
}
|
@ -0,0 +1,12 @@
|
|||||||
|
package com.google.firebase.dynamiclinks.internal;
|
||||||
|
|
||||||
|
|
||||||
|
import com.google.firebase.dynamiclinks.internal.IDynamicLinksCallbacks;
|
||||||
|
|
||||||
|
import android.os.Bundle;
|
||||||
|
|
||||||
|
|
||||||
|
interface IDynamicLinksService {
|
||||||
|
void getInitialLink(IDynamicLinksCallbacks callback, String var2) = 0;
|
||||||
|
void func2(IDynamicLinksCallbacks callback, in Bundle var2) = 1;
|
||||||
|
}
|
@ -0,0 +1,3 @@
|
|||||||
|
package com.google.firebase.dynamiclinks.internal;
|
||||||
|
|
||||||
|
parcelable ShortDynamicLink;
|
@ -0,0 +1,3 @@
|
|||||||
|
package com.google.firebase.dynamiclinks.internal;
|
||||||
|
|
||||||
|
parcelable Warning;
|
@ -0,0 +1,57 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2019 e Foundation
|
||||||
|
*
|
||||||
|
* 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package com.google.firebase.dynamiclinks.internal;
|
||||||
|
|
||||||
|
|
||||||
|
import org.microg.safeparcel.AutoSafeParcelable;
|
||||||
|
import org.microg.safeparcel.SafeParceled;
|
||||||
|
|
||||||
|
import android.os.Bundle;
|
||||||
|
import android.net.Uri;
|
||||||
|
|
||||||
|
|
||||||
|
public class DynamicLinkData extends AutoSafeParcelable {
|
||||||
|
@SafeParceled(1)
|
||||||
|
public final String dynamicLink;
|
||||||
|
|
||||||
|
@SafeParceled(2)
|
||||||
|
public final String deepLink;
|
||||||
|
|
||||||
|
@SafeParceled(3)
|
||||||
|
public final int minVersion;
|
||||||
|
|
||||||
|
@SafeParceled(4)
|
||||||
|
public final long clickTimestamp;
|
||||||
|
|
||||||
|
@SafeParceled(5)
|
||||||
|
public final Bundle extensionBundle;
|
||||||
|
|
||||||
|
@SafeParceled(6)
|
||||||
|
public final Uri redirectUrl;
|
||||||
|
|
||||||
|
public DynamicLinkData() {
|
||||||
|
dynamicLink = new String();
|
||||||
|
deepLink = new String();
|
||||||
|
minVersion = 0;
|
||||||
|
clickTimestamp = 0;
|
||||||
|
extensionBundle = new Bundle();
|
||||||
|
redirectUrl = Uri.EMPTY;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public static final Creator<DynamicLinkData> CREATOR = new AutoCreator<DynamicLinkData>(DynamicLinkData.class);
|
||||||
|
}
|
@ -0,0 +1,50 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2019 e Foundation
|
||||||
|
*
|
||||||
|
* 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package com.google.firebase.dynamiclinks.internal;
|
||||||
|
|
||||||
|
|
||||||
|
import com.google.firebase.dynamiclinks.internal.Warning;
|
||||||
|
|
||||||
|
import org.microg.safeparcel.AutoSafeParcelable;
|
||||||
|
import org.microg.safeparcel.SafeParceled;
|
||||||
|
|
||||||
|
import android.net.Uri;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
|
|
||||||
|
public class ShortDynamicLink extends AutoSafeParcelable {
|
||||||
|
@SafeParceled(1)
|
||||||
|
public final Uri shortLink;
|
||||||
|
|
||||||
|
@SafeParceled(2)
|
||||||
|
public final Uri previewLink;
|
||||||
|
|
||||||
|
@SafeParceled(3)
|
||||||
|
public final List<Warning> warnings;
|
||||||
|
|
||||||
|
|
||||||
|
public ShortDynamicLink() {
|
||||||
|
shortLink = Uri.EMPTY;
|
||||||
|
previewLink = Uri.EMPTY;
|
||||||
|
|
||||||
|
warnings = new ArrayList<>();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public static final Creator<ShortDynamicLink> CREATOR = new AutoCreator<ShortDynamicLink>(ShortDynamicLink.class);
|
||||||
|
}
|
@ -0,0 +1,38 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (C) 2019 e Foundation
|
||||||
|
*
|
||||||
|
* 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package com.google.firebase.dynamiclinks.internal;
|
||||||
|
|
||||||
|
|
||||||
|
import org.microg.safeparcel.AutoSafeParcelable;
|
||||||
|
import org.microg.safeparcel.SafeParceled;
|
||||||
|
|
||||||
|
|
||||||
|
public class Warning extends AutoSafeParcelable {
|
||||||
|
@SafeParceled(1)
|
||||||
|
private int versionCode = 1;
|
||||||
|
|
||||||
|
@SafeParceled(2)
|
||||||
|
public final String message;
|
||||||
|
|
||||||
|
|
||||||
|
public Warning() {
|
||||||
|
message = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public static final Creator<Warning> CREATOR = new AutoCreator<Warning>(Warning.class);
|
||||||
|
}
|
49
play-services-appinvite-api/build.gradle
Normal file
49
play-services-appinvite-api/build.gradle
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2019 e Foundation
|
||||||
|
*
|
||||||
|
* 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
apply plugin: 'com.android.library'
|
||||||
|
|
||||||
|
String getMyVersionName() {
|
||||||
|
def stdout = new ByteArrayOutputStream()
|
||||||
|
if (rootProject.file("gradlew").exists())
|
||||||
|
exec { commandLine 'git', 'describe', '--tags', '--always', '--dirty'; standardOutput = stdout }
|
||||||
|
else // automatic build system, don't tag dirty
|
||||||
|
exec { commandLine 'git', 'describe', '--tags', '--always'; standardOutput = stdout }
|
||||||
|
return stdout.toString().trim().substring(1)
|
||||||
|
}
|
||||||
|
|
||||||
|
group = 'org.microg'
|
||||||
|
version = getMyVersionName()
|
||||||
|
|
||||||
|
android {
|
||||||
|
compileSdkVersion androidCompileSdk()
|
||||||
|
buildToolsVersion "$androidBuildVersionTools"
|
||||||
|
|
||||||
|
defaultConfig {
|
||||||
|
versionName getMyVersionName()
|
||||||
|
minSdkVersion androidMinSdk()
|
||||||
|
targetSdkVersion androidTargetSdk()
|
||||||
|
}
|
||||||
|
|
||||||
|
compileOptions {
|
||||||
|
sourceCompatibility JavaVersion.VERSION_1_8
|
||||||
|
targetCompatibility JavaVersion.VERSION_1_8
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
api project(':play-services-basement')
|
||||||
|
}
|
34
play-services-appinvite-api/gradle.properties
Normal file
34
play-services-appinvite-api/gradle.properties
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
#
|
||||||
|
# Copyright 2019 e Foundation
|
||||||
|
#
|
||||||
|
# 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.
|
||||||
|
#
|
||||||
|
|
||||||
|
POM_NAME=Play Services Internal AppInvite API
|
||||||
|
POM_DESCRIPTION=Interfaces and objects for IPC between Play Services Library and Play Services Core
|
||||||
|
|
||||||
|
POM_PACKAGING=aar
|
||||||
|
|
||||||
|
POM_URL=https://github.com/microg/android_external_GmsApi
|
||||||
|
|
||||||
|
POM_SCM_URL=https://github.com/microg/android_external_GmsApi
|
||||||
|
POM_SCM_CONNECTION=scm:git@github.com:microg/android_external_GmsApi.git
|
||||||
|
POM_SCM_DEV_CONNECTION=scm:git@github.com:microg/android_external_GmsApi.git
|
||||||
|
|
||||||
|
POM_LICENCE_NAME=The Apache Software License, Version 2.0
|
||||||
|
POM_LICENCE_URL=http://www.apache.org/licenses/LICENSE-2.0.txt
|
||||||
|
POM_LICENCE_DIST=repo
|
||||||
|
|
||||||
|
POM_DEVELOPER_ID=alexandruchircu
|
||||||
|
POM_DEVELOPER_NAME=Alexandru Chircu
|
||||||
|
|
18
play-services-appinvite-api/src/main/AndroidManifest.xml
Normal file
18
play-services-appinvite-api/src/main/AndroidManifest.xml
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!--
|
||||||
|
~ Copyright (C) 2019 e Foundation
|
||||||
|
~
|
||||||
|
~ 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.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<manifest package="org.microg.gms.appinvite.api"/>
|
@ -0,0 +1,11 @@
|
|||||||
|
package com.google.android.gms.appinvite.internal;
|
||||||
|
|
||||||
|
|
||||||
|
import com.google.android.gms.common.api.Status;
|
||||||
|
import android.content.Intent;
|
||||||
|
|
||||||
|
|
||||||
|
interface IAppInviteCallbacks {
|
||||||
|
void onStatus(in Status status) = 0;
|
||||||
|
void onStatusIntent(in Status status, in Intent intent) = 1;
|
||||||
|
}
|
@ -0,0 +1,14 @@
|
|||||||
|
package com.google.android.gms.appinvite.internal;
|
||||||
|
|
||||||
|
|
||||||
|
import com.google.android.gms.appinvite.internal.IAppInviteCallbacks;
|
||||||
|
|
||||||
|
import com.google.android.gms.dynamic.IObjectWrapper;
|
||||||
|
import com.google.android.gms.common.api.Status;
|
||||||
|
|
||||||
|
|
||||||
|
interface IAppInviteService {
|
||||||
|
void updateInvitationOnInstall(IAppInviteCallbacks callback, String invitationId) = 0;
|
||||||
|
void convertInvitation(IAppInviteCallbacks callback, String invitationId) = 1;
|
||||||
|
void getInvitation(IAppInviteCallbacks callback) = 2;
|
||||||
|
}
|
@ -88,6 +88,7 @@ public enum GmsService {
|
|||||||
PLUS_INTERNAL(70),
|
PLUS_INTERNAL(70),
|
||||||
SOURCE_DEVICE(75, "com.google.android.gms.smartdevice.d2d.SourceDeviceService.START"),
|
SOURCE_DEVICE(75, "com.google.android.gms.smartdevice.d2d.SourceDeviceService.START"),
|
||||||
TARGET_DEVICE(76, "com.google.android.gms.smartdevice.d2d.TargetDeviceService.START"),
|
TARGET_DEVICE(76, "com.google.android.gms.smartdevice.d2d.TargetDeviceService.START"),
|
||||||
|
APP_INVITE(77, "com.google.android.gms.appinvite.service.START"),
|
||||||
TAP_AND_PAY(79, "com.google.android.gms.tapandpay.service.BIND"),
|
TAP_AND_PAY(79, "com.google.android.gms.tapandpay.service.BIND"),
|
||||||
ACCOUNTS(81, "com.google.android.gms.smartdevice.setup.accounts.AccountsService.START"),
|
ACCOUNTS(81, "com.google.android.gms.smartdevice.setup.accounts.AccountsService.START"),
|
||||||
TRUST_AGENT(85, "com.google.android.gms.trustagent.StateApi.START"),
|
TRUST_AGENT(85, "com.google.android.gms.trustagent.StateApi.START"),
|
||||||
@ -98,7 +99,8 @@ public enum GmsService {
|
|||||||
GASS(116, "com.google.android.gms.gass.START"),
|
GASS(116, "com.google.android.gms.gass.START"),
|
||||||
WORK_ACCOUNT(120),
|
WORK_ACCOUNT(120),
|
||||||
AD_CACHE(123, "com.google.android.gms.ads.service.CACHE"),
|
AD_CACHE(123, "com.google.android.gms.ads.service.CACHE"),
|
||||||
NEARBY_EXPOSURE(236, "com.google.android.gms.nearby.exposurenotification.START")
|
DYNAMIC_LINKS(131, "com.google.firebase.dynamiclinks.service.START"),
|
||||||
|
NEARBY_EXPOSURE(236, "com.google.android.gms.nearby.exposurenotification.START"),
|
||||||
;
|
;
|
||||||
|
|
||||||
public int SERVICE_ID;
|
public int SERVICE_ID;
|
||||||
|
@ -4,6 +4,7 @@ include ':play-services-basement'
|
|||||||
|
|
||||||
include ':play-services-tasks'
|
include ':play-services-tasks'
|
||||||
|
|
||||||
|
include ':play-services-appinvite-api'
|
||||||
include ':play-services-base-api'
|
include ':play-services-base-api'
|
||||||
include ':play-services-cast-api'
|
include ':play-services-cast-api'
|
||||||
include ':play-services-cast-framework-api'
|
include ':play-services-cast-framework-api'
|
||||||
@ -14,6 +15,8 @@ include ':play-services-wearable-api'
|
|||||||
|
|
||||||
include ':play-services-api'
|
include ':play-services-api'
|
||||||
|
|
||||||
|
include ':firebase-dynamic-links-api'
|
||||||
|
|
||||||
include ':play-services-base-core'
|
include ':play-services-base-core'
|
||||||
include ':play-services-location-core'
|
include ':play-services-location-core'
|
||||||
include ':play-services-maps-core-mapbox'
|
include ':play-services-maps-core-mapbox'
|
||||||
|
Loading…
Reference in New Issue
Block a user