mirror of
https://github.com/TeamVanced/VancedMicroG
synced 2024-12-29 06:05:47 +01:00
commit
e6d706456e
14
Android.mk
14
Android.mk
@ -22,20 +22,20 @@ LOCAL_PACKAGE_NAME := GmsCore
|
||||
gmscore_root := $(LOCAL_PATH)
|
||||
gmscore_dir := play-services-core
|
||||
gmscore_out := $(TARGET_COMMON_OUT_ROOT)/obj/APPS/$(LOCAL_MODULE)_intermediates
|
||||
gmscore_build := $(gmscore_root)/$(gmscore_dir)/build
|
||||
gmscore_apk := build/outputs/apk/release/play-services-core-release-unsigned.apk
|
||||
gmscore_build := $(gmscore_dir)/build
|
||||
gmscore_apk := $(gmscore_build)/outputs/apk/release/play-services-core-release-unsigned.apk
|
||||
|
||||
$(gmscore_root)/$(gmscore_dir)/$(gmscore_apk):
|
||||
rm -Rf $(gmscore_build)
|
||||
$(gmscore_root)/$(gmscore_apk):
|
||||
rm -Rf $(gmscore_root)/$(gmscore_build)
|
||||
mkdir -p $(ANDROID_BUILD_TOP)/$(gmscore_out)
|
||||
ln -s $(ANDROID_BUILD_TOP)/$(gmscore_out) $(ANDROID_BUILD_TOP)/$(gmscore_build)
|
||||
ln -s $(ANDROID_BUILD_TOP)/$(gmscore_out) $(ANDROID_BUILD_TOP)/$(gmscore_root)/$(gmscore_build)
|
||||
echo "sdk.dir=$(ANDROID_HOME)" > $(gmscore_root)/local.properties
|
||||
cd $(gmscore_root) && git submodule update --recursive --init
|
||||
cd $(gmscore_root)/$(gmscore_dir) && JAVA_TOOL_OPTIONS="$(JAVA_TOOL_OPTIONS) -Dfile.encoding=UTF8" ../gradlew assembleRelease
|
||||
|
||||
LOCAL_CERTIFICATE := platform
|
||||
LOCAL_SRC_FILES := $(gmscore_dir)/$(gmscore_apk)
|
||||
LOCAL_SRC_FILES := $(gmscore_apk)
|
||||
LOCAL_MODULE_CLASS := APPS
|
||||
LOCAL_MODULE_SUFFIX := $(COMMON_ANDROID_PACKAGE_SUFFIX)
|
||||
|
||||
include $(BUILD_PREBUILT)
|
||||
include $(BUILD_PREBUILT)
|
121
LICENSES/CC0-1.0.txt
Normal file
121
LICENSES/CC0-1.0.txt
Normal file
@ -0,0 +1,121 @@
|
||||
Creative Commons Legal Code
|
||||
|
||||
CC0 1.0 Universal
|
||||
|
||||
CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
|
||||
LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
|
||||
ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
|
||||
INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
|
||||
REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
|
||||
PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
|
||||
THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED
|
||||
HEREUNDER.
|
||||
|
||||
Statement of Purpose
|
||||
|
||||
The laws of most jurisdictions throughout the world automatically confer
|
||||
exclusive Copyright and Related Rights (defined below) upon the creator
|
||||
and subsequent owner(s) (each and all, an "owner") of an original work of
|
||||
authorship and/or a database (each, a "Work").
|
||||
|
||||
Certain owners wish to permanently relinquish those rights to a Work for
|
||||
the purpose of contributing to a commons of creative, cultural and
|
||||
scientific works ("Commons") that the public can reliably and without fear
|
||||
of later claims of infringement build upon, modify, incorporate in other
|
||||
works, reuse and redistribute as freely as possible in any form whatsoever
|
||||
and for any purposes, including without limitation commercial purposes.
|
||||
These owners may contribute to the Commons to promote the ideal of a free
|
||||
culture and the further production of creative, cultural and scientific
|
||||
works, or to gain reputation or greater distribution for their Work in
|
||||
part through the use and efforts of others.
|
||||
|
||||
For these and/or other purposes and motivations, and without any
|
||||
expectation of additional consideration or compensation, the person
|
||||
associating CC0 with a Work (the "Affirmer"), to the extent that he or she
|
||||
is an owner of Copyright and Related Rights in the Work, voluntarily
|
||||
elects to apply CC0 to the Work and publicly distribute the Work under its
|
||||
terms, with knowledge of his or her Copyright and Related Rights in the
|
||||
Work and the meaning and intended legal effect of CC0 on those rights.
|
||||
|
||||
1. Copyright and Related Rights. A Work made available under CC0 may be
|
||||
protected by copyright and related or neighboring rights ("Copyright and
|
||||
Related Rights"). Copyright and Related Rights include, but are not
|
||||
limited to, the following:
|
||||
|
||||
i. the right to reproduce, adapt, distribute, perform, display,
|
||||
communicate, and translate a Work;
|
||||
ii. moral rights retained by the original author(s) and/or performer(s);
|
||||
iii. publicity and privacy rights pertaining to a person's image or
|
||||
likeness depicted in a Work;
|
||||
iv. rights protecting against unfair competition in regards to a Work,
|
||||
subject to the limitations in paragraph 4(a), below;
|
||||
v. rights protecting the extraction, dissemination, use and reuse of data
|
||||
in a Work;
|
||||
vi. database rights (such as those arising under Directive 96/9/EC of the
|
||||
European Parliament and of the Council of 11 March 1996 on the legal
|
||||
protection of databases, and under any national implementation
|
||||
thereof, including any amended or successor version of such
|
||||
directive); and
|
||||
vii. other similar, equivalent or corresponding rights throughout the
|
||||
world based on applicable law or treaty, and any national
|
||||
implementations thereof.
|
||||
|
||||
2. Waiver. To the greatest extent permitted by, but not in contravention
|
||||
of, applicable law, Affirmer hereby overtly, fully, permanently,
|
||||
irrevocably and unconditionally waives, abandons, and surrenders all of
|
||||
Affirmer's Copyright and Related Rights and associated claims and causes
|
||||
of action, whether now known or unknown (including existing as well as
|
||||
future claims and causes of action), in the Work (i) in all territories
|
||||
worldwide, (ii) for the maximum duration provided by applicable law or
|
||||
treaty (including future time extensions), (iii) in any current or future
|
||||
medium and for any number of copies, and (iv) for any purpose whatsoever,
|
||||
including without limitation commercial, advertising or promotional
|
||||
purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each
|
||||
member of the public at large and to the detriment of Affirmer's heirs and
|
||||
successors, fully intending that such Waiver shall not be subject to
|
||||
revocation, rescission, cancellation, termination, or any other legal or
|
||||
equitable action to disrupt the quiet enjoyment of the Work by the public
|
||||
as contemplated by Affirmer's express Statement of Purpose.
|
||||
|
||||
3. Public License Fallback. Should any part of the Waiver for any reason
|
||||
be judged legally invalid or ineffective under applicable law, then the
|
||||
Waiver shall be preserved to the maximum extent permitted taking into
|
||||
account Affirmer's express Statement of Purpose. In addition, to the
|
||||
extent the Waiver is so judged Affirmer hereby grants to each affected
|
||||
person a royalty-free, non transferable, non sublicensable, non exclusive,
|
||||
irrevocable and unconditional license to exercise Affirmer's Copyright and
|
||||
Related Rights in the Work (i) in all territories worldwide, (ii) for the
|
||||
maximum duration provided by applicable law or treaty (including future
|
||||
time extensions), (iii) in any current or future medium and for any number
|
||||
of copies, and (iv) for any purpose whatsoever, including without
|
||||
limitation commercial, advertising or promotional purposes (the
|
||||
"License"). The License shall be deemed effective as of the date CC0 was
|
||||
applied by Affirmer to the Work. Should any part of the License for any
|
||||
reason be judged legally invalid or ineffective under applicable law, such
|
||||
partial invalidity or ineffectiveness shall not invalidate the remainder
|
||||
of the License, and in such case Affirmer hereby affirms that he or she
|
||||
will not (i) exercise any of his or her remaining Copyright and Related
|
||||
Rights in the Work or (ii) assert any associated claims and causes of
|
||||
action with respect to the Work, in either case contrary to Affirmer's
|
||||
express Statement of Purpose.
|
||||
|
||||
4. Limitations and Disclaimers.
|
||||
|
||||
a. No trademark or patent rights held by Affirmer are waived, abandoned,
|
||||
surrendered, licensed or otherwise affected by this document.
|
||||
b. Affirmer offers the Work as-is and makes no representations or
|
||||
warranties of any kind concerning the Work, express, implied,
|
||||
statutory or otherwise, including without limitation warranties of
|
||||
title, merchantability, fitness for a particular purpose, non
|
||||
infringement, or the absence of latent or other defects, accuracy, or
|
||||
the present or absence of errors, whether or not discoverable, all to
|
||||
the greatest extent permissible under applicable law.
|
||||
c. Affirmer disclaims responsibility for clearing rights of other persons
|
||||
that may apply to the Work or any use thereof, including without
|
||||
limitation any person's Copyright and Related Rights in the Work.
|
||||
Further, Affirmer disclaims responsibility for obtaining any necessary
|
||||
consents, permissions or other rights required for any use of the
|
||||
Work.
|
||||
d. Affirmer understands and acknowledges that Creative Commons is not a
|
||||
party to this document and has no duty or obligation with respect to
|
||||
this CC0 or use of the Work.
|
38
build.gradle
38
build.gradle
@ -4,31 +4,9 @@
|
||||
*/
|
||||
|
||||
buildscript {
|
||||
ext.cronetVersion = '91.0.4472.120.1'
|
||||
ext.safeParcelVersion = '1.7.0'
|
||||
|
||||
ext.kotlinVersion = '1.4.32'
|
||||
ext.coroutineVersion = '1.3.8'
|
||||
|
||||
ext.annotationVersion = '1.2.0'
|
||||
ext.appcompatVersion = '1.2.0'
|
||||
ext.fragmentVersion = '1.3.0'
|
||||
ext.lifecycleVersion = '2.3.1'
|
||||
ext.mediarouterVersion = '1.2.2'
|
||||
ext.navigationVersion = '2.3.5'
|
||||
ext.preferenceVersion = '1.1.1'
|
||||
ext.recyclerviewVersion = '1.1.0'
|
||||
|
||||
ext.supportLibraryVersion = "28.0.0"
|
||||
ext.wireVersion = '3.2.2'
|
||||
|
||||
ext.androidBuildGradleVersion = "4.1.0"
|
||||
|
||||
ext.androidBuildVersionTools = "30.0.2"
|
||||
|
||||
ext.androidMinSdk = 21
|
||||
ext.androidTargetSdk = 29
|
||||
ext.androidCompileSdk = 30
|
||||
ext.androidMinSdk = 23
|
||||
ext.androidTargetSdk = 30
|
||||
ext.androidCompileSdk = 31
|
||||
|
||||
repositories {
|
||||
jcenter()
|
||||
@ -36,9 +14,9 @@ buildscript {
|
||||
}
|
||||
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:7.0.2'
|
||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion"
|
||||
classpath "com.squareup.wire:wire-gradle-plugin:$wireVersion"
|
||||
classpath 'com.android.tools.build:gradle:7.1.0'
|
||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.10"
|
||||
classpath "com.squareup.wire:wire-gradle-plugin:3.2.2"
|
||||
}
|
||||
}
|
||||
|
||||
@ -46,8 +24,8 @@ allprojects {
|
||||
apply plugin: 'idea'
|
||||
|
||||
group = 'org.microg.gms'
|
||||
version = "0.2.22.212658"
|
||||
ext.appVersionCode = 212658001
|
||||
version = "0.2.23.220217"
|
||||
ext.appVersionCode = 220217001
|
||||
ext.isReleaseVersion = false
|
||||
}
|
||||
|
||||
|
4
gradle/wrapper/gradle-wrapper.properties
vendored
4
gradle/wrapper/gradle-wrapper.properties
vendored
@ -1,6 +1,6 @@
|
||||
#Sat Sep 11 09:04:01 CEST 2021
|
||||
#Wed Jan 26 02:00:21 CET 2022
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-bin.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip
|
||||
distributionPath=wrapper/dists
|
||||
zipStorePath=wrapper/dists
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
|
274
gradlew
vendored
274
gradlew
vendored
@ -1,7 +1,8 @@
|
||||
#!/usr/bin/env sh
|
||||
#!/bin/sh
|
||||
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
# Copyright 2015 the original author or authors.
|
||||
# Copyright © 2015-2021 the original authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
@ -17,67 +18,101 @@
|
||||
#
|
||||
|
||||
##############################################################################
|
||||
##
|
||||
## Gradle start up script for UN*X
|
||||
##
|
||||
#
|
||||
# Gradle start up script for POSIX generated by Gradle.
|
||||
#
|
||||
# Important for running:
|
||||
#
|
||||
# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is
|
||||
# noncompliant, but you have some other compliant shell such as ksh or
|
||||
# bash, then to run this script, type that shell name before the whole
|
||||
# command line, like:
|
||||
#
|
||||
# ksh Gradle
|
||||
#
|
||||
# Busybox and similar reduced shells will NOT work, because this script
|
||||
# requires all of these POSIX shell features:
|
||||
# * functions;
|
||||
# * expansions «$var», «${var}», «${var:-default}», «${var+SET}»,
|
||||
# «${var#prefix}», «${var%suffix}», and «$( cmd )»;
|
||||
# * compound commands having a testable exit status, especially «case»;
|
||||
# * various built-in commands including «command», «set», and «ulimit».
|
||||
#
|
||||
# Important for patching:
|
||||
#
|
||||
# (2) This script targets any POSIX shell, so it avoids extensions provided
|
||||
# by Bash, Ksh, etc; in particular arrays are avoided.
|
||||
#
|
||||
# The "traditional" practice of packing multiple parameters into a
|
||||
# space-separated string is a well documented source of bugs and security
|
||||
# problems, so this is (mostly) avoided, by progressively accumulating
|
||||
# options in "$@", and eventually passing that to Java.
|
||||
#
|
||||
# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS,
|
||||
# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly;
|
||||
# see the in-line comments for details.
|
||||
#
|
||||
# There are tweaks for specific operating systems such as AIX, CygWin,
|
||||
# Darwin, MinGW, and NonStop.
|
||||
#
|
||||
# (3) This script is generated from the Groovy template
|
||||
# https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
|
||||
# within the Gradle project.
|
||||
#
|
||||
# You can find Gradle at https://github.com/gradle/gradle/.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
# Attempt to set APP_HOME
|
||||
|
||||
# Resolve links: $0 may be a link
|
||||
PRG="$0"
|
||||
# Need this for relative symlinks.
|
||||
while [ -h "$PRG" ] ; do
|
||||
ls=`ls -ld "$PRG"`
|
||||
link=`expr "$ls" : '.*-> \(.*\)$'`
|
||||
if expr "$link" : '/.*' > /dev/null; then
|
||||
PRG="$link"
|
||||
else
|
||||
PRG=`dirname "$PRG"`"/$link"
|
||||
fi
|
||||
app_path=$0
|
||||
|
||||
# Need this for daisy-chained symlinks.
|
||||
while
|
||||
APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path
|
||||
[ -h "$app_path" ]
|
||||
do
|
||||
ls=$( ls -ld "$app_path" )
|
||||
link=${ls#*' -> '}
|
||||
case $link in #(
|
||||
/*) app_path=$link ;; #(
|
||||
*) app_path=$APP_HOME$link ;;
|
||||
esac
|
||||
done
|
||||
SAVED="`pwd`"
|
||||
cd "`dirname \"$PRG\"`/" >/dev/null
|
||||
APP_HOME="`pwd -P`"
|
||||
cd "$SAVED" >/dev/null
|
||||
|
||||
APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
|
||||
|
||||
APP_NAME="Gradle"
|
||||
APP_BASE_NAME=`basename "$0"`
|
||||
APP_BASE_NAME=${0##*/}
|
||||
|
||||
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
|
||||
|
||||
# Use the maximum available, or set MAX_FD != -1 to use that value.
|
||||
MAX_FD="maximum"
|
||||
MAX_FD=maximum
|
||||
|
||||
warn () {
|
||||
echo "$*"
|
||||
}
|
||||
} >&2
|
||||
|
||||
die () {
|
||||
echo
|
||||
echo "$*"
|
||||
echo
|
||||
exit 1
|
||||
}
|
||||
} >&2
|
||||
|
||||
# OS specific support (must be 'true' or 'false').
|
||||
cygwin=false
|
||||
msys=false
|
||||
darwin=false
|
||||
nonstop=false
|
||||
case "`uname`" in
|
||||
CYGWIN* )
|
||||
cygwin=true
|
||||
;;
|
||||
Darwin* )
|
||||
darwin=true
|
||||
;;
|
||||
MINGW* )
|
||||
msys=true
|
||||
;;
|
||||
NONSTOP* )
|
||||
nonstop=true
|
||||
;;
|
||||
case "$( uname )" in #(
|
||||
CYGWIN* ) cygwin=true ;; #(
|
||||
Darwin* ) darwin=true ;; #(
|
||||
MSYS* | MINGW* ) msys=true ;; #(
|
||||
NONSTOP* ) nonstop=true ;;
|
||||
esac
|
||||
|
||||
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
|
||||
@ -87,99 +122,112 @@ CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
|
||||
if [ -n "$JAVA_HOME" ] ; then
|
||||
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
|
||||
# IBM's JDK on AIX uses strange locations for the executables
|
||||
JAVACMD="$JAVA_HOME/jre/sh/java"
|
||||
JAVACMD=$JAVA_HOME/jre/sh/java
|
||||
else
|
||||
JAVACMD="$JAVA_HOME/bin/java"
|
||||
JAVACMD=$JAVA_HOME/bin/java
|
||||
fi
|
||||
if [ ! -x "$JAVACMD" ] ; then
|
||||
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
|
||||
|
||||
Please set the JAVA_HOME variable in your environment to match the
|
||||
location of your Java installation."
|
||||
fi
|
||||
else
|
||||
JAVACMD="java"
|
||||
JAVACMD=java
|
||||
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
|
||||
Please set the JAVA_HOME variable in your environment to match the
|
||||
location of your Java installation."
|
||||
fi
|
||||
|
||||
# Increase the maximum file descriptors if we can.
|
||||
if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
|
||||
MAX_FD_LIMIT=`ulimit -H -n`
|
||||
if [ $? -eq 0 ] ; then
|
||||
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
|
||||
MAX_FD="$MAX_FD_LIMIT"
|
||||
fi
|
||||
ulimit -n $MAX_FD
|
||||
if [ $? -ne 0 ] ; then
|
||||
warn "Could not set maximum file descriptor limit: $MAX_FD"
|
||||
fi
|
||||
else
|
||||
warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
|
||||
fi
|
||||
fi
|
||||
|
||||
# For Darwin, add options to specify how the application appears in the dock
|
||||
if $darwin; then
|
||||
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
|
||||
fi
|
||||
|
||||
# For Cygwin or MSYS, switch paths to Windows format before running java
|
||||
if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
|
||||
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
|
||||
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
|
||||
|
||||
JAVACMD=`cygpath --unix "$JAVACMD"`
|
||||
|
||||
# We build the pattern for arguments to be converted via cygpath
|
||||
ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
|
||||
SEP=""
|
||||
for dir in $ROOTDIRSRAW ; do
|
||||
ROOTDIRS="$ROOTDIRS$SEP$dir"
|
||||
SEP="|"
|
||||
done
|
||||
OURCYGPATTERN="(^($ROOTDIRS))"
|
||||
# Add a user-defined pattern to the cygpath arguments
|
||||
if [ "$GRADLE_CYGPATTERN" != "" ] ; then
|
||||
OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
|
||||
fi
|
||||
# Now convert the arguments - kludge to limit ourselves to /bin/sh
|
||||
i=0
|
||||
for arg in "$@" ; do
|
||||
CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
|
||||
CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
|
||||
|
||||
if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
|
||||
eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
|
||||
else
|
||||
eval `echo args$i`="\"$arg\""
|
||||
fi
|
||||
i=`expr $i + 1`
|
||||
done
|
||||
case $i in
|
||||
0) set -- ;;
|
||||
1) set -- "$args0" ;;
|
||||
2) set -- "$args0" "$args1" ;;
|
||||
3) set -- "$args0" "$args1" "$args2" ;;
|
||||
4) set -- "$args0" "$args1" "$args2" "$args3" ;;
|
||||
5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
|
||||
6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
|
||||
7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
|
||||
8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
|
||||
9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
|
||||
if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
|
||||
case $MAX_FD in #(
|
||||
max*)
|
||||
MAX_FD=$( ulimit -H -n ) ||
|
||||
warn "Could not query maximum file descriptor limit"
|
||||
esac
|
||||
case $MAX_FD in #(
|
||||
'' | soft) :;; #(
|
||||
*)
|
||||
ulimit -n "$MAX_FD" ||
|
||||
warn "Could not set maximum file descriptor limit to $MAX_FD"
|
||||
esac
|
||||
fi
|
||||
|
||||
# Escape application args
|
||||
save () {
|
||||
for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
|
||||
echo " "
|
||||
}
|
||||
APP_ARGS=`save "$@"`
|
||||
# Collect all arguments for the java command, stacking in reverse order:
|
||||
# * args from the command line
|
||||
# * the main class name
|
||||
# * -classpath
|
||||
# * -D...appname settings
|
||||
# * --module-path (only if needed)
|
||||
# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables.
|
||||
|
||||
# Collect all arguments for the java command, following the shell quoting and substitution rules
|
||||
eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
|
||||
# For Cygwin or MSYS, switch paths to Windows format before running java
|
||||
if "$cygwin" || "$msys" ; then
|
||||
APP_HOME=$( cygpath --path --mixed "$APP_HOME" )
|
||||
CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" )
|
||||
|
||||
exec "$JAVACMD" "$@"
|
||||
JAVACMD=$( cygpath --unix "$JAVACMD" )
|
||||
|
||||
# Now convert the arguments - kludge to limit ourselves to /bin/sh
|
||||
for arg do
|
||||
if
|
||||
case $arg in #(
|
||||
-*) false ;; # don't mess with options #(
|
||||
/?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath
|
||||
[ -e "$t" ] ;; #(
|
||||
*) false ;;
|
||||
esac
|
||||
then
|
||||
arg=$( cygpath --path --ignore --mixed "$arg" )
|
||||
fi
|
||||
# Roll the args list around exactly as many times as the number of
|
||||
# args, so each arg winds up back in the position where it started, but
|
||||
# possibly modified.
|
||||
#
|
||||
# NB: a `for` loop captures its iteration list before it begins, so
|
||||
# changing the positional parameters here affects neither the number of
|
||||
# iterations, nor the values presented in `arg`.
|
||||
shift # remove old arg
|
||||
set -- "$@" "$arg" # push replacement arg
|
||||
done
|
||||
fi
|
||||
|
||||
# Collect all arguments for the java command;
|
||||
# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of
|
||||
# shell script including quotes and variable substitutions, so put them in
|
||||
# double quotes to make sure that they get re-expanded; and
|
||||
# * put everything else in single quotes, so that it's not re-expanded.
|
||||
|
||||
set -- \
|
||||
"-Dorg.gradle.appname=$APP_BASE_NAME" \
|
||||
-classpath "$CLASSPATH" \
|
||||
org.gradle.wrapper.GradleWrapperMain \
|
||||
"$@"
|
||||
|
||||
# Use "xargs" to parse quoted args.
|
||||
#
|
||||
# With -n1 it outputs one arg per line, with the quotes and backslashes removed.
|
||||
#
|
||||
# In Bash we could simply go:
|
||||
#
|
||||
# readarray ARGS < <( xargs -n1 <<<"$var" ) &&
|
||||
# set -- "${ARGS[@]}" "$@"
|
||||
#
|
||||
# but POSIX shell has neither arrays nor command substitution, so instead we
|
||||
# post-process each arg (as a line of input to sed) to backslash-escape any
|
||||
# character that might be a shell metacharacter, then use eval to reverse
|
||||
# that process (while maintaining the separation between arguments), and wrap
|
||||
# the whole thing up as a single "set" statement.
|
||||
#
|
||||
# This will of course break if any of these variables contains a newline or
|
||||
# an unmatched quote.
|
||||
#
|
||||
|
||||
eval "set -- $(
|
||||
printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" |
|
||||
xargs -n1 |
|
||||
sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' |
|
||||
tr '\n' ' '
|
||||
)" '"$@"'
|
||||
|
||||
exec "$JAVACMD" "$@"
|
@ -18,7 +18,7 @@ apply plugin: 'com.android.library'
|
||||
|
||||
android {
|
||||
compileSdkVersion androidCompileSdk
|
||||
buildToolsVersion "$androidBuildVersionTools"
|
||||
buildToolsVersion "30.0.3"
|
||||
|
||||
defaultConfig {
|
||||
minSdkVersion androidMinSdk
|
||||
|
@ -0,0 +1,8 @@
|
||||
package com.google.android.gms.auth.api.internal;
|
||||
|
||||
import com.google.android.gms.auth.api.proxy.ProxyResponse;
|
||||
|
||||
interface IAuthCallbacks {
|
||||
void onProxyResponse(in ProxyResponse response) = 0;
|
||||
void onSpatulaHeader(String spatulaHeader) = 1;
|
||||
}
|
@ -0,0 +1,11 @@
|
||||
package com.google.android.gms.auth.api.internal;
|
||||
|
||||
import com.google.android.gms.auth.api.internal.IAuthCallbacks;
|
||||
//import com.google.android.gms.auth.api.proxy.ProxyGrpcRequest;
|
||||
import com.google.android.gms.auth.api.proxy.ProxyRequest;
|
||||
|
||||
interface IAuthService {
|
||||
void performProxyRequest(IAuthCallbacks callbacks, in ProxyRequest request) = 0;
|
||||
// void performProxyGrpcRequest(IAuthCallback callbacks, in ProxyGrpcRequest request) = 1;
|
||||
void getSpatulaHeader(IAuthCallbacks callbacks) = 2;
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
package com.google.android.gms.auth.api.proxy;
|
||||
|
||||
parcelable ProxyRequest;
|
@ -0,0 +1,3 @@
|
||||
package com.google.android.gms.auth.api.proxy;
|
||||
|
||||
parcelable ProxyResponse;
|
@ -0,0 +1,6 @@
|
||||
package com.google.android.gms.auth.appcert;
|
||||
|
||||
interface IAppCertService {
|
||||
boolean fetchDeviceKey() = 0;
|
||||
String getSpatulaHeader(String packageName) = 1;
|
||||
}
|
@ -2,4 +2,6 @@ package com.google.android.gms.checkin.internal;
|
||||
|
||||
interface ICheckinService {
|
||||
String getDeviceDataVersionInfo();
|
||||
long getLastCheckinSuccessTime();
|
||||
String getLastSimOperator();
|
||||
}
|
||||
|
@ -1,7 +1,13 @@
|
||||
package com.google.android.gms.clearcut.internal;
|
||||
|
||||
import com.google.android.gms.common.api.Status;
|
||||
import com.google.android.gms.common.data.DataHolder;
|
||||
|
||||
interface IClearcutLoggerCallbacks {
|
||||
oneway void onStatus(in Status status) = 0;
|
||||
oneway void onLogResult(in Status status) = 0;
|
||||
oneway void onForceUploadResult(in Status status) = 1;
|
||||
oneway void onStartCollectForDebugResult(in Status status, long l) = 2;
|
||||
oneway void onStopCollectForDebugResult(in Status status) = 3;
|
||||
oneway void onCollectForDebugExpiryTime(in Status status, long l) = 4;
|
||||
oneway void onLogEventParcelables(in DataHolder data) = 6;
|
||||
}
|
||||
|
@ -4,5 +4,11 @@ import com.google.android.gms.clearcut.internal.IClearcutLoggerCallbacks;
|
||||
import com.google.android.gms.clearcut.LogEventParcelable;
|
||||
|
||||
interface IClearcutLoggerService {
|
||||
void log(IClearcutLoggerCallbacks callbacks, in LogEventParcelable event) = 0;
|
||||
oneway void log(IClearcutLoggerCallbacks callbacks, in LogEventParcelable event) = 0;
|
||||
oneway void forceUpload(IClearcutLoggerCallbacks callbacks) = 1;
|
||||
oneway void startCollectForDebug(IClearcutLoggerCallbacks callbacks) = 2;
|
||||
oneway void stopCollectForDebug(IClearcutLoggerCallbacks callbacks) = 3;
|
||||
oneway void getCollectForDebugExpiryTime(IClearcutLoggerCallbacks callbacks) = 4;
|
||||
oneway void getLogEventParcelablesLegacy(IClearcutLoggerCallbacks callbacks) = 5;
|
||||
oneway void getLogEventParcelables(IClearcutLoggerCallbacks callbacks) = 6;
|
||||
}
|
||||
|
@ -0,0 +1,3 @@
|
||||
package com.google.android.gms.clearcut.internal;
|
||||
|
||||
parcelable PlayLoggerContext;
|
@ -0,0 +1,55 @@
|
||||
package com.google.android.gms.measurement.api.internal;
|
||||
|
||||
import com.google.android.gms.dynamic.IObjectWrapper;
|
||||
import com.google.android.gms.measurement.api.internal.IBundleReceiver;
|
||||
import com.google.android.gms.measurement.api.internal.IEventHandlerProxy;
|
||||
import com.google.android.gms.measurement.api.internal.IStringProvider;
|
||||
import com.google.android.gms.measurement.api.internal.InitializationParams;
|
||||
|
||||
interface IAppMeasurementDynamiteService {
|
||||
void initialize(in IObjectWrapper context, in InitializationParams params, long timestamp) = 0;
|
||||
void logEvent(String str, String str2, in Bundle bundle, boolean z, boolean z2, long timestamp) = 1;
|
||||
void logEventAndBundle(String str, String str2, in Bundle bundle, IBundleReceiver receiver, long j) = 2;
|
||||
void setUserProperty(String str, String str2, in IObjectWrapper obj, boolean z, long j) = 3;
|
||||
void getUserProperties(String str, String str2, boolean z, IBundleReceiver receiver) = 4;
|
||||
void getMaxUserProperties(String str, IBundleReceiver receiver) = 5;
|
||||
void setUserId(String str, long j) = 6;
|
||||
void setConditionalUserProperty(in Bundle bundle, long j) = 7;
|
||||
void clearConditionalUserProperty(String str, String str2, in Bundle bundle) = 8;
|
||||
void getConditionalUserProperties(String str, String str2, IBundleReceiver receiver) = 9;
|
||||
void setMeasurementEnabled(boolean z, long j) = 10;
|
||||
void resetAnalyticsData(long j) = 11;
|
||||
void setMinimumSessionDuration(long j) = 12;
|
||||
void setSessionTimeoutDuration(long j) = 13;
|
||||
void setCurrentScreen(in IObjectWrapper obj, String str, String str2, long j) = 14;
|
||||
void getCurrentScreenName(IBundleReceiver receiver) = 15;
|
||||
void getCurrentScreenClass(IBundleReceiver receiver) = 16;
|
||||
void setInstanceIdProvider(IStringProvider provider) = 17;
|
||||
void getCachedAppInstanceId(IBundleReceiver receiver) = 18;
|
||||
void getAppInstanceId(IBundleReceiver receiver) = 19;
|
||||
void getGmpAppId(IBundleReceiver receiver) = 20;
|
||||
void generateEventId(IBundleReceiver receiver) = 21;
|
||||
void beginAdUnitExposure(String str, long j) = 22;
|
||||
void endAdUnitExposure(String str, long j) = 23;
|
||||
void onActivityStarted(in IObjectWrapper activity, long j) = 24;
|
||||
void onActivityStopped(in IObjectWrapper activity, long j) = 25;
|
||||
void onActivityCreated(in IObjectWrapper activity, in Bundle bundle, long j) = 26;
|
||||
void onActivityDestroyed(in IObjectWrapper activity, long j) = 27;
|
||||
void onActivityPaused(in IObjectWrapper activity, long j) = 28;
|
||||
void onActivityResumed(in IObjectWrapper activity, long j) = 29;
|
||||
void onActivitySaveInstanceState(in IObjectWrapper activity, IBundleReceiver receiver, long j) = 30;
|
||||
void performAction(in Bundle bundle, IBundleReceiver receiver, long j) = 31;
|
||||
void logHealthData(int i, String str, in IObjectWrapper obj, in IObjectWrapper obj2, in IObjectWrapper obj3) = 32;
|
||||
void setEventInterceptor(IEventHandlerProxy proxy) = 33;
|
||||
void registerOnMeasurementEventListener(IEventHandlerProxy proxy) = 34;
|
||||
void unregisterOnMeasurementEventListener(IEventHandlerProxy proxy) = 35;
|
||||
void initForTests(in Map map) = 36;
|
||||
void getTestFlag(IBundleReceiver receiver, int i) = 37;
|
||||
void setDataCollectionEnabled(boolean z) = 38;
|
||||
void isDataCollectionEnabled(IBundleReceiver receiver) = 39;
|
||||
|
||||
void setDefaultEventParameters(in Bundle bundle) = 41;
|
||||
void setConsent(in Bundle bundle, long j) = 43;
|
||||
void setConsentThirdParty(in Bundle bundle, long j) = 44;
|
||||
void clearMeasurementEnabled(long j) = 42;
|
||||
}
|
@ -0,0 +1,5 @@
|
||||
package com.google.android.gms.measurement.api.internal;
|
||||
|
||||
interface IBundleReceiver {
|
||||
void onBundle(in Bundle bundle);
|
||||
}
|
@ -0,0 +1,6 @@
|
||||
package com.google.android.gms.measurement.api.internal;
|
||||
|
||||
interface IEventHandlerProxy {
|
||||
void f1(String s1, String s2, in Bundle bundle, long j) = 0;
|
||||
int f2() = 1;
|
||||
}
|
@ -0,0 +1,4 @@
|
||||
package com.google.android.gms.measurement.api.internal;
|
||||
|
||||
interface IStringProvider {
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
package com.google.android.gms.measurement.api.internal;
|
||||
|
||||
parcelable InitializationParams;
|
@ -3,23 +3,25 @@ package com.google.android.gms.measurement.internal;
|
||||
import com.google.android.gms.measurement.internal.AppMetadata;
|
||||
import com.google.android.gms.measurement.internal.ConditionalUserPropertyParcel;
|
||||
import com.google.android.gms.measurement.internal.EventParcel;
|
||||
import com.google.android.gms.measurement.internal.UserAttributeParcel;
|
||||
|
||||
interface IMeasurementService {
|
||||
void f1(in EventParcel p0, in AppMetadata p1) = 0;
|
||||
// void zza(UserAttributeParcel p0, AppMetadata p1) = 1;
|
||||
void f4(in AppMetadata p0) = 3;
|
||||
// void zza(EventParcel p0, String p1, String p2) = 4;
|
||||
// void zzb(AppMetadata p0) = 5;
|
||||
// List<UserAttributeParcel> zza(AppMetadata p0, boolean p1) = 6;
|
||||
// byte[] zza(EventParcel p0, String p1) = 8;
|
||||
void f1(in EventParcel event, in AppMetadata app) = 0;
|
||||
void f2(in UserAttributeParcel attribute, in AppMetadata app) = 1;
|
||||
void f4(in AppMetadata app) = 3;
|
||||
// void f5(in EventParcel p0, String p1, String p2) = 4;
|
||||
// void f6(in AppMetadata p0) = 5;
|
||||
// List<UserAttributeParcel> f7(in AppMetadata p0, boolean p1) = 6;
|
||||
// byte[] f9(in EventParcel p0, String p1) = 8;
|
||||
void f10(long p0, String p1, String p2, String p3) = 9;
|
||||
String f11(in AppMetadata p0) = 10;
|
||||
void f12(in ConditionalUserPropertyParcel p0, in AppMetadata p1) = 11;
|
||||
// void zza(ConditionalUserPropertyParcel p0) = 12;
|
||||
// List<UserAttributeParcelzkr> zza(String p0, String p1, boolean p2, AppMetadata p3) = 13;
|
||||
// List<UserAttributeParcel> zza(String p0, String p1, String p2, boolean p3) = 14;
|
||||
// List<ConditionalUserPropertyParcel> zza(String p0, String p1, AppMetadata p2) = 15;
|
||||
// List<ConditionalUserPropertyParcel> zza(String p0, String p1, String p2) = 16;
|
||||
// void zzd(AppMetadata p0) = 17;
|
||||
// void zza(Bundle p0, AppMetadata p1) = 18;
|
||||
String f11(in AppMetadata app) = 10;
|
||||
void f12(in ConditionalUserPropertyParcel property, in AppMetadata app) = 11;
|
||||
// void f13(ConditionalUserPropertyParcel p0) = 12;
|
||||
// List<UserAttributeParcel> getUserProperties(String p0, String p1, boolean p2, in AppMetadata p3) = 13;
|
||||
// List<UserAttributeParcel> getUserPropertiesAs(String p0, String p1, String p2, boolean p3) = 14;
|
||||
// List<ConditionalUserPropertyParcel> getConditionalUserProperties(String p0, String p1, in AppMetadata p2) = 15;
|
||||
// List<ConditionalUserPropertyParcel> getCondtionalUserPropertiesAs(String p0, String p1, String p2) = 16;
|
||||
// void f18(in AppMetadata p0) = 17;
|
||||
void setDefaultEventParameters(in Bundle params, in AppMetadata app) = 18;
|
||||
// void f20(in AppMetadata p0) = 19;
|
||||
}
|
||||
|
@ -1,8 +1,9 @@
|
||||
package com.google.android.gms.playlog.internal;
|
||||
|
||||
import com.google.android.gms.clearcut.internal.PlayLoggerContext;
|
||||
import com.google.android.gms.playlog.internal.LogEvent;
|
||||
import com.google.android.gms.playlog.internal.PlayLoggerContext;
|
||||
|
||||
// Deprecated
|
||||
interface IPlayLogService {
|
||||
void onEvent(String packageName, in PlayLoggerContext context, in LogEvent event) = 1;
|
||||
void onMultiEvent(String packageName, in PlayLoggerContext context, in List<LogEvent> events) = 2;
|
||||
|
@ -1,3 +0,0 @@
|
||||
package com.google.android.gms.playlog.internal;
|
||||
|
||||
parcelable PlayLoggerContext;
|
@ -0,0 +1,3 @@
|
||||
package com.google.android.gms.usagereporting;
|
||||
|
||||
parcelable UsageReportingOptInOptions;
|
@ -0,0 +1,11 @@
|
||||
package com.google.android.gms.usagereporting.internal;
|
||||
|
||||
import com.google.android.gms.common.api.Status;
|
||||
import com.google.android.gms.usagereporting.UsageReportingOptInOptions;
|
||||
|
||||
interface IUsageReportingCallbacks {
|
||||
oneway void onOptInOptions(in Status status, in UsageReportingOptInOptions options) = 1;
|
||||
oneway void onOptInOptionsSet(in Status status) = 2;
|
||||
oneway void onOptInOptionsChangedListenerAdded(in Status status) = 3;
|
||||
oneway void onOptInOptionsChangedListenerRemoved(in Status status) = 4;
|
||||
}
|
@ -0,0 +1,5 @@
|
||||
package com.google.android.gms.usagereporting.internal;
|
||||
|
||||
interface IUsageReportingOptInOptionsChangedListener {
|
||||
oneway void onOptionsChanged() = 1;
|
||||
}
|
@ -0,0 +1,12 @@
|
||||
package com.google.android.gms.usagereporting.internal;
|
||||
|
||||
import com.google.android.gms.usagereporting.internal.IUsageReportingCallbacks;
|
||||
import com.google.android.gms.usagereporting.internal.IUsageReportingOptInOptionsChangedListener;
|
||||
import com.google.android.gms.usagereporting.UsageReportingOptInOptions;
|
||||
|
||||
interface IUsageReportingService {
|
||||
oneway void getOptInOptions(IUsageReportingCallbacks callbacks) = 1;
|
||||
oneway void setOptInOptions(in UsageReportingOptInOptions options, IUsageReportingCallbacks callbacks) = 2;
|
||||
oneway void addOptInOptionsChangedListener(IUsageReportingOptInOptionsChangedListener listener, IUsageReportingCallbacks callbacks) = 3;
|
||||
oneway void removeOptInOptionsChangedListener(IUsageReportingOptInOptionsChangedListener listener, IUsageReportingCallbacks callbacks) = 4;
|
||||
}
|
@ -4,5 +4,6 @@ import com.mgoogle.android.gms.phenotype.internal.IPhenotypeCallbacks;
|
||||
|
||||
interface IPhenotypeService {
|
||||
void register(IPhenotypeCallbacks callbacks, String p1, int p2, in String[] p3, in byte[] p4) = 0;
|
||||
void register2(IPhenotypeCallbacks callbacks, String p1, int p2, in String[] p3, in int[] p4, in byte[] p5) = 1;
|
||||
void getConfigurationSnapshot(IPhenotypeCallbacks callbacks, String p1, String p2, String p3) = 10;
|
||||
}
|
||||
|
@ -24,7 +24,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
public class CorpusStatus extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1000)
|
||||
private int versionCode;
|
||||
private final int versionCode;
|
||||
@SafeParceled(1)
|
||||
public boolean found;
|
||||
@SafeParceled(2)
|
||||
|
@ -21,7 +21,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
|
||||
public class PIMEUpdateResponse extends AutoSafeParcelable {
|
||||
@SafeParceled(1000)
|
||||
private int versionCode;
|
||||
private final int versionCode;
|
||||
|
||||
@SafeParceled(1)
|
||||
private String b;
|
||||
|
@ -24,7 +24,7 @@ import java.util.List;
|
||||
public class QuerySpecification extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1000)
|
||||
private int versionCode = 2;
|
||||
private final int versionCode = 2;
|
||||
@SafeParceled(1)
|
||||
public final boolean b;
|
||||
//@SafeParceled(value = 2, subType = "TODO")
|
||||
|
@ -21,7 +21,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
|
||||
public class SearchResults extends AutoSafeParcelable {
|
||||
@SafeParceled(1000)
|
||||
private int versionCode = 2;
|
||||
private final int versionCode = 2;
|
||||
|
||||
public static Creator<SearchResults> CREATOR = new AutoCreator<SearchResults>(SearchResults.class);
|
||||
}
|
||||
|
@ -21,7 +21,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
|
||||
public class SuggestSpecification extends AutoSafeParcelable {
|
||||
@SafeParceled(1000)
|
||||
private int versionCode;
|
||||
private final int versionCode;
|
||||
|
||||
public SuggestSpecification() {
|
||||
versionCode = 2;
|
||||
|
@ -21,7 +21,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
|
||||
public class SuggestionResults extends AutoSafeParcelable {
|
||||
@SafeParceled(1000)
|
||||
private int versionCode;
|
||||
private final int versionCode;
|
||||
@SafeParceled(1)
|
||||
public final String errorMessage;
|
||||
|
||||
|
@ -19,5 +19,5 @@ package com.google.android.gms.auth;
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
|
||||
public class AccountChangeEvent extends AutoSafeParcelable {
|
||||
public static Creator<AccountChangeEvent> CREATOR = new AutoCreator<>(AccountChangeEvent.class);
|
||||
public static Creator<AccountChangeEvent> CREATOR = new AutoCreator<AccountChangeEvent>(AccountChangeEvent.class);
|
||||
}
|
||||
|
@ -21,12 +21,12 @@ import org.microg.safeparcel.SafeParceled;
|
||||
|
||||
public class AccountChangeEventsRequest extends AutoSafeParcelable {
|
||||
@SafeParceled(1)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
@SafeParceled(2)
|
||||
private int i;
|
||||
@SafeParceled(3)
|
||||
private String s;
|
||||
|
||||
public static Creator<AccountChangeEventsRequest> CREATOR = new AutoCreator<>(AccountChangeEventsRequest.class);
|
||||
public static Creator<AccountChangeEventsRequest> CREATOR = new AutoCreator<AccountChangeEventsRequest>(AccountChangeEventsRequest.class);
|
||||
|
||||
}
|
||||
|
@ -24,13 +24,13 @@ import java.util.List;
|
||||
|
||||
public class AccountChangeEventsResponse extends AutoSafeParcelable {
|
||||
@SafeParceled(1)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
@SafeParceled(value = 2, subClass = AccountChangeEvent.class)
|
||||
private List<AccountChangeEvent> events;
|
||||
private final List<AccountChangeEvent> events;
|
||||
|
||||
public AccountChangeEventsResponse() {
|
||||
events = new ArrayList<>();
|
||||
events = new ArrayList<AccountChangeEvent>();
|
||||
}
|
||||
|
||||
public static Creator<AccountChangeEventsResponse> CREATOR = new AutoCreator<>(AccountChangeEventsResponse.class);
|
||||
public static Creator<AccountChangeEventsResponse> CREATOR = new AutoCreator<AccountChangeEventsResponse>(AccountChangeEventsResponse.class);
|
||||
}
|
||||
|
@ -25,7 +25,7 @@ import java.util.List;
|
||||
|
||||
public class TokenData extends AutoSafeParcelable {
|
||||
@SafeParceled(1)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@SafeParceled(2)
|
||||
public final String token;
|
||||
@ -60,5 +60,5 @@ public class TokenData extends AutoSafeParcelable {
|
||||
this.scopes = null;
|
||||
}
|
||||
|
||||
public static final Creator<TokenData> CREATOR = new AutoCreator<>(TokenData.class);
|
||||
public static final Creator<TokenData> CREATOR = new AutoCreator<TokenData>(TokenData.class);
|
||||
}
|
||||
|
@ -13,37 +13,29 @@ import android.text.TextUtils;
|
||||
|
||||
import org.microg.gms.common.PublicApi;
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
import org.microg.safeparcel.SafeParceled;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.Objects;
|
||||
|
||||
@PublicApi
|
||||
public class Credential extends AutoSafeParcelable {
|
||||
|
||||
@Field(1000)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@Field(1)
|
||||
private String id;
|
||||
|
||||
@Field(2)
|
||||
private String name;
|
||||
|
||||
@Field(3)
|
||||
private Uri profilePictureUri;
|
||||
|
||||
@Field(value = 4, subClass = IdToken.class)
|
||||
private List<IdToken> tokens;
|
||||
|
||||
@Field(5)
|
||||
private String password;
|
||||
|
||||
@Field(6)
|
||||
private String accountType;
|
||||
|
||||
@Field(7)
|
||||
private String generatedPassword;
|
||||
|
||||
@ -132,19 +124,19 @@ public class Credential extends AutoSafeParcelable {
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
if (this == o) return true;
|
||||
if (!(o instanceof Credential)) return false;
|
||||
if (o == null || !(o instanceof Credential)) return false;
|
||||
|
||||
Credential that = (Credential) o;
|
||||
|
||||
if (!Objects.equals(id, that.id)) return false;
|
||||
if (!Objects.equals(name, that.name)) return false;
|
||||
if (!Objects.equals(profilePictureUri, that.profilePictureUri))
|
||||
if (id != null ? !id.equals(that.id) : that.id != null) return false;
|
||||
if (name != null ? !name.equals(that.name) : that.name != null) return false;
|
||||
if (profilePictureUri != null ? !profilePictureUri.equals(that.profilePictureUri) : that.profilePictureUri != null)
|
||||
return false;
|
||||
if (!Objects.equals(password, that.password))
|
||||
if (password != null ? !password.equals(that.password) : that.password != null)
|
||||
return false;
|
||||
if (!Objects.equals(accountType, that.accountType))
|
||||
if (accountType != null ? !accountType.equals(that.accountType) : that.accountType != null)
|
||||
return false;
|
||||
return Objects.equals(generatedPassword, that.generatedPassword);
|
||||
return generatedPassword != null ? generatedPassword.equals(that.generatedPassword) : that.generatedPassword == null;
|
||||
|
||||
}
|
||||
|
||||
@ -154,7 +146,7 @@ public class Credential extends AutoSafeParcelable {
|
||||
}
|
||||
|
||||
public static class Builder {
|
||||
private String id;
|
||||
private final String id;
|
||||
private String name;
|
||||
private Uri profilePictureUri;
|
||||
private String password;
|
||||
@ -238,5 +230,5 @@ public class Credential extends AutoSafeParcelable {
|
||||
}
|
||||
}
|
||||
|
||||
public static final Creator<Credential> CREATOR = new AutoCreator<>(Credential.class);
|
||||
public static final Creator<Credential> CREATOR = new AutoCreator<Credential>(Credential.class);
|
||||
}
|
||||
|
@ -10,20 +10,17 @@ package com.google.android.gms.auth.api.credentials;
|
||||
|
||||
import org.microg.gms.common.PublicApi;
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
import org.microg.safeparcel.SafeParceled;
|
||||
|
||||
@PublicApi
|
||||
public class CredentialPickerConfig extends AutoSafeParcelable {
|
||||
|
||||
@Field(1000)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@Field(1)
|
||||
private boolean showAddAccountButton;
|
||||
|
||||
@Field(2)
|
||||
private boolean showCancelButton;
|
||||
|
||||
@Field(3)
|
||||
private boolean forNewAccount;
|
||||
|
||||
@ -60,7 +57,7 @@ public class CredentialPickerConfig extends AutoSafeParcelable {
|
||||
'}';
|
||||
}
|
||||
|
||||
public static class Builder {
|
||||
public class Builder {
|
||||
private boolean showAddAccountButton;
|
||||
private boolean showCancelButton;
|
||||
private boolean forNewAccount;
|
||||
@ -94,5 +91,5 @@ public class CredentialPickerConfig extends AutoSafeParcelable {
|
||||
}
|
||||
}
|
||||
|
||||
public static final Creator<CredentialPickerConfig> CREATOR = new AutoCreator<>(CredentialPickerConfig.class);
|
||||
public static final Creator<CredentialPickerConfig> CREATOR = new AutoCreator<CredentialPickerConfig>(CredentialPickerConfig.class);
|
||||
}
|
||||
|
@ -9,7 +9,6 @@
|
||||
package com.google.android.gms.auth.api.credentials;
|
||||
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
import org.microg.safeparcel.SafeParceled;
|
||||
|
||||
/**
|
||||
* Parameters for requesting a Credential, via Auth.CredentialsApi.request(). Instances can be
|
||||
@ -18,17 +17,14 @@ import org.microg.safeparcel.SafeParceled;
|
||||
public class CredentialRequest extends AutoSafeParcelable {
|
||||
|
||||
@Field(1000)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@Field(1)
|
||||
private boolean passwordLoginSupported;
|
||||
|
||||
@Field(2)
|
||||
private String[] accountTypes;
|
||||
|
||||
@Field(3)
|
||||
private CredentialPickerConfig credentialPickerConfig;
|
||||
|
||||
@Field(4)
|
||||
private CredentialPickerConfig credentialHintPickerConfig;
|
||||
|
||||
@ -65,7 +61,7 @@ public class CredentialRequest extends AutoSafeParcelable {
|
||||
return passwordLoginSupported;
|
||||
}
|
||||
|
||||
public static final Creator<CredentialRequest> CREATOR = new AutoCreator<>(CredentialRequest.class);
|
||||
public static final Creator<CredentialRequest> CREATOR = new AutoCreator<CredentialRequest>(CredentialRequest.class);
|
||||
|
||||
public static class Builder {
|
||||
private boolean passwordLoginSupported;
|
||||
|
@ -20,7 +20,7 @@ import java.util.Arrays;
|
||||
@PublicApi
|
||||
public class HintRequest extends AutoSafeParcelable {
|
||||
@Field(1000)
|
||||
private int versionCode = 2;
|
||||
private final int versionCode = 2;
|
||||
|
||||
@Field(1)
|
||||
private CredentialPickerConfig hintPickerConfig;
|
||||
@ -167,4 +167,4 @@ public class HintRequest extends AutoSafeParcelable {
|
||||
this.serverClientId = serverClientId;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -10,13 +10,12 @@ package com.google.android.gms.auth.api.credentials;
|
||||
|
||||
import org.microg.gms.common.PublicApi;
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
import org.microg.safeparcel.SafeParceled;
|
||||
|
||||
@PublicApi
|
||||
public class IdToken extends AutoSafeParcelable {
|
||||
|
||||
@Field(1000)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@Field(1)
|
||||
private String accountType;
|
||||
@ -46,5 +45,5 @@ public class IdToken extends AutoSafeParcelable {
|
||||
return id;
|
||||
}
|
||||
|
||||
public static final Creator<IdToken> CREATOR = new AutoCreator<>(IdToken.class);
|
||||
public static final Creator<IdToken> CREATOR = new AutoCreator<IdToken>(IdToken.class);
|
||||
}
|
||||
|
@ -31,4 +31,4 @@ public final class IdentityProviders {
|
||||
public static String getIdentityProviderForAccount(Account account) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -19,5 +19,5 @@ package com.google.android.gms.auth.api.credentials.internal;
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
|
||||
public class DeleteRequest extends AutoSafeParcelable {
|
||||
public static final Creator<DeleteRequest> CREATOR = new AutoCreator<>(DeleteRequest.class);
|
||||
public static final Creator<DeleteRequest> CREATOR = new AutoCreator<DeleteRequest>(DeleteRequest.class);
|
||||
}
|
||||
|
@ -19,5 +19,5 @@ package com.google.android.gms.auth.api.credentials.internal;
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
|
||||
public class GeneratePasswordRequest extends AutoSafeParcelable {
|
||||
public static final Creator<GeneratePasswordRequest> CREATOR = new AutoCreator<>(GeneratePasswordRequest.class);
|
||||
public static final Creator<GeneratePasswordRequest> CREATOR = new AutoCreator<GeneratePasswordRequest>(GeneratePasswordRequest.class);
|
||||
}
|
||||
|
@ -19,5 +19,5 @@ package com.google.android.gms.auth.api.credentials.internal;
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
|
||||
public class SaveRequest extends AutoSafeParcelable {
|
||||
public static final Creator<SaveRequest> CREATOR = new AutoCreator<>(SaveRequest.class);
|
||||
public static final Creator<SaveRequest> CREATOR = new AutoCreator<SaveRequest>(SaveRequest.class);
|
||||
}
|
||||
|
@ -0,0 +1,41 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2022 microG Project Team
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
package com.google.android.gms.auth.api.proxy;
|
||||
|
||||
import android.os.Bundle;
|
||||
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
|
||||
public class ProxyRequest extends AutoSafeParcelable {
|
||||
public static final int HTTP_METHOD_GET = 0;
|
||||
public static final int HTTP_METHOD_POST = 1;
|
||||
public static final int HTTP_METHOD_PUT = 2;
|
||||
public static final int HTTP_METHOD_DELETE = 3;
|
||||
public static final int HTTP_METHOD_HEAD = 4;
|
||||
public static final int HTTP_METHOD_OPTIONS = 5;
|
||||
public static final int HTTP_METHOD_TRACE = 6;
|
||||
public static final int HTTP_METHOD_PATCH = 7;
|
||||
|
||||
@Field(1000)
|
||||
private final int versionCode = 2;
|
||||
@Field(1)
|
||||
public String url;
|
||||
@Field(2)
|
||||
public int httpMethod;
|
||||
@Field(3)
|
||||
public long timeoutMillis;
|
||||
@Field(4)
|
||||
public byte[] body;
|
||||
@Field(5)
|
||||
public Bundle headers;
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return url;
|
||||
}
|
||||
|
||||
public static final Creator<ProxyRequest> CREATOR = new AutoCreator<>(ProxyRequest.class);
|
||||
}
|
@ -0,0 +1,30 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2022 microG Project Team
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
package com.google.android.gms.auth.api.proxy;
|
||||
|
||||
import android.app.PendingIntent;
|
||||
import android.os.Bundle;
|
||||
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
|
||||
public class ProxyResponse extends AutoSafeParcelable {
|
||||
public static final int STATUS_CODE_NO_CONNECTION = -1;
|
||||
|
||||
@Field(1000)
|
||||
private final int versionCode = 1;
|
||||
@Field(1)
|
||||
public int gmsStatusCode;
|
||||
@Field(2)
|
||||
public PendingIntent recoveryAction;
|
||||
@Field(3)
|
||||
public int httpStatusCode;
|
||||
@Field(4)
|
||||
public Bundle headers;
|
||||
@Field(5)
|
||||
public byte[] body;
|
||||
|
||||
public static final Creator<ProxyResponse> CREATOR = new AutoCreator<>(ProxyResponse.class);
|
||||
}
|
@ -25,7 +25,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
public class AccountRecoveryGuidanceRequest extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
@SafeParceled(2)
|
||||
@Deprecated
|
||||
public final String accountName;
|
||||
@ -42,5 +42,5 @@ public class AccountRecoveryGuidanceRequest extends AutoSafeParcelable {
|
||||
this.account = account;
|
||||
}
|
||||
|
||||
public static final Creator<AccountRecoveryGuidanceRequest> CREATOR = new AutoCreator<>(AccountRecoveryGuidanceRequest.class);
|
||||
public static final Creator<AccountRecoveryGuidanceRequest> CREATOR = new AutoCreator<AccountRecoveryGuidanceRequest>(AccountRecoveryGuidanceRequest.class);
|
||||
}
|
||||
|
@ -25,7 +25,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
public class AccountRemovalRequest extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
@SafeParceled(2)
|
||||
@Deprecated
|
||||
public final String accountName;
|
||||
@ -42,5 +42,5 @@ public class AccountRemovalRequest extends AutoSafeParcelable {
|
||||
this.account = account;
|
||||
}
|
||||
|
||||
public static final Creator<AccountRemovalRequest> CREATOR = new AutoCreator<>(AccountRemovalRequest.class);
|
||||
public static final Creator<AccountRemovalRequest> CREATOR = new AutoCreator<AccountRemovalRequest>(AccountRemovalRequest.class);
|
||||
}
|
||||
|
@ -24,11 +24,11 @@ import org.microg.safeparcel.SafeParceled;
|
||||
|
||||
public class ConfirmCredentialsRequest extends AutoSafeParcelable {
|
||||
@SafeParceled(1)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
@SafeParceled(2)
|
||||
public AccountCredentials accountCredentials;
|
||||
@SafeParceled(3)
|
||||
public CaptchaSolution captchaSolution;
|
||||
|
||||
public static final Creator<ConfirmCredentialsRequest> CREATOR = new AutoCreator<>(ConfirmCredentialsRequest.class);
|
||||
public static final Creator<ConfirmCredentialsRequest> CREATOR = new AutoCreator<ConfirmCredentialsRequest>(ConfirmCredentialsRequest.class);
|
||||
}
|
||||
|
@ -26,7 +26,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
public class TokenRequest extends AutoSafeParcelable{
|
||||
|
||||
@SafeParceled(1)
|
||||
private int versionCode = 4;
|
||||
private final int versionCode = 4;
|
||||
@SafeParceled(3)
|
||||
public String accountName;
|
||||
@SafeParceled(4)
|
||||
@ -40,5 +40,5 @@ public class TokenRequest extends AutoSafeParcelable{
|
||||
return new Account(accountName, accountType);
|
||||
}
|
||||
|
||||
public static final Creator<TokenRequest> CREATOR = new AutoCreator<>(TokenRequest.class);
|
||||
public static final Creator<TokenRequest> CREATOR = new AutoCreator<TokenRequest>(TokenRequest.class);
|
||||
}
|
||||
|
@ -27,7 +27,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
|
||||
public class ConfirmCredentialsWorkflowRequest extends AutoSafeParcelable {
|
||||
@SafeParceled(1)
|
||||
private int versionCode = 3;
|
||||
private final int versionCode = 3;
|
||||
@SafeParceled(2)
|
||||
public String accountName;
|
||||
@SafeParceled(3)
|
||||
@ -39,5 +39,5 @@ public class ConfirmCredentialsWorkflowRequest extends AutoSafeParcelable {
|
||||
@SafeParceled(6)
|
||||
public AccountAuthenticatorResponse accountAuthenticatorResponse;
|
||||
|
||||
public static final Creator<ConfirmCredentialsWorkflowRequest> CREATOR = new AutoCreator<>(ConfirmCredentialsWorkflowRequest.class);
|
||||
public static final Creator<ConfirmCredentialsWorkflowRequest> CREATOR = new AutoCreator<ConfirmCredentialsWorkflowRequest>(ConfirmCredentialsWorkflowRequest.class);
|
||||
}
|
||||
|
@ -24,7 +24,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
// TODO
|
||||
public class AccountCredentials extends AutoSafeParcelable {
|
||||
@SafeParceled(1)
|
||||
private int versionCode = 2;
|
||||
private final int versionCode = 2;
|
||||
@SafeParceled(3)
|
||||
public String accountName;
|
||||
@SafeParceled(9)
|
||||
@ -34,5 +34,5 @@ public class AccountCredentials extends AutoSafeParcelable {
|
||||
return new Account(accountName, accountType);
|
||||
}
|
||||
|
||||
public static final Creator<AccountCredentials> CREATOR = new AutoCreator<>(AccountCredentials.class);
|
||||
public static final Creator<AccountCredentials> CREATOR = new AutoCreator<AccountCredentials>(AccountCredentials.class);
|
||||
}
|
||||
|
@ -21,7 +21,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
|
||||
public class AppDescription extends AutoSafeParcelable {
|
||||
@SafeParceled(1)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
@SafeParceled(2)
|
||||
public int callingUid;
|
||||
@SafeParceled(3)
|
||||
@ -31,5 +31,5 @@ public class AppDescription extends AutoSafeParcelable {
|
||||
@SafeParceled(5)
|
||||
public String callingPkg;
|
||||
|
||||
public static final Creator<AppDescription> CREATOR = new AutoCreator<>(AppDescription.class);
|
||||
public static final Creator<AppDescription> CREATOR = new AutoCreator<AppDescription>(AppDescription.class);
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
public class CaptchaSolution extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
public static final Creator<CaptchaSolution> CREATOR = new AutoCreator<>(CaptchaSolution.class);
|
||||
public static final Creator<CaptchaSolution> CREATOR = new AutoCreator<CaptchaSolution>(CaptchaSolution.class);
|
||||
}
|
||||
|
@ -18,22 +18,23 @@ package com.google.android.gms.clearcut;
|
||||
|
||||
import android.util.Base64;
|
||||
|
||||
import com.google.android.gms.phenotype.ExperimentToken;
|
||||
import com.google.android.gms.phenotype.GenericDimension;
|
||||
import com.google.android.gms.playlog.internal.PlayLoggerContext;
|
||||
import com.google.android.gms.clearcut.internal.LogVerifierResultParcelable;
|
||||
import com.google.android.gms.clearcut.internal.PlayLoggerContext;
|
||||
import com.mgoogle.android.gms.phenotype.ExperimentToken;
|
||||
import com.mgoogle.android.gms.phenotype.GenericDimension;
|
||||
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
import org.microg.safeparcel.SafeParceled;
|
||||
|
||||
import java.nio.ByteBuffer;
|
||||
import java.nio.CharBuffer;
|
||||
import java.nio.charset.Charset;
|
||||
import java.nio.charset.CharsetDecoder;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.util.Arrays;
|
||||
|
||||
public class LogEventParcelable extends AutoSafeParcelable {
|
||||
@Field(1)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@Field(2)
|
||||
public final PlayLoggerContext context;
|
||||
@ -62,6 +63,9 @@ public class LogEventParcelable extends AutoSafeParcelable {
|
||||
@Field(10)
|
||||
public final GenericDimension[] genericDimensions;
|
||||
|
||||
@Field(11)
|
||||
public final LogVerifierResultParcelable logVerifierResult;
|
||||
|
||||
private LogEventParcelable() {
|
||||
context = null;
|
||||
bytes = null;
|
||||
@ -71,6 +75,7 @@ public class LogEventParcelable extends AutoSafeParcelable {
|
||||
addPhenotypeExperimentTokens = false;
|
||||
experimentTokenParcelables = null;
|
||||
genericDimensions = null;
|
||||
logVerifierResult = null;
|
||||
}
|
||||
|
||||
public LogEventParcelable(PlayLoggerContext context, byte[] bytes, int[] testCodes, String[] mendelPackages, int[] experimentIds, byte[][] experimentTokens, boolean addPhenotypeExperimentTokens) {
|
||||
@ -81,8 +86,9 @@ public class LogEventParcelable extends AutoSafeParcelable {
|
||||
this.experimentIds = experimentIds;
|
||||
this.experimentTokens = experimentTokens;
|
||||
this.addPhenotypeExperimentTokens = addPhenotypeExperimentTokens;
|
||||
experimentTokenParcelables = null;
|
||||
genericDimensions = null;
|
||||
this.experimentTokenParcelables = null;
|
||||
this.genericDimensions = null;
|
||||
this.logVerifierResult = null;
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -112,5 +118,5 @@ public class LogEventParcelable extends AutoSafeParcelable {
|
||||
}
|
||||
}
|
||||
|
||||
public static final Creator<LogEventParcelable> CREATOR = new AutoCreator<>(LogEventParcelable.class);
|
||||
public static final Creator<LogEventParcelable> CREATOR = new AutoCreator<LogEventParcelable>(LogEventParcelable.class);
|
||||
}
|
||||
|
@ -0,0 +1,15 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2022 microG Project Team
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
package com.google.android.gms.clearcut.internal;
|
||||
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
|
||||
public class LogVerifierResultParcelable extends AutoSafeParcelable {
|
||||
@Field(1)
|
||||
public boolean b;
|
||||
|
||||
public static final Creator<LogVerifierResultParcelable> CREATOR = new AutoCreator<>(LogVerifierResultParcelable.class);
|
||||
}
|
@ -1,28 +1,16 @@
|
||||
/*
|
||||
* 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: 2022 microG Project Team
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
package com.google.android.gms.playlog.internal;
|
||||
package com.google.android.gms.clearcut.internal;
|
||||
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
import org.microg.safeparcel.SafeParceled;
|
||||
|
||||
public class PlayLoggerContext extends AutoSafeParcelable {
|
||||
|
||||
@Field(1)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@Field(2)
|
||||
public final String packageName;
|
||||
@ -33,9 +21,6 @@ public class PlayLoggerContext extends AutoSafeParcelable {
|
||||
@Field(4)
|
||||
public final int logSource;
|
||||
|
||||
@Field(8)
|
||||
public final String logSourceName;
|
||||
|
||||
@Field(5)
|
||||
public final String uploadAccount;
|
||||
|
||||
@ -45,6 +30,9 @@ public class PlayLoggerContext extends AutoSafeParcelable {
|
||||
@Field(7)
|
||||
public final boolean logAndroidId;
|
||||
|
||||
@Field(8)
|
||||
public final String logSourceName;
|
||||
|
||||
@Field(9)
|
||||
public final boolean isAnonymous;
|
||||
|
||||
@ -57,13 +45,16 @@ public class PlayLoggerContext extends AutoSafeParcelable {
|
||||
@Field(12)
|
||||
public final boolean scrubMccMnc;
|
||||
|
||||
@Field(13)
|
||||
public final Integer piiLevelset;
|
||||
|
||||
private PlayLoggerContext() {
|
||||
packageName = uploadAccount = logSourceName = loggingId = null;
|
||||
qosTier = packageVersionCode = logSource = appMobileSpecId = -1;
|
||||
qosTier = packageVersionCode = logSource = appMobileSpecId = piiLevelset = -1;
|
||||
isAnonymous = logAndroidId = scrubMccMnc = false;
|
||||
}
|
||||
|
||||
public PlayLoggerContext(String packageName, int packageVersionCode, int logSource, String logSourceName, String uploadAccount, String loggingId, boolean isAnonymous, int qosTier, boolean scrubMccMnc) {
|
||||
public PlayLoggerContext(String packageName, int packageVersionCode, int logSource, String logSourceName, String uploadAccount, String loggingId, boolean isAnonymous, int qosTier, boolean scrubMccMnc, int piiLevelset) {
|
||||
this.packageName = packageName;
|
||||
this.packageVersionCode = packageVersionCode;
|
||||
this.logSource = logSource;
|
||||
@ -75,6 +66,7 @@ public class PlayLoggerContext extends AutoSafeParcelable {
|
||||
this.qosTier = qosTier;
|
||||
this.appMobileSpecId = null;
|
||||
this.scrubMccMnc = scrubMccMnc;
|
||||
this.piiLevelset = piiLevelset;
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -89,9 +81,12 @@ public class PlayLoggerContext extends AutoSafeParcelable {
|
||||
sb.append(", logSourceName=").append(logSourceName);
|
||||
sb.append(", isAnonymous=").append(isAnonymous);
|
||||
sb.append(", qosTier=").append(qosTier);
|
||||
sb.append(", appMobileSpecId=").append(appMobileSpecId);
|
||||
sb.append(", scrubMccMnc=").append(scrubMccMnc);
|
||||
sb.append(", piiLevelset=").append(piiLevelset);
|
||||
sb.append(']');
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
public static Creator<PlayLoggerContext> CREATOR = new AutoCreator<PlayLoggerContext>(PlayLoggerContext.class);
|
||||
}
|
||||
}
|
@ -71,5 +71,5 @@ public class GoogleCertificatesQuery extends AutoSafeParcelable {
|
||||
return certData;
|
||||
}
|
||||
|
||||
public static final Creator<GoogleCertificatesQuery> CREATOR = new AutoCreator<>(GoogleCertificatesQuery.class);
|
||||
public static final Creator<GoogleCertificatesQuery> CREATOR = new AutoCreator<GoogleCertificatesQuery>(GoogleCertificatesQuery.class);
|
||||
}
|
||||
|
@ -20,5 +20,5 @@ import org.microg.safeparcel.AutoSafeParcelable;
|
||||
|
||||
public class FavaDiagnosticsEntity extends AutoSafeParcelable {
|
||||
|
||||
public static final Creator<FavaDiagnosticsEntity> CREATOR = new AutoCreator<>(FavaDiagnosticsEntity.class);
|
||||
public static final Creator<FavaDiagnosticsEntity> CREATOR = new AutoCreator<FavaDiagnosticsEntity>(FavaDiagnosticsEntity.class);
|
||||
}
|
||||
|
@ -0,0 +1,45 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2022 microG Project Team
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
package com.google.android.gms.measurement.api.internal;
|
||||
|
||||
import android.os.Bundle;
|
||||
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
|
||||
public class InitializationParams extends AutoSafeParcelable {
|
||||
@Field(1)
|
||||
public long field1;
|
||||
@Field(2)
|
||||
public long field2;
|
||||
@Field(3)
|
||||
public boolean field3;
|
||||
@Field(4)
|
||||
public String field4;
|
||||
@Field(5)
|
||||
public String field5;
|
||||
@Field(6)
|
||||
public String field6;
|
||||
@Field(7)
|
||||
public Bundle field7;
|
||||
@Field(8)
|
||||
public String field8;
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "InitializationParams{" +
|
||||
"field1=" + field1 +
|
||||
", field2=" + field2 +
|
||||
", field3=" + field3 +
|
||||
", field4='" + field4 + '\'' +
|
||||
", field5='" + field5 + '\'' +
|
||||
", field6='" + field6 + '\'' +
|
||||
", field7=" + field7 +
|
||||
", field8='" + field8 + '\'' +
|
||||
'}';
|
||||
}
|
||||
|
||||
public static final Creator<InitializationParams> CREATOR = new AutoCreator<>(InitializationParams.class);
|
||||
}
|
@ -25,7 +25,7 @@ public class AppMetadata extends AutoSafeParcelable {
|
||||
@Field(8)
|
||||
private String field8;
|
||||
@Field(9)
|
||||
private boolean field9 = true;
|
||||
private final boolean field9 = true;
|
||||
@Field(10)
|
||||
private boolean field10;
|
||||
@Field(11)
|
||||
@ -57,5 +57,9 @@ public class AppMetadata extends AutoSafeParcelable {
|
||||
@Field(25)
|
||||
private String field25;
|
||||
|
||||
public String toString() {
|
||||
return "AppMetadata[" + packageName + "]";
|
||||
}
|
||||
|
||||
public static final Creator<AppMetadata> CREATOR = new AutoCreator<>(AppMetadata.class);
|
||||
}
|
||||
|
@ -0,0 +1,17 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2020, microG Project Team
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
package com.google.android.gms.measurement.internal;
|
||||
|
||||
import android.os.Bundle;
|
||||
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
|
||||
public class EventParams extends AutoSafeParcelable {
|
||||
@Field(2)
|
||||
public Bundle data;
|
||||
|
||||
public static final Creator<EventParams> CREATOR = new AutoCreator<>(EventParams.class);
|
||||
}
|
@ -8,5 +8,14 @@ package com.google.android.gms.measurement.internal;
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
|
||||
public class EventParcel extends AutoSafeParcelable {
|
||||
@Field(2)
|
||||
public String name;
|
||||
@Field(3)
|
||||
public EventParams params;
|
||||
@Field(4)
|
||||
public String origin;
|
||||
@Field(5)
|
||||
public long timestamp;
|
||||
|
||||
public static final Creator<EventParcel> CREATOR = new AutoCreator<>(EventParcel.class);
|
||||
}
|
||||
|
@ -8,5 +8,20 @@ package com.google.android.gms.measurement.internal;
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
|
||||
public class UserAttributeParcel extends AutoSafeParcelable {
|
||||
@Field(1)
|
||||
public int field1;
|
||||
@Field(2)
|
||||
public String name;
|
||||
@Field(3)
|
||||
public long timestamp;
|
||||
@Field(4)
|
||||
public Long field4;
|
||||
@Field(6)
|
||||
public String field6;
|
||||
@Field(7)
|
||||
public String field7;
|
||||
@Field(8)
|
||||
public Double field8;
|
||||
|
||||
public static final Creator<UserAttributeParcel> CREATOR = new AutoCreator<>(UserAttributeParcel.class);
|
||||
}
|
||||
|
@ -21,7 +21,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
|
||||
public class ParcelableLoadImageOptions extends AutoSafeParcelable {
|
||||
@SafeParceled(1000)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@SafeParceled(1)
|
||||
public int imageSize;
|
||||
@ -32,5 +32,5 @@ public class ParcelableLoadImageOptions extends AutoSafeParcelable {
|
||||
@SafeParceled(3)
|
||||
public boolean useLargePictureForCp2Images;
|
||||
|
||||
public static final Creator<ParcelableLoadImageOptions> CREATOR = new AutoCreator<>(ParcelableLoadImageOptions.class);
|
||||
public static final Creator<ParcelableLoadImageOptions> CREATOR = new AutoCreator<ParcelableLoadImageOptions>(ParcelableLoadImageOptions.class);
|
||||
}
|
||||
|
@ -22,7 +22,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
public class AccountMetadata extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1)
|
||||
private int versionCode = 2;
|
||||
private final int versionCode = 2;
|
||||
|
||||
@SafeParceled(2)
|
||||
public boolean hasGooglePlus = true;
|
||||
@ -36,5 +36,5 @@ public class AccountMetadata extends AutoSafeParcelable {
|
||||
@SafeParceled(5)
|
||||
public boolean hasFeature4 = true;
|
||||
|
||||
public static Creator<AccountMetadata> CREATOR = new AutoCreator<>(AccountMetadata.class);
|
||||
public static Creator<AccountMetadata> CREATOR = new AutoCreator<AccountMetadata>(AccountMetadata.class);
|
||||
}
|
||||
|
@ -30,5 +30,5 @@ public class AvatarReference extends AutoSafeParcelable {
|
||||
@SafeParceled(2)
|
||||
public String location;
|
||||
|
||||
public static final Creator<AvatarReference> CREATOR = new AutoCreator<>(AvatarReference.class);
|
||||
public static final Creator<AvatarReference> CREATOR = new AutoCreator<AvatarReference>(AvatarReference.class);
|
||||
}
|
||||
|
@ -21,10 +21,11 @@ import org.microg.safeparcel.SafeParceled;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Deprecated
|
||||
public class LogEvent extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@SafeParceled(2)
|
||||
public final long eventTime;
|
||||
@ -50,5 +51,5 @@ public class LogEvent extends AutoSafeParcelable {
|
||||
'}';
|
||||
}
|
||||
|
||||
public static Creator<LogEvent> CREATOR = new AutoCreator<>(LogEvent.class);
|
||||
public static Creator<LogEvent> CREATOR = new AutoCreator<LogEvent>(LogEvent.class);
|
||||
}
|
||||
|
@ -22,7 +22,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
public class GetCorpusStatusRequest extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1000)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@SafeParceled(1)
|
||||
public final String packageName;
|
||||
|
@ -22,7 +22,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
public class RequestIndexingRequest extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1000)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@SafeParceled(1)
|
||||
public final String packageName;
|
||||
|
@ -22,7 +22,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
public class GetCurrentExperimentIdsRequest extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1000)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
public static final Creator<GetCurrentExperimentIdsRequest> CREATOR = new AutoCreator<GetCurrentExperimentIdsRequest>(GetCurrentExperimentIdsRequest.class);
|
||||
}
|
||||
|
@ -26,7 +26,7 @@ import java.util.Arrays;
|
||||
public class GetCurrentExperimentIdsResponse extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1000)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@SafeParceled(1)
|
||||
public final Status status;
|
||||
|
@ -22,7 +22,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
public class GetGlobalSearchSourcesRequest extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1000)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@SafeParceled(1)
|
||||
public boolean bool;
|
||||
|
@ -28,7 +28,7 @@ import java.util.Arrays;
|
||||
public class GetGlobalSearchSourcesResponse extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1000)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@SafeParceled(1)
|
||||
public final Status status;
|
||||
|
@ -22,7 +22,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
public class GetPendingExperimentIdsRequest extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1000)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
public static final Creator<GetPendingExperimentIdsRequest> CREATOR = new AutoCreator<GetPendingExperimentIdsRequest>(GetPendingExperimentIdsRequest.class);
|
||||
}
|
||||
|
@ -26,7 +26,7 @@ import java.util.Arrays;
|
||||
public class GetPendingExperimentIdsResponse extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1000)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@SafeParceled(1)
|
||||
public final Status status;
|
||||
|
@ -24,7 +24,7 @@ import java.util.Arrays;
|
||||
public class SetExperimentIdsRequest extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1000)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@SafeParceled(1)
|
||||
public byte[] experimentIds;
|
||||
|
@ -24,7 +24,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
public class SetExperimentIdsResponse extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1000)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@SafeParceled(1)
|
||||
public final Status status;
|
||||
|
@ -22,7 +22,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
public class SetIncludeInGlobalSearchRequest extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1000)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@SafeParceled(1)
|
||||
public String packageName;
|
||||
|
@ -24,7 +24,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
public class SetIncludeInGlobalSearchResponse extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1000)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@SafeParceled(1)
|
||||
public final Status status;
|
||||
|
@ -25,7 +25,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
public class QueryResponse extends AutoSafeParcelable {
|
||||
|
||||
@SafeParceled(1000)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@SafeParceled(1)
|
||||
public final Status status;
|
||||
|
@ -0,0 +1,15 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2022 microG Project Team
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
package com.google.android.gms.usagereporting;
|
||||
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
|
||||
public class UsageReportingOptInOptions extends AutoSafeParcelable {
|
||||
@Field(2)
|
||||
public int optInUsageReporting;
|
||||
|
||||
public static final Creator<UsageReportingOptInOptions> CREATOR = new AutoCreator<>(UsageReportingOptInOptions.class);
|
||||
}
|
@ -3,10 +3,10 @@
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
package com.google.android.gms.phenotype;
|
||||
package com.mgoogle.android.gms.phenotype;
|
||||
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
|
||||
public class ExperimentToken extends AutoSafeParcelable {
|
||||
public static final Creator<ExperimentToken> CREATOR = new AutoCreator<>(ExperimentToken.class);
|
||||
}
|
||||
}
|
||||
|
@ -3,7 +3,7 @@
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
package com.google.android.gms.phenotype;
|
||||
package com.mgoogle.android.gms.phenotype;
|
||||
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
|
||||
@ -14,4 +14,4 @@ public class GenericDimension extends AutoSafeParcelable {
|
||||
public int b;
|
||||
|
||||
public static final Creator<GenericDimension> CREATOR = new AutoCreator<>(GenericDimension.class);
|
||||
}
|
||||
}
|
||||
|
@ -22,10 +22,11 @@ dependencies {
|
||||
|
||||
android {
|
||||
compileSdkVersion androidCompileSdk
|
||||
buildToolsVersion "$androidBuildVersionTools"
|
||||
buildToolsVersion "30.0.3"
|
||||
|
||||
aidlPackageWhiteList "com/google/android/gms/common/data/DataHolder.aidl"
|
||||
aidlPackageWhiteList "com/google/android/gms/common/images/WebImage.aidl"
|
||||
aidlPackageWhiteList "com/google/android/gms/common/api/internal/IStatusCallback.aidl"
|
||||
|
||||
defaultConfig {
|
||||
minSdkVersion androidMinSdk
|
||||
|
@ -46,7 +46,7 @@ import java.util.Map;
|
||||
@PublicApi(until = "1")
|
||||
public class DataHolder extends AutoSafeParcelable implements Closeable {
|
||||
@SafeParceled(1000)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@SafeParceled(1)
|
||||
private final String[] columns;
|
||||
|
@ -16,13 +16,13 @@
|
||||
|
||||
package com.google.android.gms.common.images;
|
||||
|
||||
import java.util.Locale;
|
||||
|
||||
import android.net.Uri;
|
||||
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
import org.microg.safeparcel.SafeParceled;
|
||||
|
||||
import java.util.Locale;
|
||||
|
||||
public class WebImage extends AutoSafeParcelable {
|
||||
public static final Creator<WebImage> CREATOR = new AutoCreator<>(WebImage.class);
|
||||
|
||||
@ -35,7 +35,7 @@ public class WebImage extends AutoSafeParcelable {
|
||||
}
|
||||
|
||||
@SafeParceled(1)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
|
||||
@SafeParceled(2)
|
||||
private final Uri uri;
|
||||
|
@ -18,7 +18,7 @@ apply plugin: 'com.android.library'
|
||||
|
||||
android {
|
||||
compileSdkVersion androidCompileSdk
|
||||
buildToolsVersion "$androidBuildVersionTools"
|
||||
buildToolsVersion "30.0.3"
|
||||
|
||||
defaultConfig {
|
||||
minSdkVersion androidMinSdk
|
||||
@ -32,12 +32,12 @@ android {
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation 'com.google.android.gms:play-services-base:17.6.0'
|
||||
implementation 'com.google.android.gms:play-services-base:18.0.1'
|
||||
|
||||
api project(':play-services-basement')
|
||||
api project(':play-services-tasks')
|
||||
api project(':play-services-base-api')
|
||||
|
||||
implementation 'androidx.fragment:fragment:1.3.6'
|
||||
implementation 'com.google.android.gms:play-services-base:17.6.0'
|
||||
implementation 'androidx.fragment:fragment:1.4.1'
|
||||
implementation 'com.google.android.gms:play-services-base:18.0.1'
|
||||
}
|
@ -16,22 +16,6 @@
|
||||
|
||||
package com.google.android.gms.common;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.app.Dialog;
|
||||
import android.app.PendingIntent;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.os.Bundle;
|
||||
import androidx.fragment.app.FragmentActivity;
|
||||
import android.util.Log;
|
||||
|
||||
import com.google.android.gms.common.api.GoogleApiClient.OnConnectionFailedListener;
|
||||
import com.google.android.gms.tasks.Task;
|
||||
import com.google.android.gms.tasks.Tasks;
|
||||
|
||||
import org.microg.gms.common.Constants;
|
||||
import org.microg.gms.common.PublicApi;
|
||||
|
||||
import static com.google.android.gms.common.ConnectionResult.INTERNAL_ERROR;
|
||||
import static com.google.android.gms.common.ConnectionResult.INVALID_ACCOUNT;
|
||||
import static com.google.android.gms.common.ConnectionResult.NETWORK_ERROR;
|
||||
@ -43,6 +27,23 @@ import static com.google.android.gms.common.ConnectionResult.SERVICE_VERSION_UPD
|
||||
import static com.google.android.gms.common.ConnectionResult.SIGN_IN_REQUIRED;
|
||||
import static com.google.android.gms.common.ConnectionResult.SUCCESS;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.app.Dialog;
|
||||
import android.app.PendingIntent;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.os.Bundle;
|
||||
import android.util.Log;
|
||||
|
||||
import androidx.fragment.app.FragmentActivity;
|
||||
|
||||
import com.google.android.gms.common.api.GoogleApiClient.OnConnectionFailedListener;
|
||||
import com.google.android.gms.tasks.Task;
|
||||
import com.google.android.gms.tasks.Tasks;
|
||||
|
||||
import org.microg.gms.common.Constants;
|
||||
import org.microg.gms.common.PublicApi;
|
||||
|
||||
@PublicApi
|
||||
public class GoogleApiAvailability {
|
||||
private static final String TAG = "GmsApiAvailability";
|
||||
|
@ -18,7 +18,7 @@ import org.microg.gms.common.api.PendingGoogleApiCall;
|
||||
|
||||
@PublicApi
|
||||
public abstract class GoogleApi<O extends Api.ApiOptions> implements HasApiKey<O> {
|
||||
private GoogleApiManager manager;
|
||||
private final GoogleApiManager manager;
|
||||
@PublicApi(exclude = true)
|
||||
public Api<O> api;
|
||||
|
||||
|
@ -28,7 +28,7 @@ import java.util.Iterator;
|
||||
@PublicApi
|
||||
public abstract class DataBuffer<T> implements Releasable, Iterable<T> {
|
||||
|
||||
private DataHolder dataHolder;
|
||||
private final DataHolder dataHolder;
|
||||
|
||||
@PublicApi(exclude = true)
|
||||
public DataBuffer(DataHolder dataHolder) {
|
||||
|
@ -44,7 +44,7 @@ public abstract class GmsClient<I extends IInterface> implements ApiClient {
|
||||
protected ConnectionState state = ConnectionState.NOT_CONNECTED;
|
||||
private ServiceConnection serviceConnection;
|
||||
private I serviceInterface;
|
||||
private String actionString;
|
||||
private final String actionString;
|
||||
|
||||
protected int serviceId = -1;
|
||||
protected Account account = null;
|
||||
@ -110,7 +110,7 @@ public abstract class GmsClient<I extends IInterface> implements ApiClient {
|
||||
|
||||
@Override
|
||||
public synchronized boolean isConnected() {
|
||||
return state == ConnectionState.CONNECTED || state == ConnectionState.PSEUDO_CONNECTED;
|
||||
return (state == ConnectionState.CONNECTED && serviceInterface != null && serviceInterface.asBinder().isBinderAlive() ) || state == ConnectionState.PSEUDO_CONNECTED;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -16,6 +16,10 @@
|
||||
|
||||
package org.microg.gms.common;
|
||||
|
||||
import static android.os.Build.VERSION.SDK_INT;
|
||||
import static android.os.Build.VERSION_CODES.ICE_CREAM_SANDWICH;
|
||||
import static org.microg.gms.common.Constants.GMS_PACKAGE_NAME;
|
||||
|
||||
import android.annotation.SuppressLint;
|
||||
import android.content.ComponentName;
|
||||
import android.content.Context;
|
||||
@ -29,10 +33,6 @@ import java.util.HashSet;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
import static android.os.Build.VERSION.SDK_INT;
|
||||
import static android.os.Build.VERSION_CODES.ICE_CREAM_SANDWICH;
|
||||
import static org.microg.gms.common.Constants.GMS_PACKAGE_NAME;
|
||||
|
||||
public class MultiConnectionKeeper {
|
||||
private static final String TAG = "GmsMultiConKeeper";
|
||||
|
||||
@ -88,7 +88,7 @@ public class MultiConnectionKeeper {
|
||||
private boolean connected = false;
|
||||
private IBinder binder;
|
||||
private ComponentName component;
|
||||
private ServiceConnection serviceConnection = new ServiceConnection() {
|
||||
private final ServiceConnection serviceConnection = new ServiceConnection() {
|
||||
@Override
|
||||
public void onServiceConnected(ComponentName componentName, IBinder iBinder) {
|
||||
Log.d(TAG, "Connection(" + actionString + ") : ServiceConnection : " +
|
||||
|
@ -21,9 +21,9 @@ import java.util.Objects;
|
||||
|
||||
public class GoogleApiManager {
|
||||
private static GoogleApiManager instance;
|
||||
private Context context;
|
||||
private Map<ApiInstance, ApiClient> clientMap = new HashMap<>();
|
||||
private Map<ApiInstance, List<WaitingApiCall<?>>> waitingApiCallMap = new HashMap<>();
|
||||
private final Context context;
|
||||
private final Map<ApiInstance, ApiClient> clientMap = new HashMap<>();
|
||||
private final Map<ApiInstance, List<WaitingApiCall<?>>> waitingApiCallMap = new HashMap<>();
|
||||
|
||||
private GoogleApiManager(Context context) {
|
||||
this.context = context;
|
||||
@ -81,7 +81,7 @@ public class GoogleApiManager {
|
||||
}
|
||||
|
||||
private class ConnectionCallback implements ConnectionCallbacks {
|
||||
private ApiInstance apiInstance;
|
||||
private final ApiInstance apiInstance;
|
||||
|
||||
public ConnectionCallback(ApiInstance apiInstance) {
|
||||
this.apiInstance = apiInstance;
|
||||
@ -99,7 +99,7 @@ public class GoogleApiManager {
|
||||
}
|
||||
|
||||
private class ConnectionFailedListener implements OnConnectionFailedListener {
|
||||
private ApiInstance apiInstance;
|
||||
private final ApiInstance apiInstance;
|
||||
|
||||
public ConnectionFailedListener(ApiInstance apiInstance) {
|
||||
this.apiInstance = apiInstance;
|
||||
@ -112,8 +112,8 @@ public class GoogleApiManager {
|
||||
}
|
||||
|
||||
private static class WaitingApiCall<R> {
|
||||
private PendingGoogleApiCall<R, ApiClient> apiCall;
|
||||
private TaskCompletionSource<R> completionSource;
|
||||
private final PendingGoogleApiCall<R, ApiClient> apiCall;
|
||||
private final TaskCompletionSource<R> completionSource;
|
||||
|
||||
public WaitingApiCall(PendingGoogleApiCall<R, ApiClient> apiCall, TaskCompletionSource<R> completionSource) {
|
||||
this.apiCall = apiCall;
|
||||
@ -148,8 +148,8 @@ public class GoogleApiManager {
|
||||
}
|
||||
|
||||
private static class ApiInstance {
|
||||
private Class<?> apiClass;
|
||||
private Api.ApiOptions apiOptions;
|
||||
private final Class<?> apiClass;
|
||||
private final Api.ApiOptions apiOptions;
|
||||
|
||||
public ApiInstance(Class<?> apiClass, Api.ApiOptions apiOptions) {
|
||||
this.apiClass = apiClass;
|
||||
|
@ -20,13 +20,13 @@ apply plugin: 'kotlin-android'
|
||||
dependencies {
|
||||
api "org.microg:safe-parcel:1.7.0"
|
||||
|
||||
implementation "androidx.annotation:annotation:1.2.0"
|
||||
implementation 'androidx.annotation:annotation:1.3.0'
|
||||
implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.4.32'
|
||||
}
|
||||
|
||||
android {
|
||||
compileSdkVersion androidCompileSdk
|
||||
buildToolsVersion "$androidBuildVersionTools"
|
||||
buildToolsVersion "30.0.3"
|
||||
|
||||
aidlPackageWhiteList "com/google/android/gms/common/api/Status.aidl"
|
||||
aidlPackageWhiteList "com/google/android/gms/common/internal/ICancelToken.aidl"
|
||||
|
@ -0,0 +1,36 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2020, microG Project Team
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
package com.google.android.gms.common;
|
||||
|
||||
import org.microg.safeparcel.AutoSafeParcelable;
|
||||
|
||||
public class Feature extends AutoSafeParcelable {
|
||||
@Field(1)
|
||||
private String name;
|
||||
@Field(2)
|
||||
private int oldVersion;
|
||||
@Field(3)
|
||||
private long version = -1;
|
||||
|
||||
private Feature() {
|
||||
}
|
||||
|
||||
public Feature(String name, long version) {
|
||||
this.name = name;
|
||||
this.version = version;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public long getVersion() {
|
||||
if (version == -1) return oldVersion;
|
||||
return version;
|
||||
}
|
||||
|
||||
public static final Creator<Feature> CREATOR = new AutoSafeParcelable.AutoCreator<>(Feature.class);
|
||||
}
|
@ -27,7 +27,7 @@ import org.microg.safeparcel.SafeParceled;
|
||||
@PublicApi
|
||||
public class Scope extends AutoSafeParcelable {
|
||||
@SafeParceled(1)
|
||||
private int versionCode = 1;
|
||||
private final int versionCode = 1;
|
||||
@SafeParceled(2)
|
||||
private final String scopeUri;
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user