diff --git a/Directory.Build.props b/Directory.Build.props index 321f74a06..64fd3a936 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -18,7 +18,7 @@ false - + 21 diff --git a/build.cake b/build.cake index f54386b3b..52cc3a141 100755 --- a/build.cake +++ b/build.cake @@ -16,6 +16,7 @@ #load "build/cake/update-config.cake" #load "build/cake/tests.cake" +#load "build/cake/gps-parameters.cake" using System.Text.RegularExpressions; using System.Xml; @@ -270,6 +271,7 @@ Task("javadocs") }); Task ("binderate") + .IsDependentOn("javadocs-gps") .IsDependentOn("binderate-config-verify") .Does (() => { @@ -361,15 +363,15 @@ Task("binderate-config-verify") artifact_version_suffix = artifact_version_parts[1]; } - Information($"groupId = {jo["groupId"]}"); - Information($"artifactId = {jo["artifactId"]}"); - Information($"artifact_version = {artifact_version}"); - Information($"artifact_version_prefix = {artifact_version_prefix}"); - Information($"artifact_version_suffix = {artifact_version_suffix}"); - Information($"nuget_version = {nuget_version}"); - Information($"nuget_version_prefix = {nuget_version_prefix}"); - Information($"nuget_version_suffix = {nuget_version_suffix}"); - Information($"nugetId = {jo["nugetId"]}"); + //Information($"groupId = {jo["groupId"]}"); + //Information($"artifactId = {jo["artifactId"]}"); + //Information($"artifact_version = {artifact_version}"); + //Information($"artifact_version_prefix = {artifact_version_prefix}"); + //Information($"artifact_version_suffix = {artifact_version_suffix}"); + //Information($"nuget_version = {nuget_version}"); + //Information($"nuget_version_prefix = {nuget_version_prefix}"); + //Information($"nuget_version_suffix = {nuget_version_suffix}"); + //Information($"nugetId = {jo["nugetId"]}"); string[] artifact_version_prefix_parts = artifact_version_prefix.Split(new string[]{ "." }, StringSplitOptions.RemoveEmptyEntries); @@ -395,7 +397,7 @@ Task("binderate-config-verify") nuget_version_new += $"-{nuget_version_suffix}"; } - Information($"nuget_version_new = {nuget_version_new}"); + //Information($"nuget_version_new = {nuget_version_new}"); if ( @@ -465,9 +467,9 @@ Task("binderate-fix") string groupId = (string) jo["groupId"]; string artifactId = (string) jo["artifactId"]; - Information($" Verifying files for :"); - Information($" group : {groupId}"); - Information($" artifact : {artifactId}"); + //Information($" Verifying files for :"); + //Information($" group : {groupId}"); + //Information($" artifact : {artifactId}"); bool? dependency_only = (bool?) jo["dependencyOnly"]; if ( dependency_only == true) @@ -679,6 +681,42 @@ Task("libs-native") CopyFileToDirectory($"{root}/extensions-aar/build/outputs/aar/extensions-aar-release.aar", outputDir); Unzip($"{outputDir}/extensions-aar-release.aar", outputDir); + + root = "./source/com.google.android.play/core.extensions/"; + + RunGradle(root, "build"); + + outputDir = "./externals/com.xamarin.google.android.play.core.extensions/"; + EnsureDirectoryExists(outputDir); + CleanDirectories(outputDir); + + CopyFileToDirectory($"{root}/extensions-aar/build/outputs/aar/extensions-aar-release.aar", outputDir); + Unzip($"{outputDir}/extensions-aar-release.aar", outputDir); + MoveFile($"{outputDir}/classes.jar", $"{outputDir}/extensions.jar"); + + root = "./source/com.google.android.play/asset.delivery.extensions/"; + + RunGradle(root, "build"); + + outputDir = "./externals/com.xamarin.google.android.play.asset.delivery.extensions/"; + EnsureDirectoryExists(outputDir); + CleanDirectories(outputDir); + + CopyFileToDirectory($"{root}/extensions-aar/build/outputs/aar/extensions-aar-release.aar", outputDir); + Unzip($"{outputDir}/extensions-aar-release.aar", outputDir); + MoveFile($"{outputDir}/classes.jar", $"{outputDir}/extensions.jar"); + + root = "./source/com.google.android.play/feature.delivery.extensions/"; + + RunGradle(root, "build"); + + outputDir = "./externals/com.xamarin.google.android.play.feature.delivery.extensions/"; + EnsureDirectoryExists(outputDir); + CleanDirectories(outputDir); + + CopyFileToDirectory($"{root}/extensions-aar/build/outputs/aar/extensions-aar-release.aar", outputDir); + Unzip($"{outputDir}/extensions-aar-release.aar", outputDir); + MoveFile($"{outputDir}/classes.jar", $"{outputDir}/extensions.jar"); }); Task("nuget") diff --git a/build/cake/gps-parameters.cake b/build/cake/gps-parameters.cake new file mode 100644 index 000000000..16375de1c --- /dev/null +++ b/build/cake/gps-parameters.cake @@ -0,0 +1,40 @@ +// Contains tasks for retrieving pre-generated parameter names for some GPS packages. +// Ideally these days this could be replaced with `` or ``, +// but for now we'll just copy what was in the GPS repository. + +var REF_DOCS_FILE = "./build/data/docs/play-services-firebase.zip"; +var REF_METADATA_FILE = "./build/data/paramnames/play-services-firebase-metadata.xml"; +var REF_PARAMNAMES_FILE = "./build/data/paramnames/play-services-firebase-paramnames.txt"; + +// Extracts parameter names and places them in the right spot for the GPS template +Task ("javadocs-gps") + .Does (() => +{ + EnsureDirectoryExists ("./externals/"); + + if (!FileExists ("./externals/docs.zip")) + CopyFile (REF_DOCS_FILE, "./externals/docs.zip"); + + if (!DirectoryExists ("./externals/docs")) + Unzip ("./externals/docs.zip", "./externals/docs"); + + if (!FileExists ("./externals/paramnames.txt")) + CopyFile (REF_PARAMNAMES_FILE, "./externals/paramnames.txt"); + + if (!FileExists ("./externals/paramnames.xml")) + CopyFile (REF_METADATA_FILE, "./externals/paramnames.xml"); + + return; + + var astJar = new FilePath ("./util/JavaASTParameterNames-1.0.jar"); + var sourcesJars = GetFiles ("./externals/**/*-sources.jar"); + + foreach (var srcJar in sourcesJars) { + var srcJarPath = MakeAbsolute (srcJar).FullPath; + var outTxtPath = srcJarPath.Replace ("-sources.jar", "-paramnames.txt"); + var outXmlPath = srcJarPath.Replace ("-sources.jar", "-paramnames.xml"); + + StartProcess ("java", "-jar \"" + MakeAbsolute(astJar).FullPath + "\" --text \"" + srcJarPath + "\" \"" + outTxtPath + "\""); + StartProcess ("java", "-jar \"" + MakeAbsolute(astJar).FullPath + "\" --xml \"" + srcJarPath + "\" \"" + outXmlPath + "\""); + } +}); diff --git a/build/ci/stage-extended-tests.yml b/build/ci/stage-extended-tests.yml index 6ef9c583d..0d2ad5d4a 100644 --- a/build/ci/stage-extended-tests.yml +++ b/build/ci/stage-extended-tests.yml @@ -15,7 +15,7 @@ stages: - template: job-extended-tests.yml parameters: jobName: Android - agentCount: 10 + agentCount: 20 testFilter: cat = Android testProject: $(extendedTestProject) testAssembly: $(extendedTestAssembly) diff --git a/build/data/docs/play-services-firebase.zip b/build/data/docs/play-services-firebase.zip new file mode 100644 index 000000000..35f53dd1d Binary files /dev/null and b/build/data/docs/play-services-firebase.zip differ diff --git a/build/data/paramnames/play-services-firebase-metadata.xml b/build/data/paramnames/play-services-firebase-metadata.xml new file mode 100644 index 000000000..bbdda638f --- /dev/null +++ b/build/data/paramnames/play-services-firebase-metadata.xml @@ -0,0 +1,6628 @@ + + errorCode + publisherAdRequest + adRequest + adRequest + maxNumberOfAds + context + adUnitID + listener + listener + templateId + adLoadedListener + customClickListener + listener + adSizes + listener + listener + correlator + options + options + adapterClass + networkExtrasClass + adapterClass + context + adapterClass + customEventExtras + keyword + networkExtras + adapterClass + networkExtras + deviceId + birthday + contentUrl + gender + isDesignedForFamilies + location + maxAdContentRating + requestAgent + tagForUnderAgeOfConsent + tagForChildDirectedTreatment + width + height + other + context + context + context + context + attrs + context + attrs + defStyle + adRequest + adListener + adSize + adUnitId + changed + left + top + right + bottom + widthMeasureSpec + heightMeasureSpec + name + data + view + ad + adapterClass + networkExtrasClass + adapterClass + context + categoryExclusion + adapterClass + customEventExtras + key + values + key + value + keyword + networkExtras + adapterClass + networkExtras + deviceId + birthday + contentUrl + gender + isDesignedForFamilies + location + manualImpressionsEnabled + maxAdContentRating + publisherProvidedId + requestAgent + tagForUnderAgeOfConsent + tagForChildDirectedTreatment + context + context + attrs + context + attrs + defStyle + publisherAdRequest + adListener + adSizes + adUnitId + appEventListener + correlator + manualImpressionsEnabled + onCustomRenderedAdLoadedListener + videoOptions + changed + left + top + right + bottom + widthMeasureSpec + heightMeasureSpec + context + publisherAdRequest + adListener + adUnitId + appEventListener + correlator + immersiveModeEnabled + onCustomRenderedAdLoadedListener + context + context + attrs + context + attrs + defStyleAttr + context + attrs + defStyleAttr + defStyleRes + context + context + attrs + context + attrs + defStyleAttr + context + attrs + defStyleAttr + defStyleRes + clickData + impressionData + touchEventData + adChoicesPlacement + orientation + requestCustomMuteThisAd + shouldRequestMultipleImages + shouldReturnUrls + videoOptions + context + context + attrs + context + attrs + defStyleAttr + context + attrs + defStyleAttr + defStyleRes + adChoicesView + ad + containerView + clickableAssetViews + nonclickableAssetViews + view + ad + ad + ad + context + context + attrs + context + attrs + defStyleAttr + context + attrs + defStyleAttr + defStyleRes + view + view + view + view + view + view + view + view + view + ad + context + context + attrs + context + attrs + defStyleAttr + context + attrs + defStyleAttr + defStyleRes + view + view + view + view + view + view + view + assetName + assetName + assetName + ad + assetName + ad + adView + appEventListener + manualImpressionsEnabled + muteThisAdReason + clickData + impressionData + touchEventData + listener + listener + ad + assetId + context + context + attrs + context + attrs + defStyleAttr + context + attrs + defStyleAttr + defStyleRes + adChoicesView + view + view + view + view + view + view + view + view + ad + view + view + view + context + advertisingId + limitAdTrackingEnabled + context + adRequest + adListener + adUnitId + immersiveModeEnabled + extras + context + listener + serverParameter + size + mediationAdRequest + customEventExtras + view + label + label + value + context + listener + serverParameter + mediationAdRequest + customEventExtras + errorCode + context + listener + serverParameter + mediationAdRequest + customEventExtras + mapper + mapper + context + listener + serverParameters + adSize + mediationAdRequest + mediationExtras + adapter + adapter + adapter + error + adapter + adapter + adapter + context + listener + serverParameters + mediationAdRequest + mediationExtras + adapter + adapter + adapter + error + adapter + adapter + adapter + context + listener + serverParameters + mediationAdRequest + mediationExtras + adapter + adapter + adapter + error + adapter + adapter + adapter + nativeAdMapper + adapter + unifiedNativeAdMapper + adapter + adapter + view + adChoicesContent + extras + hasVideoContent + mediaView + overrideClickHandling + overrideImpressionRecording + view + containerView + clickableAssetViews + nonclickableAssetViews + view + body + callToAction + headline + icon + images + price + starRating + store + advertiser + body + callToAction + headline + images + logo + newContext + immersiveModeEnabled + view + adChoicesContent + advertiser + body + callToAction + extras + hasVideoContent + headline + icon + images + mediaView + overrideClickHandling + overrideImpressionRecording + price + starRating + store + containerView + clickableAssetViews + nonclickableAssetViews + view + context + context + applicationCode + context + context + applicationCode + settings + context + adUnitId + muted + volume + enable + trackingId + context + context + attrs + context + attrs + defStyle + adRequest + adListener + adSize + adUnitId + videoOptions + changed + left + top + right + bottom + widthMeasureSpec + heightMeasureSpec + context + listener + serverParameters + context + mediationAdRequest + unused + listener + serverParameters + networkExtras + mediationAdRequest + serverParameters + networkExtras + adapter + adapter + adapter + errorCode + adapter + adapter + adapter + adapter + errorCode + adapter + adapter + rewardItem + adapter + adapter + context + adUnitId + adRequest + adUnitId + adRequest + context + context + listener + customData + immersiveModeEnabled + listener + userId + reward + errorCode + adapterClass + networkExtrasClass + adapterClass + context + adapterClass + customEventExtras + networkExtras + adapterClass + networkExtras + adBorderSelectors + adTest + adjustableLineHeight + key + value + attributionSpacingBelow + borderSelections + channel + colorAdBorder + colorAdSeparator + colorAnnotation + colorAttribution + colorBackground + colorBorder + colorDomainLink + colorText + colorTitleLink + width + detailedAttribution + fontFamily + fontFamilyAttribution + fontSizeAnnotation + fontSizeAttribution + fontSizeDescription + fontSizeDomainLink + fontSizeTitle + hostLanguage + isClickToCallEnabled + isLocationEnabled + isPlusOnesEnabled + isSellerRatingsEnabled + isSiteLinksEnabled + isTitleBold + isTitleUnderlined + locationColor + locationFontSize + longerHeadlines + numberOfAds + adPage + query + verticalSpacing + adapterClass + networkExtrasClass + adapterClass + context + adapterClass + customEventExtras + networkExtras + adapterClass + networkExtras + deviceId + anchorTextColor + backgroundColor + top + bottom + borderColor + borderThickness + borderType + callButtonColor + channelIds + descriptionTextColor + fontFace + headerTextColor + headerTextSize + location + query + requestAgent + tagForChildDirectedTreatment + context + context + attrs + context + attrs + defStyle + dynamicHeightSearchAdRequest + searchAdRequest + adListener + adSize + adUnitId + changed + left + top + right + bottom + widthMeasureSpec + heightMeasureSpec + mute + callbacks + isMuted + clickToExpandRequested + customControlsRequested + startMuted + startId + @params + @params + context + intent + startId + intent + context + intent + intent + value + value + value + index + value + index + value + value + value + value + value + value + value + action + value + value + value + value + value + value + value + value + value + value + value + value + value + value + threadName + t + tracker + originalHandler + context + exceptionParser + t + e + application + context + trackingId + configResId + activity + activity + optOut + dryRun + dispatchPeriodInSeconds + logger + category + action + action + category + label + value + description + fatal + product + impressionList + product + promotion + paramName + paramValue + @params + utmParams + index + dimension + index + metric + nonInteraction + action + action + paramName + hitType + category + currencyCode + name + price + quantity + sku + transactionid + action + network + target + category + variable + value + category + label + value + variable + affiliation + currencyCode + revenue + shipping + tax + transactionid + exception + message + message + level + message + message + context + additionalPackages + threadName + t + context + additionalPackages + t + t + cause + element + threadName + enabled + enabled + enable + key + @params + key + value + anonymize + appId + appInstallerId + appName + appVersion + uri + clientId + encoding + hostname + language + location + page + referrer + sampleRate + screenColors + screenName + width + height + sessionTimeout + title + useSecure + viewportSize + actionType + objectName + objectId + objectAppUri + actionType + objectName + objectAppUri + actionType + key + value + key + values + key + value + key + values + key + value + actionStatusType + name + thing + url + @object + packageName + deepLink + uri + apiClient + action + apiClient + action + apiClient + action + apiClient + activity + viewIntent + title + webUrl + outLinks + apiClient + activity + appUri + title + webUrl + outLinks + apiClient + activity + viewIntent + apiClient + activity + appUri + apiClient + appUri + webUrl + view + appUri + view + key + value + key + values + key + value + key + values + key + value + description + id + name + type + url + client + invitationId + client + currentActivity + launchDeepLink + client + invitationId + resultCode + result + title + account + @params + versionCode + callToActionText + imageUri + deepLink + htmlContent + subject + trackingId + message + targetPlatform + clientId + playStoreReferrerIntent + referralIntent + invitationId + deepLink + referralIntent + referralIntent + referralIntent + referralIntent + referralIntent + activity + context + apiClient + token + apiClient + account + apiClient + enabled + apiClient + enabled + token + account + enabled + id + accountName + changeType + eventIndex + changeData + that + dest + flags + account + accountName + eventIndex + dest + flags + events + dest + flags + context + activity + accountType + accountType + completionStatus + accountType + accountType + transferData + accountType + pendingIntent + status + statusCode + other + @out + flags + id + credential + accountType + name + password + profilePictureUri + @out + flags + forNewAccount + prompt + showAddAccountButton + showCancelButton + @out + flags + accountTypes + config + config + idTokenNonce + idTokenRequested + passwordLoginSupported + serverClientId + supportsPasswordLogin + context + options + activity + context + activity + options + client + credential + client + client + request + client + request + client + credential + credential + request + request + credential + @out + flags + accountTypes + emailAddressIdentifierSupported + hintPickerConfig + idTokenNonce + idTokenRequested + phoneNumberIdentifierSupported + serverClientId + account + accountType + idToken + obj + @out + flags + activity + context + context + extension + context + scope + scopes + context + options + activity + options + context + data + account + extension + account + scopes + activity + requestCode + account + scopes + activity + requestCode + account + extension + fragment + requestCode + account + extension + fragment + requestCode + account + scopes + obj + @out + flags + client + data + client + client + client + obj + @out + flags + googleSignInOptions + extension + serverClientId + scope + scopes + serverClientId + serverClientId + forceCodeForRefreshToken + accountName + hostedDomain + statusCode + intent + domain + isSecure + name + value + domain + path + isHttpOnly + isSecure + maxAge + err + msg + throwable + throwable + context + token + context + eventIndex + accountName + ctx + accountName + context + account + scope + extras + context + account + scope + context + accountName + scope + extras + context + accountName + scope + context + accountName + scope + extras + authority + syncBundle + context + account + scope + extras + context + accountName + scope + extras + callback + context + account + scope + extras + authority + syncBundle + context + accountName + scope + extras + context + account + scope + extras + callback + context + token + context + account + context + msg + intent + err + activity + context + activity + context + statusCode + fences + fences + fence + fences + fences + beaconTypes + beaconTypes + beaconTypes + beaconTypes + beaconTypes + beaconTypes + activityTypes + activityTypes + activityTypes + fenceKeys + fenceKeys + intent + fenceKey + key + fence + pendingIntent + key + pendingIntent + headphoneState + latitude + longitude + radius + latitude + longitude + radius + latitude + longitude + radius + dwellTimeMillis + timeInstant + startOffsetMillis + stopOffsetMillis + timeZone + startTimeOfDayMillis + stopTimeOfDayMillis + timeZone + startTimeOfDayMillis + stopTimeOfDayMillis + startTimeMillis + stopTimeMillis + dayOfWeek + timeZone + startTimeOfDayMillis + stopTimeOfDayMillis + timeZone + startTimeOfDayMillis + stopTimeOfDayMillis + timeZone + startTimeOfDayMillis + stopTimeOfDayMillis + timeZone + startTimeOfDayMillis + stopTimeOfDayMillis + timeZone + startTimeOfDayMillis + stopTimeOfDayMillis + timeInterval + timeZone + startTimeOfDayMillis + stopTimeOfDayMillis + timeZone + startTimeOfDayMillis + stopTimeOfDayMillis + client + fenceQueryRequest + client + fenceUpdateRequest + fenceQueryRequest + fenceUpdateRequest + client + beaconTypes + client + beaconTypes + client + client + client + client + client + client + beaconTypes + beaconTypes + @namespace + type + @namespace + type + content + desiredTimeInterval + temperatureUnit + temperatureUnit + temperatureUnit + other + @out + flags + id + clickThroughUrl + contentId + contentUrl + customDataJsonString + durationInMs + hlsSegmentFormat + imageUrl + mimeType + title + vastAdsRequest + whenSkippableInMs + other + @out + flags + playbackPositionInMs + breakClipIds + durationInMs + id + isEmbedded + isWatched + other + @out + flags + namespaces + obj + @namespace + @out + flags + client + client + client + client + client + client + client + client + applicationId + client + applicationId + sessionId + client + applicationId + relaunchIfRunning + client + applicationId + client + applicationId + launchOptions + client + client + @namespace + client + client + @namespace + message + client + @namespace + callbacks + client + mute + client + volume + client + sessionId + client + castDevice + castListener + castDevice + castListener + enabled + activeInputState + statusCode + applicationMetadata + standbyState + castDevice + @namespace + message + obj + extras + preferredWidth + preferredHeight + capabilities + capability + castDevice + bundle + @out + flags + namespaces + applicationId + namespaces + applicationId + applicationId + locale + serviceContext + display + serviceContext + display + theme + context + context + castDevice + callbacks + configPreset + status + apiClient + applicationId + apiClient + castDevice + applicationId + configPreset + sessionEndedPendingIntent + intent + display + intent + flags + startId + activityContext + serviceClass + applicationId + device + notificationSettings + callbacks + activityContext + serviceClass + applicationId + device + options + notificationSettings + callbacks + notificationSettings + service + status + service + service + notification + notificationPendingIntent + notificationText + notificationTitle + configPreset + statusCode + context + menu + menuResourceId + context + button + listener + listener + context + @event + listener + listener + applicationId + castMediaOptions + enableReconnectionService + launchOptions + applicationId + resumeSavedSession + stopApp + supportedNamespaces + volumeDelta + listener + listener + @namespace + @namespace + message + @namespace + callbacks + mute + volume + stopCasting + routeInfoExtra + routeInfoExtra + routeInfoExtra + routeInfoExtra + castState + newState + activity + menuItem + activity + button + text + stringId + radius + radiusId + listener + colorId + stringId + text + @out + flags + className + imagePicker + className + notificationOptions + @out + flags + mediaMetadata + type + mediaMetadata + hints + context + intent + currentSession + forwardStepMs + currentSession + intent + currentSession + rewindStepMs + currentSession + currentSession + currentSession + action + intent + context + action + intent + intent + intent + flags + startId + index + nextCount + prevCount + index + index + fetchIfNeeded + itemId + index + callback + capacity + callback + insertIndex + insertCount + indexes + indexes + mediaQueue + context + resourceId + position + position + position + mediaQueue + position + position + info + index + info + index + track + dest + flags + action + contentDescription + iconResId + context + @out + flags + actions + compatActionIndices + resId + resId + resId + resId + notificationActionsProvider + resId + resId + resId + resId + resId + resId + resId + notificationSkipStepMs + resId + resId + className + listener + listener + periodMs + mediaInfo + autoplay + playPosition + mediaInfo + autoplay + playPosition + activeTrackIds + customData + mediaInfo + mediaInfo + mediaLoadOptions + mediaInfo + autoplay + playPosition + customData + mediaInfo + autoplay + castDevice + @namespace + message + customData + customData + item + customData + item + insertBeforeItemId + playPosition + customData + item + insertBeforeItemId + customData + itemsToInsert + insertBeforeItemId + customData + itemId + customData + itemId + playPosition + customData + items + startIndex + repeatMode + playPosition + customData + items + startIndex + repeatMode + customData + itemId + newIndex + customData + customData + customData + itemId + customData + itemIdsToRemove + customData + itemIdsToReorder + insertBeforeItemId + customData + repeatMode + customData + itemsToUpdate + customData + callback + listener + listener + position + position + resumeState + customData + position + resumeState + trackIds + callback + playbackRate + customData + playbackRate + muted + muted + customData + volume + customData + volume + trackStyle + customData + callback + mediaStatus + mediaStatus + progressMs + durationMs + mediaInfo + activeTrackIds + savedInstanceState + savedInstanceState + castSession + activity + view + imageType + placeHolderDrawableResId + view + imageType + placeHolderView + view + imageHints + placeHolderDrawableResId + view + imageHints + placeHolderView + view + imageType + placeHolderDrawableResId + view + imageHints + placeHolderDrawableResId + view + view + playDrawable + pauseDrawable + stopDrawable + loadingIndicator + hideViewWhenLoading + view + view + progressUpdateStepMs + view + progressUpdateStepMs + view + view + key + view + keysInPreference + view + keysInPreference + view + key + textView + view + liveStreamIndicator + view + view + updateWhileScrubbing + view + updateWhileScrubbing + progressUpdateStepMs + view + view + skipStepMs + view + view + view + skipStepMs + view + invisibleState + view + invisibleState + view + uiController + view + invisibleState + view + invisibleState + session + error + session + session + error + session + wasSuspended + session + sessionId + session + error + session + sessionId + session + session + reason + listener + view + view + skipStepMs + view + view + view + view + skipStepMs + seekBar + progress + fromUser + seekBar + seekBar + view + view + slotIndex + slotIndex + slotIndex + slotIndex + item + hasFocus + savedInstanceState + slotIndex + slotIndex + inflater + container + savedInstanceState + context + attrs + savedInstanceState + appContext + appContext + data + intent + intent + flags + startId + applicationContext + category + sessionId + stopCasting + error + error + error + wasSuspended + sessionId + reason + routeInfoExtras + routeInfoExtras + routeInfoExtra + routeInfoExtra + listener + listener + sessionClass + stopCasting + listener + listener + sessionClass + startSessionIntent + session + error + session + session + error + session + wasSuspended + session + sessionId + session + error + session + sessionId + session + session + reason + applicationContext + category + sessionId + googleApiClient + castSessionId + playerId + extraMessageData + extraMessageData + extraMessageData + playerId + extraMessageData + playerId + extraMessageData + extraMessageData + extraMessageData + playerId + extraMessageData + extraMessageData + playerId + extraMessageData + extraMessageData + playerId + extraMessageData + playerId + extraMessageData + extraMessageData + listener + sessionLabel + playerId + gameMessage + newState + oldState + other + playerId + playerState + other + other + other + other + playerId + other + playerId + other + playerId + other + obj + language + relaunchIfRunning + @out + flags + locale + relaunchIfRunning + other + textTrackStyle + @out + flags + contentId + contentId + entity + adBreakClips + adBreaks + contentType + customData + entity + mediaTracks + metadata + duration + streamType + textTrackStyle + vmapAdsRequest + activeTrackIds + autoplay + credentials + credentialsType + customData + playPosition + playbackRate + mediaType + image + key + other + key + key + key + key + key + key + value + key + value + key + value + key + value + @out + flags + other + @out + flags + media + json + item + activeTrackIds + autoplay + customData + playbackDuration + preloadTime + startTime + other + itemId + itemId + index + index + itemId + mediaCommand + @out + flags + other + contentId + contentType + @out + flags + trackId + trackType + contentId + contentType + customData + language + locale + trackName + subtype + apiClient + mediaInfo + autoplay + playPosition + customData + apiClient + mediaInfo + autoplay + playPosition + apiClient + mediaInfo + apiClient + mediaInfo + autoplay + apiClient + mediaInfo + autoplay + playPosition + activeTrackIds + customData + castDevice + @namespace + message + apiClient + apiClient + customData + apiClient + customData + apiClient + apiClient + item + customData + apiClient + item + insertBeforeItemId + playPosition + customData + apiClient + item + insertBeforeItemId + customData + apiClient + itemsToInsert + insertBeforeItemId + customData + apiClient + itemId + customData + apiClient + itemId + playPosition + customData + apiClient + items + startIndex + repeatMode + playPosition + customData + apiClient + items + startIndex + repeatMode + customData + apiClient + itemId + newIndex + customData + apiClient + customData + apiClient + customData + apiClient + itemId + customData + apiClient + itemIdsToRemove + customData + apiClient + itemIdsToReorder + insertBeforeItemId + customData + apiClient + repeatMode + customData + apiClient + itemsToUpdate + customData + apiClient + apiClient + position + apiClient + position + resumeState + customData + apiClient + position + resumeState + apiClient + trackIds + listener + listener + listener + listener + apiClient + muteState + customData + apiClient + muteState + apiClient + volume + customData + apiClient + volume + apiClient + trackStyle + apiClient + customData + apiClient + other + context + backgroundColor + customData + edgeColor + edgeType + fontFamily + fontGenericFamily + fontScale + fontStyle + foregroundColor + windowColor + windowCornerRadius + windowType + @out + flags + other + json + @out + flags + adTagUrl + adsResponse + other + @out + flags + selectedAccount + allowableAccounts + allowableAccountTypes + alwaysPromptForAccount + descriptionOverrideText + addAccountAuthTokenType + addAccountRequiredFeatures + addAccountOptions + status + api + time + units + status + callback + callback + time + units + googleApiClient + pendingResult + resultToken + obj + statusCode + timeout + unit + signInMode + prefix + fd + writer + args + prefix + fd + writer + args + api + api + listener + listener + listener + listener + lifecycleActivity + listener + listener + context + context + connectedListener + connectionFailedListener + api + options + api + api + options + scopes + api + scopes + listener + listener + scope + fragmentActivity + unresolvedConnectionFailedListener + fragmentActivity + clientId + unresolvedConnectionFailedListener + accountName + gravityForPopups + handler + viewForPopups + connectionHint + cause + result + time + units + callback + callback + time + units + transform + result + result + result + status + activity + requestCode + activity + requestCode + result + result + result + result + result + result + result + status + status + result + scopeUri + o + dest + flags + statusCode + statusCode + statusMessage + statusCode + statusMessage + pendingIntent + obj + activity + requestCode + @out + flags + callbacks + transform + statusCode + statusCode + pendingIntent + statusCode + pendingIntent + message + o + activity + requestCode + @out + flags + position + position + position + count + position + count + fromPosition + toPosition + count + position + count + observer + observer + observer + position + count + position + count + fromPosition + toPosition + count + position + count + observer + buffer + buffer + buffer + buffer + array + list + iterable + dialog + cancelListener + dialog + dialog + savedInstanceState + manager + tag + api + apis + activity + errorCode + requestCode + activity + errorCode + requestCode + cancelListener + context + result + context + errorCode + requestCode + errorCode + context + context + minApkVersion + errorCode + activity + context + notificationChannelId + activity + errorCode + requestCode + activity + errorCode + requestCode + cancelListener + context + errorCode + context + result + errorCode + errorCode + activity + requestCode + errorCode + activity + requestCode + cancelListener + errorCode + context + requestCode + errorCode + context + context + context + errorCode + errorCode + activity + requestCode + cancelListener + errorCode + activity + fragment + requestCode + cancelListener + errorCode + activity + requestCode + errorCode + context + context + imageView + uri + defaultResId + listener + uri + imageView + resId + listener + uri + defaultResId + imageView + uri + uri + drawable + isRequestedDrawable + width + height + obj + @string + url + width + height + url + other + @out + flags + context + context + attrs + context + attrs + defStyle + view + colorScheme + enabled + listener + scopes + buttonSize + buttonSize + colorScheme + scopes + buttonSize + colorScheme + dialog + cancelListener + dialog + dialog + savedInstanceState + manager + tag + msg + intent + apiClient + folder + title + driveContents + metadataChangeSet + folder + title + driveContents + metadataChangeSet + activity + account + context + account + activity + account + context + account + apiClient + resourceId + apiClient + apiClient + apiClient + apiClient + query + apiClient + resourceId + options + options + transferPreferences + apiClient + changeSet + executionOptions + apiClient + changeSet + apiClient + apiClient + apiClient + mode + listener + bytesDownloaded + bytesExpected + apiClient + changeSet + driveContents + apiClient + changeSet + driveContents + executionOptions + apiClient + changeSet + apiClient + apiClient + query + s + obj + @out + flags + apiClient + apiClient + fileUploadPreferences + apiClient + listener + apiClient + apiClient + apiClient + apiClient + apiClient + listener + apiClient + apiClient + parentIds + apiClient + apiClient + apiClient + changeSet + resource + listener + resource + token + contents + changeSet + contents + changeSet + executionOptions + folder + changeSet + driveContents + executionOptions + folder + changeSet + driveContents + folder + changeSet + resource + contents + resource + folder + resource + file + openMode + file + openMode + callback + query + folder + query + token + resource + contents + resource + parentIds + resource + resource + resource + changeSet + statusCode + dest + flags + @event + dest + flags + @event + name + intent + @event + @event + intent + @event + contents + exception + bytesDownloaded + bytesExpected + o + strategy + notify + trackingTag + batteryUsagePreference + networkTypePreference + allowRoaming + key + visibility + obj + jsonObject + dest + flags + row + key + key + value + description + text + date + mimeType + pinned + starred + title + viewed + apiClient + folder + title + mimeTypes + filter + folder + title + mimeTypes + filter + filters + filter + additionalFilters + field + value + key + value + field + value + field + value + field + value + field + value + field + value + field + value + toNegate + filters + filter + additionalFilters + @out + flags + query + filter + token + sortOrder + @out + flags + sortField + sortField + transferPreferences + batteryUsagePreference + isRoamingAllowed + networkPreference + context + resource + textViewResourceId + objects + context + resource + textViewResourceId + context + resource + objects + context + resource + context + resource + textViewResourceId + buffers + context + resource + buffers + buffer + position + convertView + parent + position + position + position + convertView + parent + resource + notifyOnChange + errorMessage + context + activity + context + activity + context + activity + algoValue + algId + attachment + preference + obj + dest + flags + appIdExtension + serializedBytes + obj + dest + flags + authenticatorData + clientDataJSON + keyHandle + signature + serializedBytes + obj + dest + flags + attestationObject + clientDataJSON + keyHandle + serializedBytes + obj + dest + flags + errorCode + errorMessage + obj + dest + flags + attachment + serializedBytes + o + dest + flags + requestOptions + origin + serializedBytes + obj + dest + flags + origin + publicKeyCredentialCreationOptions + serializedBytes + o + dest + flags + origin + publicKeyCredentialRequestOptions + obj + value + parcel + flags + algId + errorCode + appId + obj + dest + flags + rp + user + challenge + parameters + timeoutSeconds + excludeList + authenticatorSelection + requestId + tokenBindingIdValue + authenticationExtensions + serializedBytes + obj + dest + flags + authenticatorSelection + challenge + excludeList + parameters + requestId + rp + timeoutSeconds + tokenBindingIdValue + user + serializedBytes + obj + dest + flags + attestationConveyancePreference + authenticationExtensions + authenticatorSelection + challenge + excludeList + parameters + requestId + rp + timeoutSeconds + tokenBinding + user + type + id + transports + obj + dest + flags + errorMessage + errorMessage + t + id + name + icon + obj + dest + flags + type + algorithm + obj + dest + flags + serializedBytes + obj + dest + flags + allowList + authenticationExtensions + challenge + requestId + rpId + timeoutSeconds + tokenBinding + id + name + icon + obj + dest + flags + errorMessage + id + name + icon + displayName + obj + dest + flags + value + tokenBindingId + obj + dest + flags + unsupportedTokenBindingStatus + value + other + type + dest + flags + type + requirement + requestOptions + requestOptions + activity + requestCode + requestOptions + requestOptions + value + other + type + dest + flags + type + other + challenge + cidValue + origin + type + errorCode + errorCode + errorMessage + errorCode + errorCode + errorMessage + o + dest + flags + keyHandleBytes + protocolVersion + transports + obj + registeredKey + dest + flags + version + keyHandle + challengeValue + appId + keyHandle + obj + signRequest + dest + flags + protocolVersion + challengeValue + appId + obj + registerRequest + dest + flags + o + dest + flags + appId + channelIdValue + displayHint + registerRequests + registeredKeys + requestId + timeoutSeconds + registerData + registerData + protocolVersion + clientDataString + o + dest + flags + o + dest + flags + appId + channelIdValue + defaultSignChallenge + displayHint + registeredKeys + requestId + timeoutSeconds + keyHandle + clientDataString + signatureData + o + dest + flags + value + activity + context + requestParams + requestParams + activity + requestCode + client + deviceAddress + client + bleDevice + client + client + request + client + callback + client + deviceAddress + client + bleDevice + deviceAddress + bleDevice + dataTypes + timeoutSecs + callback + callback + deviceAddress + bleDevice + client + request + client + client + dataTypeName + request + dataTypeName + other + parcel + flags + other + dataType + timeUnit + timeUnit + dest + flags + dataSource + other + intent + timeUnit + timeUnit + timeUnit + field + values + values + startTime + endTime + timeUnit + timestamp + timeUnit + parcel + flags + dataPoint + dataPoints + dataSource + other + parcel + flags + other + intent + parcel + flags + packageName + appContext + dataQualityStandards + dataType + device + name + streamName + type + other + inputDataType + dataType + field + dest + flags + other + intent + timeUnit + timeUnit + dest + flags + manufacturer + model + uid + type + other + context + parcel + flags + other + dest + flags + other + timeUnit + current + timeUnit + current + timeUnit + dest + flags + duration + timeUnit + other + timeUnit + dest + flags + frequency + other + dest + flags + dataTypeName + value + initialValue + dataTypeName + value + other + dest + flags + msg + count + unit + other + dest + flags + other + intent + timeUnit + timeUnit + activity + timeUnit + dest + flags + time + timeUnit + activity + description + time + timeUnit + identifier + name + time + timeUnit + other + dest + flags + key + other + key + activity + value + value + key + value + value + dest + flags + activity + account + context + account + context + account + activity + account + intent + timeUnit + context + account + activity + account + activity + account + context + account + activity + account + context + account + activity + account + context + account + activity + account + context + account + intent + timeUnit + activity + o + datatype + accessType + datatype + client + request + request + client + request + client + dataSet + client + dataType + client + dataType + client + request + client + request + client + pendingIntent + client + request + context + dataType + dataSource + packageName + start + end + timeUnit + request + dataSet + dataType + dataType + request + request + pendingIntent + request + client + client + dataType + client + dataType + client + dataSource + client + dataSource + client + dataType + client + subscription + dataType + dataSource + dataType + subscription + dataType + dataSource + device + o + timeUnit + timeUnit + dest + flags + dataSource + dataType + session + startTime + endTime + timeUnit + that + timeUnit + timeUnit + timeUnit + dest + flags + dataQualityStandard + dataSource + outputDataType + inputDataType + outputDataType + minDuration + timeUnit + activityDataSource + minDuration + timeUnit + minDuration + timeUnit + activityDataSource + minDuration + timeUnit + minDuration + timeUnit + duration + timeUnit + dataSource + dataType + limit + start + end + timeUnit + parcel + flags + dataSourceTypes + dataTypes + o + dest + flags + name + format + field + name + that + parcel + flags + dataSource + dataType + pendingIntent + o + timeUnit + timeUnit + dest + flags + dataSet + startTimeMillis + endTimeMillis + timeUnit + that + parcel + flags + activityName + dataType + objectiveType + dataPoint + that + dataSource + locationRequest + timeUnit + timeUnit + timeUnit + accuracyMode + dataSource + dataType + fastestInterval + unit + interval + unit + interval + unit + timeout + timeUnit + o + dest + flags + aggregateDataPoint + dataSet + session + o + timeUnit + timeUnit + dest + flags + appPackageName + dataSource + dataType + sessionId + sessionName + startTime + endTime + timeUnit + parcel + flags + bleScanCallback + dataTypes + stopTimeSecs + that + dataType + dest + flags + that + originalResult + dataType + dataSource + that + dataType + dataSource + dest + flags + that + dataType + dest + flags + that + dest + flags + dest + flags + that + dataType + dest + flags + originalResult + session + dataType + session + that + session + dataType + session + dest + flags + o + dest + flags + client + request + listener + client + request + intent + client + request + client + listener + client + pendingIntent + request + listener + request + intent + request + pendingIntent + listener + intent + dataTypes + request + dataSource + other + timeUnit + timeUnit + parcel + flags + dataPoint + dataPoints + client + request + client + request + client + intent + client + session + client + identifier + client + intent + context + packageName + session + request + request + intent + session + identifier + intent + dataOut + dataOut + dataOut + dataOut + position + obj + dataOut + dataOut + dataOut + dataOut + dest + flags + apiClient + apiClient + id + numSteps + apiClient + id + numSteps + apiClient + forceReload + apiClient + id + apiClient + id + apiClient + id + numSteps + apiClient + id + numSteps + apiClient + id + apiClient + id + id + numSteps + id + numSteps + forceReload + id + id + id + numSteps + id + numSteps + id + id + dataOut + dataOut + dataOut + position + @event + obj + dataOut + dataOut + dataOut + @out + flags + apiClient + eventId + incrementAmount + apiClient + forceReload + apiClient + forceReload + eventIds + eventId + incrementAmount + forceReload + forceReload + eventIds + dataOut + dataOut + dataOut + position + obj + dataOut + dataOut + dataOut + dest + flags + activity + account + context + account + apiClient + apiClient + activity + account + context + account + activity + account + context + account + activity + account + context + account + context + account + activity + account + context + account + activity + account + context + account + activity + account + activity + account + context + account + context + account + activity + account + context + account + activity + account + apiClient + apiClient + activity + account + context + account + context + account + activity + account + context + account + activity + account + apiClient + gravity + apiClient + gamesContentView + apiClient + @object + variant + showConnectingPopup + showConnectingPopup + gravity + statusCode + gravity + gamesContentView + statusCode + apiClient + apiClient + statusCode + sortOrder + callback + callback + dataOut + position + apiClient + apiClient + leaderboardId + apiClient + leaderboardId + timeSpan + apiClient + leaderboardId + timeSpan + collection + apiClient + leaderboardId + span + leaderboardCollection + apiClient + leaderboardId + forceReload + apiClient + forceReload + apiClient + buffer + maxResults + pageDirection + apiClient + leaderboardId + span + leaderboardCollection + maxResults + apiClient + leaderboardId + span + leaderboardCollection + maxResults + forceReload + apiClient + leaderboardId + span + leaderboardCollection + maxResults + forceReload + apiClient + leaderboardId + span + leaderboardCollection + maxResults + apiClient + leaderboardId + score + apiClient + leaderboardId + score + scoreTag + apiClient + leaderboardId + score + scoreTag + apiClient + leaderboardId + score + dataOut + dataOut + dataOut + position + timeSpan + rawScore + formattedScore + scoreTag + newBest + leaderboardId + timeSpan + leaderboardId + leaderboardId + timeSpan + collection + leaderboardId + span + leaderboardCollection + forceReload + leaderboardId + forceReload + buffer + maxResults + pageDirection + leaderboardId + span + leaderboardCollection + maxResults + forceReload + leaderboardId + span + leaderboardCollection + maxResults + leaderboardId + span + leaderboardCollection + maxResults + leaderboardId + span + leaderboardCollection + maxResults + forceReload + leaderboardId + score + scoreTag + leaderboardId + score + leaderboardId + score + scoreTag + leaderboardId + score + position + invitation + invitationId + obj + dest + flags + apiClient + apiClient + apiClient + sortOrder + apiClient + listener + apiClient + invitation + invitationId + dataOut + position + obj + dataOut + dest + flags + participantId + result + placing + @out + flags + participants + playerId + message + parcel + flag + message + apiClient + config + apiClient + invitationId + apiClient + invitationId + apiClient + minPlayers + maxPlayers + allowAutomatch + apiClient + minPlayers + maxPlayers + apiClient + room + minParticipantsToStart + apiClient + config + apiClient + listener + roomId + apiClient + listener + messageData + roomId + recipientParticipantId + apiClient + messageData + roomId + recipientParticipantId + apiClient + messageData + roomId + recipientParticipantIds + apiClient + messageData + roomId + statusCode + tokenId + recipientParticipantId + dataOut + participantId + playerId + participantId + callback + listener + minAutoMatchPlayers + maxAutoMatchPlayers + exclusiveBitMask + playerIds + playerIds + autoMatchCriteria + invitationId + listener + listener + callback + listener + variant + obj + dataOut + participantId + playerId + participantId + dest + flags + room + room + participantId + participantId + room + participantIds + room + participantIds + room + participantIds + room + participantIds + room + participantIds + room + participantIds + room + room + room + room + participantId + participantId + room + participantIds + room + participantIds + room + participantIds + room + participantIds + room + participantIds + room + participantIds + room + room + statusCode + room + statusCode + roomId + statusCode + room + statusCode + room + statusCode + room + statusCode + roomId + statusCode + room + statusCode + room + match + matchId + dataOut + participantId + playerId + participantId + position + minAutoMatchPlayers + maxAutoMatchPlayers + exclusiveBitMask + playerId + playerIds + autoMatchCriteria + variant + obj + dataOut + participantId + playerId + participantId + @out + flags + match + matchId + apiClient + invitationId + apiClient + matchId + apiClient + config + apiClient + invitationId + apiClient + invitationId + apiClient + matchId + apiClient + matchId + apiClient + matchId + matchData + results + apiClient + matchId + matchData + results + apiClient + apiClient + apiClient + minPlayers + maxPlayers + allowAutomatch + apiClient + minPlayers + maxPlayers + apiClient + matchId + apiClient + matchId + pendingParticipantId + apiClient + matchId + apiClient + invitationSortOrder + matchTurnStatuses + apiClient + matchTurnStatuses + apiClient + listener + apiClient + matchId + apiClient + matchId + matchData + pendingParticipantId + results + apiClient + matchId + matchData + pendingParticipantId + apiClient + matchId + matchData + pendingParticipantId + results + apiClient + apiClient + notificationTypes + apiClient + notificationTypes + dataOut + dataOut + position + obj + dataOut + dataOut + dest + flags + obj + @out + flags + obj + @out + flags + apiClient + player + apiClient + apiClient + apiClient + apiClient + forceReload + apiClient + pageSize + forceReload + apiClient + pageSize + apiClient + pageSize + apiClient + playerId + apiClient + playerId + forceReload + apiClient + pageSize + forceReload + player + pageSize + playerId + forceReload + playerId + pageSize + forceReload + forceReload + position + obj + @out + flags + dataOut + dataOut + position + obj + dataOut + dataOut + @out + flags + apiClient + questId + apiClient + questId + milestoneId + apiClient + questId + apiClient + questSelectors + apiClient + questSelectors + sortOrder + forceReload + apiClient + forceReload + questIds + apiClient + listener + apiClient + questId + apiClient + quest + config + invitationId + invitationId + minPlayers + maxPlayers + minPlayers + maxPlayers + allowAutomatch + room + minParticipantsToStart + config + config + roomId + messageData + roomId + recipientParticipantId + callback + messageData + roomId + recipientParticipantId + messageData + roomId + recipientParticipantIds + messageData + roomId + statusCode + tokenId + recipientParticipantId + playerId + playerId + position + obj + playerId + playerId + dest + flags + request + requestId + apiClient + requestId + apiClient + requestIds + apiClient + requestId + apiClient + requestIds + extras + response + apiClient + apiClient + apiClient + apiClient + type + payload + requestLifetimeDays + icon + description + apiClient + requestDirection + types + sortOrder + apiClient + listener + apiClient + requestType + requestId + dstOffset + content + srcOffset + count + content + obj + @out + flags + dataOut + position + metadata + coverImage + description + playedTimeMillis + progressValue + obj + dataOut + @out + flags + apiClient + snapshot + metadataChange + apiClient + metadata + apiClient + snapshot + apiClient + apiClient + apiClient + title + allowAddButton + allowDelete + maxSnapshots + extras + apiClient + forceReload + apiClient + metadata + apiClient + fileName + createIfNotFound + apiClient + fileName + createIfNotFound + conflictPolicy + apiClient + metadata + conflictPolicy + apiClient + conflictId + snapshotId + metadataChange + snapshotContents + apiClient + conflictId + snapshot + snapshot + metadataChange + metadata + snapshot + title + allowAddButton + allowDelete + maxSnapshots + extras + forceReload + metadata + metadata + conflictPolicy + fileName + createIfNotFound + conflictPolicy + fileName + createIfNotFound + conflictId + snapshotId + metadataChange + snapshotContents + conflictId + snapshot + apiClient + forceReload + invitationId + matchId + config + invitationId + invitationId + matchId + matchId + matchId + matchData + results + matchId + matchData + results + minPlayers + maxPlayers + allowAutomatch + minPlayers + maxPlayers + matchId + matchId + pendingParticipantId + matchId + invitationSortOrder + matchTurnStatuses + matchTurnStatuses + callback + matchId + matchId + matchData + pendingParticipantId + matchId + matchData + pendingParticipantId + results + matchId + matchData + pendingParticipantId + results + callback + obj + captureMode + qualityLevel + captureMode + qualityLevel + @out + flags + captureMode + allowUnknown + qualityLevel + allowUnknown + @out + flags + qualityLevel + captureMode + captureMode + qualityLevel + apiClient + apiClient + apiClient + apiClient + captureMode + apiClient + apiClient + listener + apiClient + overlayState + captureMode + listener + listener + overlayState + from + data + msgId + msgId + error + gcmTaskService + tag + gcmTaskService + context + task + context + registrationToken + topic + extras + registrationToken + topic + context + intent + intent + @params + intent + flags + startId + context + intent + senderIds + to + msgId + data + to + msgId + timeToLive + data + bundle + parcel + flags + windowStartDelaySeconds + windowEndDelaySeconds + extras + isPersisted + requiredNetworkState + requiresCharging + gcmTaskService + tag + updateCurrent + bundle + parcel + flags + extras + flexInSeconds + periodInSeconds + isPersisted + requiredNetworkState + requiresCharging + gcmTaskService + tag + updateCurrent + parcel + i + extras + isPersisted + requiredNetworkState + requiresCharging + gcmTaskService + tag + updateCurrent + tag + tag + extras + googleApiClient + request + requestCode + theme + countryCode + dest + flags + data + @out + flags + @out + flags + countrySpecification + countrySpecifications + authorizedEntity + scope + context + authorizedEntity + scope + authorizedEntity + scope + extras + dest + flags + activity + activity + context + context + context + activity + postInstallIntent + requestCode + referrer + dest + flags + url + fallbackIntent + url + packageName + flags + info + packageName + packageName + flags + uid + packageName + cookie + activity + context + client + callbackIntent + client + detectionIntervalMillis + callbackIntent + pendingIntent + callbackIntent + activityTransitionRequest + pendingIntent + detectionIntervalMillis + callbackIntent + probableActivities + time + elapsedRealtimeMillis + mostProbableActivity + time + elapsedRealtimeMillis + intent + activityType + intent + @out + flags + @object + dest + flags + transition + activityType + activityType + transitionType + elapsedRealtimeNanos + @object + dest + flags + transitions + o + intent + dest + flags + transitionEvents + o + intent + intent + dest + flags + activityType + confidence + @out + flags + client + client + client + client + callbackIntent + client + listener + client + callback + client + request + listener + client + request + callback + looper + client + request + listener + looper + client + request + callbackIntent + client + mockLocation + client + isMockMode + callbackIntent + callback + request + callback + looper + request + callbackIntent + mockLocation + isMockMode + latitude + longitude + radius + durationMillis + loiteringDelayMs + notificationResponsivenessMs + requestId + transitionTypes + statusCode + client + geofencingRequest + pendingIntent + client + geofences + pendingIntent + client + geofenceRequestIds + client + pendingIntent + geofencingRequest + pendingIntent + geofenceRequestIds + pendingIntent + intent + dest + flags + geofence + geofences + initialTrigger + o + intent + intent + parcel + flags + locationAvailability + result + location + @object + millis + millis + millis + millis + millis + numUpdates + priority + smallestDisplacementMeters + parcel + flags + locations + other + intent + intent + parcel + flags + activity + context + activity + context + context + activity + dest + flags + requests + request + show + needBle + dest + flags + intent + dest + flags + name + latLng + address + placeTypes + phoneNumber + websiteUri + name + latLng + address + placeTypes + phoneNumber + name + latLng + address + placeTypes + uri + country + typeFilter + matchStyle + matchStyle + matchStyle + position + position + client + addPlaceRequest + client + query + bounds + filter + client + placeIds + client + placeId + addPlaceRequest + query + bounds + filter + query + bounds + boundsMode + filter + photoMetadata + placeIds + placeId + photoMetadata + width + height + position + position + client + filter + client + report + filter + report + requireOpenNow + restrictToPlaceIds + place + position + position + client + client + width + height + position + placeId + tag + activity + activity + options + context + options + context + context + options + activity + activity + options + context + @object + statusCode + context + intent + context + intent + mode + activity + bounds + filter + bounds + filter + hint + listener + text + intent + intent + context + intent + intent + context + activity + latLngBounds + status + place + bounds + filter + hint + listener + text + client + locationSettingsRequest + locationSettingsRequest + cameraPosition + latLng + bounds + padding + bounds + width + height + padding + latLng + zoom + xPixel + yPixel + amount + focus + amount + zoom + options + options + options + options + options + options + update + callback + update + update + durationMs + callback + update + enabled + description + enabled + adapter + bounds + source + style + type + maxZoomPreference + minZoomPreference + enabled + listener + listener + listener + listener + listener + listener + listener + listener + listener + listener + listener + listener + callback + listener + listener + listener + listener + listener + listener + listener + listener + listener + left + top + right + bottom + enabled + callback + bitmap + callback + marker + marker + position + reason + circle + groundOverlay + building + marker + marker + marker + point + point + marker + marker + marker + marker + location + location + poi + polygon + polyline + snapshot + enabled + camera + enabled + context + attrs + llbounds + enabled + enabled + mapType + maxZoomPreference + minZoomPreference + enabled + enabled + enabled + enabled + useViewLifecycleInFragment + @out + flags + zOrderOnTop + enabled + enabled + listener + location + callback + options + savedInstanceState + activity + savedInstanceState + inflater + container + savedInstanceState + ambientDetails + activity + attrs + savedInstanceState + outState + args + context + context + context + attrs + context + attrs + defStyle + context + options + callback + savedInstanceState + ambientDetails + outState + hue + assetName + image + fileName + absolutePath + resourceId + target + zoom + tilt + bearing + camera + context + attrs + o + target + zoom + @out + flags + previous + bearing + location + tilt + zoom + o + @out + flags + center + clickable + color + radius + color + pattern + width + tag + visible + zIndex + center + clickable + color + radius + color + pattern + width + visible + zIndex + bitmapDescriptor + refWidth + bitmapDescriptor + length + length + other + bearing + clickable + width + height + width + imageDescriptor + latLng + bounds + tag + transparency + visible + zIndex + u + v + bearing + clickable + imageDescriptor + location + width + location + width + height + bounds + transparency + visible + @out + flags + zIndex + other + other + latitude + longitude + o + @out + flags + southwest + northeast + point + context + attrs + o + point + @out + flags + point + json + clientContext + resourceId + @out + flags + other + alpha + anchorU + anchorV + draggable + flat + iconDescriptor + anchorU + anchorV + latlng + rotation + snippet + tag + title + visible + zIndex + alpha + u + v + draggable + flat + iconDescriptor + u + v + latlng + rotation + snippet + title + visible + @out + flags + zIndex + o + @out + flags + latLng + placeId + name + @out + flags + other + clickable + color + geodesic + holes + points + color + jointType + pattern + width + tag + visible + zIndex + points + point + points + points + clickable + color + geodesic + color + jointType + pattern + width + visible + @out + flags + zIndex + other + clickable + color + endCap + geodesic + jointType + pattern + points + startCap + tag + visible + width + zIndex + points + point + points + clickable + color + endCap + geodesic + jointType + pattern + startCap + visible + width + @out + flags + zIndex + e + zoom + tilt + bearing + camera + o + @out + flags + previous + bearing + orientation + tilt + zoom + o + @out + flags + links + position + panoId + o + @out + flags + tilt + bearing + orientation + o + @out + flags + previous + bearing + tilt + o + @out + flags + width + height + data + @out + flags + other + fadeIn + transparency + visible + zIndex + fadeIn + tileProvider + transparency + visible + @out + flags + zIndex + x + y + zoom + width + height + x + y + zoom + x + y + zoom + nearLeft + nearRight + farLeft + farRight + latLngBounds + o + @out + flags + googleMap + panorama + point + location + camera + duration + orientation + point + listener + listener + listener + listener + enablePanning + position + source + position + position + radius + position + radius + source + panoId + enableStreetNames + enableUserNavigation + enableZoom + camera + location + orientation + orientation + callback + options + savedInstanceState + activity + savedInstanceState + inflater + container + savedInstanceState + activity + attrs + savedInstanceState + outState + args + enabled + camera + panoId + position + position + radius + source + position + radius + position + source + enabled + useViewLifecycleInFragment + enabled + @out + flags + enabled + context + context + attrs + context + attrs + defStyle + context + options + callback + savedInstanceState + outState + callback + options + savedInstanceState + activity + savedInstanceState + inflater + container + savedInstanceState + ambientDetails + activity + attrs + savedInstanceState + outState + args + callback + options + savedInstanceState + activity + savedInstanceState + inflater + container + savedInstanceState + activity + attrs + savedInstanceState + outState + args + enabled + enabled + enabled + enabled + enabled + enabled + enabled + enabled + enabled + enabled + enabled + context + info + uri + selection + selectionArgs + uri + uri + values + uri + projection + selection + selectionArgs + sortOrder + uri + values + selection + selectionArgs + context + service + context + intent + intent + @params + @params + intent + context + service + context + intent + intent + intent + intent + flags + startId + intent + strategy + other + dest + flags + origin + strategy + identifier + @out + flags + appIdentifiers + @out + flags + endpointName + authenticationToken + isIncomingConnection + endpointId + connectionInfo + endpointId + resolution + endpointId + status + apiClient + endpointId + payloadCallback + apiClient + endpointId + handshakeData + messageListener + apiClient + payloadId + apiClient + endpointId + apiClient + endpointId + apiClient + remoteEndpointId + apiClient + name + endpointId + connectionLifecycleCallback + apiClient + name + remoteEndpointId + handshakeData + connectionResponseCallback + messageListener + apiClient + endpointId + payload + apiClient + endpointIds + payload + apiClient + remoteEndpointIds + payload + apiClient + remoteEndpointId + payload + apiClient + remoteEndpointId + payload + apiClient + remoteEndpointIds + payload + apiClient + name + serviceId + connectionLifecycleCallback + options + apiClient + name + appMetadata + durationMillis + connectionRequestListener + apiClient + serviceId + durationMillis + listener + apiClient + serviceId + endpointDiscoveryCallback + options + apiClient + apiClient + apiClient + apiClient + serviceId + remoteEndpointId + remoteEndpointName + handshakeData + remoteEndpointId + status + handshakeData + endpointId + serviceId + name + endpointId + endpointId + endpointId + payload + isReliable + endpointId + payloadCallback + payloadId + endpointId + endpointId + name + endpointId + connectionLifecycleCallback + endpointId + payload + endpointIds + payload + name + serviceId + connectionLifecycleCallback + options + serviceId + endpointDiscoveryCallback + options + statusCode + serviceId + endpointName + strategy + other + dest + flags + origin + strategy + endpointId + info + endpointId + bytes + pfd + javaFile + pfd + inputStream + endpointId + payload + endpointId + update + other + dest + flags + origin + bytesTransferred + payloadId + status + totalBytes + @object + audioData + message + other + hexId + hexNamespace + hexInstance + o + message + proximityUuid + major + minor + o + message + content + content + type + @object + @out + flags + o + dest + flags + numAudioBytes + hexNamespace + hexInstance + filter + proximityUuid + major + minor + @namespace + type + message + bleSignal + message + distance + message + message + client + intent + messageListener + client + message + client + message + options + client + statusCallback + client + pendingIntent + options + client + listener + options + client + listener + client + pendingIntent + client + message + client + statusCallback + client + pendingIntent + client + listener + intent + messageListener + message + message + options + statusCallback + listener + options + listener + pendingIntent + options + pendingIntent + message + statusCallback + listener + pendingIntent + permissions + statusCode + callback + strategy + permissionGranted + other + @out + flags + discoveryMode + distanceType + ttlSeconds + callback + filter + strategy + context + activity + activity + options + activity + context + options + context + bundle + item + savedInstanceState + bundle + i + bundle + loader + licenses + loader + item + title + bundle + client + uri + client + uri + googleApiClient + googleApiClient + googleApiClient + position + googleApiClient + googleApiClient + personIds + googleApiClient + personIds + googleApiClient + googleApiClient + orderBy + pageToken + googleApiClient + pageToken + activityTypes + clientId + context + context + attrs + url + activityRequestCode + url + plusOneClickListener + annotation + intent + listener + size + context + attrs + context + attrs + proxy + view + intent + intent + context + size + id + displayName + intent + context + launchingActivity + label + uri + deepLinkId + streamUri + deepLinkId + deepLinkId + title + description + thumbnailUri + uri + user + recipientList + streamUri + text + mimeType + activity + context + client + siteKey + nonce + apiKey + uri + apiKey + threatTypes + siteKey + client + accessToken + client + webAppClientId + context + context + listener + errorCode + recoveryIntent + key + key + key + key + customMacroName + customMacroCallback + customTagName + customTagCallback + customMacroName + customTagName + functionName + parameters + functionName + parameters + listener + containerHolder + containerVersion + parameters + parameters + key + objects + objects + update + key + value + eventName + update + savedInstanceState + context + containerId + defaultContainerResourceId + containerId + defaultContainerResourceId + handler + containerId + defaultContainerResourceId + containerId + defaultContainerResourceId + handler + containerId + defaultContainerResourceId + containerId + defaultContainerResourceId + handler + enableVerboseLogging + savedInstanceState + intent + listener + task + task + e + result + cause + result + listener + executor + listener + activity + listener + listener + activity + listener + executor + listener + activity + listener + listener + executor + listener + executor + listener + listener + activity + listener + continuation + executor + continuation + continuation + executor + continuation + exceptionType + executor + successContinuation + successContinuation + cancellationToken + e + result + e + result + task + timeout + unit + task + callable + executor + callable + e + result + tasks + tasks + tasks + tasks + tasks + tasks + frame + context + format + surfaceHolder + shutter + jpeg + context + detector + autoFocusEnabled + facing + fps + width + height + data + frame + frame + id + processor + detections + frame + id + context + classificationType + landmarkType + proportionalMinFaceSize + mode + prominentFaceOnly + trackingEnabled + detector + tracker + detector + tracker + maxGapFrames + detector + tracker + detections + image + id + data + width + height + format + rotation + timestampMillis + metadata + frame + processor + detector + factory + maxGapFrames + item + frame + context + detections + id + item + detections + item + intent + intent + data + data + status + task + activity + requestCode + @out + flags + @out + flags + allowedCardNetwork + allowedCardNetworks + allowPrepaidCards + billingAddressFormat + billingAddressRequired + dest + flags + lineItem + currencyCode + lineItems + totalPrice + countryCode + dest + flags + loyaltyWalletObject + offerWalletObject + giftCardWalletObject + dest + flags + createMode + giftCardWalletObject + loyaltyWalletObject + offerWalletObject + context + intent + initParams + options + requestCode + resultCode + data + savedInstanceState + inflater + container + savedInstanceState + activity + attrs + savedInstanceState + outState + enabled + listener + maskedWallet + request + fragment + oldState + newState + extras + initParams + options + requestCode + resultCode + data + savedInstanceState + inflater + container + savedInstanceState + activity + attrs + savedInstanceState + outState + enabled + listener + maskedWallet + request + fragment + oldState + newState + extras + dest + flags + accountName + maskedWallet + request + requestCode + dest + flags + environment + fragmentStyle + styleResourceId + mode + theme + buyButtonAppearance + unit + height + height + buyButtonText + width + unit + width + color + resourceId + color + resourceId + resourceId + resourceId + imageType + color + resourceId + id + dest + flags + @out + flags + dest + flags + cart + googleTransactionId + merchantTransactionId + dest + flags + uri + uris + row + rows + uri + uris + location + locations + message + messages + data + data + currencyCode + valueMicros + balanceUpdateTimeStamp + barcodeAlternateText + barcodeLabel + barcodeType + barcodeValue + cardIdentifier + cardNumber + classId + eventNumber + id + color + color + show + issuerName + pin + state + title + interval + @out + flags + isReadyToPayRequestJson + allowedCardNetwork + allowedCardNetworks + allowedPaymentMethod + allowedPaymentMethods + existingPaymentMethodRequired + dest + flags + currencyCode + description + quantity + role + totalPrice + unitPrice + dest + flags + uri + uris + row + rows + uri + uris + location + locations + message + messages + data + data + accountId + accountName + barcodeAlternateText + barcodeLabel + barcodeType + barcodeValue + classId + id + color + color + show + issuerName + loyaltyPoints + programName + state + interval + maskedWallet + dest + flags + buyerBillingAddress + buyerShippingAddress + email + googleTransactionId + instrumentInfos + merchantTransactionId + paymentDescriptions + dest + flags + allowedCardNetwork + allowedCardNetworks + countrySpecification + countrySpecifications + allowDebitCard + allowPrepaidCard + cart + countryCode + currencyCode + estimatedTotalPrice + isBillingAgreement + merchantName + merchantTransactionId + paymentMethodTokenizationParameters + phoneNumberRequired + shippingAddressRequired + useMinimalBillingAddress + dest + flags + uri + uris + row + rows + uri + uris + location + locations + message + messages + data + data + barcodeAlternateText + barcodeLabel + barcodeType + barcodeValue + classId + id + color + color + show + issuerName + redemptionCode + state + title + interval + paymentDataJson + intent + intent + dest + flags + paymentDataRequestJson + dest + flags + allowedPaymentMethod + allowedPaymentMethods + cardRequirements + emailRequired + paymentMethodTokenizationParameters + phoneNumberRequired + shippingAddressRequired + shippingAddressRequirements + transactionInfo + uiRequired + @out + flags + @out + flags + name + value + tokenizationType + googleApiClient + googleTransactionId + merchantTransactionId + requestCode + googleApiClient + requestCode + googleApiClient + request + googleApiClient + googleApiClient + request + requestCode + googleApiClient + request + requestCode + request + request + @out + flags + @out + flags + allowedCountryCode + allowedCountryCodes + @out + flags + currencyCode + totalPrice + totalPriceStatus + activity + options + context + options + activity + options + other + environment + theme + request + label + value + dest + flags + dest + flags + column + columns + color + color + dest + flags + balance + label + type + interval + dest + flags + balance + balance + currencyCode + currencyMicros + balance + header + body + dest + flags + startTimestamp + endTimestamp + dest + flags + uri + description + dest + flags + dest + flags + uri + body + interval + header + uri + googleApiClient + request + requestCode + assetData + fd + digest + uri + o + dest + flags + client + listener + capability + client + listener + uri + filterType + client + capability + client + nodeFilter + client + capability + nodeFilter + client + listener + capability + client + listener + client + capability + capabilityInfo + listener + capability + listener + uri + filterType + capability + nodeFilter + capability + nodeFilter + listener + listener + capability + capability + capabilityInfo + client + listener + client + errorCode + client + client + client + client + uri + append + client + listener + client + uri + client + uri + startOffset + length + client + listener + client + nodeId + path + client + listener + channel + closeReason + appSpecificErrorCode + channel + channel + closeReason + appSpecificErrorCode + channel + closeReason + appSpecificErrorCode + channel + errorCode + channel + channel + channel + nodeId + path + channel + uri + append + channel + callback + callback + channel + uri + channel + uri + startOffset + length + channel + callback + callback + channel + closeReason + appSpecificErrorCode + channel + channel + closeReason + appSpecificErrorCode + channel + closeReason + appSpecificErrorCode + message + closeReason + appSpecificErrorCode + client + listener + client + listener + uri + filterType + client + uri + filterType + client + uri + client + uri + client + uri + filterType + client + client + uri + client + asset + client + asset + client + request + client + listener + dataEvents + listener + listener + uri + filterType + uri + filterType + uri + uri + uri + filterType + uri + asset + asset + request + listener + dataEvents + position + data + position + bundleArrayList + key + o + bundle + bytes + key + key + key + defaultValue + key + key + key + defaultValue + key + key + key + key + defaultValue + key + key + defaultValue + key + key + key + defaultValue + key + key + key + defaultValue + key + key + key + key + defaultValue + key + key + dataMap + key + value + key + value + key + value + key + value + key + value + key + value + key + value + key + value + key + value + key + value + key + value + key + value + key + value + key + value + key + value + key + value + key + dataItem + client + listener + uri + filterType + client + listener + client + listener + client + nodeId + path + data + messageEvent + listener + uri + filterType + listener + listener + nodeId + path + data + messageEvent + client + client + path + source + pathPrefix + path + source + pathPrefix + key + key + key + value + key + data + verbose + dest + flags + context + activity + options + context + options + activity + context + options + context + activity + options + activity + activity + options + activity + context + options + context + context + options + activity + context + activity + options + context + activity + context + options + activity + options + looper + intent + capabilityInfo + channel + closeReason + appSpecificErrorCode + channel + closeReason + appSpecificErrorCode + channel + channel + connectedNodes + dataEvents + channel + closeReason + appSpecificErrorCode + channel + closeReason + appSpecificErrorCode + messageEvent + channel + closeReason + appSpecificErrorCode + channel + closeReason + appSpecificErrorCode + peer + peer + statusCode + success + result + obj + code + data + reply + flags + success + result + callback + flags + callback + bundle + callback + obj + code + data + reply + flags + callback + flags + callback + bundle + callback + success + result + obj + code + data + reply + flags + success + result + context + name + @params + enabled + activity + screenName + screenClassOverride + milliseconds + milliseconds + id + name + value + type + key + values + key + values + key + values + key + values + key + values + actionStatus + metadataBuilder + name + name + url + name + url + webUrl + url + uploadable + @object + uri + name + url + ratingCount + ratingValue + personBuilders + personBuilders + personBuilders + id + personBuilders + dateCreated + dateModified + permissions + text + grantees + type + box + box + type + key + values + key + values + key + values + key + values + description + url + keywords + metadataBuilder + name + webUrl + url + key + values + name + url + address + aggregateRating + geoShape + priceRange + telephone + dateRead + dateReceived + dateSent + conversation + attachments + recipients + sender + text + artist + numTracks + tracks + musicAlbums + genre + tracks + numTracks + tracks + artist + durationInSeconds + musicAlbum + musicPlaylists + email + isSelf + telephone + dateCreated + place + geoShape + country + addressLocality + postalCode + streetAddress + partySize + localBusiness + startDate + stickerPack + stickers + author + durationInSeconds + durationWatchedInSeconds + place + seriesName + uploadDate + urls + indexables + detailMessage + detailMessage + cause + message + message + cause + message + message + cause + action + action + type + scope + score + sliceUri + worksOffline + pendingDynamicLinkData + key + @out + flags + androidPackageName + installIfNotAvailable + minimumVersion + dynamicLinkDomain + status + iOSBundleId + url + email + password + email + emailLink + accessToken + listener + listener + code + code + code + newPassword + email + password + email + email + firebaseApp + link + listener + listener + email + actionCodeSettings + email + email + actionCodeSettings + firebaseUIVersion + languageCode + credential + token + email + password + email + link + user + code + auth + auth + errorCode + detailMessage + code + message + code + message + code + message + phoneNumber + smsCode + forceRefresh + credential + credential + credential + actionCodeSettings + provider + email + password + credential + request + token + idToken + accessToken + tokenResult + listener + forceRefresh + listenerToRemove + providerId + idToken + accessToken + verificationId + smsCode + firebaseAuth + phoneNumber + timeout + unit + activity + callbacks + phoneNumber + timeout + unit + executor + callbacks + phoneNumber + timeout + unit + activity + callbacks + forceResendingToken + phoneNumber + timeout + unit + executor + callbacks + forceResendingToken + verificationId + verificationId + forceResendingToken + credential + exception + serverAuthCode + token + secret + displayName + photoUri + firebaseApp + message + level + tag + message + throwable + enable + packageName + fallbackUrl + minimumVersion + suffix + androidParameters + dynamicLinkDomain + googleAnalyticsParameters + iosParameters + itunesConnectAnalyticsParameters + link + longLink + navigationInfoParameters + socialMetaTagParameters + source + medium + campaign + campaign + content + medium + source + term + bundleId + appStoreId + customScheme + fallbackUrl + bundleId + fallbackUrl + minimumVersion + affiliateToken + campaignToken + providerToken + forcedRedirectEnabled + description + imageUrl + title + dynamicLinkUri + intent + deepLink + minVersion + clickTimestamp + redirectUrl + context + message + detailMessage + detailMessage + cause + authorizedEntity + scope + app + authorizedEntity + scope + context + intent + message + enable + topic + topic + message + msgId + token + msgId + exception + @out + flags + to + key + value + collapseKey + data + messageId + messageType + ttl + o + modelName + enableModelUpdates + initialConditions + updatesConditions + o + modelName + assetFilePath + filePath + o + modelName + modelName + cloudModelSource + localModelSource + options + index + dataType + dims + index + dataType + dims + input + name + options + name + inputs + options + enable + modelName + modelName + cloudModelSource + localModelSource + o + cloudModelName + localModelName + index + o + modelName + enableModelUpdates + initialConditions + updatesConditions + o + modelName + assetFilePath + filePath + o + app + options + text + text + o + confidenceThreshold + o + image + o + format + moreFormats + o + maxResults + model + image + image + image + image + bitmap + byteArray + metadata + byteBuffer + metadata + context + imageUri + image + rotation + metadata + format + height + rotation + width + o + o + hintedLanguages + image + contourType + landmarkType + image + o + classificationMode + contourMode + landmarkMode + minFaceSize + performanceMode + options + options + options + app + options + options + options + options + enable + o + confidenceThreshold + o + image + image + o + confidenceThreshold + o + confidenceThreshold + o + hintedLanguages + modelType + image + image + o + url + httpMethod + url + httpMethod + traceName + enable + traceName + attribute + attribute + value + attribute + responseCode + bytes + contentType + bytes + attribute + metricName + counterName + incrementBy + counterName + metricName + incrementBy + attribute + value + metricName + value + attribute + @out + flags + cacheExpirationSeconds + key + @namespace + key + key + @namespace + key + key + @namespace + key + prefix + @namespace + prefix + key + key + @namespace + key + key + @namespace + key + key + @namespace + settings + resourceId + defaults + @namespace + resourceId + @namespace + defaults + throttleEndTimeMillis + enabled + diff --git a/build/data/paramnames/play-services-firebase-paramnames.txt b/build/data/paramnames/play-services-firebase-paramnames.txt new file mode 100644 index 000000000..fe5b48a04 --- /dev/null +++ b/build/data/paramnames/play-services-firebase-paramnames.txt @@ -0,0 +1,5815 @@ +package com.google.android.gms.ads +;--------------------------------------- + class AdListener + #ctor(int errorCode) + class AdLoader + loadAd(com.google.android.gms.ads.doubleclick.PublisherAdRequest publisherAdRequest) + loadAd(com.google.android.gms.ads.AdRequest adRequest) + loadAds(com.google.android.gms.ads.AdRequest adRequest, int maxNumberOfAds) + class AdLoader.Builder + #ctor(android.content.Context context, java.lang.String adUnitID) + #ctor(com.google.android.gms.ads.formats.NativeAppInstallAd.OnAppInstallAdLoadedListener listener) + #ctor(com.google.android.gms.ads.formats.NativeContentAd.OnContentAdLoadedListener listener) + #ctor(java.lang.String templateId, com.google.android.gms.ads.formats.NativeCustomTemplateAd.OnCustomTemplateAdLoadedListener adLoadedListener, com.google.android.gms.ads.formats.NativeCustomTemplateAd.OnCustomClickListener customClickListener) + #ctor(com.google.android.gms.ads.formats.OnPublisherAdViewLoadedListener listener, com.google.android.gms.ads.AdSize... adSizes) + #ctor(com.google.android.gms.ads.formats.UnifiedNativeAd.OnUnifiedNativeAdLoadedListener listener) + #ctor(com.google.android.gms.ads.AdListener listener) + #ctor(com.google.android.gms.ads.Correlator correlator) + #ctor(com.google.android.gms.ads.formats.NativeAdOptions options) + #ctor(com.google.android.gms.ads.formats.PublisherAdViewOptions options) + class AdRequest + getCustomEventExtrasBundle(java.lang.Class adapterClass) + getNetworkExtras(java.lang.Class networkExtrasClass) + getNetworkExtrasBundle(java.lang.Class adapterClass) + isTestDevice(android.content.Context context) + class AdRequest.Builder + #ctor(java.lang.Class adapterClass, android.os.Bundle customEventExtras) + #ctor(java.lang.String keyword) + #ctor(com.google.android.gms.ads.mediation.NetworkExtras networkExtras) + #ctor(java.lang.Class adapterClass, android.os.Bundle networkExtras) + #ctor(java.lang.String deviceId) + #ctor(java.util.Date birthday) + #ctor(java.lang.String contentUrl) + #ctor(int gender) + #ctor(boolean isDesignedForFamilies) + #ctor(android.location.Location location) + #ctor(java.lang.String maxAdContentRating) + #ctor(java.lang.String requestAgent) + #ctor(int tagForUnderAgeOfConsent) + #ctor(boolean tagForChildDirectedTreatment) + class AdSize + #ctor(int width, int height) + #ctor(java.lang.Object other) + #ctor(android.content.Context context) + #ctor(android.content.Context context) + class AdView + #ctor(android.content.Context context) + #ctor(android.content.Context context, android.util.AttributeSet attrs) + #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyle) + #ctor(com.google.android.gms.ads.AdRequest adRequest) + #ctor(com.google.android.gms.ads.AdListener adListener) + #ctor(com.google.android.gms.ads.AdSize adSize) + #ctor(java.lang.String adUnitId) + #ctor(boolean changed, int left, int top, int right, int bottom) + #ctor(int widthMeasureSpec, int heightMeasureSpec) + class InterstitialAd + #ctor(android.content.Context context) + #ctor(com.google.android.gms.ads.AdRequest adRequest) + #ctor(com.google.android.gms.ads.AdListener adListener) + #ctor(java.lang.String adUnitId) + #ctor(boolean immersiveModeEnabled) + class MobileAds + getRewardedVideoAdInstance(android.content.Context context) + initialize(android.content.Context context, java.lang.String applicationCode) + initialize(android.content.Context context) + initialize(android.content.Context context, java.lang.String applicationCode, com.google.android.gms.ads.MobileAds.Settings settings) + openDebugMenu(android.content.Context context, java.lang.String adUnitId) + setAppMuted(boolean muted) + setAppVolume(float volume) + class MobileAds.Settings + #ctor(boolean enable) + #ctor(java.lang.String trackingId) + class NativeExpressAdView + #ctor(android.content.Context context) + #ctor(android.content.Context context, android.util.AttributeSet attrs) + #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyle) + #ctor(com.google.android.gms.ads.AdRequest adRequest) + #ctor(com.google.android.gms.ads.AdListener adListener) + #ctor(com.google.android.gms.ads.AdSize adSize) + #ctor(java.lang.String adUnitId) + #ctor(com.google.android.gms.ads.VideoOptions videoOptions) + #ctor(boolean changed, int left, int top, int right, int bottom) + #ctor(int widthMeasureSpec, int heightMeasureSpec) + class VideoController + mute(boolean mute) + setVideoLifecycleCallbacks(com.google.android.gms.ads.VideoController.VideoLifecycleCallbacks callbacks) + class VideoController.VideoLifecycleCallbacks + #ctor(boolean isMuted) + class VideoOptions.Builder + #ctor(boolean clickToExpandRequested) + #ctor(boolean customControlsRequested) + #ctor(boolean startMuted) +package com.google.android.gms.ads.doubleclick +;--------------------------------------- + interface AppEventListener + onAppEvent(java.lang.String name, java.lang.String data) + interface CustomRenderedAd + onAdRendered(android.view.View view) + interface OnCustomRenderedAdLoadedListener + onCustomRenderedAdLoaded(com.google.android.gms.ads.doubleclick.CustomRenderedAd ad) + class PublisherAdRequest + getCustomEventExtrasBundle(java.lang.Class adapterClass) + getNetworkExtras(java.lang.Class networkExtrasClass) + getNetworkExtrasBundle(java.lang.Class adapterClass) + isTestDevice(android.content.Context context) + class PublisherAdRequest.Builder + #ctor(java.lang.String categoryExclusion) + #ctor(java.lang.Class adapterClass, android.os.Bundle customEventExtras) + #ctor(java.lang.String key, java.util.List values) + #ctor(java.lang.String key, java.lang.String value) + #ctor(java.lang.String keyword) + #ctor(com.google.android.gms.ads.mediation.NetworkExtras networkExtras) + #ctor(java.lang.Class adapterClass, android.os.Bundle networkExtras) + #ctor(java.lang.String deviceId) + #ctor(java.util.Date birthday) + #ctor(java.lang.String contentUrl) + #ctor(int gender) + #ctor(boolean isDesignedForFamilies) + #ctor(android.location.Location location) + #ctor(boolean manualImpressionsEnabled) + #ctor(java.lang.String maxAdContentRating) + #ctor(java.lang.String publisherProvidedId) + #ctor(java.lang.String requestAgent) + #ctor(int tagForUnderAgeOfConsent) + #ctor(boolean tagForChildDirectedTreatment) + class PublisherAdView + #ctor(android.content.Context context) + #ctor(android.content.Context context, android.util.AttributeSet attrs) + #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyle) + #ctor(com.google.android.gms.ads.doubleclick.PublisherAdRequest publisherAdRequest) + #ctor(com.google.android.gms.ads.AdListener adListener) + #ctor(com.google.android.gms.ads.AdSize... adSizes) + #ctor(java.lang.String adUnitId) + #ctor(com.google.android.gms.ads.doubleclick.AppEventListener appEventListener) + #ctor(com.google.android.gms.ads.Correlator correlator) + #ctor(boolean manualImpressionsEnabled) + #ctor(com.google.android.gms.ads.doubleclick.OnCustomRenderedAdLoadedListener onCustomRenderedAdLoadedListener) + #ctor(com.google.android.gms.ads.VideoOptions videoOptions) + #ctor(boolean changed, int left, int top, int right, int bottom) + #ctor(int widthMeasureSpec, int heightMeasureSpec) + class PublisherInterstitialAd + #ctor(android.content.Context context) + #ctor(com.google.android.gms.ads.doubleclick.PublisherAdRequest publisherAdRequest) + #ctor(com.google.android.gms.ads.AdListener adListener) + #ctor(java.lang.String adUnitId) + #ctor(com.google.android.gms.ads.doubleclick.AppEventListener appEventListener) + #ctor(com.google.android.gms.ads.Correlator correlator) + #ctor(boolean immersiveModeEnabled) + #ctor(com.google.android.gms.ads.doubleclick.OnCustomRenderedAdLoadedListener onCustomRenderedAdLoadedListener) +package com.google.android.gms.ads.formats +;--------------------------------------- + class AdChoicesView + #ctor(android.content.Context context) + #ctor(android.content.Context context, android.util.AttributeSet attrs) + #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr) + #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes) + class MediaView + #ctor(android.content.Context context) + #ctor(android.content.Context context, android.util.AttributeSet attrs) + #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr) + #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes) + class NativeAd + #ctor(android.os.Bundle clickData) + #ctor(android.os.Bundle impressionData) + #ctor(android.os.Bundle touchEventData) + class NativeAdOptions.Builder + #ctor(int adChoicesPlacement) + #ctor(int orientation) + #ctor(boolean requestCustomMuteThisAd) + #ctor(boolean shouldRequestMultipleImages) + #ctor(boolean shouldReturnUrls) + #ctor(com.google.android.gms.ads.VideoOptions videoOptions) + class NativeAdView + #ctor(android.content.Context context) + #ctor(android.content.Context context, android.util.AttributeSet attrs) + #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr) + #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes) + #ctor(com.google.android.gms.ads.formats.AdChoicesView adChoicesView) + #ctor(com.google.android.gms.ads.formats.NativeAd ad) + class NativeAdViewHolder + #ctor(android.view.View containerView, java.util.Map nonclickableAssetViews) + #ctor(android.view.View view) + #ctor(com.google.android.gms.ads.formats.UnifiedNativeAd ad) + #ctor(com.google.android.gms.ads.formats.NativeAd ad) + interface NativeAppInstallAd.OnAppInstallAdLoadedListener + onAppInstallAdLoaded(com.google.android.gms.ads.formats.NativeAppInstallAd ad) + class NativeAppInstallAdView + #ctor(android.content.Context context) + #ctor(android.content.Context context, android.util.AttributeSet attrs) + #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr) + #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes) + #ctor(android.view.View view) + #ctor(android.view.View view) + #ctor(android.view.View view) + #ctor(android.view.View view) + #ctor(android.view.View view) + #ctor(com.google.android.gms.ads.formats.MediaView view) + #ctor(android.view.View view) + #ctor(android.view.View view) + #ctor(android.view.View view) + interface NativeContentAd.OnContentAdLoadedListener + onContentAdLoaded(com.google.android.gms.ads.formats.NativeContentAd ad) + class NativeContentAdView + #ctor(android.content.Context context) + #ctor(android.content.Context context, android.util.AttributeSet attrs) + #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr) + #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes) + #ctor(android.view.View view) + #ctor(android.view.View view) + #ctor(android.view.View view) + #ctor(android.view.View view) + #ctor(android.view.View view) + #ctor(android.view.View view) + #ctor(com.google.android.gms.ads.formats.MediaView view) + interface NativeCustomTemplateAd + getImage(java.lang.String assetName) + getText(java.lang.String assetName) + performClick(java.lang.String assetName) + interface NativeCustomTemplateAd.OnCustomClickListener + onCustomClick(com.google.android.gms.ads.formats.NativeCustomTemplateAd ad, java.lang.String assetName) + interface NativeCustomTemplateAd.OnCustomTemplateAdLoadedListener + onCustomTemplateAdLoaded(com.google.android.gms.ads.formats.NativeCustomTemplateAd ad) + interface OnPublisherAdViewLoadedListener + onPublisherAdViewLoaded(com.google.android.gms.ads.doubleclick.PublisherAdView adView) + class PublisherAdViewOptions.Builder + #ctor(com.google.android.gms.ads.doubleclick.AppEventListener appEventListener) + #ctor(boolean manualImpressionsEnabled) + class UnifiedNativeAd + #ctor(com.google.android.gms.ads.MuteThisAdReason muteThisAdReason) + #ctor(android.os.Bundle clickData) + #ctor(android.os.Bundle impressionData) + #ctor(android.os.Bundle touchEventData) + #ctor(com.google.android.gms.ads.MuteThisAdListener listener) + #ctor(com.google.android.gms.ads.formats.UnifiedNativeAd.UnconfirmedClickListener listener) + interface UnifiedNativeAd.OnUnifiedNativeAdLoadedListener + onUnifiedNativeAdLoaded(com.google.android.gms.ads.formats.UnifiedNativeAd ad) + interface UnifiedNativeAd.UnconfirmedClickListener + onUnconfirmedClickReceived(java.lang.String assetId) + class UnifiedNativeAdView + #ctor(android.content.Context context) + #ctor(android.content.Context context, android.util.AttributeSet attrs) + #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr) + #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyleAttr, int defStyleRes) + #ctor(com.google.android.gms.ads.formats.AdChoicesView adChoicesView) + #ctor(android.view.View view) + #ctor(android.view.View view) + #ctor(android.view.View view) + #ctor(android.view.View view) + #ctor(android.view.View view) + #ctor(android.view.View view) + #ctor(android.view.View view) + #ctor(com.google.android.gms.ads.formats.MediaView view) + #ctor(com.google.android.gms.ads.formats.UnifiedNativeAd ad) + #ctor(android.view.View view) + #ctor(android.view.View view) + #ctor(android.view.View view) +package com.google.android.gms.ads.identifier +;--------------------------------------- + class AdvertisingIdClient + getAdvertisingIdInfo(android.content.Context context) + class AdvertisingIdClient.Info + #ctor(java.lang.String advertisingId, boolean limitAdTrackingEnabled) +package com.google.android.gms.ads.mediation.admob +;--------------------------------------- + class AdMobExtras + #ctor(android.os.Bundle extras) +package com.google.android.gms.ads.mediation.customevent +;--------------------------------------- + interface CustomEventBanner + requestBannerAd(android.content.Context context, com.google.android.gms.ads.mediation.customevent.CustomEventBannerListener listener, java.lang.String serverParameter, com.google.android.gms.ads.AdSize size, com.google.android.gms.ads.mediation.MediationAdRequest mediationAdRequest, android.os.Bundle customEventExtras) + interface CustomEventBannerListener + onAdLoaded(android.view.View view) + class CustomEventExtras + #ctor(java.lang.String label) + #ctor(java.lang.String label, java.lang.Object value) + interface CustomEventInterstitial + requestInterstitialAd(android.content.Context context, com.google.android.gms.ads.mediation.customevent.CustomEventInterstitialListener listener, java.lang.String serverParameter, com.google.android.gms.ads.mediation.MediationAdRequest mediationAdRequest, android.os.Bundle customEventExtras) + interface CustomEventListener + onAdFailedToLoad(int errorCode) + interface CustomEventNative + requestNativeAd(android.content.Context context, com.google.android.gms.ads.mediation.customevent.CustomEventNativeListener listener, java.lang.String serverParameter, com.google.android.gms.ads.mediation.NativeMediationAdRequest mediationAdRequest, android.os.Bundle customEventExtras) + interface CustomEventNativeListener + onAdLoaded(com.google.android.gms.ads.mediation.NativeAdMapper mapper) + onAdLoaded(com.google.android.gms.ads.mediation.UnifiedNativeAdMapper mapper) +package com.google.android.gms.ads.mediation +;--------------------------------------- + interface MediationBannerAdapter + requestBannerAd(android.content.Context context, com.google.android.gms.ads.mediation.MediationBannerListener listener, android.os.Bundle serverParameters, com.google.android.gms.ads.AdSize adSize, com.google.android.gms.ads.mediation.MediationAdRequest mediationAdRequest, android.os.Bundle mediationExtras) + interface MediationBannerListener + onAdClicked(com.google.android.gms.ads.mediation.MediationBannerAdapter adapter) + onAdClosed(com.google.android.gms.ads.mediation.MediationBannerAdapter adapter) + onAdFailedToLoad(com.google.android.gms.ads.mediation.MediationBannerAdapter adapter, int error) + onAdLeftApplication(com.google.android.gms.ads.mediation.MediationBannerAdapter adapter) + onAdLoaded(com.google.android.gms.ads.mediation.MediationBannerAdapter adapter) + onAdOpened(com.google.android.gms.ads.mediation.MediationBannerAdapter adapter) + interface MediationInterstitialAdapter + requestInterstitialAd(android.content.Context context, com.google.android.gms.ads.mediation.MediationInterstitialListener listener, android.os.Bundle serverParameters, com.google.android.gms.ads.mediation.MediationAdRequest mediationAdRequest, android.os.Bundle mediationExtras) + interface MediationInterstitialListener + onAdClicked(com.google.android.gms.ads.mediation.MediationInterstitialAdapter adapter) + onAdClosed(com.google.android.gms.ads.mediation.MediationInterstitialAdapter adapter) + onAdFailedToLoad(com.google.android.gms.ads.mediation.MediationInterstitialAdapter adapter, int error) + onAdLeftApplication(com.google.android.gms.ads.mediation.MediationInterstitialAdapter adapter) + onAdLoaded(com.google.android.gms.ads.mediation.MediationInterstitialAdapter adapter) + onAdOpened(com.google.android.gms.ads.mediation.MediationInterstitialAdapter adapter) + interface MediationNativeAdapter + requestNativeAd(android.content.Context context, com.google.android.gms.ads.mediation.MediationNativeListener listener, android.os.Bundle serverParameters, com.google.android.gms.ads.mediation.NativeMediationAdRequest mediationAdRequest, android.os.Bundle mediationExtras) + interface MediationNativeListener + onAdClicked(com.google.android.gms.ads.mediation.MediationNativeAdapter adapter) + onAdClosed(com.google.android.gms.ads.mediation.MediationNativeAdapter adapter) + onAdFailedToLoad(com.google.android.gms.ads.mediation.MediationNativeAdapter adapter, int error) + onAdImpression(com.google.android.gms.ads.mediation.MediationNativeAdapter adapter) + onAdLeftApplication(com.google.android.gms.ads.mediation.MediationNativeAdapter adapter) + onAdLoaded(com.google.android.gms.ads.mediation.MediationNativeAdapter adapter, com.google.android.gms.ads.mediation.NativeAdMapper nativeAdMapper) + onAdLoaded(com.google.android.gms.ads.mediation.MediationNativeAdapter adapter, com.google.android.gms.ads.mediation.UnifiedNativeAdMapper unifiedNativeAdMapper) + onAdOpened(com.google.android.gms.ads.mediation.MediationNativeAdapter adapter) + onVideoEnd(com.google.android.gms.ads.mediation.MediationNativeAdapter adapter) + class NativeAdMapper + #ctor(android.view.View view) + #ctor(android.view.View adChoicesContent) + #ctor(android.os.Bundle extras) + #ctor(boolean hasVideoContent) + #ctor(android.view.View mediaView) + #ctor(boolean overrideClickHandling) + #ctor(boolean overrideImpressionRecording) + #ctor(android.view.View view) + #ctor(android.view.View containerView, java.util.Map nonclickableAssetViews) + #ctor(android.view.View view) + class NativeAppInstallAdMapper + #ctor(java.lang.String body) + #ctor(java.lang.String callToAction) + #ctor(java.lang.String headline) + #ctor(com.google.android.gms.ads.formats.NativeAd.Image icon) + #ctor(java.util.List images) + #ctor(java.lang.String price) + #ctor(double starRating) + #ctor(java.lang.String store) + class NativeContentAdMapper + #ctor(java.lang.String advertiser) + #ctor(java.lang.String body) + #ctor(java.lang.String callToAction) + #ctor(java.lang.String headline) + #ctor(java.util.List images) + #ctor(com.google.android.gms.ads.formats.NativeAd.Image logo) + interface OnContextChangedListener + onContextChanged(android.content.Context newContext) + interface OnImmersiveModeUpdatedListener + onImmersiveModeUpdated(boolean immersiveModeEnabled) + class UnifiedNativeAdMapper + #ctor(android.view.View view) + #ctor(android.view.View adChoicesContent) + #ctor(java.lang.String advertiser) + #ctor(java.lang.String body) + #ctor(java.lang.String callToAction) + #ctor(android.os.Bundle extras) + #ctor(boolean hasVideoContent) + #ctor(java.lang.String headline) + #ctor(com.google.android.gms.ads.formats.NativeAd.Image icon) + #ctor(java.util.List images) + #ctor(android.view.View mediaView) + #ctor(boolean overrideClickHandling) + #ctor(boolean overrideImpressionRecording) + #ctor(java.lang.String price) + #ctor(java.lang.Double starRating) + #ctor(java.lang.String store) + #ctor(android.view.View containerView, java.util.Map nonclickableAssetViews) + #ctor(android.view.View view) +package com.google.android.gms.ads.reward.mediation +;--------------------------------------- + interface InitializableMediationRewardedVideoAdAdapter + initialize(android.content.Context context, com.google.android.gms.ads.reward.mediation.MediationRewardedVideoAdListener listener, java.util.List serverParameters) + interface MediationRewardedVideoAdAdapter + initialize(android.content.Context context, com.google.android.gms.ads.mediation.MediationAdRequest mediationAdRequest, java.lang.String unused, com.google.android.gms.ads.reward.mediation.MediationRewardedVideoAdListener listener, android.os.Bundle serverParameters, android.os.Bundle networkExtras) + loadAd(com.google.android.gms.ads.mediation.MediationAdRequest mediationAdRequest, android.os.Bundle serverParameters, android.os.Bundle networkExtras) + interface MediationRewardedVideoAdListener + onAdClicked(com.google.android.gms.ads.reward.mediation.MediationRewardedVideoAdAdapter adapter) + onAdClosed(com.google.android.gms.ads.reward.mediation.MediationRewardedVideoAdAdapter adapter) + onAdFailedToLoad(com.google.android.gms.ads.reward.mediation.MediationRewardedVideoAdAdapter adapter, int errorCode) + onAdLeftApplication(com.google.android.gms.ads.reward.mediation.MediationRewardedVideoAdAdapter adapter) + onAdLoaded(com.google.android.gms.ads.reward.mediation.MediationRewardedVideoAdAdapter adapter) + onAdOpened(com.google.android.gms.ads.reward.mediation.MediationRewardedVideoAdAdapter adapter) + onInitializationFailed(com.google.android.gms.ads.reward.mediation.MediationRewardedVideoAdAdapter adapter, int errorCode) + onInitializationSucceeded(com.google.android.gms.ads.reward.mediation.MediationRewardedVideoAdAdapter adapter) + onRewarded(com.google.android.gms.ads.reward.mediation.MediationRewardedVideoAdAdapter adapter, com.google.android.gms.ads.reward.RewardItem rewardItem) + onVideoCompleted(com.google.android.gms.ads.reward.mediation.MediationRewardedVideoAdAdapter adapter) + onVideoStarted(com.google.android.gms.ads.reward.mediation.MediationRewardedVideoAdAdapter adapter) +package com.google.android.gms.ads.reward +;--------------------------------------- + interface RewardedVideoAd + destroy(android.content.Context context) + loadAd(java.lang.String adUnitId, com.google.android.gms.ads.doubleclick.PublisherAdRequest adRequest) + loadAd(java.lang.String adUnitId, com.google.android.gms.ads.AdRequest adRequest) + pause(android.content.Context context) + resume(android.content.Context context) + setAdMetadataListener(com.google.android.gms.ads.reward.AdMetadataListener listener) + setCustomData(java.lang.String customData) + setImmersiveMode(boolean immersiveModeEnabled) + setRewardedVideoAdListener(com.google.android.gms.ads.reward.RewardedVideoAdListener listener) + setUserId(java.lang.String userId) + interface RewardedVideoAdListener + onRewarded(com.google.android.gms.ads.reward.RewardItem reward) + onRewardedVideoAdFailedToLoad(int errorCode) +package com.google.android.gms.ads.search +;--------------------------------------- + class DynamicHeightSearchAdRequest + getCustomEventExtrasBundle(java.lang.Class adapterClass) + getNetworkExtras(java.lang.Class networkExtrasClass) + getNetworkExtrasBundle(java.lang.Class adapterClass) + isTestDevice(android.content.Context context) + class DynamicHeightSearchAdRequest.Builder + #ctor(java.lang.Class adapterClass, android.os.Bundle customEventExtras) + #ctor(com.google.android.gms.ads.mediation.NetworkExtras networkExtras) + #ctor(java.lang.Class adapterClass, android.os.Bundle networkExtras) + #ctor(java.lang.String adBorderSelectors) + #ctor(boolean adTest) + #ctor(int adjustableLineHeight) + #ctor(java.lang.String key, java.lang.String value) + #ctor(int attributionSpacingBelow) + #ctor(java.lang.String borderSelections) + #ctor(java.lang.String channel) + #ctor(java.lang.String colorAdBorder) + #ctor(java.lang.String colorAdSeparator) + #ctor(java.lang.String colorAnnotation) + #ctor(java.lang.String colorAttribution) + #ctor(java.lang.String colorBackground) + #ctor(java.lang.String colorBorder) + #ctor(java.lang.String colorDomainLink) + #ctor(java.lang.String colorText) + #ctor(java.lang.String colorTitleLink) + #ctor(int width) + #ctor(boolean detailedAttribution) + #ctor(java.lang.String fontFamily) + #ctor(java.lang.String fontFamilyAttribution) + #ctor(int fontSizeAnnotation) + #ctor(int fontSizeAttribution) + #ctor(int fontSizeDescription) + #ctor(int fontSizeDomainLink) + #ctor(int fontSizeTitle) + #ctor(java.lang.String hostLanguage) + #ctor(boolean isClickToCallEnabled) + #ctor(boolean isLocationEnabled) + #ctor(boolean isPlusOnesEnabled) + #ctor(boolean isSellerRatingsEnabled) + #ctor(boolean isSiteLinksEnabled) + #ctor(boolean isTitleBold) + #ctor(boolean isTitleUnderlined) + #ctor(java.lang.String locationColor) + #ctor(int locationFontSize) + #ctor(boolean longerHeadlines) + #ctor(int numberOfAds) + #ctor(int adPage) + #ctor(java.lang.String query) + #ctor(int verticalSpacing) + class SearchAdRequest + getCustomEventExtrasBundle(java.lang.Class adapterClass) + getNetworkExtras(java.lang.Class networkExtrasClass) + getNetworkExtrasBundle(java.lang.Class adapterClass) + isTestDevice(android.content.Context context) + class SearchAdRequest.Builder + #ctor(java.lang.Class adapterClass, android.os.Bundle customEventExtras) + #ctor(com.google.android.gms.ads.mediation.NetworkExtras networkExtras) + #ctor(java.lang.Class adapterClass, android.os.Bundle networkExtras) + #ctor(java.lang.String deviceId) + #ctor(int anchorTextColor) + #ctor(int backgroundColor) + #ctor(int top, int bottom) + #ctor(int borderColor) + #ctor(int borderThickness) + #ctor(int borderType) + #ctor(int callButtonColor) + #ctor(java.lang.String channelIds) + #ctor(int descriptionTextColor) + #ctor(java.lang.String fontFace) + #ctor(int headerTextColor) + #ctor(int headerTextSize) + #ctor(android.location.Location location) + #ctor(java.lang.String query) + #ctor(java.lang.String requestAgent) + #ctor(boolean tagForChildDirectedTreatment) + class SearchAdView + #ctor(android.content.Context context) + #ctor(android.content.Context context, android.util.AttributeSet attrs) + #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyle) + #ctor(com.google.android.gms.ads.search.DynamicHeightSearchAdRequest dynamicHeightSearchAdRequest) + #ctor(com.google.android.gms.ads.search.SearchAdRequest searchAdRequest) + #ctor(com.google.android.gms.ads.AdListener adListener) + #ctor(com.google.android.gms.ads.AdSize adSize) + #ctor(java.lang.String adUnitId) + #ctor(boolean changed, int left, int top, int right, int bottom) + #ctor(int widthMeasureSpec, int heightMeasureSpec) +package com.google.android.gms.analytics +;--------------------------------------- + class AnalyticsJobService + callServiceStopSelfResult(int startId) + onStartJob(android.app.job.JobParameters params) + onStopJob(android.app.job.JobParameters params) + class AnalyticsReceiver + #ctor(android.content.Context context, android.content.Intent intent) + class AnalyticsService + callServiceStopSelfResult(int startId) + onBind(android.content.Intent intent) + class CampaignTrackingReceiver + #ctor(android.content.Context context, android.content.Intent intent) + class CampaignTrackingService + #ctor(android.content.Intent intent) + interface ExceptionParser + getDescription(java.lang.String threadName, java.lang.Throwable t) + class ExceptionReporter + #ctor(com.google.android.gms.analytics.Tracker tracker, java.lang.Thread.UncaughtExceptionHandler originalHandler, android.content.Context context) + #ctor(com.google.android.gms.analytics.ExceptionParser exceptionParser) + #ctor(java.lang.Thread t, java.lang.Throwable e) + class GoogleAnalytics + enableAutoActivityReports(android.app.Application application) + getInstance(android.content.Context context) + newTracker(java.lang.String trackingId) + newTracker(int configResId) + reportActivityStart(android.app.Activity activity) + reportActivityStop(android.app.Activity activity) + setAppOptOut(boolean optOut) + setDryRun(boolean dryRun) + setLocalDispatchPeriod(int dispatchPeriodInSeconds) + setLogger(com.google.android.gms.analytics.Logger logger) + class HitBuilders.EventBuilder + #ctor(java.lang.String category, java.lang.String action) + #ctor(java.lang.String action) + #ctor(java.lang.String category) + #ctor(java.lang.String label) + #ctor(long value) + class HitBuilders.ExceptionBuilder + #ctor(java.lang.String description) + #ctor(boolean fatal) + class HitBuilders.HitBuilder + #ctor(com.google.android.gms.analytics.ecommerce.Product product, java.lang.String impressionList) + #ctor(com.google.android.gms.analytics.ecommerce.Product product) + #ctor(com.google.android.gms.analytics.ecommerce.Promotion promotion) + #ctor(java.lang.String paramName, java.lang.String paramValue) + #ctor(java.util.Map additionalPackages) + #ctor(java.lang.String threadName, java.lang.Throwable t) + #ctor(android.content.Context context, java.util.Collection additionalPackages) + #ctor(java.lang.Throwable t) + #ctor(java.lang.Throwable t) + #ctor(java.lang.Throwable cause, java.lang.StackTraceElement element, java.lang.String threadName) + class Tracker + enableAdvertisingIdCollection(boolean enabled) + enableAutoActivityTracking(boolean enabled) + enableExceptionReporting(boolean enable) + get(java.lang.String key) + send(java.util.Map outLinks) + view(com.google.android.gms.common.api.GoogleApiClient apiClient, android.app.Activity activity, android.net.Uri appUri, java.lang.String title, android.net.Uri webUrl, java.util.List outLinks) + viewEnd(com.google.android.gms.common.api.GoogleApiClient apiClient, android.app.Activity activity, android.content.Intent viewIntent) + viewEnd(com.google.android.gms.common.api.GoogleApiClient apiClient, android.app.Activity activity, android.net.Uri appUri) + interface AppIndexApi.ActionResult + end(com.google.android.gms.common.api.GoogleApiClient apiClient) + class AppIndexApi.AppIndexingLink + #ctor(android.net.Uri appUri, android.net.Uri webUrl, android.view.View view) + #ctor(android.net.Uri appUri, android.view.View view) + class Thing.Builder + #ctor(java.lang.String key, com.google.android.gms.appindexing.Thing value) + #ctor(java.lang.String key, com.google.android.gms.appindexing.Thing[] values) + #ctor(java.lang.String key, java.lang.String value) + #ctor(java.lang.String key, java.lang.String[] values) + #ctor(java.lang.String key, boolean value) + #ctor(java.lang.String description) + #ctor(java.lang.String id) + #ctor(java.lang.String name) + #ctor(java.lang.String type) + #ctor(android.net.Uri url) +package com.google.android.gms.appinvite +;--------------------------------------- + interface AppInviteApi + convertInvitation(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String invitationId) + getInvitation(com.google.android.gms.common.api.GoogleApiClient client, android.app.Activity currentActivity, boolean launchDeepLink) + updateInvitationOnInstall(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String invitationId) + class AppInviteInvitation + getInvitationIds(int resultCode, android.content.Intent result) + class AppInviteInvitation.IntentBuilder + #ctor(java.lang.CharSequence title) + #ctor(android.accounts.Account account) + #ctor(java.util.Map events) + #ctor(android.os.Parcel dest, int flags) + class CookieUtil + getCookieUrl(java.lang.String domain, java.lang.Boolean isSecure) + getCookieValue(java.lang.String name, java.lang.String value, java.lang.String domain, java.lang.String path, java.lang.Boolean isHttpOnly, java.lang.Boolean isSecure, java.lang.Long maxAge) + class GoogleAuthException + #ctor(java.lang.String err) + #ctor(java.lang.String msg, java.lang.Throwable throwable) + #ctor(java.lang.Throwable throwable) + class GoogleAuthUtil + clearToken(android.content.Context context, java.lang.String token) + getAccountChangeEvents(android.content.Context context, int eventIndex, java.lang.String accountName) + getAccountId(android.content.Context ctx, java.lang.String accountName) + getToken(android.content.Context context, android.accounts.Account account, java.lang.String scope, android.os.Bundle extras) + getToken(android.content.Context context, android.accounts.Account account, java.lang.String scope) + getToken(android.content.Context context, java.lang.String accountName, java.lang.String scope, android.os.Bundle extras) + getToken(android.content.Context context, java.lang.String accountName, java.lang.String scope) + getTokenWithNotification(android.content.Context context, java.lang.String accountName, java.lang.String scope, android.os.Bundle extras, java.lang.String authority, android.os.Bundle syncBundle) + getTokenWithNotification(android.content.Context context, android.accounts.Account account, java.lang.String scope, android.os.Bundle extras) + getTokenWithNotification(android.content.Context context, java.lang.String accountName, java.lang.String scope, android.os.Bundle extras, android.content.Intent callback) + getTokenWithNotification(android.content.Context context, android.accounts.Account account, java.lang.String scope, android.os.Bundle extras, java.lang.String authority, android.os.Bundle syncBundle) + getTokenWithNotification(android.content.Context context, java.lang.String accountName, java.lang.String scope, android.os.Bundle extras) + getTokenWithNotification(android.content.Context context, android.accounts.Account account, java.lang.String scope, android.os.Bundle extras, android.content.Intent callback) + invalidateToken(android.content.Context context, java.lang.String token) + removeAccount(android.content.Context context, android.accounts.Account account) + requestGoogleAccountsAccess(android.content.Context context) + class UserRecoverableAuthException + #ctor(java.lang.String msg, android.content.Intent intent) + class UserRecoverableNotifiedException + #ctor(java.lang.String err) +package com.google.android.gms.auth.api.accounttransfer +;--------------------------------------- + class AccountTransfer + getAccountTransferClient(android.content.Context context) + getAccountTransferClient(android.app.Activity activity) + class AccountTransferClient + getDeviceMetaData(java.lang.String accountType) + notifyCompletion(java.lang.String accountType, int completionStatus) + retrieveData(java.lang.String accountType) + sendData(java.lang.String accountType, byte[] transferData) + showUserChallenge(java.lang.String accountType, android.app.PendingIntent pendingIntent) + class AccountTransferException + #ctor(com.google.android.gms.common.api.Status status) + class AccountTransferStatusCodes + getStatusCodeString(int statusCode) +package com.google.android.gms.auth.api.credentials +;--------------------------------------- + class Credential + equals(java.lang.Object other) + writeToParcel(android.os.Parcel out, int flags) + class Credential.Builder + #ctor(java.lang.String id) + #ctor(com.google.android.gms.auth.api.credentials.Credential credential) + #ctor(java.lang.String accountType) + #ctor(java.lang.String name) + #ctor(java.lang.String password) + #ctor(android.net.Uri profilePictureUri) + class CredentialPickerConfig + writeToParcel(android.os.Parcel out, int flags) + class CredentialPickerConfig.Builder + #ctor(boolean forNewAccount) + #ctor(int prompt) + #ctor(boolean showAddAccountButton) + #ctor(boolean showCancelButton) + class CredentialRequest + writeToParcel(android.os.Parcel out, int flags) + class CredentialRequest.Builder + #ctor(java.lang.String... accountTypes) + #ctor(com.google.android.gms.auth.api.credentials.CredentialPickerConfig config) + #ctor(com.google.android.gms.auth.api.credentials.CredentialPickerConfig config) + #ctor(java.lang.String idTokenNonce) + #ctor(boolean idTokenRequested) + #ctor(boolean passwordLoginSupported) + #ctor(java.lang.String serverClientId) + #ctor(boolean supportsPasswordLogin) + class Credentials + #ctor(android.content.Context context, com.google.android.gms.auth.api.credentials.CredentialsOptions options) + #ctor(android.app.Activity activity) + #ctor(android.content.Context context) + #ctor(android.app.Activity activity, com.google.android.gms.auth.api.credentials.CredentialsOptions options) + interface CredentialsApi + delete(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.auth.api.credentials.Credential credential) + disableAutoSignIn(com.google.android.gms.common.api.GoogleApiClient client) + getHintPickerIntent(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.auth.api.credentials.HintRequest request) + request(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.auth.api.credentials.CredentialRequest request) + save(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.auth.api.credentials.Credential credential) + class CredentialsClient + delete(com.google.android.gms.auth.api.credentials.Credential credential) + getHintPickerIntent(com.google.android.gms.auth.api.credentials.HintRequest request) + request(com.google.android.gms.auth.api.credentials.CredentialRequest request) + save(com.google.android.gms.auth.api.credentials.Credential credential) + class HintRequest + writeToParcel(android.os.Parcel out, int flags) + class HintRequest.Builder + #ctor(java.lang.String... accountTypes) + #ctor(boolean emailAddressIdentifierSupported) + #ctor(com.google.android.gms.auth.api.credentials.CredentialPickerConfig hintPickerConfig) + #ctor(java.lang.String idTokenNonce) + #ctor(boolean idTokenRequested) + #ctor(boolean phoneNumberIdentifierSupported) + #ctor(java.lang.String serverClientId) + class IdentityProviders + getIdentityProviderForAccount(android.accounts.Account account) + class IdToken + #ctor(java.lang.String accountType, java.lang.String idToken) + #ctor(java.lang.Object obj) + #ctor(android.os.Parcel out, int flags) +package com.google.android.gms.auth.api.phone +;--------------------------------------- + class SmsRetriever + getClient(android.app.Activity activity) + getClient(android.content.Context context) +package com.google.android.gms.auth.api.signin +;--------------------------------------- + class GoogleSignIn + getAccountForExtension(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInOptionsExtension extension) + getAccountForScopes(android.content.Context context, com.google.android.gms.common.api.Scope scope, com.google.android.gms.common.api.Scope... scopes) + getClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInOptions options) + getClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInOptions options) + getLastSignedInAccount(android.content.Context context) + getSignedInAccountFromIntent(android.content.Intent data) + hasPermissions(com.google.android.gms.auth.api.signin.GoogleSignInAccount account, com.google.android.gms.auth.api.signin.GoogleSignInOptionsExtension extension) + hasPermissions(com.google.android.gms.auth.api.signin.GoogleSignInAccount account, com.google.android.gms.common.api.Scope... scopes) + requestPermissions(android.app.Activity activity, int requestCode, com.google.android.gms.auth.api.signin.GoogleSignInAccount account, com.google.android.gms.common.api.Scope... scopes) + requestPermissions(android.app.Activity activity, int requestCode, com.google.android.gms.auth.api.signin.GoogleSignInAccount account, com.google.android.gms.auth.api.signin.GoogleSignInOptionsExtension extension) + requestPermissions(android.support.v4.app.Fragment fragment, int requestCode, com.google.android.gms.auth.api.signin.GoogleSignInAccount account, com.google.android.gms.auth.api.signin.GoogleSignInOptionsExtension extension) + requestPermissions(android.support.v4.app.Fragment fragment, int requestCode, com.google.android.gms.auth.api.signin.GoogleSignInAccount account, com.google.android.gms.common.api.Scope... scopes) + class GoogleSignInAccount + equals(java.lang.Object obj) + writeToParcel(android.os.Parcel out, int flags) + interface GoogleSignInApi + getSignInIntent(com.google.android.gms.common.api.GoogleApiClient client) + getSignInResultFromIntent(android.content.Intent data) + revokeAccess(com.google.android.gms.common.api.GoogleApiClient client) + signOut(com.google.android.gms.common.api.GoogleApiClient client) + silentSignIn(com.google.android.gms.common.api.GoogleApiClient client) + class GoogleSignInOptions + equals(java.lang.Object obj) + writeToParcel(android.os.Parcel out, int flags) + class GoogleSignInOptions.Builder + #ctor(com.google.android.gms.auth.api.signin.GoogleSignInOptions googleSignInOptions) + #ctor(com.google.android.gms.auth.api.signin.GoogleSignInOptionsExtension extension) + #ctor(java.lang.String serverClientId) + #ctor(com.google.android.gms.common.api.Scope scope, com.google.android.gms.common.api.Scope... scopes) + #ctor(java.lang.String serverClientId) + #ctor(java.lang.String serverClientId, boolean forceCodeForRefreshToken) + #ctor(java.lang.String accountName) + #ctor(java.lang.String hostedDomain) + class GoogleSignInStatusCodes + getStatusCodeString(int statusCode) + class RevocationBoundService + #ctor(android.content.Intent intent) +package com.google.android.gms.awareness +;--------------------------------------- + class Awareness + getFenceClient(android.app.Activity activity) + getFenceClient(android.content.Context context) + getSnapshotClient(android.app.Activity activity) + getSnapshotClient(android.content.Context context) + class AwarenessStatusCodes + getStatusCodeString(int statusCode) + interface FenceApi + queryFences(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.awareness.fence.FenceQueryRequest fenceQueryRequest) + updateFences(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.awareness.fence.FenceUpdateRequest fenceUpdateRequest) + class FenceClient + queryFences(com.google.android.gms.awareness.fence.FenceQueryRequest fenceQueryRequest) + updateFences(com.google.android.gms.awareness.fence.FenceUpdateRequest fenceUpdateRequest) + interface SnapshotApi + getBeaconState(com.google.android.gms.common.api.GoogleApiClient client, java.util.Collection beaconTypes) + getBeaconState(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.awareness.state.BeaconState.TypeFilter... beaconTypes) + getDetectedActivity(com.google.android.gms.common.api.GoogleApiClient client) + getHeadphoneState(com.google.android.gms.common.api.GoogleApiClient client) + getLocation(com.google.android.gms.common.api.GoogleApiClient client) + getPlaces(com.google.android.gms.common.api.GoogleApiClient client) + getTimeIntervals(com.google.android.gms.common.api.GoogleApiClient client) + getWeather(com.google.android.gms.common.api.GoogleApiClient client) + class SnapshotClient + getBeaconState(java.util.Collection beaconTypes) + getBeaconState(com.google.android.gms.awareness.state.BeaconState.TypeFilter... beaconTypes) +package com.google.android.gms.awareness.fence +;--------------------------------------- + class AwarenessFence + and(com.google.android.gms.awareness.fence.AwarenessFence... fences) + and(java.util.Collection fences) + not(com.google.android.gms.awareness.fence.AwarenessFence fence) + or(com.google.android.gms.awareness.fence.AwarenessFence... fences) + or(java.util.Collection fences) + class BeaconFence + found(java.util.Collection beaconTypes) + found(com.google.android.gms.awareness.state.BeaconState.TypeFilter... beaconTypes) + lost(com.google.android.gms.awareness.state.BeaconState.TypeFilter... beaconTypes) + lost(java.util.Collection beaconTypes) + near(com.google.android.gms.awareness.state.BeaconState.TypeFilter... beaconTypes) + near(java.util.Collection beaconTypes) + class DetectedActivityFence + during(int... activityTypes) + starting(int... activityTypes) + stopping(int... activityTypes) + class FenceQueryRequest + forFences(java.lang.String... fenceKeys) + forFences(java.util.Collection fenceKeys) + class FenceState + #ctor(android.content.Intent intent) + interface FenceStateMap + getFenceState(java.lang.String fenceKey) + class FenceUpdateRequest.Builder + #ctor(java.lang.String key, com.google.android.gms.awareness.fence.AwarenessFence fence, android.app.PendingIntent pendingIntent) + #ctor(java.lang.String key) + #ctor(android.app.PendingIntent pendingIntent) + class HeadphoneFence + during(int headphoneState) + class LocationFence + entering(double latitude, double longitude, double radius) + exiting(double latitude, double longitude, double radius) + in(double latitude, double longitude, double radius, long dwellTimeMillis) + class TimeFence + aroundTimeInstant(int timeInstant, long startOffsetMillis, long stopOffsetMillis) + inDailyInterval(java.util.TimeZone timeZone, long startTimeOfDayMillis, long stopTimeOfDayMillis) + inFridayInterval(java.util.TimeZone timeZone, long startTimeOfDayMillis, long stopTimeOfDayMillis) + inInterval(long startTimeMillis, long stopTimeMillis) + inIntervalOfDay(int dayOfWeek, java.util.TimeZone timeZone, long startTimeOfDayMillis, long stopTimeOfDayMillis) + inMondayInterval(java.util.TimeZone timeZone, long startTimeOfDayMillis, long stopTimeOfDayMillis) + inSaturdayInterval(java.util.TimeZone timeZone, long startTimeOfDayMillis, long stopTimeOfDayMillis) + inSundayInterval(java.util.TimeZone timeZone, long startTimeOfDayMillis, long stopTimeOfDayMillis) + inThursdayInterval(java.util.TimeZone timeZone, long startTimeOfDayMillis, long stopTimeOfDayMillis) + inTimeInterval(int timeInterval) + inTuesdayInterval(java.util.TimeZone timeZone, long startTimeOfDayMillis, long stopTimeOfDayMillis) + inWednesdayInterval(java.util.TimeZone timeZone, long startTimeOfDayMillis, long stopTimeOfDayMillis) +package com.google.android.gms.awareness.state +;--------------------------------------- + class BeaconState.TypeFilter + with(java.lang.String namespace, java.lang.String type) + with(java.lang.String namespace, java.lang.String type, byte[] content) + interface TimeIntervals + hasTimeInterval(int desiredTimeInterval) + interface Weather + getDewPoint(int temperatureUnit) + getFeelsLikeTemperature(int temperatureUnit) + getTemperature(int temperatureUnit) +package com.google.android.gms.cast +;--------------------------------------- + class AdBreakClipInfo + equals(java.lang.Object other) + writeToParcel(android.os.Parcel out, int flags) + class AdBreakClipInfo.Builder + #ctor(java.lang.String id) + #ctor(java.lang.String clickThroughUrl) + #ctor(java.lang.String contentId) + #ctor(java.lang.String contentUrl) + #ctor(java.lang.String customDataJsonString) + #ctor(long durationInMs) + #ctor(java.lang.String hlsSegmentFormat) + #ctor(java.lang.String imageUrl) + #ctor(java.lang.String mimeType) + #ctor(java.lang.String title) + #ctor(com.google.android.gms.cast.VastAdsRequest vastAdsRequest) + #ctor(long whenSkippableInMs) + class AdBreakInfo + equals(java.lang.Object other) + writeToParcel(android.os.Parcel out, int flags) + class AdBreakInfo.Builder + #ctor(long playbackPositionInMs) + #ctor(java.lang.String[] breakClipIds) + #ctor(long durationInMs) + #ctor(java.lang.String id) + #ctor(boolean isEmbedded) + #ctor(boolean isWatched) + class AdBreakStatus + equals(java.lang.Object other) + writeToParcel(android.os.Parcel out, int flags) + class ApplicationMetadata + areNamespacesSupported(java.util.List namespaces) + equals(java.lang.Object obj) + isNamespaceSupported(java.lang.String namespace) + writeToParcel(android.os.Parcel out, int flags) + interface Cast.CastApi + getActiveInputState(com.google.android.gms.common.api.GoogleApiClient client) + getApplicationMetadata(com.google.android.gms.common.api.GoogleApiClient client) + getApplicationStatus(com.google.android.gms.common.api.GoogleApiClient client) + getStandbyState(com.google.android.gms.common.api.GoogleApiClient client) + getVolume(com.google.android.gms.common.api.GoogleApiClient client) + isMute(com.google.android.gms.common.api.GoogleApiClient client) + joinApplication(com.google.android.gms.common.api.GoogleApiClient client) + joinApplication(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String applicationId) + joinApplication(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String applicationId, java.lang.String sessionId) + launchApplication(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String applicationId, boolean relaunchIfRunning) + launchApplication(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String applicationId) + launchApplication(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String applicationId, com.google.android.gms.cast.LaunchOptions launchOptions) + leaveApplication(com.google.android.gms.common.api.GoogleApiClient client) + removeMessageReceivedCallbacks(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String namespace) + requestStatus(com.google.android.gms.common.api.GoogleApiClient client) + sendMessage(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String namespace, java.lang.String message) + setMessageReceivedCallbacks(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String namespace, com.google.android.gms.cast.Cast.MessageReceivedCallback callbacks) + setMute(com.google.android.gms.common.api.GoogleApiClient client, boolean mute) + setVolume(com.google.android.gms.common.api.GoogleApiClient client, double volume) + stopApplication(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String sessionId) + stopApplication(com.google.android.gms.common.api.GoogleApiClient client) + class Cast.CastOptions + builder(com.google.android.gms.cast.CastDevice castDevice, com.google.android.gms.cast.Cast.Listener castListener) + class Cast.CastOptions.Builder + #ctor(com.google.android.gms.cast.CastDevice castDevice, com.google.android.gms.cast.Cast.Listener castListener) + #ctor(boolean enabled) + class Cast.Listener + #ctor(int activeInputState) + #ctor(int statusCode) + #ctor(com.google.android.gms.cast.ApplicationMetadata applicationMetadata) + #ctor(int standbyState) + interface Cast.MessageReceivedCallback + onMessageReceived(com.google.android.gms.cast.CastDevice castDevice, java.lang.String namespace, java.lang.String message) + class CastDevice + equals(java.lang.Object obj) + getFromBundle(android.os.Bundle extras) + getIcon(int preferredWidth, int preferredHeight) + hasCapabilities(int[] capabilities) + hasCapability(int capability) + isSameDevice(com.google.android.gms.cast.CastDevice castDevice) + putInBundle(android.os.Bundle bundle) + writeToParcel(android.os.Parcel out, int flags) + class CastMediaControlIntent + categoryForCast(java.util.Collection namespaces) + categoryForCast(java.lang.String applicationId, java.util.Collection namespaces) + categoryForCast(java.lang.String applicationId) + categoryForRemotePlayback(java.lang.String applicationId) + languageTagForLocale(java.util.Locale locale) + class CastPresentation + #ctor(android.content.Context serviceContext, android.view.Display display) + #ctor(android.content.Context serviceContext, android.view.Display display, int theme) + class CastRemoteDisplay + getClient(android.content.Context context) + isRemoteDisplaySdkSupported(android.content.Context context) + class CastRemoteDisplay.CastRemoteDisplayOptions.Builder + #ctor(com.google.android.gms.cast.CastDevice castDevice, com.google.android.gms.cast.CastRemoteDisplay.CastRemoteDisplaySessionCallbacks callbacks) + #ctor(int configPreset) + interface CastRemoteDisplay.CastRemoteDisplaySessionCallbacks + onRemoteDisplayEnded(com.google.android.gms.common.api.Status status) + interface CastRemoteDisplayApi + startRemoteDisplay(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String applicationId) + stopRemoteDisplay(com.google.android.gms.common.api.GoogleApiClient apiClient) + class CastRemoteDisplayClient + startRemoteDisplay(com.google.android.gms.cast.CastDevice castDevice, java.lang.String applicationId, int configPreset, android.app.PendingIntent sessionEndedPendingIntent) + class CastRemoteDisplayLocalService + #ctor(android.content.Intent intent) + #ctor(android.view.Display display) + #ctor(android.content.Intent intent, int flags, int startId) + #ctor(android.content.Context activityContext, java.lang.Class serviceClass, java.lang.String applicationId, com.google.android.gms.cast.CastDevice device, com.google.android.gms.cast.CastRemoteDisplayLocalService.NotificationSettings notificationSettings, com.google.android.gms.cast.CastRemoteDisplayLocalService.Callbacks callbacks) + #ctor(android.content.Context activityContext, java.lang.Class serviceClass, java.lang.String applicationId, com.google.android.gms.cast.CastDevice device, com.google.android.gms.cast.CastRemoteDisplayLocalService.Options options, com.google.android.gms.cast.CastRemoteDisplayLocalService.NotificationSettings notificationSettings, com.google.android.gms.cast.CastRemoteDisplayLocalService.Callbacks callbacks) + #ctor(com.google.android.gms.cast.CastRemoteDisplayLocalService.NotificationSettings notificationSettings) + interface CastRemoteDisplayLocalService.Callbacks + onRemoteDisplaySessionEnded(com.google.android.gms.cast.CastRemoteDisplayLocalService service) + onRemoteDisplaySessionError(com.google.android.gms.common.api.Status status) + onRemoteDisplaySessionStarted(com.google.android.gms.cast.CastRemoteDisplayLocalService service) + onServiceCreated(com.google.android.gms.cast.CastRemoteDisplayLocalService service) + class CastRemoteDisplayLocalService.NotificationSettings.Builder + #ctor(android.app.Notification notification) + #ctor(android.app.PendingIntent notificationPendingIntent) + #ctor(java.lang.String notificationText) + #ctor(java.lang.String notificationTitle) + class CastRemoteDisplayLocalService.Options + #ctor(int configPreset) + class CastStatusCodes + getStatusCodeString(int statusCode) + class LaunchOptions + #ctor(java.lang.Object obj) + #ctor(java.lang.String language) + #ctor(boolean relaunchIfRunning) + #ctor(android.os.Parcel out, int flags) + class LaunchOptions.Builder + #ctor(java.util.Locale locale) + #ctor(boolean relaunchIfRunning) + class MediaInfo + equals(java.lang.Object other) + setTextTrackStyle(com.google.android.gms.cast.TextTrackStyle textTrackStyle) + writeToParcel(android.os.Parcel out, int flags) + class MediaInfo.Builder + #ctor(java.lang.String contentId) + #ctor(java.lang.String contentId, java.lang.String entity) + #ctor(java.util.List adBreakClips) + #ctor(java.util.List adBreaks) + #ctor(java.lang.String contentType) + #ctor(org.json.JSONObject customData) + #ctor(java.lang.String entity) + #ctor(java.util.List mediaTracks) + #ctor(com.google.android.gms.cast.MediaMetadata metadata) + #ctor(long duration) + #ctor(int streamType) + #ctor(com.google.android.gms.cast.TextTrackStyle textTrackStyle) + #ctor(com.google.android.gms.cast.VastAdsRequest vmapAdsRequest) + class MediaLoadOptions.Builder + #ctor(long[] activeTrackIds) + #ctor(boolean autoplay) + #ctor(java.lang.String credentials) + #ctor(java.lang.String credentialsType) + #ctor(org.json.JSONObject customData) + #ctor(long playPosition) + #ctor(double playbackRate) + class MediaMetadata + #ctor(int mediaType) + #ctor(com.google.android.gms.common.images.WebImage image) + #ctor(java.lang.String key) + #ctor(java.lang.Object other) + #ctor(java.lang.String key) + #ctor(java.lang.String key) + #ctor(java.lang.String key) + #ctor(java.lang.String key) + #ctor(java.lang.String key) + #ctor(java.lang.String key, java.util.Calendar value) + #ctor(java.lang.String key, double value) + #ctor(java.lang.String key, int value) + #ctor(java.lang.String key, java.lang.String value) + #ctor(android.os.Parcel out, int flags) + class MediaQueueItem + equals(java.lang.Object other) + writeToParcel(android.os.Parcel out, int flags) + class MediaQueueItem.Builder + #ctor(com.google.android.gms.cast.MediaInfo media) + #ctor(org.json.JSONObject json) + #ctor(com.google.android.gms.cast.MediaQueueItem item) + #ctor(long[] activeTrackIds) + #ctor(boolean autoplay) + #ctor(org.json.JSONObject customData) + #ctor(double playbackDuration) + #ctor(double preloadTime) + #ctor(double startTime) + class MediaStatus + equals(java.lang.Object other) + getIndexById(int itemId) + getItemById(int itemId) + getItemByIndex(int index) + getQueueItem(int index) + getQueueItemById(int itemId) + isMediaCommandSupported(long mediaCommand) + writeToParcel(android.os.Parcel out, int flags) + class MediaTrack + equals(java.lang.Object other) + setContentId(java.lang.String contentId) + setContentType(java.lang.String contentType) + writeToParcel(android.os.Parcel out, int flags) + class MediaTrack.Builder + #ctor(long trackId, int trackType) + #ctor(java.lang.String contentId) + #ctor(java.lang.String contentType) + #ctor(org.json.JSONObject customData) + #ctor(java.lang.String language) + #ctor(java.util.Locale locale) + #ctor(java.lang.String trackName) + #ctor(int subtype) + class RemoteMediaPlayer + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.cast.MediaInfo mediaInfo, boolean autoplay, long playPosition, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.cast.MediaInfo mediaInfo, boolean autoplay, long playPosition) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.cast.MediaInfo mediaInfo) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.cast.MediaInfo mediaInfo, boolean autoplay) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.cast.MediaInfo mediaInfo, boolean autoplay, long playPosition, long[] activeTrackIds, org.json.JSONObject customData) + #ctor(com.google.android.gms.cast.CastDevice castDevice, java.lang.String namespace, java.lang.String message) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.cast.MediaQueueItem item, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.cast.MediaQueueItem item, int insertBeforeItemId, long playPosition, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.cast.MediaQueueItem item, int insertBeforeItemId, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.cast.MediaQueueItem[] itemsToInsert, int insertBeforeItemId, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, int itemId, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, int itemId, long playPosition, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.cast.MediaQueueItem[] items, int startIndex, int repeatMode, long playPosition, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.cast.MediaQueueItem[] items, int startIndex, int repeatMode, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, int itemId, int newIndex, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, int itemId, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, int[] itemIdsToRemove, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, int[] itemIdsToReorder, int insertBeforeItemId, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, int repeatMode, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.cast.MediaQueueItem[] itemsToUpdate, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, long position) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, long position, int resumeState, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, long position, int resumeState) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, long[] trackIds) + #ctor(com.google.android.gms.cast.RemoteMediaPlayer.OnMetadataUpdatedListener listener) + #ctor(com.google.android.gms.cast.RemoteMediaPlayer.OnPreloadStatusUpdatedListener listener) + #ctor(com.google.android.gms.cast.RemoteMediaPlayer.OnQueueStatusUpdatedListener listener) + #ctor(com.google.android.gms.cast.RemoteMediaPlayer.OnStatusUpdatedListener listener) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, boolean muteState, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, boolean muteState) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, double volume, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, double volume) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.cast.TextTrackStyle trackStyle) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient, org.json.JSONObject customData) + #ctor(com.google.android.gms.common.api.GoogleApiClient apiClient) + class TextTrackStyle + #ctor(java.lang.Object other) + #ctor(android.content.Context context) + #ctor(int backgroundColor) + #ctor(org.json.JSONObject customData) + #ctor(int edgeColor) + #ctor(int edgeType) + #ctor(java.lang.String fontFamily) + #ctor(int fontGenericFamily) + #ctor(float fontScale) + #ctor(int fontStyle) + #ctor(int foregroundColor) + #ctor(int windowColor) + #ctor(int windowCornerRadius) + #ctor(int windowType) + #ctor(android.os.Parcel out, int flags) + class VastAdsRequest + equals(java.lang.Object other) + fromJson(org.json.JSONObject json) + writeToParcel(android.os.Parcel out, int flags) + class VastAdsRequest.Builder + #ctor(java.lang.String adTagUrl) + #ctor(java.lang.String adsResponse) + class VideoInfo + equals(java.lang.Object other) + writeToParcel(android.os.Parcel out, int flags) +package com.google.android.gms.cast.framework +;--------------------------------------- + class CastButtonFactory + setUpMediaRouteButton(android.content.Context context, android.view.Menu menu, int menuResourceId) + setUpMediaRouteButton(android.content.Context context, android.support.v7.app.MediaRouteButton button) + class CastContext + addAppVisibilityListener(com.google.android.gms.cast.framework.AppVisibilityListener listener) + addCastStateListener(com.google.android.gms.cast.framework.CastStateListener listener) + getSharedInstance(android.content.Context context) + onDispatchVolumeKeyEventBeforeJellyBean(android.view.KeyEvent event) + removeAppVisibilityListener(com.google.android.gms.cast.framework.AppVisibilityListener listener) + removeCastStateListener(com.google.android.gms.cast.framework.CastStateListener listener) + setReceiverApplicationId(java.lang.String applicationId) + class CastOptions.Builder + #ctor(com.google.android.gms.cast.framework.media.CastMediaOptions castMediaOptions) + #ctor(boolean enableReconnectionService) + #ctor(com.google.android.gms.cast.LaunchOptions launchOptions) + #ctor(java.lang.String applicationId) + #ctor(boolean resumeSavedSession) + #ctor(boolean stopApp) + #ctor(java.util.List supportedNamespaces) + #ctor(double volumeDelta) + class CastSession + addCastListener(com.google.android.gms.cast.Cast.Listener listener) + removeCastListener(com.google.android.gms.cast.Cast.Listener listener) + removeMessageReceivedCallbacks(java.lang.String namespace) + sendMessage(java.lang.String namespace, java.lang.String message) + setMessageReceivedCallbacks(java.lang.String namespace, com.google.android.gms.cast.Cast.MessageReceivedCallback callbacks) + setMute(boolean mute) + setVolume(double volume) + end(boolean stopCasting) + onResuming(android.os.Bundle routeInfoExtra) + onStarting(android.os.Bundle routeInfoExtra) + resume(android.os.Bundle routeInfoExtra) + start(android.os.Bundle routeInfoExtra) + class CastState + toString(int castState) + interface CastStateListener + onCastStateChanged(int newState) + class IntroductoryOverlay.Builder + #ctor(android.app.Activity activity, android.view.MenuItem menuItem) + #ctor(android.app.Activity activity, android.support.v7.app.MediaRouteButton button) + #ctor(java.lang.String text) + #ctor(int stringId) + #ctor(float radius) + #ctor(int radiusId) + #ctor(com.google.android.gms.cast.framework.IntroductoryOverlay.OnOverlayDismissedListener listener) + #ctor(int colorId) + #ctor(int stringId) + #ctor(java.lang.String text) + interface OptionsProvider + getAdditionalSessionProviders(android.content.Context appContext) + getCastOptions(android.content.Context appContext) + class PrecacheManager + precache(java.lang.String data) + class ReconnectionService + #ctor(android.content.Intent intent) + #ctor(android.content.Intent intent, int flags, int startId) + class Session + #ctor(android.content.Context applicationContext, java.lang.String category, java.lang.String sessionId) + #ctor(boolean stopCasting) + #ctor(int error) + #ctor(int error) + #ctor(int error) + #ctor(boolean wasSuspended) + #ctor(java.lang.String sessionId) + #ctor(int reason) + #ctor(android.os.Bundle routeInfoExtras) + #ctor(android.os.Bundle routeInfoExtras) + #ctor(android.os.Bundle routeInfoExtra) + #ctor(android.os.Bundle routeInfoExtra) + class SessionManager + addSessionManagerListener(com.google.android.gms.cast.framework.SessionManagerListener listener) + addSessionManagerListener(com.google.android.gms.cast.framework.SessionManagerListener listener, java.lang.Class sessionClass) + endCurrentSession(boolean stopCasting) + removeSessionManagerListener(com.google.android.gms.cast.framework.SessionManagerListener listener) + removeSessionManagerListener(com.google.android.gms.cast.framework.SessionManagerListener listener, java.lang.Class sessionClass) + startSession(android.content.Intent startSessionIntent) + interface SessionManagerListener + onSessionEnded(T session, int error) + onSessionEnding(T session) + onSessionResumeFailed(T session, int error) + onSessionResumed(T session, boolean wasSuspended) + onSessionResuming(T session, java.lang.String sessionId) + onSessionStartFailed(T session, int error) + onSessionStarted(T session, java.lang.String sessionId) + onSessionStarting(T session) + onSessionSuspended(T session, int reason) + class SessionProvider + #ctor(android.content.Context applicationContext, java.lang.String category) + #ctor(java.lang.String sessionId) +package com.google.android.gms.cast.framework.media +;--------------------------------------- + class CastMediaOptions + writeToParcel(android.os.Parcel out, int flags) + class CastMediaOptions.Builder + #ctor(java.lang.String className) + #ctor(com.google.android.gms.cast.framework.media.ImagePicker imagePicker) + #ctor(java.lang.String className) + #ctor(com.google.android.gms.cast.framework.media.NotificationOptions notificationOptions) + class ImageHints + writeToParcel(android.os.Parcel out, int flags) + class ImagePicker + #ctor(com.google.android.gms.cast.MediaMetadata mediaMetadata, int type) + #ctor(com.google.android.gms.cast.MediaMetadata mediaMetadata, com.google.android.gms.cast.framework.media.ImageHints hints) + class MediaIntentReceiver + #ctor(android.content.Context context, android.content.Intent intent) + #ctor(com.google.android.gms.cast.framework.Session currentSession, long forwardStepMs) + #ctor(com.google.android.gms.cast.framework.Session currentSession, android.content.Intent intent) + #ctor(com.google.android.gms.cast.framework.Session currentSession, long rewindStepMs) + #ctor(com.google.android.gms.cast.framework.Session currentSession) + #ctor(com.google.android.gms.cast.framework.Session currentSession) + #ctor(com.google.android.gms.cast.framework.Session currentSession) + #ctor(java.lang.String action, android.content.Intent intent) + #ctor(android.content.Context context, java.lang.String action, android.content.Intent intent) + class MediaNotificationService + #ctor(android.content.Intent intent) + #ctor(android.content.Intent intent, int flags, int startId) + class MediaQueue + fetchMoreItemsRelativeToIndex(int index, int nextCount, int prevCount) + getItemAtIndex(int index) + getItemAtIndex(int index, boolean fetchIfNeeded) + indexOfItemWithId(int itemId) + itemIdAtIndex(int index) + registerCallback(com.google.android.gms.cast.framework.media.MediaQueue.Callback callback) + setCacheCapacity(int capacity) + unregisterCallback(com.google.android.gms.cast.framework.media.MediaQueue.Callback callback) + class MediaQueue.Callback + #ctor(int insertIndex, int insertCount) + #ctor(int[] indexes) + #ctor(int[] indexes) + class MediaQueueArrayAdapter + #ctor(com.google.android.gms.cast.framework.media.MediaQueue mediaQueue, android.content.Context context, int resourceId) + #ctor(int position) + #ctor(int position) + #ctor(int position) + class MediaQueueRecyclerViewAdapter + #ctor(com.google.android.gms.cast.framework.media.MediaQueue mediaQueue) + #ctor(int position) + #ctor(int position) + class MediaUtils + getImageUri(com.google.android.gms.cast.MediaInfo info, int index) + getImageUrl(com.google.android.gms.cast.MediaInfo info, int index) + getTrackLanguage(com.google.android.gms.cast.MediaTrack track) + class NotificationAction + writeToParcel(android.os.Parcel dest, int flags) + class NotificationAction.Builder + #ctor(java.lang.String action) + #ctor(java.lang.String contentDescription) + #ctor(int iconResId) + class NotificationActionsProvider + #ctor(android.content.Context context) + class NotificationOptions + writeToParcel(android.os.Parcel out, int flags) + class NotificationOptions.Builder + #ctor(java.util.List actions, int[] compatActionIndices) + #ctor(int resId) + #ctor(int resId) + #ctor(int resId) + #ctor(int resId) + #ctor(com.google.android.gms.cast.framework.media.NotificationActionsProvider notificationActionsProvider) + #ctor(int resId) + #ctor(int resId) + #ctor(int resId) + #ctor(int resId) + #ctor(int resId) + #ctor(int resId) + #ctor(int resId) + #ctor(long notificationSkipStepMs) + #ctor(int resId) + #ctor(int resId) + #ctor(java.lang.String className) + class RemoteMediaClient + addListener(com.google.android.gms.cast.framework.media.RemoteMediaClient.Listener listener) + addProgressListener(com.google.android.gms.cast.framework.media.RemoteMediaClient.ProgressListener listener, long periodMs) + load(com.google.android.gms.cast.MediaInfo mediaInfo, boolean autoplay, long playPosition) + load(com.google.android.gms.cast.MediaInfo mediaInfo, boolean autoplay, long playPosition, long[] activeTrackIds, org.json.JSONObject customData) + load(com.google.android.gms.cast.MediaInfo mediaInfo) + load(com.google.android.gms.cast.MediaInfo mediaInfo, com.google.android.gms.cast.MediaLoadOptions mediaLoadOptions) + load(com.google.android.gms.cast.MediaInfo mediaInfo, boolean autoplay, long playPosition, org.json.JSONObject customData) + load(com.google.android.gms.cast.MediaInfo mediaInfo, boolean autoplay) + onMessageReceived(com.google.android.gms.cast.CastDevice castDevice, java.lang.String namespace, java.lang.String message) + pause(org.json.JSONObject customData) + play(org.json.JSONObject customData) + queueAppendItem(com.google.android.gms.cast.MediaQueueItem item, org.json.JSONObject customData) + queueInsertAndPlayItem(com.google.android.gms.cast.MediaQueueItem item, int insertBeforeItemId, long playPosition, org.json.JSONObject customData) + queueInsertAndPlayItem(com.google.android.gms.cast.MediaQueueItem item, int insertBeforeItemId, org.json.JSONObject customData) + queueInsertItems(com.google.android.gms.cast.MediaQueueItem[] itemsToInsert, int insertBeforeItemId, org.json.JSONObject customData) + queueJumpToItem(int itemId, org.json.JSONObject customData) + queueJumpToItem(int itemId, long playPosition, org.json.JSONObject customData) + queueLoad(com.google.android.gms.cast.MediaQueueItem[] items, int startIndex, int repeatMode, long playPosition, org.json.JSONObject customData) + queueLoad(com.google.android.gms.cast.MediaQueueItem[] items, int startIndex, int repeatMode, org.json.JSONObject customData) + queueMoveItemToNewIndex(int itemId, int newIndex, org.json.JSONObject customData) + queueNext(org.json.JSONObject customData) + queuePrev(org.json.JSONObject customData) + queueRemoveItem(int itemId, org.json.JSONObject customData) + queueRemoveItems(int[] itemIdsToRemove, org.json.JSONObject customData) + queueReorderItems(int[] itemIdsToReorder, int insertBeforeItemId, org.json.JSONObject customData) + queueSetRepeatMode(int repeatMode, org.json.JSONObject customData) + queueUpdateItems(com.google.android.gms.cast.MediaQueueItem[] itemsToUpdate, org.json.JSONObject customData) + registerCallback(com.google.android.gms.cast.framework.media.RemoteMediaClient.Callback callback) + removeListener(com.google.android.gms.cast.framework.media.RemoteMediaClient.Listener listener) + removeProgressListener(com.google.android.gms.cast.framework.media.RemoteMediaClient.ProgressListener listener) + seek(long position) + seek(long position, int resumeState, org.json.JSONObject customData) + seek(long position, int resumeState) + setActiveMediaTracks(long[] trackIds) + setParseAdsInfoCallback(com.google.android.gms.cast.framework.media.RemoteMediaClient.ParseAdsInfoCallback callback) + setPlaybackRate(double playbackRate, org.json.JSONObject customData) + setPlaybackRate(double playbackRate) + setStreamMute(boolean muted) + setStreamMute(boolean muted, org.json.JSONObject customData) + setStreamVolume(double volume, org.json.JSONObject customData) + setStreamVolume(double volume) + setTextTrackStyle(com.google.android.gms.cast.TextTrackStyle trackStyle) + stop(org.json.JSONObject customData) + unregisterCallback(com.google.android.gms.cast.framework.media.RemoteMediaClient.Callback callback) + interface RemoteMediaClient.ParseAdsInfoCallback + parseAdBreaksFromMediaStatus(com.google.android.gms.cast.MediaStatus mediaStatus) + parseIsPlayingAdFromMediaStatus(com.google.android.gms.cast.MediaStatus mediaStatus) + interface RemoteMediaClient.ProgressListener + onProgressUpdated(long progressMs, long durationMs) + class TracksChooserDialogFragment + #ctor(com.google.android.gms.cast.MediaInfo mediaInfo, long[] activeTrackIds) + #ctor(android.os.Bundle savedInstanceState) + #ctor(android.os.Bundle savedInstanceState) +package com.google.android.gms.cast.framework.media.uicontroller +;--------------------------------------- + class UIController + #ctor(com.google.android.gms.cast.framework.CastSession castSession) + class UIMediaController + #ctor(android.app.Activity activity) + #ctor(android.widget.ImageView view, int imageType, int placeHolderDrawableResId) + #ctor(android.widget.ImageView view, int imageType, android.view.View placeHolderView) + #ctor(android.widget.ImageView view, com.google.android.gms.cast.framework.media.ImageHints imageHints, int placeHolderDrawableResId) + #ctor(android.widget.ImageView view, com.google.android.gms.cast.framework.media.ImageHints imageHints, android.view.View placeHolderView) + #ctor(android.widget.ImageView view, int imageType, int placeHolderDrawableResId) + #ctor(android.widget.ImageView view, com.google.android.gms.cast.framework.media.ImageHints imageHints, int placeHolderDrawableResId) + #ctor(android.widget.ImageView view) + #ctor(android.widget.ImageView view, android.graphics.drawable.Drawable playDrawable, android.graphics.drawable.Drawable pauseDrawable, android.graphics.drawable.Drawable stopDrawable, android.view.View loadingIndicator, boolean hideViewWhenLoading) + #ctor(android.widget.ProgressBar view) + #ctor(android.widget.ProgressBar view, long progressUpdateStepMs) + #ctor(android.widget.SeekBar view, long progressUpdateStepMs) + #ctor(android.widget.SeekBar view) + #ctor(android.widget.TextView view, java.lang.String key) + #ctor(android.widget.TextView view, java.util.List keysInPreference) + #ctor(android.widget.TextView view, java.util.List keysInPreference) + #ctor(android.widget.TextView view, java.lang.String key) + #ctor(android.widget.TextView textView) + #ctor(android.widget.TextView view, android.view.View liveStreamIndicator) + #ctor(android.widget.TextView view) + #ctor(android.widget.TextView view, boolean updateWhileScrubbing) + #ctor(android.widget.TextView view, boolean updateWhileScrubbing, long progressUpdateStepMs) + #ctor(android.view.View view) + #ctor(android.view.View view, long skipStepMs) + #ctor(android.view.View view) + #ctor(android.view.View view) + #ctor(android.view.View view, long skipStepMs) + #ctor(android.view.View view, int invisibleState) + #ctor(android.view.View view, int invisibleState) + #ctor(android.view.View view, com.google.android.gms.cast.framework.media.uicontroller.UIController uiController) + #ctor(android.view.View view, int invisibleState) + #ctor(android.view.View view, int invisibleState) + #ctor(com.google.android.gms.cast.framework.CastSession session, int error) + #ctor(com.google.android.gms.cast.framework.CastSession session) + #ctor(com.google.android.gms.cast.framework.CastSession session, int error) + #ctor(com.google.android.gms.cast.framework.CastSession session, boolean wasSuspended) + #ctor(com.google.android.gms.cast.framework.CastSession session, java.lang.String sessionId) + #ctor(com.google.android.gms.cast.framework.CastSession session, int error) + #ctor(com.google.android.gms.cast.framework.CastSession session, java.lang.String sessionId) + #ctor(com.google.android.gms.cast.framework.CastSession session) + #ctor(com.google.android.gms.cast.framework.CastSession session, int reason) + #ctor(com.google.android.gms.cast.framework.media.RemoteMediaClient.Listener listener) + #ctor(android.view.View view) + #ctor(android.view.View view, long skipStepMs) + #ctor(android.view.View view) + #ctor(android.widget.ImageView view) + #ctor(android.widget.ImageView view) + #ctor(android.view.View view, long skipStepMs) + #ctor(android.widget.SeekBar seekBar, int progress, boolean fromUser) + #ctor(android.widget.SeekBar seekBar) + #ctor(android.widget.SeekBar seekBar) + #ctor(android.view.View view) + #ctor(android.view.View view) +package com.google.android.gms.cast.framework.media.widget +;--------------------------------------- + interface ControlButtonsContainer + getButtonImageViewAt(int slotIndex) + getButtonTypeAt(int slotIndex) + class ExpandedControllerActivity + #ctor(int slotIndex) + #ctor(int slotIndex) + #ctor(android.view.MenuItem item) + #ctor(boolean hasFocus) + #ctor(android.os.Bundle savedInstanceState) + class MiniControllerFragment + #ctor(int slotIndex) + #ctor(int slotIndex) + #ctor(android.view.LayoutInflater inflater, android.view.ViewGroup container, android.os.Bundle savedInstanceState) + #ctor(android.content.Context context, android.util.AttributeSet attrs, android.os.Bundle savedInstanceState) +package com.google.android.gms.cast.games +;--------------------------------------- + class GameManagerClient + getInstanceFor(com.google.android.gms.common.api.GoogleApiClient googleApiClient, java.lang.String castSessionId) + sendGameMessage(java.lang.String playerId, org.json.JSONObject extraMessageData) + sendGameMessage(org.json.JSONObject extraMessageData) + sendGameRequest(org.json.JSONObject extraMessageData) + sendGameRequest(java.lang.String playerId, org.json.JSONObject extraMessageData) + sendPlayerAvailableRequest(java.lang.String playerId, org.json.JSONObject extraMessageData) + sendPlayerAvailableRequest(org.json.JSONObject extraMessageData) + sendPlayerIdleRequest(org.json.JSONObject extraMessageData) + sendPlayerIdleRequest(java.lang.String playerId, org.json.JSONObject extraMessageData) + sendPlayerPlayingRequest(org.json.JSONObject extraMessageData) + sendPlayerPlayingRequest(java.lang.String playerId, org.json.JSONObject extraMessageData) + sendPlayerQuitRequest(org.json.JSONObject extraMessageData) + sendPlayerQuitRequest(java.lang.String playerId, org.json.JSONObject extraMessageData) + sendPlayerReadyRequest(java.lang.String playerId, org.json.JSONObject extraMessageData) + sendPlayerReadyRequest(org.json.JSONObject extraMessageData) + setListener(com.google.android.gms.cast.games.GameManagerClient.Listener listener) + setSessionLabel(java.lang.String sessionLabel) + interface GameManagerClient.Listener + onGameMessageReceived(java.lang.String playerId, org.json.JSONObject gameMessage) + onStateChanged(com.google.android.gms.cast.games.GameManagerState newState, com.google.android.gms.cast.games.GameManagerState oldState) + interface GameManagerState + getListOfChangedPlayers(com.google.android.gms.cast.games.GameManagerState other) + getPlayer(java.lang.String playerId) + getPlayersInState(int playerState) + hasGameDataChanged(com.google.android.gms.cast.games.GameManagerState other) + hasGameStatusTextChanged(com.google.android.gms.cast.games.GameManagerState other) + hasGameplayStateChanged(com.google.android.gms.cast.games.GameManagerState other) + hasLobbyStateChanged(com.google.android.gms.cast.games.GameManagerState other) + hasPlayerChanged(java.lang.String playerId, com.google.android.gms.cast.games.GameManagerState other) + hasPlayerDataChanged(java.lang.String playerId, com.google.android.gms.cast.games.GameManagerState other) + hasPlayerStateChanged(java.lang.String playerId, com.google.android.gms.cast.games.GameManagerState other) +package com.google.android.gms.common +;--------------------------------------- + class AccountPicker + newChooseAccountIntent(android.accounts.Account selectedAccount, java.util.ArrayList allowableAccounts, java.lang.String[] allowableAccountTypes, boolean alwaysPromptForAccount, java.lang.String descriptionOverrideText, java.lang.String addAccountAuthTokenType, java.lang.String[] addAccountRequiredFeatures, android.os.Bundle addAccountOptions) + class ConnectionResult + #ctor(int statusCode) + #ctor(int statusCode, android.app.PendingIntent pendingIntent) + #ctor(int statusCode, android.app.PendingIntent pendingIntent, java.lang.String message) + #ctor(java.lang.Object o) + #ctor(android.app.Activity activity, int requestCode) + #ctor(android.os.Parcel out, int flags) + class ErrorDialogFragment + #ctor(android.app.Dialog dialog, android.content.DialogInterface.OnCancelListener cancelListener) + #ctor(android.app.Dialog dialog) + #ctor(android.content.DialogInterface dialog) + #ctor(android.os.Bundle savedInstanceState) + #ctor(android.app.FragmentManager manager, java.lang.String tag) + class GoogleApiAvailability + checkApiAvailability(com.google.android.gms.common.api.GoogleApi api, com.google.android.gms.common.api.GoogleApi... apis) + getErrorDialog(android.app.Activity activity, int errorCode, int requestCode) + getErrorDialog(android.app.Activity activity, int errorCode, int requestCode, android.content.DialogInterface.OnCancelListener cancelListener) + getErrorResolutionPendingIntent(android.content.Context context, com.google.android.gms.common.ConnectionResult result) + getErrorResolutionPendingIntent(android.content.Context context, int errorCode, int requestCode) + getErrorString(int errorCode) + isGooglePlayServicesAvailable(android.content.Context context) + isGooglePlayServicesAvailable(android.content.Context context, int minApkVersion) + isUserResolvableError(int errorCode) + makeGooglePlayServicesAvailable(android.app.Activity activity) + setDefaultNotificationChannelId(android.content.Context context, java.lang.String notificationChannelId) + showErrorDialogFragment(android.app.Activity activity, int errorCode, int requestCode) + showErrorDialogFragment(android.app.Activity activity, int errorCode, int requestCode, android.content.DialogInterface.OnCancelListener cancelListener) + showErrorNotification(android.content.Context context, int errorCode) + showErrorNotification(android.content.Context context, com.google.android.gms.common.ConnectionResult result) + class GooglePlayServicesNotAvailableException + #ctor(int errorCode) + class GooglePlayServicesUtil + getErrorDialog(int errorCode, android.app.Activity activity, int requestCode) + getErrorDialog(int errorCode, android.app.Activity activity, int requestCode, android.content.DialogInterface.OnCancelListener cancelListener) + getErrorPendingIntent(int errorCode, android.content.Context context, int requestCode) + getErrorString(int errorCode) + getRemoteContext(android.content.Context context) + getRemoteResource(android.content.Context context) + isGooglePlayServicesAvailable(android.content.Context context) + isUserRecoverableError(int errorCode) + showErrorDialogFragment(int errorCode, android.app.Activity activity, int requestCode, android.content.DialogInterface.OnCancelListener cancelListener) + showErrorDialogFragment(int errorCode, android.app.Activity activity, android.support.v4.app.Fragment fragment, int requestCode, android.content.DialogInterface.OnCancelListener cancelListener) + showErrorDialogFragment(int errorCode, android.app.Activity activity, int requestCode) + showErrorNotification(int errorCode, android.content.Context context) + class SignInButton + #ctor(android.content.Context context) + #ctor(android.content.Context context, android.util.AttributeSet attrs) + #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyle) + #ctor(android.view.View view) + #ctor(int colorScheme) + #ctor(boolean enabled) + #ctor(android.view.View.OnClickListener listener) + #ctor(com.google.android.gms.common.api.Scope[] scopes) + #ctor(int buttonSize) + #ctor(int buttonSize, int colorScheme, com.google.android.gms.common.api.Scope[] scopes) + #ctor(int buttonSize, int colorScheme) + class SupportErrorDialogFragment + #ctor(android.app.Dialog dialog, android.content.DialogInterface.OnCancelListener cancelListener) + #ctor(android.app.Dialog dialog) + #ctor(android.content.DialogInterface dialog) + #ctor(android.os.Bundle savedInstanceState) + #ctor(android.support.v4.app.FragmentManager manager, java.lang.String tag) + class UserRecoverableException + #ctor(java.lang.String msg, android.content.Intent intent) +package com.google.android.gms.common.api +;--------------------------------------- + class ApiException + #ctor(com.google.android.gms.common.api.Status status) + class AvailabilityException + getConnectionResult(com.google.android.gms.common.api.GoogleApi api) + class Batch + await(long time, java.util.concurrent.TimeUnit units) + createFailedResult(com.google.android.gms.common.api.Status status) + setResultCallback(com.google.android.gms.common.api.ResultCallback callback) + setResultCallback(com.google.android.gms.common.api.ResultCallback callback, long time, java.util.concurrent.TimeUnit units) + class Batch.Builder + #ctor(com.google.android.gms.common.api.GoogleApiClient googleApiClient) + #ctor(com.google.android.gms.common.api.PendingResult pendingResult) + class BatchResult + take(com.google.android.gms.common.api.BatchResultToken resultToken) + class BooleanResult + equals(java.lang.Object obj) + class CommonStatusCodes + getStatusCodeString(int statusCode) + class GoogleApiClient + #ctor(long timeout, java.util.concurrent.TimeUnit unit) + #ctor(int signInMode) + #ctor(java.lang.String prefix, java.io.FileDescriptor fd, java.io.PrintWriter writer, java.lang.String[] args) + #ctor(java.lang.String prefix, java.io.FileDescriptor fd, java.io.PrintWriter writer, java.lang.String[] args) + #ctor(com.google.android.gms.common.api.Api api) + #ctor(com.google.android.gms.common.api.Api api) + #ctor(com.google.android.gms.common.api.GoogleApiClient.ConnectionCallbacks listener) + #ctor(com.google.android.gms.common.api.GoogleApiClient.OnConnectionFailedListener listener) + #ctor(com.google.android.gms.common.api.GoogleApiClient.ConnectionCallbacks listener) + #ctor(com.google.android.gms.common.api.GoogleApiClient.OnConnectionFailedListener listener) + #ctor(android.support.v4.app.FragmentActivity lifecycleActivity) + #ctor(com.google.android.gms.common.api.GoogleApiClient.ConnectionCallbacks listener) + #ctor(com.google.android.gms.common.api.GoogleApiClient.OnConnectionFailedListener listener) + class GoogleApiClient.Builder + #ctor(android.content.Context context) + #ctor(android.content.Context context, com.google.android.gms.common.api.GoogleApiClient.ConnectionCallbacks connectedListener, com.google.android.gms.common.api.GoogleApiClient.OnConnectionFailedListener connectionFailedListener) + #ctor(com.google.android.gms.common.api.Api api, O options) + #ctor(com.google.android.gms.common.api.Api api) + #ctor(com.google.android.gms.common.api.Api api, O options, com.google.android.gms.common.api.Scope... scopes) + #ctor(com.google.android.gms.common.api.Api api, com.google.android.gms.common.api.Scope... scopes) + #ctor(com.google.android.gms.common.api.GoogleApiClient.ConnectionCallbacks listener) + #ctor(com.google.android.gms.common.api.GoogleApiClient.OnConnectionFailedListener listener) + #ctor(com.google.android.gms.common.api.Scope scope) + #ctor(android.support.v4.app.FragmentActivity fragmentActivity, com.google.android.gms.common.api.GoogleApiClient.OnConnectionFailedListener unresolvedConnectionFailedListener) + #ctor(android.support.v4.app.FragmentActivity fragmentActivity, int clientId, com.google.android.gms.common.api.GoogleApiClient.OnConnectionFailedListener unresolvedConnectionFailedListener) + #ctor(java.lang.String accountName) + #ctor(int gravityForPopups) + #ctor(android.os.Handler handler) + #ctor(android.view.View viewForPopups) + interface GoogleApiClient.ConnectionCallbacks + onConnected(android.os.Bundle connectionHint) + onConnectionSuspended(int cause) + interface GoogleApiClient.OnConnectionFailedListener + onConnectionFailed(com.google.android.gms.common.ConnectionResult result) + class PendingResult + #ctor(long time, java.util.concurrent.TimeUnit units) + #ctor(com.google.android.gms.common.api.ResultCallback callback) + #ctor(com.google.android.gms.common.api.ResultCallback callback, long time, java.util.concurrent.TimeUnit units) + #ctor(com.google.android.gms.common.api.ResultTransform callbacks) + #ctor(com.google.android.gms.common.api.ResultTransform buffer) + hasData(com.google.android.gms.common.data.DataBuffer buffer) + hasNextPage(com.google.android.gms.common.data.DataBuffer buffer) + hasPrevPage(com.google.android.gms.common.data.DataBuffer buffer) + class FreezableUtils + #ctor(E[] array) + #ctor(java.util.ArrayList list) + #ctor(java.lang.Iterable iterable) +package com.google.android.gms.common.images +;--------------------------------------- + class ImageManager + create(android.content.Context context) + loadImage(android.widget.ImageView imageView, android.net.Uri uri, int defaultResId) + loadImage(com.google.android.gms.common.images.ImageManager.OnImageLoadedListener listener, android.net.Uri uri) + loadImage(android.widget.ImageView imageView, int resId) + loadImage(com.google.android.gms.common.images.ImageManager.OnImageLoadedListener listener, android.net.Uri uri, int defaultResId) + loadImage(android.widget.ImageView imageView, android.net.Uri uri) + interface ImageManager.OnImageLoadedListener + onImageLoaded(android.net.Uri uri, android.graphics.drawable.Drawable drawable, boolean isRequestedDrawable) + class Size + #ctor(int width, int height) + #ctor(java.lang.Object obj) + #ctor(java.lang.String string) + class WebImage + #ctor(android.net.Uri url, int width, int height) + #ctor(android.net.Uri url) + #ctor(java.lang.Object other) + #ctor(android.os.Parcel out, int flags) +package com.google.android.gms.drive +;--------------------------------------- + class CreateFileActivityBuilder + build(com.google.android.gms.common.api.GoogleApiClient apiClient) + setActivityStartFolder(com.google.android.gms.drive.DriveId folder) + setActivityTitle(java.lang.String title) + setInitialDriveContents(com.google.android.gms.drive.DriveContents driveContents) + setInitialMetadata(com.google.android.gms.drive.MetadataChangeSet metadataChangeSet) + class CreateFileActivityOptions.Builder + #ctor(com.google.android.gms.drive.DriveId folder) + #ctor(java.lang.String title) + #ctor(com.google.android.gms.drive.DriveContents driveContents) + #ctor(com.google.android.gms.drive.MetadataChangeSet metadataChangeSet) + class Drive + getDriveClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getDriveClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getDriveResourceClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getDriveResourceClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + interface DriveApi + fetchDriveId(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String resourceId) + getAppFolder(com.google.android.gms.common.api.GoogleApiClient apiClient) + getRootFolder(com.google.android.gms.common.api.GoogleApiClient apiClient) + newDriveContents(com.google.android.gms.common.api.GoogleApiClient apiClient) + query(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.drive.query.Query query) + requestSync(com.google.android.gms.common.api.GoogleApiClient apiClient) + class DriveClient + getDriveId(java.lang.String resourceId) + newCreateFileActivityIntentSender(com.google.android.gms.drive.CreateFileActivityOptions options) + newOpenFileActivityIntentSender(com.google.android.gms.drive.OpenFileActivityOptions options) + setUploadPreferences(com.google.android.gms.drive.TransferPreferences transferPreferences) + interface DriveContents + commit(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.drive.MetadataChangeSet changeSet, com.google.android.gms.drive.ExecutionOptions executionOptions) + commit(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.drive.MetadataChangeSet changeSet) + discard(com.google.android.gms.common.api.GoogleApiClient apiClient) + reopenForWrite(com.google.android.gms.common.api.GoogleApiClient apiClient) + interface DriveFile + open(com.google.android.gms.common.api.GoogleApiClient apiClient, int mode, com.google.android.gms.drive.DriveFile.DownloadProgressListener listener) + interface DriveFile.DownloadProgressListener + onProgress(long bytesDownloaded, long bytesExpected) + interface DriveFolder + createFile(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.drive.MetadataChangeSet changeSet, com.google.android.gms.drive.DriveContents driveContents) + createFile(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.drive.MetadataChangeSet changeSet, com.google.android.gms.drive.DriveContents driveContents, com.google.android.gms.drive.ExecutionOptions executionOptions) + createFolder(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.drive.MetadataChangeSet changeSet) + listChildren(com.google.android.gms.common.api.GoogleApiClient apiClient) + queryChildren(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.drive.query.Query query) + class DriveId + decodeFromString(java.lang.String s) + equals(java.lang.Object obj) + writeToParcel(android.os.Parcel out, int flags) + interface DrivePreferencesApi + getFileUploadPreferences(com.google.android.gms.common.api.GoogleApiClient apiClient) + setFileUploadPreferences(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.drive.FileUploadPreferences fileUploadPreferences) + interface DriveResource + addChangeListener(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.drive.events.ChangeListener listener) + addChangeSubscription(com.google.android.gms.common.api.GoogleApiClient apiClient) + delete(com.google.android.gms.common.api.GoogleApiClient apiClient) + getMetadata(com.google.android.gms.common.api.GoogleApiClient apiClient) + listParents(com.google.android.gms.common.api.GoogleApiClient apiClient) + removeChangeListener(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.drive.events.ChangeListener listener) + removeChangeSubscription(com.google.android.gms.common.api.GoogleApiClient apiClient) + setParents(com.google.android.gms.common.api.GoogleApiClient apiClient, java.util.Set parentIds) + trash(com.google.android.gms.common.api.GoogleApiClient apiClient) + untrash(com.google.android.gms.common.api.GoogleApiClient apiClient) + updateMetadata(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.drive.MetadataChangeSet changeSet) + class DriveResourceClient + addChangeListener(com.google.android.gms.drive.DriveResource resource, com.google.android.gms.drive.events.OnChangeListener listener) + addChangeSubscription(com.google.android.gms.drive.DriveResource resource) + cancelOpenFileCallback(com.google.android.gms.drive.events.ListenerToken token) + commitContents(com.google.android.gms.drive.DriveContents contents, com.google.android.gms.drive.MetadataChangeSet changeSet) + commitContents(com.google.android.gms.drive.DriveContents contents, com.google.android.gms.drive.MetadataChangeSet changeSet, com.google.android.gms.drive.ExecutionOptions executionOptions) + createFile(com.google.android.gms.drive.DriveFolder folder, com.google.android.gms.drive.MetadataChangeSet changeSet, com.google.android.gms.drive.DriveContents driveContents, com.google.android.gms.drive.ExecutionOptions executionOptions) + createFile(com.google.android.gms.drive.DriveFolder folder, com.google.android.gms.drive.MetadataChangeSet changeSet, com.google.android.gms.drive.DriveContents driveContents) + createFolder(com.google.android.gms.drive.DriveFolder folder, com.google.android.gms.drive.MetadataChangeSet changeSet) + delete(com.google.android.gms.drive.DriveResource resource) + discardContents(com.google.android.gms.drive.DriveContents contents) + getMetadata(com.google.android.gms.drive.DriveResource resource) + listChildren(com.google.android.gms.drive.DriveFolder folder) + listParents(com.google.android.gms.drive.DriveResource resource) + openFile(com.google.android.gms.drive.DriveFile file, int openMode) + openFile(com.google.android.gms.drive.DriveFile file, int openMode, com.google.android.gms.drive.events.OpenFileCallback callback) + query(com.google.android.gms.drive.query.Query query) + queryChildren(com.google.android.gms.drive.DriveFolder folder, com.google.android.gms.drive.query.Query query) + removeChangeListener(com.google.android.gms.drive.events.ListenerToken token) + removeChangeSubscription(com.google.android.gms.drive.DriveResource resource) + reopenContentsForWrite(com.google.android.gms.drive.DriveContents contents) + setParents(com.google.android.gms.drive.DriveResource resource, java.util.Set parentIds) + trash(com.google.android.gms.drive.DriveResource resource) + untrash(com.google.android.gms.drive.DriveResource resource) + updateMetadata(com.google.android.gms.drive.DriveResource resource, com.google.android.gms.drive.MetadataChangeSet changeSet) + class DriveStatusCodes + getStatusCodeString(int statusCode) + class ExecutionOptions + equals(java.lang.Object o) + class ExecutionOptions.Builder + #ctor(int strategy) + #ctor(boolean notify) + #ctor(java.lang.String trackingTag) + interface FileUploadPreferences + setBatteryUsagePreference(int batteryUsagePreference) + setNetworkTypePreference(int networkTypePreference) + setRoamingAllowed(boolean allowRoaming) + class MetadataBuffer + get(int row) + class MetadataChangeSet.Builder + #ctor(com.google.android.gms.drive.metadata.CustomPropertyKey key) + #ctor(com.google.android.gms.drive.metadata.CustomPropertyKey key, java.lang.String value) + #ctor(java.lang.String description) + #ctor(java.lang.String text) + #ctor(java.util.Date date) + #ctor(java.lang.String mimeType) + #ctor(boolean pinned) + #ctor(boolean starred) + #ctor(java.lang.String title) + #ctor(boolean viewed) + class OpenFileActivityBuilder + build(com.google.android.gms.common.api.GoogleApiClient apiClient) + setActivityStartFolder(com.google.android.gms.drive.DriveId folder) + setActivityTitle(java.lang.String title) + setMimeType(java.lang.String[] mimeTypes) + setSelectionFilter(com.google.android.gms.drive.query.Filter filter) + class OpenFileActivityOptions.Builder + #ctor(com.google.android.gms.drive.DriveId folder) + #ctor(java.lang.String title) + #ctor(java.util.List mimeTypes) + #ctor(com.google.android.gms.drive.query.Filter filter) + class TransferPreferencesBuilder + #ctor(com.google.android.gms.drive.TransferPreferences transferPreferences) + #ctor(int batteryUsagePreference) + #ctor(boolean isRoamingAllowed) + #ctor(int networkPreference) +package com.google.android.gms.drive.events +;--------------------------------------- + class ChangeEvent + writeToParcel(android.os.Parcel dest, int flags) + interface ChangeListener + onChange(com.google.android.gms.drive.events.ChangeEvent event) + class CompletionEvent + writeToParcel(android.os.Parcel dest, int flags) + interface CompletionListener + onCompletion(com.google.android.gms.drive.events.CompletionEvent event) + class DriveEventService + #ctor(java.lang.String name) + #ctor(android.content.Intent intent) + #ctor(com.google.android.gms.drive.events.ChangeEvent event) + #ctor(com.google.android.gms.drive.events.CompletionEvent event) + #ctor(android.content.Intent intent) + interface OnChangeListener + onChange(com.google.android.gms.drive.events.ChangeEvent event) + class OpenFileCallback + #ctor(com.google.android.gms.drive.DriveContents contents) + #ctor(java.lang.Exception exception) + #ctor(long bytesDownloaded, long bytesExpected) +package com.google.android.gms.drive.metadata +;--------------------------------------- + class CustomPropertyKey + #ctor(java.lang.String key, int visibility) + #ctor(java.lang.Object obj) + #ctor(org.json.JSONObject jsonObject) + #ctor(android.os.Parcel dest, int flags) +package com.google.android.gms.drive.query +;--------------------------------------- + class Filters + #ctor(java.lang.Iterable filters) + #ctor(com.google.android.gms.drive.query.Filter filter, com.google.android.gms.drive.query.Filter... additionalFilters) + #ctor(com.google.android.gms.drive.metadata.SearchableMetadataField field, java.lang.String value) + #ctor(com.google.android.gms.drive.metadata.CustomPropertyKey key, java.lang.String value) + #ctor(com.google.android.gms.drive.metadata.SearchableMetadataField field, T value) + #ctor(com.google.android.gms.drive.metadata.SearchableOrderedMetadataField field, T value) + #ctor(com.google.android.gms.drive.metadata.SearchableOrderedMetadataField field, T value) + #ctor(com.google.android.gms.drive.metadata.SearchableCollectionMetadataField field, T value) + #ctor(com.google.android.gms.drive.metadata.SearchableOrderedMetadataField field, T value) + #ctor(com.google.android.gms.drive.metadata.SearchableOrderedMetadataField field, T value) + #ctor(com.google.android.gms.drive.query.Filter toNegate) + #ctor(java.lang.Iterable filters) + #ctor(com.google.android.gms.drive.query.Filter filter, com.google.android.gms.drive.query.Filter... additionalFilters) + class Query + writeToParcel(android.os.Parcel out, int flags) + class Query.Builder + #ctor(com.google.android.gms.drive.query.Query query) + #ctor(com.google.android.gms.drive.query.Filter filter) + #ctor(java.lang.String token) + #ctor(com.google.android.gms.drive.query.SortOrder sortOrder) + class SortOrder + writeToParcel(android.os.Parcel out, int flags) + class SortOrder.Builder + #ctor(com.google.android.gms.drive.metadata.SortableMetadataField sortField) + #ctor(com.google.android.gms.drive.metadata.SortableMetadataField sortField) +package com.google.android.gms.drive.widget +;--------------------------------------- + class DataBufferAdapter + #ctor(android.content.Context context, int resource, int textViewResourceId, java.util.List> objects) + #ctor(android.content.Context context, int resource, int textViewResourceId) + #ctor(android.content.Context context, int resource, java.util.List> objects) + #ctor(android.content.Context context, int resource) + #ctor(android.content.Context context, int resource, int textViewResourceId, com.google.android.gms.common.data.DataBuffer... buffers) + #ctor(android.content.Context context, int resource, com.google.android.gms.common.data.DataBuffer... buffers) + #ctor(com.google.android.gms.common.data.DataBuffer buffer) + #ctor(int position, android.view.View convertView, android.view.ViewGroup parent) + #ctor(int position) + #ctor(int position) + #ctor(int position, android.view.View convertView, android.view.ViewGroup parent) + #ctor(int resource) + #ctor(boolean notifyOnChange) +package com.google.android.gms.fido.common +;--------------------------------------- + class Transport.UnsupportedTransportException + #ctor(java.lang.String errorMessage) +package com.google.android.gms.fido +;--------------------------------------- + class Fido + getFido2ApiClient(android.content.Context context) + getFido2ApiClient(android.app.Activity activity) + getFido2PrivilegedApiClient(android.content.Context context) + getFido2PrivilegedApiClient(android.app.Activity activity) + getU2fApiClient(android.content.Context context) + getU2fApiClient(android.app.Activity activity) +package com.google.android.gms.fido.fido2.api.common +;--------------------------------------- + interface Algorithm + fromAlgoValue(int algoValue) + class AlgorithmIdentifier.UnsupportedAlgorithmIdentifierException + #ctor(java.lang.String algId) + class Attachment.UnsupportedAttachmentException + #ctor(java.lang.String attachment) + class AttestationConveyancePreference.UnsupportedAttestationConveyancePreferenceException + #ctor(java.lang.String preference) + class AuthenticationExtensions + equals(java.lang.Object obj) + writeToParcel(android.os.Parcel dest, int flags) + class AuthenticationExtensions.Builder + #ctor(com.google.android.gms.fido.fido2.api.common.FidoAppIdExtension appIdExtension) + class AuthenticatorAssertionResponse + deserializeFromBytes(byte[] serializedBytes) + equals(java.lang.Object obj) + writeToParcel(android.os.Parcel dest, int flags) + class AuthenticatorAssertionResponse.Builder + #ctor(byte[] authenticatorData) + #ctor(byte[] clientDataJSON) + #ctor(byte[] keyHandle) + #ctor(byte[] signature) + class AuthenticatorAttestationResponse + deserializeFromBytes(byte[] serializedBytes) + equals(java.lang.Object obj) + writeToParcel(android.os.Parcel dest, int flags) + class AuthenticatorAttestationResponse.Builder + #ctor(byte[] attestationObject) + #ctor(byte[] clientDataJSON) + #ctor(byte[] keyHandle) + class AuthenticatorErrorResponse + deserializeFromBytes(byte[] serializedBytes) + equals(java.lang.Object obj) + writeToParcel(android.os.Parcel dest, int flags) + class AuthenticatorErrorResponse.Builder + #ctor(com.google.android.gms.fido.fido2.api.common.ErrorCode errorCode) + #ctor(java.lang.String errorMessage) + class AuthenticatorSelectionCriteria + equals(java.lang.Object obj) + writeToParcel(android.os.Parcel dest, int flags) + class AuthenticatorSelectionCriteria.Builder + #ctor(com.google.android.gms.fido.fido2.api.common.Attachment attachment) + class BrowserMakeCredentialOptions + deserializeFromBytes(byte[] serializedBytes) + equals(java.lang.Object o) + writeToParcel(android.os.Parcel dest, int flags) + class BrowserMakeCredentialOptions.Builder + #ctor(com.google.android.gms.fido.fido2.api.common.MakeCredentialOptions requestOptions) + #ctor(android.net.Uri origin) + class BrowserPublicKeyCredentialCreationOptions + deserializeFromBytes(byte[] serializedBytes) + equals(java.lang.Object obj) + writeToParcel(android.os.Parcel dest, int flags) + class BrowserPublicKeyCredentialCreationOptions.Builder + #ctor(android.net.Uri origin) + #ctor(com.google.android.gms.fido.fido2.api.common.PublicKeyCredentialCreationOptions publicKeyCredentialCreationOptions) + class BrowserPublicKeyCredentialRequestOptions + deserializeFromBytes(byte[] serializedBytes) + equals(java.lang.Object o) + writeToParcel(android.os.Parcel dest, int flags) + class BrowserPublicKeyCredentialRequestOptions.Builder + #ctor(android.net.Uri origin) + #ctor(com.google.android.gms.fido.fido2.api.common.PublicKeyCredentialRequestOptions publicKeyCredentialRequestOptions) + class COSEAlgorithmIdentifier + equals(java.lang.Object obj) + fromCoseValue(int value) + writeToParcel(android.os.Parcel parcel, int flags) + class COSEAlgorithmIdentifier.UnsupportedAlgorithmIdentifierException + #ctor(int algId) + class ErrorCode.UnsupportedErrorCodeException + #ctor(int errorCode) + class FidoAppIdExtension + #ctor(java.lang.String appId) + #ctor(java.lang.Object obj) + #ctor(android.os.Parcel dest, int flags) + class MakeCredentialOptions + #ctor(com.google.android.gms.fido.fido2.api.common.PublicKeyCredentialEntity rp, com.google.android.gms.fido.fido2.api.common.PublicKeyCredentialUserEntity user, byte[] challenge, java.util.List parameters, java.lang.Double timeoutSeconds, java.util.List excludeList, com.google.android.gms.fido.fido2.api.common.AuthenticatorSelectionCriteria authenticatorSelection, java.lang.Integer requestId, com.google.android.gms.fido.fido2.api.common.TokenBindingIdValue tokenBindingIdValue, com.google.android.gms.fido.fido2.api.common.AuthenticationExtensions authenticationExtensions) + #ctor(byte[] serializedBytes) + #ctor(java.lang.Object obj) + #ctor(android.os.Parcel dest, int flags) + class MakeCredentialOptions.Builder + #ctor(com.google.android.gms.fido.fido2.api.common.AuthenticatorSelectionCriteria authenticatorSelection) + #ctor(byte[] challenge) + #ctor(java.util.List excludeList) + #ctor(java.util.List parameters) + #ctor(java.lang.Integer requestId) + #ctor(com.google.android.gms.fido.fido2.api.common.PublicKeyCredentialEntity rp) + #ctor(java.lang.Double timeoutSeconds) + #ctor(com.google.android.gms.fido.fido2.api.common.TokenBindingIdValue tokenBindingIdValue) + #ctor(com.google.android.gms.fido.fido2.api.common.PublicKeyCredentialUserEntity user) + class PublicKeyCredentialCreationOptions + deserializeFromBytes(byte[] serializedBytes) + equals(java.lang.Object obj) + writeToParcel(android.os.Parcel dest, int flags) + class PublicKeyCredentialCreationOptions.Builder + #ctor(com.google.android.gms.fido.fido2.api.common.AttestationConveyancePreference attestationConveyancePreference) + #ctor(com.google.android.gms.fido.fido2.api.common.AuthenticationExtensions authenticationExtensions) + #ctor(com.google.android.gms.fido.fido2.api.common.AuthenticatorSelectionCriteria authenticatorSelection) + #ctor(byte[] challenge) + #ctor(java.util.List excludeList) + #ctor(java.util.List parameters) + #ctor(java.lang.Integer requestId) + #ctor(com.google.android.gms.fido.fido2.api.common.PublicKeyCredentialRpEntity rp) + #ctor(java.lang.Double timeoutSeconds) + #ctor(com.google.android.gms.fido.fido2.api.common.TokenBinding tokenBinding) + #ctor(com.google.android.gms.fido.fido2.api.common.PublicKeyCredentialUserEntity user) + class PublicKeyCredentialDescriptor + #ctor(java.lang.String type, byte[] id, java.util.List transports) + #ctor(java.lang.Object obj) + #ctor(android.os.Parcel dest, int flags) + class PublicKeyCredentialDescriptor.UnsupportedPubKeyCredDescriptorException + #ctor(java.lang.String errorMessage) + #ctor(java.lang.String errorMessage, java.lang.Throwable t) + class PublicKeyCredentialEntity + #ctor(java.lang.String id, java.lang.String name, java.lang.String icon) + #ctor(java.lang.Object obj) + #ctor(android.os.Parcel dest, int flags) + class PublicKeyCredentialParameters + #ctor(java.lang.String type, int algorithm) + #ctor(java.lang.Object obj) + #ctor(android.os.Parcel dest, int flags) + class PublicKeyCredentialRequestOptions + deserializeFromBytes(byte[] serializedBytes) + equals(java.lang.Object obj) + writeToParcel(android.os.Parcel dest, int flags) + class PublicKeyCredentialRequestOptions.Builder + #ctor(java.util.List allowList) + #ctor(com.google.android.gms.fido.fido2.api.common.AuthenticationExtensions authenticationExtensions) + #ctor(byte[] challenge) + #ctor(java.lang.Integer requestId) + #ctor(java.lang.String rpId) + #ctor(java.lang.Double timeoutSeconds) + #ctor(com.google.android.gms.fido.fido2.api.common.TokenBinding tokenBinding) + class PublicKeyCredentialRpEntity + #ctor(java.lang.String id, java.lang.String name, java.lang.String icon) + #ctor(java.lang.Object obj) + #ctor(android.os.Parcel dest, int flags) + class PublicKeyCredentialType.UnsupportedPublicKeyCredTypeException + #ctor(java.lang.String errorMessage) + class PublicKeyCredentialUserEntity + #ctor(byte[] id, java.lang.String name, java.lang.String icon, java.lang.String displayName) + #ctor(java.lang.Object obj) + #ctor(android.os.Parcel dest, int flags) + class RequestType.UnsupportedRequestTypeException + #ctor(java.lang.String value) + class TokenBinding + #ctor(java.lang.String tokenBindingId) + #ctor(java.lang.Object obj) + #ctor(android.os.Parcel dest, int flags) + class TokenBinding.UnsupportedTokenBindingStatusException + #ctor(java.lang.String unsupportedTokenBindingStatus) + class TokenBindingIdValue + #ctor(org.json.JSONObject value) + #ctor(java.lang.Object other) + #ctor(int type) + #ctor(android.os.Parcel dest, int flags) + class TokenBindingIdValue.UnsupportedTokenBindingIdValueTypeException + #ctor(int type) + class UserVerificationRequirement.UnsupportedUserVerificationRequirementException + #ctor(java.lang.String requirement) +package com.google.android.gms.fido.fido2 +;--------------------------------------- + class Fido2ApiClient + getRegisterIntent(com.google.android.gms.fido.fido2.api.common.PublicKeyCredentialCreationOptions requestOptions) + getSignIntent(com.google.android.gms.fido.fido2.api.common.PublicKeyCredentialRequestOptions requestOptions) + interface Fido2PendingIntent + launchPendingIntent(android.app.Activity activity, int requestCode) + class Fido2PrivilegedApiClient + getRegisterIntent(com.google.android.gms.fido.fido2.api.common.BrowserPublicKeyCredentialCreationOptions requestOptions) + getSignIntent(com.google.android.gms.fido.fido2.api.common.BrowserPublicKeyCredentialRequestOptions requestOptions) +package com.google.android.gms.fido.u2f.api.common +;--------------------------------------- + class ChannelIdValue + #ctor(org.json.JSONObject value) + #ctor(java.lang.Object other) + #ctor(int type) + #ctor(android.os.Parcel dest, int flags) + class ChannelIdValue.UnsupportedChannelIdValueTypeException + #ctor(int type) + class ClientData + equals(java.lang.Object other) + class ClientData.Builder + setChallenge(java.lang.String challenge) + setChannelId(com.google.android.gms.fido.u2f.api.common.ChannelIdValue cidValue) + setOrigin(java.lang.String origin) + setType(java.lang.String type) + class Error + #ctor(com.google.android.gms.fido.u2f.api.common.ErrorCode errorCode) + #ctor(com.google.android.gms.fido.u2f.api.common.ErrorCode errorCode, java.lang.String errorMessage) + class ErrorResponseData + #ctor(com.google.android.gms.fido.u2f.api.common.ErrorCode errorCode) + #ctor(com.google.android.gms.fido.u2f.api.common.ErrorCode errorCode, java.lang.String errorMessage) + #ctor(java.lang.Object o) + #ctor(android.os.Parcel dest, int flags) + class KeyHandle + #ctor(byte[] keyHandleBytes, com.google.android.gms.fido.u2f.api.common.ProtocolVersion protocolVersion, java.util.List transports) + #ctor(java.lang.Object obj) + #ctor(org.json.JSONObject registeredKey) + #ctor(android.os.Parcel dest, int flags) + class ProtocolVersion.UnsupportedProtocolException + #ctor(java.lang.String version) + class RegisteredKey + #ctor(com.google.android.gms.fido.u2f.api.common.KeyHandle keyHandle, java.lang.String challengeValue, java.lang.String appId) + #ctor(com.google.android.gms.fido.u2f.api.common.KeyHandle keyHandle) + #ctor(java.lang.Object obj) + #ctor(org.json.JSONObject signRequest) + #ctor(android.os.Parcel dest, int flags) + class RegisterRequest + #ctor(com.google.android.gms.fido.u2f.api.common.ProtocolVersion protocolVersion, byte[] challengeValue, java.lang.String appId) + #ctor(java.lang.Object obj) + #ctor(org.json.JSONObject registerRequest) + #ctor(android.os.Parcel dest, int flags) + class RegisterRequestParams + equals(java.lang.Object o) + writeToParcel(android.os.Parcel dest, int flags) + class RegisterRequestParams.Builder + #ctor(android.net.Uri appId) + #ctor(com.google.android.gms.fido.u2f.api.common.ChannelIdValue channelIdValue) + #ctor(java.lang.String displayHint) + #ctor(java.util.List registerRequests) + #ctor(java.util.List registeredKeys) + #ctor(java.lang.Integer requestId) + #ctor(java.lang.Double timeoutSeconds) + class RegisterResponseData + #ctor(byte[] registerData) + #ctor(byte[] registerData, com.google.android.gms.fido.u2f.api.common.ProtocolVersion protocolVersion, java.lang.String clientDataString) + #ctor(java.lang.Object o) + #ctor(android.os.Parcel dest, int flags) + class SignRequestParams + equals(java.lang.Object o) + writeToParcel(android.os.Parcel dest, int flags) + class SignRequestParams.Builder + #ctor(android.net.Uri appId) + #ctor(com.google.android.gms.fido.u2f.api.common.ChannelIdValue channelIdValue) + #ctor(byte[] defaultSignChallenge) + #ctor(java.lang.String displayHint) + #ctor(java.util.List registeredKeys) + #ctor(java.lang.Integer requestId) + #ctor(java.lang.Double timeoutSeconds) + class SignResponseData + #ctor(byte[] keyHandle, java.lang.String clientDataString, byte[] signatureData) + #ctor(java.lang.Object o) + #ctor(android.os.Parcel dest, int flags) +package com.google.android.gms.fido.u2f.api.messagebased +;--------------------------------------- + class RequestType.UnsupportedRequestTypeException + #ctor(java.lang.String value) +package com.google.android.gms.fido.u2f +;--------------------------------------- + class U2fApiClient + #ctor(android.app.Activity activity) + #ctor(android.content.Context context) + #ctor(com.google.android.gms.fido.u2f.api.common.RegisterRequestParams requestParams) + #ctor(com.google.android.gms.fido.u2f.api.common.SignRequestParams requestParams) + interface U2fPendingIntent + launchPendingIntent(android.app.Activity activity, int requestCode) +package com.google.android.gms.fitness +;--------------------------------------- + interface BleApi + claimBleDevice(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String deviceAddress) + claimBleDevice(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.data.BleDevice bleDevice) + listClaimedBleDevices(com.google.android.gms.common.api.GoogleApiClient client) + startBleScan(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.request.StartBleScanRequest request) + stopBleScan(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.request.BleScanCallback callback) + unclaimBleDevice(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String deviceAddress) + unclaimBleDevice(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.data.BleDevice bleDevice) + class BleClient + claimBleDevice(java.lang.String deviceAddress) + claimBleDevice(com.google.android.gms.fitness.data.BleDevice bleDevice) + startBleScan(java.util.List dataTypes, int timeoutSecs, com.google.android.gms.fitness.request.BleScanCallback callback) + stopBleScan(com.google.android.gms.fitness.request.BleScanCallback callback) + unclaimBleDevice(java.lang.String deviceAddress) + unclaimBleDevice(com.google.android.gms.fitness.data.BleDevice bleDevice) + interface ConfigApi + createCustomDataType(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.request.DataTypeCreateRequest request) + disableFit(com.google.android.gms.common.api.GoogleApiClient client) + readDataType(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String dataTypeName) + class ConfigClient + createCustomDataType(com.google.android.gms.fitness.request.DataTypeCreateRequest request) + readDataType(java.lang.String dataTypeName) + class Fitness + getBleClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getBleClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getConfigClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getConfigClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getEndTime(android.content.Intent intent, java.util.concurrent.TimeUnit timeUnit) + getGoalsClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getGoalsClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getHistoryClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getHistoryClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getRecordingClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getRecordingClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getSensorsClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getSensorsClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getSessionsClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getSessionsClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getStartTime(android.content.Intent intent, java.util.concurrent.TimeUnit timeUnit) + class FitnessActivities + getMimeType(java.lang.String activity) + class FitnessOptions + equals(java.lang.Object o) + class FitnessOptions.Builder + addDataType(com.google.android.gms.fitness.data.DataType datatype, int accessType) + addDataType(com.google.android.gms.fitness.data.DataType datatype) + interface GoalsApi + readCurrentGoals(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.request.GoalsReadRequest request) + class GoalsClient + readCurrentGoals(com.google.android.gms.fitness.request.GoalsReadRequest request) + interface HistoryApi + deleteData(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.request.DataDeleteRequest request) + insertData(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.data.DataSet dataSet) + readDailyTotal(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.data.DataType dataType) + readDailyTotalFromLocalDevice(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.data.DataType dataType) + readData(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.request.DataReadRequest request) + registerDataUpdateListener(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.request.DataUpdateListenerRegistrationRequest request) + unregisterDataUpdateListener(com.google.android.gms.common.api.GoogleApiClient client, android.app.PendingIntent pendingIntent) + updateData(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.request.DataUpdateRequest request) + class HistoryApi.ViewIntentBuilder + #ctor(android.content.Context context, com.google.android.gms.fitness.data.DataType dataType) + #ctor(com.google.android.gms.fitness.data.DataSource dataSource) + #ctor(java.lang.String packageName) + #ctor(long start, long end, java.util.concurrent.TimeUnit timeUnit) + class HistoryClient + deleteData(com.google.android.gms.fitness.request.DataDeleteRequest request) + insertData(com.google.android.gms.fitness.data.DataSet dataSet) + readDailyTotal(com.google.android.gms.fitness.data.DataType dataType) + readDailyTotalFromLocalDevice(com.google.android.gms.fitness.data.DataType dataType) + readData(com.google.android.gms.fitness.request.DataReadRequest request) + registerDataUpdateListener(com.google.android.gms.fitness.request.DataUpdateListenerRegistrationRequest request) + unregisterDataUpdateListener(android.app.PendingIntent pendingIntent) + updateData(com.google.android.gms.fitness.request.DataUpdateRequest request) + interface RecordingApi + listSubscriptions(com.google.android.gms.common.api.GoogleApiClient client) + listSubscriptions(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.data.DataType dataType) + subscribe(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.data.DataType dataType) + subscribe(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.data.DataSource dataSource) + unsubscribe(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.data.DataSource dataSource) + unsubscribe(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.data.DataType dataType) + unsubscribe(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.data.Subscription subscription) + class RecordingClient + listSubscriptions(com.google.android.gms.fitness.data.DataType dataType) + subscribe(com.google.android.gms.fitness.data.DataSource dataSource) + subscribe(com.google.android.gms.fitness.data.DataType dataType) + unsubscribe(com.google.android.gms.fitness.data.Subscription subscription) + unsubscribe(com.google.android.gms.fitness.data.DataType dataType) + unsubscribe(com.google.android.gms.fitness.data.DataSource dataSource) + interface SensorsApi + add(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.request.SensorRequest request, com.google.android.gms.fitness.request.OnDataPointListener listener) + add(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.request.SensorRequest request, android.app.PendingIntent intent) + findDataSources(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.request.DataSourcesRequest request) + remove(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.request.OnDataPointListener listener) + remove(com.google.android.gms.common.api.GoogleApiClient client, android.app.PendingIntent pendingIntent) + class SensorsClient + add(com.google.android.gms.fitness.request.SensorRequest request, com.google.android.gms.fitness.request.OnDataPointListener listener) + add(com.google.android.gms.fitness.request.SensorRequest request, android.app.PendingIntent intent) + findDataSources(com.google.android.gms.fitness.request.DataSourcesRequest request) + remove(android.app.PendingIntent pendingIntent) + remove(com.google.android.gms.fitness.request.OnDataPointListener listener) + interface SessionsApi + insertSession(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.request.SessionInsertRequest request) + readSession(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.request.SessionReadRequest request) + registerForSessions(com.google.android.gms.common.api.GoogleApiClient client, android.app.PendingIntent intent) + startSession(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.fitness.data.Session session) + stopSession(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String identifier) + unregisterForSessions(com.google.android.gms.common.api.GoogleApiClient client, android.app.PendingIntent intent) + class SessionsApi.ViewIntentBuilder + #ctor(android.content.Context context) + #ctor(java.lang.String packageName) + #ctor(com.google.android.gms.fitness.data.Session session) + class SessionsClient + insertSession(com.google.android.gms.fitness.request.SessionInsertRequest request) + readSession(com.google.android.gms.fitness.request.SessionReadRequest request) + registerForSessions(android.app.PendingIntent intent) + startSession(com.google.android.gms.fitness.data.Session session) + stopSession(java.lang.String identifier) + unregisterForSessions(android.app.PendingIntent intent) +package com.google.android.gms.fitness.data +;--------------------------------------- + class BleDevice + equals(java.lang.Object other) + writeToParcel(android.os.Parcel parcel, int flags) + class Bucket + equals(java.lang.Object other) + getDataSet(com.google.android.gms.fitness.data.DataType dataType) + getEndTime(java.util.concurrent.TimeUnit timeUnit) + getStartTime(java.util.concurrent.TimeUnit timeUnit) + writeToParcel(android.os.Parcel dest, int flags) + class DataPoint + create(com.google.android.gms.fitness.data.DataSource dataSource) + equals(java.lang.Object other) + extract(android.content.Intent intent) + getEndTime(java.util.concurrent.TimeUnit timeUnit) + getStartTime(java.util.concurrent.TimeUnit timeUnit) + getTimestamp(java.util.concurrent.TimeUnit timeUnit) + getValue(com.google.android.gms.fitness.data.Field field) + setFloatValues(float... values) + setIntValues(int... values) + setTimeInterval(long startTime, long endTime, java.util.concurrent.TimeUnit timeUnit) + setTimestamp(long timestamp, java.util.concurrent.TimeUnit timeUnit) + writeToParcel(android.os.Parcel parcel, int flags) + class DataSet + add(com.google.android.gms.fitness.data.DataPoint dataPoint) + addAll(java.lang.Iterable dataPoints) + create(com.google.android.gms.fitness.data.DataSource dataSource) + equals(java.lang.Object other) + writeToParcel(android.os.Parcel parcel, int flags) + class DataSource + equals(java.lang.Object other) + extract(android.content.Intent intent) + writeToParcel(android.os.Parcel parcel, int flags) + class DataSource.Builder + #ctor(java.lang.String packageName) + #ctor(android.content.Context appContext) + #ctor(int... dataQualityStandards) + #ctor(com.google.android.gms.fitness.data.DataType dataType) + #ctor(com.google.android.gms.fitness.data.Device device) + #ctor(java.lang.String name) + #ctor(java.lang.String streamName) + #ctor(int type) + class DataType + equals(java.lang.Object other) + getAggregatesForInput(com.google.android.gms.fitness.data.DataType inputDataType) + getMimeType(com.google.android.gms.fitness.data.DataType dataType) + indexOf(com.google.android.gms.fitness.data.Field field) + writeToParcel(android.os.Parcel dest, int flags) + class DataUpdateNotification + equals(java.lang.Object other) + getDataUpdateNotification(android.content.Intent intent) + getUpdateEndTime(java.util.concurrent.TimeUnit timeUnit) + getUpdateStartTime(java.util.concurrent.TimeUnit timeUnit) + writeToParcel(android.os.Parcel dest, int flags) + class Device + #ctor(java.lang.String manufacturer, java.lang.String model, java.lang.String uid, int type) + #ctor(java.lang.Object other) + #ctor(android.content.Context context) + #ctor(android.os.Parcel parcel, int flags) + class Field + equals(java.lang.Object other) + writeToParcel(android.os.Parcel dest, int flags) + class Goal + equals(java.lang.Object other) + getCreateTime(java.util.concurrent.TimeUnit timeUnit) + getEndTime(java.util.Calendar current, java.util.concurrent.TimeUnit timeUnit) + getStartTime(java.util.Calendar current, java.util.concurrent.TimeUnit timeUnit) + writeToParcel(android.os.Parcel dest, int flags) + class Goal.DurationObjective + #ctor(long duration, java.util.concurrent.TimeUnit timeUnit) + #ctor(java.lang.Object other) + #ctor(java.util.concurrent.TimeUnit timeUnit) + #ctor(android.os.Parcel dest, int flags) + class Goal.FrequencyObjective + #ctor(int frequency) + #ctor(java.lang.Object other) + #ctor(android.os.Parcel dest, int flags) + class Goal.MetricObjective + #ctor(java.lang.String dataTypeName, double value, double initialValue) + #ctor(java.lang.String dataTypeName, double value) + #ctor(java.lang.Object other) + #ctor(android.os.Parcel dest, int flags) + class Goal.MismatchedGoalException + #ctor(java.lang.String msg) + class Goal.Recurrence + #ctor(int count, int unit) + #ctor(java.lang.Object other) + #ctor(android.os.Parcel dest, int flags) + class Session + equals(java.lang.Object other) + extract(android.content.Intent intent) + getActiveTime(java.util.concurrent.TimeUnit timeUnit) + getEndTime(java.util.concurrent.TimeUnit timeUnit) + getMimeType(java.lang.String activity) + getStartTime(java.util.concurrent.TimeUnit timeUnit) + writeToParcel(android.os.Parcel dest, int flags) + class Session.Builder + #ctor(long time, java.util.concurrent.TimeUnit timeUnit) + #ctor(java.lang.String activity) + #ctor(java.lang.String description) + #ctor(long time, java.util.concurrent.TimeUnit timeUnit) + #ctor(java.lang.String identifier) + #ctor(java.lang.String name) + #ctor(long time, java.util.concurrent.TimeUnit timeUnit) + class Subscription + equals(java.lang.Object other) + writeToParcel(android.os.Parcel dest, int flags) + class Value + clearKey(java.lang.String key) + equals(java.lang.Object other) + getKeyValue(java.lang.String key) + setActivity(java.lang.String activity) + setFloat(float value) + setInt(int value) + setKeyValue(java.lang.String key, float value) + setString(java.lang.String value) + writeToParcel(android.os.Parcel dest, int flags) +package com.google.android.gms.fitness.request +;--------------------------------------- + class BleScanCallback + #ctor(com.google.android.gms.fitness.data.BleDevice device) + class DataDeleteRequest + equals(java.lang.Object o) + getEndTime(java.util.concurrent.TimeUnit timeUnit) + getStartTime(java.util.concurrent.TimeUnit timeUnit) + writeToParcel(android.os.Parcel dest, int flags) + class DataDeleteRequest.Builder + #ctor(com.google.android.gms.fitness.data.DataSource dataSource) + #ctor(com.google.android.gms.fitness.data.DataType dataType) + #ctor(com.google.android.gms.fitness.data.Session session) + #ctor(long startTime, long endTime, java.util.concurrent.TimeUnit timeUnit) + class DataReadRequest + equals(java.lang.Object that) + getBucketDuration(java.util.concurrent.TimeUnit timeUnit) + getEndTime(java.util.concurrent.TimeUnit timeUnit) + getStartTime(java.util.concurrent.TimeUnit timeUnit) + writeToParcel(android.os.Parcel dest, int flags) + class DataReadRequest.Builder + #ctor(int dataQualityStandard) + #ctor(com.google.android.gms.fitness.data.DataSource dataSource, com.google.android.gms.fitness.data.DataType outputDataType) + #ctor(com.google.android.gms.fitness.data.DataType inputDataType, com.google.android.gms.fitness.data.DataType outputDataType) + #ctor(int minDuration, java.util.concurrent.TimeUnit timeUnit, com.google.android.gms.fitness.data.DataSource activityDataSource) + #ctor(int minDuration, java.util.concurrent.TimeUnit timeUnit) + #ctor(int minDuration, java.util.concurrent.TimeUnit timeUnit, com.google.android.gms.fitness.data.DataSource activityDataSource) + #ctor(int minDuration, java.util.concurrent.TimeUnit timeUnit) + #ctor(int minDuration, java.util.concurrent.TimeUnit timeUnit) + #ctor(int duration, java.util.concurrent.TimeUnit timeUnit) + #ctor(com.google.android.gms.fitness.data.DataSource dataSource) + #ctor(com.google.android.gms.fitness.data.DataType dataType) + #ctor(int limit) + #ctor(long start, long end, java.util.concurrent.TimeUnit timeUnit) + class DataSourcesRequest + writeToParcel(android.os.Parcel parcel, int flags) + class DataSourcesRequest.Builder + #ctor(int... dataSourceTypes) + #ctor(com.google.android.gms.fitness.data.DataType... dataTypes) + class DataTypeCreateRequest + equals(java.lang.Object o) + writeToParcel(android.os.Parcel dest, int flags) + class DataTypeCreateRequest.Builder + #ctor(java.lang.String name, int format) + #ctor(com.google.android.gms.fitness.data.Field field) + #ctor(java.lang.String name) + class DataUpdateListenerRegistrationRequest + equals(java.lang.Object that) + writeToParcel(android.os.Parcel parcel, int flags) + class DataUpdateListenerRegistrationRequest.Builder + #ctor(com.google.android.gms.fitness.data.DataSource dataSource) + #ctor(com.google.android.gms.fitness.data.DataType dataType) + #ctor(android.app.PendingIntent pendingIntent) + class DataUpdateRequest + equals(java.lang.Object o) + getEndTime(java.util.concurrent.TimeUnit timeUnit) + getStartTime(java.util.concurrent.TimeUnit timeUnit) + writeToParcel(android.os.Parcel dest, int flags) + class DataUpdateRequest.Builder + #ctor(com.google.android.gms.fitness.data.DataSet dataSet) + #ctor(long startTimeMillis, long endTimeMillis, java.util.concurrent.TimeUnit timeUnit) + class GoalsReadRequest + equals(java.lang.Object that) + writeToParcel(android.os.Parcel parcel, int flags) + class GoalsReadRequest.Builder + #ctor(java.lang.String activityName) + #ctor(com.google.android.gms.fitness.data.DataType dataType) + #ctor(int objectiveType) + interface OnDataPointListener + onDataPoint(com.google.android.gms.fitness.data.DataPoint dataPoint) + class SensorRequest + equals(java.lang.Object that) + fromLocationRequest(com.google.android.gms.fitness.data.DataSource dataSource, com.google.android.gms.location.LocationRequest locationRequest) + getFastestRate(java.util.concurrent.TimeUnit timeUnit) + getMaxDeliveryLatency(java.util.concurrent.TimeUnit timeUnit) + getSamplingRate(java.util.concurrent.TimeUnit timeUnit) + class SensorRequest.Builder + #ctor(int accuracyMode) + #ctor(com.google.android.gms.fitness.data.DataSource dataSource) + #ctor(com.google.android.gms.fitness.data.DataType dataType) + #ctor(int fastestInterval, java.util.concurrent.TimeUnit unit) + #ctor(int interval, java.util.concurrent.TimeUnit unit) + #ctor(long interval, java.util.concurrent.TimeUnit unit) + #ctor(long timeout, java.util.concurrent.TimeUnit timeUnit) + class SessionInsertRequest + equals(java.lang.Object o) + writeToParcel(android.os.Parcel dest, int flags) + class SessionInsertRequest.Builder + #ctor(com.google.android.gms.fitness.data.DataPoint aggregateDataPoint) + #ctor(com.google.android.gms.fitness.data.DataSet dataSet) + #ctor(com.google.android.gms.fitness.data.Session session) + class SessionReadRequest + equals(java.lang.Object o) + getEndTime(java.util.concurrent.TimeUnit timeUnit) + getStartTime(java.util.concurrent.TimeUnit timeUnit) + writeToParcel(android.os.Parcel dest, int flags) + class SessionReadRequest.Builder + #ctor(java.lang.String appPackageName) + #ctor(com.google.android.gms.fitness.data.DataSource dataSource) + #ctor(com.google.android.gms.fitness.data.DataType dataType) + #ctor(java.lang.String sessionId) + #ctor(java.lang.String sessionName) + #ctor(long startTime, long endTime, java.util.concurrent.TimeUnit timeUnit) + class StartBleScanRequest + writeToParcel(android.os.Parcel parcel, int flags) + class StartBleScanRequest.Builder + #ctor(com.google.android.gms.fitness.request.BleScanCallback bleScanCallback) + #ctor(com.google.android.gms.fitness.data.DataType... dataTypes) + #ctor(int stopTimeSecs) +package com.google.android.gms.fitness.result +;--------------------------------------- + class BleDevicesResult + equals(java.lang.Object that) + getClaimedBleDevices(com.google.android.gms.fitness.data.DataType dataType) + writeToParcel(android.os.Parcel dest, int flags) + class DailyTotalResult + equals(java.lang.Object that) + class DataReadResponse + #ctor(com.google.android.gms.fitness.result.DataReadResult originalResult) + #ctor(com.google.android.gms.fitness.data.DataType dataType) + #ctor(com.google.android.gms.fitness.data.DataSource dataSource) + class DataReadResult + equals(java.lang.Object that) + getDataSet(com.google.android.gms.fitness.data.DataType dataType) + getDataSet(com.google.android.gms.fitness.data.DataSource dataSource) + writeToParcel(android.os.Parcel dest, int flags) + class DataSourcesResult + equals(java.lang.Object that) + getDataSources(com.google.android.gms.fitness.data.DataType dataType) + writeToParcel(android.os.Parcel dest, int flags) + class DataTypeResult + equals(java.lang.Object that) + writeToParcel(android.os.Parcel dest, int flags) + class GoalsResult + writeToParcel(android.os.Parcel dest, int flags) + class ListSubscriptionsResult + equals(java.lang.Object that) + getSubscriptions(com.google.android.gms.fitness.data.DataType dataType) + writeToParcel(android.os.Parcel dest, int flags) + class SessionReadResponse + #ctor(com.google.android.gms.fitness.result.SessionReadResult originalResult) + #ctor(com.google.android.gms.fitness.data.Session session, com.google.android.gms.fitness.data.DataType dataType) + #ctor(com.google.android.gms.fitness.data.Session session) + class SessionReadResult + equals(java.lang.Object that) + getDataSet(com.google.android.gms.fitness.data.Session session, com.google.android.gms.fitness.data.DataType dataType) + getDataSet(com.google.android.gms.fitness.data.Session session) + writeToParcel(android.os.Parcel dest, int flags) + class SessionStopResult + equals(java.lang.Object o) + writeToParcel(android.os.Parcel dest, int flags) +package com.google.android.gms.fitness.service +;--------------------------------------- + class FitnessSensorService + #ctor(android.content.Intent intent) + #ctor(java.util.List dataTypes) + #ctor(com.google.android.gms.fitness.service.FitnessSensorServiceRequest request) + #ctor(com.google.android.gms.fitness.data.DataSource dataSource) + class FitnessSensorServiceRequest + equals(java.lang.Object other) + getBatchInterval(java.util.concurrent.TimeUnit timeUnit) + getSamplingRate(java.util.concurrent.TimeUnit timeUnit) + writeToParcel(android.os.Parcel parcel, int flags) + interface SensorEventDispatcher + publish(com.google.android.gms.fitness.data.DataPoint dataPoint) + publish(java.util.List dataPoints) +package com.google.android.gms.games.achievement +;--------------------------------------- + interface Achievement + getDescription(android.database.CharArrayBuffer dataOut) + getFormattedCurrentSteps(android.database.CharArrayBuffer dataOut) + getFormattedTotalSteps(android.database.CharArrayBuffer dataOut) + getName(android.database.CharArrayBuffer dataOut) + class AchievementBuffer + get(int position) + class AchievementEntity + equals(java.lang.Object obj) + getDescription(android.database.CharArrayBuffer dataOut) + getFormattedCurrentSteps(android.database.CharArrayBuffer dataOut) + getFormattedTotalSteps(android.database.CharArrayBuffer dataOut) + getName(android.database.CharArrayBuffer dataOut) + writeToParcel(android.os.Parcel dest, int flags) + interface Achievements + getAchievementsIntent(com.google.android.gms.common.api.GoogleApiClient apiClient) + increment(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String id, int numSteps) + incrementImmediate(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String id, int numSteps) + load(com.google.android.gms.common.api.GoogleApiClient apiClient, boolean forceReload) + reveal(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String id) + revealImmediate(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String id) + setSteps(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String id, int numSteps) + setStepsImmediate(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String id, int numSteps) + unlock(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String id) + unlockImmediate(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String id) +package com.google.android.gms.games +;--------------------------------------- + class AchievementsClient + increment(java.lang.String id, int numSteps) + incrementImmediate(java.lang.String id, int numSteps) + load(boolean forceReload) + reveal(java.lang.String id) + revealImmediate(java.lang.String id) + setSteps(java.lang.String id, int numSteps) + setStepsImmediate(java.lang.String id, int numSteps) + unlock(java.lang.String id) + unlockImmediate(java.lang.String id) + class EventsClient + increment(java.lang.String eventId, int incrementAmount) + load(boolean forceReload) + loadByIds(boolean forceReload, java.lang.String... eventIds) + interface Game + getDescription(android.database.CharArrayBuffer dataOut) + getDeveloperName(android.database.CharArrayBuffer dataOut) + getDisplayName(android.database.CharArrayBuffer dataOut) + class GameBuffer + get(int position) + class GameEntity + equals(java.lang.Object obj) + getDescription(android.database.CharArrayBuffer dataOut) + getDeveloperName(android.database.CharArrayBuffer dataOut) + getDisplayName(android.database.CharArrayBuffer dataOut) + writeToParcel(android.os.Parcel dest, int flags) + class Games + getAchievementsClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getAchievementsClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getAppId(com.google.android.gms.common.api.GoogleApiClient apiClient) + getCurrentAccountName(com.google.android.gms.common.api.GoogleApiClient apiClient) + getEventsClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getEventsClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getGamesClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getGamesClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getGamesMetadataClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getGamesMetadataClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getInvitationsClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getInvitationsClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getLeaderboardsClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getLeaderboardsClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getNotificationsClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getNotificationsClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getPlayerStatsClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getPlayerStatsClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getPlayersClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getPlayersClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getRealTimeMultiplayerClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getRealTimeMultiplayerClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getSdkVariant(com.google.android.gms.common.api.GoogleApiClient apiClient) + getSettingsIntent(com.google.android.gms.common.api.GoogleApiClient apiClient) + getSnapshotsClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getSnapshotsClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getTurnBasedMultiplayerClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getTurnBasedMultiplayerClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getVideosClient(android.content.Context context, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + getVideosClient(android.app.Activity activity, com.google.android.gms.auth.api.signin.GoogleSignInAccount account) + setGravityForPopups(com.google.android.gms.common.api.GoogleApiClient apiClient, int gravity) + setViewForPopups(com.google.android.gms.common.api.GoogleApiClient apiClient, android.view.View gamesContentView) + signOut(com.google.android.gms.common.api.GoogleApiClient apiClient) + class Games.GamesOptions + equals(java.lang.Object object) + class Games.GamesOptions.Builder + setSdkVariant(int variant) + setShowConnectingPopup(boolean showConnectingPopup) + setShowConnectingPopup(boolean showConnectingPopup, int gravity) + class GamesCallbackStatusCodes + getStatusCodeString(int statusCode) + class GamesClient + setGravityForPopups(int gravity) + setViewForPopups(android.view.View gamesContentView) + class GamesClientStatusCodes + getStatusCodeString(int statusCode) + interface GamesMetadata + getCurrentGame(com.google.android.gms.common.api.GoogleApiClient apiClient) + loadGame(com.google.android.gms.common.api.GoogleApiClient apiClient) + class GamesStatusCodes + getStatusString(int statusCode) + class InvitationsClient + loadInvitations(int sortOrder) + registerInvitationCallback(com.google.android.gms.games.multiplayer.InvitationCallback callback) + unregisterInvitationCallback(com.google.android.gms.games.multiplayer.InvitationCallback callback) + class LeaderboardsClient + getLeaderboardIntent(java.lang.String leaderboardId, int timeSpan) + getLeaderboardIntent(java.lang.String leaderboardId) + getLeaderboardIntent(java.lang.String leaderboardId, int timeSpan, int collection) + loadCurrentPlayerLeaderboardScore(java.lang.String leaderboardId, int span, int leaderboardCollection) + loadLeaderboardMetadata(boolean forceReload) + loadLeaderboardMetadata(java.lang.String leaderboardId, boolean forceReload) + loadMoreScores(com.google.android.gms.games.leaderboard.LeaderboardScoreBuffer buffer, int maxResults, int pageDirection) + loadPlayerCenteredScores(java.lang.String leaderboardId, int span, int leaderboardCollection, int maxResults, boolean forceReload) + loadPlayerCenteredScores(java.lang.String leaderboardId, int span, int leaderboardCollection, int maxResults) + loadTopScores(java.lang.String leaderboardId, int span, int leaderboardCollection, int maxResults) + loadTopScores(java.lang.String leaderboardId, int span, int leaderboardCollection, int maxResults, boolean forceReload) + submitScore(java.lang.String leaderboardId, long score, java.lang.String scoreTag) + submitScore(java.lang.String leaderboardId, long score) + submitScoreImmediate(java.lang.String leaderboardId, long score, java.lang.String scoreTag) + submitScoreImmediate(java.lang.String leaderboardId, long score) + interface Notifications + clear(com.google.android.gms.common.api.GoogleApiClient apiClient, int notificationTypes) + clearAll(com.google.android.gms.common.api.GoogleApiClient apiClient) + class NotificationsClient + clear(int notificationTypes) + interface Player + getDisplayName(android.database.CharArrayBuffer dataOut) + getTitle(android.database.CharArrayBuffer dataOut) + class PlayerBuffer + get(int position) + class PlayerEntity + equals(java.lang.Object obj) + getDisplayName(android.database.CharArrayBuffer dataOut) + getTitle(android.database.CharArrayBuffer dataOut) + writeToParcel(android.os.Parcel dest, int flags) + class PlayerLevel + equals(java.lang.Object obj) + writeToParcel(android.os.Parcel out, int flags) + class PlayerLevelInfo + equals(java.lang.Object obj) + writeToParcel(android.os.Parcel out, int flags) + interface Players + getCompareProfileIntent(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.games.Player player) + getCurrentPlayer(com.google.android.gms.common.api.GoogleApiClient apiClient) + getCurrentPlayerId(com.google.android.gms.common.api.GoogleApiClient apiClient) + getPlayerSearchIntent(com.google.android.gms.common.api.GoogleApiClient apiClient) + loadConnectedPlayers(com.google.android.gms.common.api.GoogleApiClient apiClient, boolean forceReload) + loadInvitablePlayers(com.google.android.gms.common.api.GoogleApiClient apiClient, int pageSize, boolean forceReload) + loadMoreInvitablePlayers(com.google.android.gms.common.api.GoogleApiClient apiClient, int pageSize) + loadMoreRecentlyPlayedWithPlayers(com.google.android.gms.common.api.GoogleApiClient apiClient, int pageSize) + loadPlayer(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String playerId) + loadPlayer(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String playerId, boolean forceReload) + loadRecentlyPlayedWithPlayers(com.google.android.gms.common.api.GoogleApiClient apiClient, int pageSize, boolean forceReload) + class PlayersClient + getCompareProfileIntent(com.google.android.gms.games.Player player) + loadMoreRecentlyPlayedWithPlayers(int pageSize) + loadPlayer(java.lang.String playerId, boolean forceReload) + loadPlayer(java.lang.String playerId) + loadRecentlyPlayedWithPlayers(int pageSize, boolean forceReload) + class PlayerStatsClient + loadPlayerStats(boolean forceReload) + class RealTimeMultiplayerClient + create(com.google.android.gms.games.multiplayer.realtime.RoomConfig config) + declineInvitation(java.lang.String invitationId) + dismissInvitation(java.lang.String invitationId) + getSelectOpponentsIntent(int minPlayers, int maxPlayers) + getSelectOpponentsIntent(int minPlayers, int maxPlayers, boolean allowAutomatch) + getWaitingRoomIntent(com.google.android.gms.games.multiplayer.realtime.Room room, int minParticipantsToStart) + join(com.google.android.gms.games.multiplayer.realtime.RoomConfig config) + leave(com.google.android.gms.games.multiplayer.realtime.RoomConfig config, java.lang.String roomId) + sendReliableMessage(byte[] messageData, java.lang.String roomId, java.lang.String recipientParticipantId, com.google.android.gms.games.RealTimeMultiplayerClient.ReliableMessageSentCallback callback) + sendUnreliableMessage(byte[] messageData, java.lang.String roomId, java.lang.String recipientParticipantId) + sendUnreliableMessage(byte[] messageData, java.lang.String roomId, java.util.List recipientParticipantIds) + sendUnreliableMessageToOthers(byte[] messageData, java.lang.String roomId) + interface RealTimeMultiplayerClient.ReliableMessageSentCallback + onRealTimeMessageSent(int statusCode, int tokenId, java.lang.String recipientParticipantId) + class SnapshotsClient + commitAndClose(com.google.android.gms.games.snapshot.Snapshot snapshot, com.google.android.gms.games.snapshot.SnapshotMetadataChange metadataChange) + delete(com.google.android.gms.games.snapshot.SnapshotMetadata metadata) + discardAndClose(com.google.android.gms.games.snapshot.Snapshot snapshot) + getSelectSnapshotIntent(java.lang.String title, boolean allowAddButton, boolean allowDelete, int maxSnapshots) + getSnapshotFromBundle(android.os.Bundle extras) + load(boolean forceReload) + open(com.google.android.gms.games.snapshot.SnapshotMetadata metadata) + open(com.google.android.gms.games.snapshot.SnapshotMetadata metadata, int conflictPolicy) + open(java.lang.String fileName, boolean createIfNotFound, int conflictPolicy) + open(java.lang.String fileName, boolean createIfNotFound) + resolveConflict(java.lang.String conflictId, java.lang.String snapshotId, com.google.android.gms.games.snapshot.SnapshotMetadataChange metadataChange, com.google.android.gms.games.snapshot.SnapshotContents snapshotContents) + resolveConflict(java.lang.String conflictId, com.google.android.gms.games.snapshot.Snapshot snapshot) + class TurnBasedMultiplayerClient + acceptInvitation(java.lang.String invitationId) + cancelMatch(java.lang.String matchId) + createMatch(com.google.android.gms.games.multiplayer.turnbased.TurnBasedMatchConfig config) + declineInvitation(java.lang.String invitationId) + dismissInvitation(java.lang.String invitationId) + dismissMatch(java.lang.String matchId) + finishMatch(java.lang.String matchId) + finishMatch(java.lang.String matchId, byte[] matchData, com.google.android.gms.games.multiplayer.ParticipantResult... results) + finishMatch(java.lang.String matchId, byte[] matchData, java.util.List results) + getSelectOpponentsIntent(int minPlayers, int maxPlayers, boolean allowAutomatch) + getSelectOpponentsIntent(int minPlayers, int maxPlayers) + leaveMatch(java.lang.String matchId) + leaveMatchDuringTurn(java.lang.String matchId, java.lang.String pendingParticipantId) + loadMatch(java.lang.String matchId) + loadMatchesByStatus(int invitationSortOrder, int[] matchTurnStatuses) + loadMatchesByStatus(int[] matchTurnStatuses) + registerTurnBasedMatchUpdateCallback(com.google.android.gms.games.multiplayer.turnbased.TurnBasedMatchUpdateCallback callback) + rematch(java.lang.String matchId) + takeTurn(java.lang.String matchId, byte[] matchData, java.lang.String pendingParticipantId) + takeTurn(java.lang.String matchId, byte[] matchData, java.lang.String pendingParticipantId, com.google.android.gms.games.multiplayer.ParticipantResult... results) + takeTurn(java.lang.String matchId, byte[] matchData, java.lang.String pendingParticipantId, java.util.List results) + unregisterTurnBasedMatchUpdateCallback(com.google.android.gms.games.multiplayer.turnbased.TurnBasedMatchUpdateCallback callback) + class VideosClient + isCaptureAvailable(int captureMode) + registerOnCaptureOverlayStateChangedListener(com.google.android.gms.games.VideosClient.OnCaptureOverlayStateListener listener) + unregisterOnCaptureOverlayStateChangedListener(com.google.android.gms.games.VideosClient.OnCaptureOverlayStateListener listener) + interface VideosClient.OnCaptureOverlayStateListener + onCaptureOverlayStateChanged(int overlayState) +package com.google.android.gms.games.event +;--------------------------------------- + interface Event + getDescription(android.database.CharArrayBuffer dataOut) + getFormattedValue(android.database.CharArrayBuffer dataOut) + getName(android.database.CharArrayBuffer dataOut) + class EventBuffer + get(int position) + class EventEntity + #ctor(com.google.android.gms.games.event.Event event) + #ctor(java.lang.Object obj) + #ctor(android.database.CharArrayBuffer dataOut) + #ctor(android.database.CharArrayBuffer dataOut) + #ctor(android.database.CharArrayBuffer dataOut) + #ctor(android.os.Parcel out, int flags) + interface Events + increment(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String eventId, int incrementAmount) + load(com.google.android.gms.common.api.GoogleApiClient apiClient, boolean forceReload) + loadByIds(com.google.android.gms.common.api.GoogleApiClient apiClient, boolean forceReload, java.lang.String... eventIds) +package com.google.android.gms.games.leaderboard +;--------------------------------------- + interface Leaderboard + getDisplayName(android.database.CharArrayBuffer dataOut) + class LeaderboardBuffer + get(int position) + interface Leaderboards + getAllLeaderboardsIntent(com.google.android.gms.common.api.GoogleApiClient apiClient) + getLeaderboardIntent(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String leaderboardId) + getLeaderboardIntent(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String leaderboardId, int timeSpan) + getLeaderboardIntent(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String leaderboardId, int timeSpan, int collection) + loadCurrentPlayerLeaderboardScore(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String leaderboardId, int span, int leaderboardCollection) + loadLeaderboardMetadata(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String leaderboardId, boolean forceReload) + loadLeaderboardMetadata(com.google.android.gms.common.api.GoogleApiClient apiClient, boolean forceReload) + loadMoreScores(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.games.leaderboard.LeaderboardScoreBuffer buffer, int maxResults, int pageDirection) + loadPlayerCenteredScores(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String leaderboardId, int span, int leaderboardCollection, int maxResults) + loadPlayerCenteredScores(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String leaderboardId, int span, int leaderboardCollection, int maxResults, boolean forceReload) + loadTopScores(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String leaderboardId, int span, int leaderboardCollection, int maxResults, boolean forceReload) + loadTopScores(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String leaderboardId, int span, int leaderboardCollection, int maxResults) + submitScore(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String leaderboardId, long score) + submitScore(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String leaderboardId, long score, java.lang.String scoreTag) + submitScoreImmediate(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String leaderboardId, long score, java.lang.String scoreTag) + submitScoreImmediate(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String leaderboardId, long score) + interface LeaderboardScore + getDisplayRank(android.database.CharArrayBuffer dataOut) + getDisplayScore(android.database.CharArrayBuffer dataOut) + getScoreHolderDisplayName(android.database.CharArrayBuffer dataOut) + class LeaderboardScoreBuffer + get(int position) + class ScoreSubmissionData + getScoreResult(int timeSpan) + class ScoreSubmissionData.Result + #ctor(long rawScore, java.lang.String formattedScore, java.lang.String scoreTag, boolean newBest) +package com.google.android.gms.games.multiplayer +;--------------------------------------- + class InvitationBuffer + get(int position) + class InvitationCallback + #ctor(com.google.android.gms.games.multiplayer.Invitation invitation) + #ctor(java.lang.String invitationId) + class InvitationEntity + equals(java.lang.Object obj) + writeToParcel(android.os.Parcel dest, int flags) + interface Invitations + getInvitationInboxIntent(com.google.android.gms.common.api.GoogleApiClient apiClient) + loadInvitations(com.google.android.gms.common.api.GoogleApiClient apiClient) + loadInvitations(com.google.android.gms.common.api.GoogleApiClient apiClient, int sortOrder) + registerInvitationListener(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.games.multiplayer.OnInvitationReceivedListener listener) + unregisterInvitationListener(com.google.android.gms.common.api.GoogleApiClient apiClient) + interface OnInvitationReceivedListener + onInvitationReceived(com.google.android.gms.games.multiplayer.Invitation invitation) + onInvitationRemoved(java.lang.String invitationId) + interface Participant + getDisplayName(android.database.CharArrayBuffer dataOut) + class ParticipantBuffer + get(int position) + class ParticipantEntity + equals(java.lang.Object obj) + getDisplayName(android.database.CharArrayBuffer dataOut) + writeToParcel(android.os.Parcel dest, int flags) + class ParticipantResult + #ctor(java.lang.String participantId, int result, int placing) + #ctor(android.os.Parcel out, int flags) + class ParticipantUtils + getParticipantId(java.util.ArrayList participants, java.lang.String playerId) +package com.google.android.gms.games.multiplayer.realtime +;--------------------------------------- + interface OnRealTimeMessageReceivedListener + onRealTimeMessageReceived(com.google.android.gms.games.multiplayer.realtime.RealTimeMessage message) + class RealTimeMessage + writeToParcel(android.os.Parcel parcel, int flag) + interface RealTimeMessageReceivedListener + onRealTimeMessageReceived(com.google.android.gms.games.multiplayer.realtime.RealTimeMessage message) + interface RealTimeMultiplayer + create(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.games.multiplayer.realtime.RoomConfig config) + declineInvitation(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String invitationId) + dismissInvitation(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String invitationId) + getSelectOpponentsIntent(com.google.android.gms.common.api.GoogleApiClient apiClient, int minPlayers, int maxPlayers, boolean allowAutomatch) + getSelectOpponentsIntent(com.google.android.gms.common.api.GoogleApiClient apiClient, int minPlayers, int maxPlayers) + getWaitingRoomIntent(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.games.multiplayer.realtime.Room room, int minParticipantsToStart) + join(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.games.multiplayer.realtime.RoomConfig config) + leave(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.games.multiplayer.realtime.RoomUpdateListener listener, java.lang.String roomId) + sendReliableMessage(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.games.multiplayer.realtime.RealTimeMultiplayer.ReliableMessageSentCallback listener, byte[] messageData, java.lang.String roomId, java.lang.String recipientParticipantId) + sendUnreliableMessage(com.google.android.gms.common.api.GoogleApiClient apiClient, byte[] messageData, java.lang.String roomId, java.lang.String recipientParticipantId) + sendUnreliableMessage(com.google.android.gms.common.api.GoogleApiClient apiClient, byte[] messageData, java.lang.String roomId, java.util.List recipientParticipantIds) + sendUnreliableMessageToOthers(com.google.android.gms.common.api.GoogleApiClient apiClient, byte[] messageData, java.lang.String roomId) + interface RealTimeMultiplayer.ReliableMessageSentCallback + onRealTimeMessageSent(int statusCode, int tokenId, java.lang.String recipientParticipantId) + interface Room + getDescription(android.database.CharArrayBuffer dataOut) + getParticipant(java.lang.String participantId) + getParticipantId(java.lang.String playerId) + getParticipantStatus(java.lang.String participantId) + class RoomConfig + #ctor(com.google.android.gms.games.multiplayer.realtime.RoomUpdateCallback callback) + #ctor(com.google.android.gms.games.multiplayer.realtime.RoomUpdateListener listener) + #ctor(int minAutoMatchPlayers, int maxAutoMatchPlayers, long exclusiveBitMask) + class RoomConfig.Builder + addPlayersToInvite(java.lang.String... playerIds) + addPlayersToInvite(java.util.ArrayList playerIds) + setAutoMatchCriteria(android.os.Bundle autoMatchCriteria) + setInvitationIdToAccept(java.lang.String invitationId) + setMessageReceivedListener(com.google.android.gms.games.multiplayer.realtime.RealTimeMessageReceivedListener listener) + setOnMessageReceivedListener(com.google.android.gms.games.multiplayer.realtime.OnRealTimeMessageReceivedListener listener) + setRoomStatusUpdateCallback(com.google.android.gms.games.multiplayer.realtime.RoomStatusUpdateCallback callback) + setRoomStatusUpdateListener(com.google.android.gms.games.multiplayer.realtime.RoomStatusUpdateListener listener) + setVariant(int variant) + class RoomEntity + equals(java.lang.Object obj) + getDescription(android.database.CharArrayBuffer dataOut) + getParticipant(java.lang.String participantId) + getParticipantId(java.lang.String playerId) + getParticipantStatus(java.lang.String participantId) + writeToParcel(android.os.Parcel dest, int flags) + class RoomStatusUpdateCallback + #ctor(com.google.android.gms.games.multiplayer.realtime.Room room) + #ctor(com.google.android.gms.games.multiplayer.realtime.Room room) + #ctor(java.lang.String participantId) + #ctor(java.lang.String participantId) + #ctor(com.google.android.gms.games.multiplayer.realtime.Room room, java.util.List participantIds) + #ctor(com.google.android.gms.games.multiplayer.realtime.Room room, java.util.List participantIds) + #ctor(com.google.android.gms.games.multiplayer.realtime.Room room, java.util.List participantIds) + #ctor(com.google.android.gms.games.multiplayer.realtime.Room room, java.util.List participantIds) + #ctor(com.google.android.gms.games.multiplayer.realtime.Room room, java.util.List participantIds) + #ctor(com.google.android.gms.games.multiplayer.realtime.Room room, java.util.List participantIds) + #ctor(com.google.android.gms.games.multiplayer.realtime.Room room) + #ctor(com.google.android.gms.games.multiplayer.realtime.Room room) + interface RoomStatusUpdateListener + onConnectedToRoom(com.google.android.gms.games.multiplayer.realtime.Room room) + onDisconnectedFromRoom(com.google.android.gms.games.multiplayer.realtime.Room room) + onP2PConnected(java.lang.String participantId) + onP2PDisconnected(java.lang.String participantId) + onPeerDeclined(com.google.android.gms.games.multiplayer.realtime.Room room, java.util.List participantIds) + onPeerInvitedToRoom(com.google.android.gms.games.multiplayer.realtime.Room room, java.util.List participantIds) + onPeerJoined(com.google.android.gms.games.multiplayer.realtime.Room room, java.util.List participantIds) + onPeerLeft(com.google.android.gms.games.multiplayer.realtime.Room room, java.util.List participantIds) + onPeersConnected(com.google.android.gms.games.multiplayer.realtime.Room room, java.util.List participantIds) + onPeersDisconnected(com.google.android.gms.games.multiplayer.realtime.Room room, java.util.List participantIds) + onRoomAutoMatching(com.google.android.gms.games.multiplayer.realtime.Room room) + onRoomConnecting(com.google.android.gms.games.multiplayer.realtime.Room room) + class RoomUpdateCallback + #ctor(int statusCode, com.google.android.gms.games.multiplayer.realtime.Room room) + #ctor(int statusCode, java.lang.String roomId) + #ctor(int statusCode, com.google.android.gms.games.multiplayer.realtime.Room room) + #ctor(int statusCode, com.google.android.gms.games.multiplayer.realtime.Room room) + interface RoomUpdateListener + onJoinedRoom(int statusCode, com.google.android.gms.games.multiplayer.realtime.Room room) + onLeftRoom(int statusCode, java.lang.String roomId) + onRoomConnected(int statusCode, com.google.android.gms.games.multiplayer.realtime.Room room) + onRoomCreated(int statusCode, com.google.android.gms.games.multiplayer.realtime.Room room) +package com.google.android.gms.games.multiplayer.turnbased +;--------------------------------------- + interface OnTurnBasedMatchUpdateReceivedListener + onTurnBasedMatchReceived(com.google.android.gms.games.multiplayer.turnbased.TurnBasedMatch match) + onTurnBasedMatchRemoved(java.lang.String matchId) + interface TurnBasedMatch + getDescription(android.database.CharArrayBuffer dataOut) + getParticipant(java.lang.String participantId) + getParticipantId(java.lang.String playerId) + getParticipantStatus(java.lang.String participantId) + class TurnBasedMatchBuffer + get(int position) + class TurnBasedMatchConfig + #ctor(int minAutoMatchPlayers, int maxAutoMatchPlayers, long exclusiveBitMask) + class TurnBasedMatchConfig.Builder + addInvitedPlayer(java.lang.String playerId) + addInvitedPlayers(java.util.ArrayList playerIds) + setAutoMatchCriteria(android.os.Bundle autoMatchCriteria) + setVariant(int variant) + class TurnBasedMatchEntity + equals(java.lang.Object obj) + getDescription(android.database.CharArrayBuffer dataOut) + getParticipant(java.lang.String participantId) + getParticipantId(java.lang.String playerId) + getParticipantStatus(java.lang.String participantId) + writeToParcel(android.os.Parcel out, int flags) + class TurnBasedMatchUpdateCallback + #ctor(com.google.android.gms.games.multiplayer.turnbased.TurnBasedMatch match) + #ctor(java.lang.String matchId) + interface TurnBasedMultiplayer + acceptInvitation(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String invitationId) + cancelMatch(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String matchId) + createMatch(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.games.multiplayer.turnbased.TurnBasedMatchConfig config) + declineInvitation(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String invitationId) + dismissInvitation(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String invitationId) + dismissMatch(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String matchId) + finishMatch(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String matchId) + finishMatch(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String matchId, byte[] matchData, com.google.android.gms.games.multiplayer.ParticipantResult... results) + finishMatch(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String matchId, byte[] matchData, java.util.List results) + getInboxIntent(com.google.android.gms.common.api.GoogleApiClient apiClient) + getMaxMatchDataSize(com.google.android.gms.common.api.GoogleApiClient apiClient) + getSelectOpponentsIntent(com.google.android.gms.common.api.GoogleApiClient apiClient, int minPlayers, int maxPlayers, boolean allowAutomatch) + getSelectOpponentsIntent(com.google.android.gms.common.api.GoogleApiClient apiClient, int minPlayers, int maxPlayers) + leaveMatch(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String matchId) + leaveMatchDuringTurn(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String matchId, java.lang.String pendingParticipantId) + loadMatch(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String matchId) + loadMatchesByStatus(com.google.android.gms.common.api.GoogleApiClient apiClient, int invitationSortOrder, int[] matchTurnStatuses) + loadMatchesByStatus(com.google.android.gms.common.api.GoogleApiClient apiClient, int[] matchTurnStatuses) + registerMatchUpdateListener(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.games.multiplayer.turnbased.OnTurnBasedMatchUpdateReceivedListener listener) + rematch(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String matchId) + takeTurn(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String matchId, byte[] matchData, java.lang.String pendingParticipantId, com.google.android.gms.games.multiplayer.ParticipantResult... results) + takeTurn(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String matchId, byte[] matchData, java.lang.String pendingParticipantId) + takeTurn(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String matchId, byte[] matchData, java.lang.String pendingParticipantId, java.util.List results) + unregisterMatchUpdateListener(com.google.android.gms.common.api.GoogleApiClient apiClient) +package com.google.android.gms.games.quest +;--------------------------------------- + class MilestoneBuffer + get(int position) + class MilestoneEntity + equals(java.lang.Object obj) + writeToParcel(android.os.Parcel out, int flags) + interface Quest + getDescription(android.database.CharArrayBuffer dataOut) + getName(android.database.CharArrayBuffer dataOut) + class QuestBuffer + get(int position) + class QuestEntity + equals(java.lang.Object obj) + getDescription(android.database.CharArrayBuffer dataOut) + getName(android.database.CharArrayBuffer dataOut) + writeToParcel(android.os.Parcel out, int flags) + interface Quests + accept(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String questId) + claim(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String questId, java.lang.String milestoneId) + getQuestIntent(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String questId) + getQuestsIntent(com.google.android.gms.common.api.GoogleApiClient apiClient, int[] questSelectors) + load(com.google.android.gms.common.api.GoogleApiClient apiClient, int[] questSelectors, int sortOrder, boolean forceReload) + loadByIds(com.google.android.gms.common.api.GoogleApiClient apiClient, boolean forceReload, java.lang.String... questIds) + registerQuestUpdateListener(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.games.quest.QuestUpdateListener listener) + showStateChangedPopup(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String questId) + unregisterQuestUpdateListener(com.google.android.gms.common.api.GoogleApiClient apiClient) + interface QuestUpdateListener + onQuestCompleted(com.google.android.gms.games.quest.Quest quest) +package com.google.android.gms.games.request +;--------------------------------------- + interface GameRequest + getRecipientStatus(java.lang.String playerId) + isConsumed(java.lang.String playerId) + class GameRequestBuffer + get(int position) + class GameRequestEntity + equals(java.lang.Object obj) + getRecipientStatus(java.lang.String playerId) + isConsumed(java.lang.String playerId) + writeToParcel(android.os.Parcel dest, int flags) + interface OnRequestReceivedListener + onRequestReceived(com.google.android.gms.games.request.GameRequest request) + onRequestRemoved(java.lang.String requestId) + interface Requests + acceptRequest(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String requestId) + acceptRequests(com.google.android.gms.common.api.GoogleApiClient apiClient, java.util.List requestIds) + dismissRequest(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String requestId) + dismissRequests(com.google.android.gms.common.api.GoogleApiClient apiClient, java.util.List requestIds) + getGameRequestsFromBundle(android.os.Bundle extras) + getGameRequestsFromInboxResponse(android.content.Intent response) + getInboxIntent(com.google.android.gms.common.api.GoogleApiClient apiClient) + getMaxLifetimeDays(com.google.android.gms.common.api.GoogleApiClient apiClient) + getMaxPayloadSize(com.google.android.gms.common.api.GoogleApiClient apiClient) + getSendIntent(com.google.android.gms.common.api.GoogleApiClient apiClient, int type, byte[] payload, int requestLifetimeDays, android.graphics.Bitmap icon, java.lang.String description) + loadRequests(com.google.android.gms.common.api.GoogleApiClient apiClient, int requestDirection, int types, int sortOrder) + registerRequestListener(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.games.request.OnRequestReceivedListener listener) + unregisterRequestListener(com.google.android.gms.common.api.GoogleApiClient apiClient) + interface Requests.LoadRequestsResult + getRequests(int requestType) + interface Requests.UpdateRequestsResult + getRequestOutcome(java.lang.String requestId) +package com.google.android.gms.games.snapshot +;--------------------------------------- + interface SnapshotContents + modifyBytes(int dstOffset, byte[] content, int srcOffset, int count) + writeBytes(byte[] content) + class SnapshotEntity + equals(java.lang.Object obj) + writeToParcel(android.os.Parcel out, int flags) + interface SnapshotMetadata + getDescription(android.database.CharArrayBuffer dataOut) + class SnapshotMetadataBuffer + get(int position) + class SnapshotMetadataChange.Builder + #ctor(com.google.android.gms.games.snapshot.SnapshotMetadata metadata) + #ctor(android.graphics.Bitmap coverImage) + #ctor(java.lang.String description) + #ctor(long playedTimeMillis) + #ctor(long progressValue) + class SnapshotMetadataEntity + equals(java.lang.Object obj) + getDescription(android.database.CharArrayBuffer dataOut) + writeToParcel(android.os.Parcel out, int flags) + interface Snapshots + commitAndClose(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.games.snapshot.Snapshot snapshot, com.google.android.gms.games.snapshot.SnapshotMetadataChange metadataChange) + delete(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.games.snapshot.SnapshotMetadata metadata) + discardAndClose(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.games.snapshot.Snapshot snapshot) + getMaxCoverImageSize(com.google.android.gms.common.api.GoogleApiClient apiClient) + getMaxDataSize(com.google.android.gms.common.api.GoogleApiClient apiClient) + getSelectSnapshotIntent(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String title, boolean allowAddButton, boolean allowDelete, int maxSnapshots) + getSnapshotFromBundle(android.os.Bundle extras) + load(com.google.android.gms.common.api.GoogleApiClient apiClient, boolean forceReload) + open(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.games.snapshot.SnapshotMetadata metadata) + open(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String fileName, boolean createIfNotFound) + open(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String fileName, boolean createIfNotFound, int conflictPolicy) + open(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.games.snapshot.SnapshotMetadata metadata, int conflictPolicy) + resolveConflict(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String conflictId, java.lang.String snapshotId, com.google.android.gms.games.snapshot.SnapshotMetadataChange metadataChange, com.google.android.gms.games.snapshot.SnapshotContents snapshotContents) + resolveConflict(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String conflictId, com.google.android.gms.games.snapshot.Snapshot snapshot) +package com.google.android.gms.games.stats +;--------------------------------------- + interface Stats + loadPlayerStats(com.google.android.gms.common.api.GoogleApiClient apiClient, boolean forceReload) +package com.google.android.gms.games.video +;--------------------------------------- + class VideoCapabilities + equals(java.lang.Object obj) + isFullySupported(int captureMode, int qualityLevel) + supportsCaptureMode(int captureMode) + supportsQualityLevel(int qualityLevel) + writeToParcel(android.os.Parcel out, int flags) + class VideoConfiguration + isValidCaptureMode(int captureMode, boolean allowUnknown) + isValidQualityLevel(int qualityLevel, boolean allowUnknown) + writeToParcel(android.os.Parcel out, int flags) + class VideoConfiguration.Builder + #ctor(int qualityLevel, int captureMode) + #ctor(int captureMode) + #ctor(int qualityLevel) + interface Videos + getCaptureCapabilities(com.google.android.gms.common.api.GoogleApiClient apiClient) + getCaptureOverlayIntent(com.google.android.gms.common.api.GoogleApiClient apiClient) + getCaptureState(com.google.android.gms.common.api.GoogleApiClient apiClient) + isCaptureAvailable(com.google.android.gms.common.api.GoogleApiClient apiClient, int captureMode) + isCaptureSupported(com.google.android.gms.common.api.GoogleApiClient apiClient) + registerCaptureOverlayStateChangedListener(com.google.android.gms.common.api.GoogleApiClient apiClient, com.google.android.gms.games.video.Videos.CaptureOverlayStateListener listener) + unregisterCaptureOverlayStateChangedListener(com.google.android.gms.common.api.GoogleApiClient apiClient) + interface Videos.CaptureOverlayStateListener + onCaptureOverlayStateChanged(int overlayState) +package com.google.android.gms.gcm +;--------------------------------------- + class GcmListenerService + #ctor(java.lang.String from, android.os.Bundle data) + #ctor(java.lang.String msgId) + #ctor(java.lang.String msgId, java.lang.String error) + class GcmNetworkManager + cancelAllTasks(java.lang.Class gcmTaskService) + cancelTask(java.lang.String tag, java.lang.Class gcmTaskService) + getInstance(android.content.Context context) + schedule(com.google.android.gms.gcm.Task task) + class GcmPubSub + getInstance(android.content.Context context) + subscribe(java.lang.String registrationToken, java.lang.String topic, android.os.Bundle extras) + unsubscribe(java.lang.String registrationToken, java.lang.String topic) + class GcmReceiver + #ctor(android.content.Context context, android.content.Intent intent) + class GcmTaskService + #ctor(android.content.Intent intent) + #ctor(com.google.android.gms.gcm.TaskParams params) + #ctor(android.content.Intent intent, int flags, int startId) + class GoogleCloudMessaging + #ctor(android.content.Context context) + #ctor(android.content.Intent intent) + #ctor(java.lang.String... senderIds) + #ctor(java.lang.String to, java.lang.String msgId, android.os.Bundle data) + #ctor(java.lang.String to, java.lang.String msgId, long timeToLive, android.os.Bundle data) + class OneoffTask + toBundle(android.os.Bundle bundle) + writeToParcel(android.os.Parcel parcel, int flags) + class OneoffTask.Builder + #ctor(long windowStartDelaySeconds, long windowEndDelaySeconds) + #ctor(android.os.Bundle extras) + #ctor(boolean isPersisted) + #ctor(int requiredNetworkState) + #ctor(boolean requiresCharging) + #ctor(java.lang.Class gcmTaskService) + #ctor(java.lang.String tag) + #ctor(boolean updateCurrent) + class PeriodicTask + toBundle(android.os.Bundle bundle) + writeToParcel(android.os.Parcel parcel, int flags) + class PeriodicTask.Builder + #ctor(android.os.Bundle extras) + #ctor(long flexInSeconds) + #ctor(long periodInSeconds) + #ctor(boolean isPersisted) + #ctor(int requiredNetworkState) + #ctor(boolean requiresCharging) + #ctor(java.lang.Class gcmTaskService) + #ctor(java.lang.String tag) + #ctor(boolean updateCurrent) + class Task + writeToParcel(android.os.Parcel parcel, int i) + class Task.Builder + #ctor(android.os.Bundle extras) + #ctor(boolean isPersisted) + #ctor(int requiredNetworkState) + #ctor(boolean requiresCharging) + #ctor(java.lang.Class gcmTaskService) + #ctor(java.lang.String tag) + #ctor(boolean updateCurrent) + class TaskParams + #ctor(java.lang.String tag) + #ctor(java.lang.String tag, android.os.Bundle extras) +package com.google.android.gms.identity.intents +;--------------------------------------- + class Address + #ctor(com.google.android.gms.common.api.GoogleApiClient googleApiClient, com.google.android.gms.identity.intents.UserAddressRequest request, int requestCode) + class Address.AddressOptions + #ctor(int theme) + class UserAddressRequest + writeToParcel(android.os.Parcel out, int flags) + class UserAddressRequest.Builder + addAllowedCountrySpecification(com.google.android.gms.identity.intents.model.CountrySpecification countrySpecification) + addAllowedCountrySpecifications(java.util.Collection countrySpecifications) +package com.google.android.gms.identity.intents.model +;--------------------------------------- + class CountrySpecification + #ctor(java.lang.String countryCode) + #ctor(android.os.Parcel dest, int flags) + class UserAddress + fromIntent(android.content.Intent data) + writeToParcel(android.os.Parcel out, int flags) +package com.google.android.gms.iid +;--------------------------------------- + class InstanceID + deleteToken(java.lang.String authorizedEntity, java.lang.String scope) + getInstance(android.content.Context context) + getToken(java.lang.String authorizedEntity, java.lang.String scope) + getToken(java.lang.String authorizedEntity, java.lang.String scope, android.os.Bundle extras) +package com.google.android.gms.instantapps +;--------------------------------------- + class InstantAppIntentData + writeToParcel(android.os.Parcel dest, %20int flags) + class InstantApps + getActivityCompat(android.app.Activity activity) + getInstantAppsClient(android.app.Activity activity) + getInstantAppsClient(android.content.Context context) + getLauncher(android.content.Context context) + getPackageManagerCompat(android.content.Context context) + showInstallPrompt(android.app.Activity activity, %20android.content.Intent postInstallIntent, %20int requestCode, %20java.lang.String referrer) + class LaunchData + writeToParcel(android.os.Parcel dest, %20int flags) + interface Launcher + getInstantAppIntentData(java.lang.String url, %20android.content.Intent fallbackIntent) + getInstantAppLaunchData(java.lang.String url) + interface PackageManagerCompat + getApplicationInfo(java.lang.String packageName, %20int flags) + getApplicationLabel(android.content.pm.ApplicationInfo info) + getInstallerPackageName(java.lang.String packageName) + getPackageInfo(java.lang.String packageName, %20int flags) + getPackagesForUid(int uid) + isInstantApp(java.lang.String packageName) + setInstantAppCookie(byte[] cookie) +package com.google.android.gms.location +;--------------------------------------- + class ActivityRecognition + getClient(android.app.Activity activity) + getClient(android.content.Context context) + interface ActivityRecognitionApi + removeActivityUpdates(com.google.android.gms.common.api.GoogleApiClient client, android.app.PendingIntent callbackIntent) + requestActivityUpdates(com.google.android.gms.common.api.GoogleApiClient client, long detectionIntervalMillis, android.app.PendingIntent callbackIntent) + class ActivityRecognitionClient + removeActivityTransitionUpdates(android.app.PendingIntent pendingIntent) + removeActivityUpdates(android.app.PendingIntent callbackIntent) + requestActivityTransitionUpdates(com.google.android.gms.location.ActivityTransitionRequest activityTransitionRequest, android.app.PendingIntent pendingIntent) + requestActivityUpdates(long detectionIntervalMillis, android.app.PendingIntent callbackIntent) + class ActivityRecognitionResult + #ctor(java.util.List probableActivities, long time, long elapsedRealtimeMillis) + #ctor(com.google.android.gms.location.DetectedActivity mostProbableActivity, long time, long elapsedRealtimeMillis) + #ctor(android.content.Intent intent) + #ctor(int activityType) + #ctor(android.content.Intent intent) + #ctor(android.os.Parcel out, int flags) + class ActivityTransition + equals(java.lang.Object object) + writeToParcel(android.os.Parcel dest, int flags) + class ActivityTransition.Builder + #ctor(int transition) + #ctor(int activityType) + class ActivityTransitionEvent + #ctor(int activityType, int transitionType, long elapsedRealtimeNanos) + #ctor(java.lang.Object object) + #ctor(android.os.Parcel dest, int flags) + class ActivityTransitionRequest + #ctor(java.util.List transitions) + #ctor(java.lang.Object o) + #ctor(android.content.Intent intent) + #ctor(android.os.Parcel dest, int flags) + class ActivityTransitionResult + #ctor(java.util.List transitionEvents) + #ctor(java.lang.Object o) + #ctor(android.content.Intent intent) + #ctor(android.content.Intent intent) + #ctor(android.os.Parcel dest, int flags) + class DetectedActivity + #ctor(int activityType, int confidence) + #ctor(android.os.Parcel out, int flags) + interface FusedLocationProviderApi + flushLocations(com.google.android.gms.common.api.GoogleApiClient client) + getLastLocation(com.google.android.gms.common.api.GoogleApiClient client) + getLocationAvailability(com.google.android.gms.common.api.GoogleApiClient client) + removeLocationUpdates(com.google.android.gms.common.api.GoogleApiClient client, android.app.PendingIntent callbackIntent) + removeLocationUpdates(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.location.LocationListener listener) + removeLocationUpdates(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.location.LocationCallback callback) + requestLocationUpdates(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.location.LocationRequest request, com.google.android.gms.location.LocationListener listener) + requestLocationUpdates(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.location.LocationRequest request, com.google.android.gms.location.LocationCallback callback, android.os.Looper looper) + requestLocationUpdates(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.location.LocationRequest request, com.google.android.gms.location.LocationListener listener, android.os.Looper looper) + requestLocationUpdates(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.location.LocationRequest request, android.app.PendingIntent callbackIntent) + setMockLocation(com.google.android.gms.common.api.GoogleApiClient client, android.location.Location mockLocation) + setMockMode(com.google.android.gms.common.api.GoogleApiClient client, boolean isMockMode) + class FusedLocationProviderClient + removeLocationUpdates(android.app.PendingIntent callbackIntent) + removeLocationUpdates(com.google.android.gms.location.LocationCallback callback) + requestLocationUpdates(com.google.android.gms.location.LocationRequest request, com.google.android.gms.location.LocationCallback callback, android.os.Looper looper) + requestLocationUpdates(com.google.android.gms.location.LocationRequest request, android.app.PendingIntent callbackIntent) + setMockLocation(android.location.Location mockLocation) + setMockMode(boolean isMockMode) + class Geofence.Builder + #ctor(double latitude, double longitude, float radius) + #ctor(long durationMillis) + #ctor(int loiteringDelayMs) + #ctor(int notificationResponsivenessMs) + #ctor(java.lang.String requestId) + #ctor(int transitionTypes) + class GeofenceStatusCodes + getStatusCodeString(int statusCode) + interface GeofencingApi + addGeofences(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.location.GeofencingRequest geofencingRequest, android.app.PendingIntent pendingIntent) + addGeofences(com.google.android.gms.common.api.GoogleApiClient client, java.util.List geofences, android.app.PendingIntent pendingIntent) + removeGeofences(com.google.android.gms.common.api.GoogleApiClient client, java.util.List geofenceRequestIds) + removeGeofences(com.google.android.gms.common.api.GoogleApiClient client, android.app.PendingIntent pendingIntent) + class GeofencingClient + addGeofences(com.google.android.gms.location.GeofencingRequest geofencingRequest, android.app.PendingIntent pendingIntent) + removeGeofences(java.util.List geofenceRequestIds) + removeGeofences(android.app.PendingIntent pendingIntent) + class GeofencingEvent + fromIntent(android.content.Intent intent) + class GeofencingRequest + writeToParcel(android.os.Parcel dest, int flags) + class GeofencingRequest.Builder + #ctor(com.google.android.gms.location.Geofence geofence) + #ctor(java.util.List geofences) + #ctor(int initialTrigger) + class LocationAvailability + equals(java.lang.Object o) + extractLocationAvailability(android.content.Intent intent) + hasLocationAvailability(android.content.Intent intent) + writeToParcel(android.os.Parcel parcel, int flags) + class LocationCallback + #ctor(com.google.android.gms.location.LocationAvailability locationAvailability) + #ctor(com.google.android.gms.location.LocationResult result) + interface LocationListener + onLocationChanged(android.location.Location location) + class LocationRequest + equals(java.lang.Object object) + setExpirationDuration(long millis) + setExpirationTime(long millis) + setFastestInterval(long millis) + setInterval(long millis) + setMaxWaitTime(long millis) + setNumUpdates(int numUpdates) + setPriority(int priority) + setSmallestDisplacement(float smallestDisplacementMeters) + writeToParcel(android.os.Parcel parcel, int flags) + class LocationResult + create(java.util.List locations) + equals(java.lang.Object other) + extractResult(android.content.Intent intent) + hasResult(android.content.Intent intent) + writeToParcel(android.os.Parcel parcel, int flags) + class LocationServices + getFusedLocationProviderClient(android.app.Activity activity) + getFusedLocationProviderClient(android.content.Context context) + getGeofencingClient(android.app.Activity activity) + getGeofencingClient(android.content.Context context) + getSettingsClient(android.content.Context context) + getSettingsClient(android.app.Activity activity) + class LocationSettingsRequest + writeToParcel(android.os.Parcel dest, int flags) + class LocationSettingsRequest.Builder + #ctor(java.util.Collection requests) + #ctor(com.google.android.gms.location.LocationRequest request) + #ctor(boolean show) + #ctor(boolean needBle) + class LocationSettingsResult + writeToParcel(android.os.Parcel dest, int flags) + class LocationSettingsStates + fromIntent(android.content.Intent intent) + writeToParcel(android.os.Parcel dest, int flags) + interface SettingsApi + checkLocationSettings(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.location.LocationSettingsRequest locationSettingsRequest) + class SettingsClient + checkLocationSettings(com.google.android.gms.location.LocationSettingsRequest locationSettingsRequest) +package com.google.android.gms.location.places +;--------------------------------------- + class AddPlaceRequest + #ctor(java.lang.String name, com.google.android.gms.maps.model.LatLng latLng, java.lang.String address, java.util.List placeTypes, java.lang.String phoneNumber, android.net.Uri websiteUri) + #ctor(java.lang.String name, com.google.android.gms.maps.model.LatLng latLng, java.lang.String address, java.util.List placeTypes, java.lang.String phoneNumber) + #ctor(java.lang.String name, com.google.android.gms.maps.model.LatLng latLng, java.lang.String address, java.util.List placeTypes, android.net.Uri uri) + class AutocompleteFilter.Builder + #ctor(java.lang.String country) + #ctor(int typeFilter) + interface AutocompletePrediction + getFullText(android.text.style.CharacterStyle matchStyle) + getPrimaryText(android.text.style.CharacterStyle matchStyle) + getSecondaryText(android.text.style.CharacterStyle matchStyle) + class AutocompletePredictionBuffer + get(int position) + class AutocompletePredictionBufferResponse + get(int position) + interface GeoDataApi + addPlace(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.location.places.AddPlaceRequest addPlaceRequest) + getAutocompletePredictions(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String query, com.google.android.gms.maps.model.LatLngBounds bounds, com.google.android.gms.location.places.AutocompleteFilter filter) + getPlaceById(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String... placeIds) + getPlacePhotos(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String placeId) + class GeoDataClient + addPlace(com.google.android.gms.location.places.AddPlaceRequest addPlaceRequest) + getAutocompletePredictions(java.lang.String query, com.google.android.gms.maps.model.LatLngBounds bounds, com.google.android.gms.location.places.AutocompleteFilter filter) + getAutocompletePredictions(java.lang.String query, com.google.android.gms.maps.model.LatLngBounds bounds, int boundsMode, com.google.android.gms.location.places.AutocompleteFilter filter) + getPhoto(com.google.android.gms.location.places.PlacePhotoMetadata photoMetadata) + getPlaceById(java.lang.String... placeIds) + getPlacePhotos(java.lang.String placeId) + getScaledPhoto(com.google.android.gms.location.places.PlacePhotoMetadata photoMetadata, int width, int height) + class PlaceBuffer + get(int position) + class PlaceBufferResponse + get(int position) + interface PlaceDetectionApi + getCurrentPlace(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.location.places.PlaceFilter filter) + reportDeviceAtPlace(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.location.places.PlaceReport report) + class PlaceDetectionClient + getCurrentPlace(com.google.android.gms.location.places.PlaceFilter filter) + reportDeviceAtPlace(com.google.android.gms.location.places.PlaceReport report) + class PlaceFilter + #ctor(boolean requireOpenNow, java.util.Collection restrictToPlaceIds) + #ctor(com.google.android.gms.location.places.Place place) + class PlaceLikelihoodBuffer + get(int position) + class PlaceLikelihoodBufferResponse + get(int position) + interface PlacePhotoMetadata + getPhoto(com.google.android.gms.common.api.GoogleApiClient client) + getScaledPhoto(com.google.android.gms.common.api.GoogleApiClient client, int width, int height) + class PlacePhotoMetadataBuffer + get(int position) + class PlaceReport + create(java.lang.String placeId, java.lang.String tag) + class Places + getGeoDataClient(android.app.Activity activity) + getGeoDataClient(android.app.Activity activity, com.google.android.gms.location.places.PlacesOptions options) + getGeoDataClient(android.content.Context context, com.google.android.gms.location.places.PlacesOptions options) + getGeoDataClient(android.content.Context context) + getPlaceDetectionClient(android.content.Context context, com.google.android.gms.location.places.PlacesOptions options) + getPlaceDetectionClient(android.app.Activity activity) + getPlaceDetectionClient(android.app.Activity activity, com.google.android.gms.location.places.PlacesOptions options) + getPlaceDetectionClient(android.content.Context context) + class PlacesOptions + equals(java.lang.Object object) + class PlacesStatusCodes + getStatusCodeString(int statusCode) +package com.google.android.gms.location.places.ui +;--------------------------------------- + class PlaceAutocomplete + getPlace(android.content.Context context, android.content.Intent intent) + getStatus(android.content.Context context, android.content.Intent intent) + class PlaceAutocomplete.IntentBuilder + #ctor(int mode) + #ctor(android.app.Activity activity) + #ctor(com.google.android.gms.maps.model.LatLngBounds bounds) + #ctor(com.google.android.gms.location.places.AutocompleteFilter filter) + class PlaceAutocompleteFragment + #ctor(com.google.android.gms.maps.model.LatLngBounds bounds) + #ctor(com.google.android.gms.location.places.AutocompleteFilter filter) + #ctor(java.lang.CharSequence hint) + #ctor(com.google.android.gms.location.places.ui.PlaceSelectionListener listener) + #ctor(java.lang.CharSequence text) + class PlacePicker + getAttributions(android.content.Intent intent) + getLatLngBounds(android.content.Intent intent) + getPlace(android.content.Context context, android.content.Intent intent) + getPlace(android.content.Intent intent, android.content.Context context) + class PlacePicker.IntentBuilder + #ctor(android.app.Activity activity) + #ctor(com.google.android.gms.maps.model.LatLngBounds latLngBounds) + interface PlaceSelectionListener + onError(com.google.android.gms.common.api.Status status) + onPlaceSelected(com.google.android.gms.location.places.Place place) + class SupportPlaceAutocompleteFragment + #ctor(com.google.android.gms.maps.model.LatLngBounds bounds) + #ctor(com.google.android.gms.location.places.AutocompleteFilter filter) + #ctor(java.lang.CharSequence hint) + #ctor(com.google.android.gms.location.places.ui.PlaceSelectionListener listener) + #ctor(java.lang.CharSequence text) +package com.google.android.gms.maps +;--------------------------------------- + class CameraUpdateFactory + newCameraPosition(com.google.android.gms.maps.model.CameraPosition cameraPosition) + newLatLng(com.google.android.gms.maps.model.LatLng latLng) + newLatLngBounds(com.google.android.gms.maps.model.LatLngBounds bounds, int padding) + newLatLngBounds(com.google.android.gms.maps.model.LatLngBounds bounds, int width, int height, int padding) + newLatLngZoom(com.google.android.gms.maps.model.LatLng latLng, float zoom) + scrollBy(float xPixel, float yPixel) + zoomBy(float amount, android.graphics.Point focus) + zoomBy(float amount) + zoomTo(float zoom) + class GoogleMap + addCircle(com.google.android.gms.maps.model.CircleOptions options) + addGroundOverlay(com.google.android.gms.maps.model.GroundOverlayOptions options) + addMarker(com.google.android.gms.maps.model.MarkerOptions options) + addPolygon(com.google.android.gms.maps.model.PolygonOptions options) + addPolyline(com.google.android.gms.maps.model.PolylineOptions options) + addTileOverlay(com.google.android.gms.maps.model.TileOverlayOptions options) + animateCamera(com.google.android.gms.maps.CameraUpdate update, com.google.android.gms.maps.GoogleMap.CancelableCallback callback) + animateCamera(com.google.android.gms.maps.CameraUpdate update) + animateCamera(com.google.android.gms.maps.CameraUpdate update, int durationMs, com.google.android.gms.maps.GoogleMap.CancelableCallback callback) + moveCamera(com.google.android.gms.maps.CameraUpdate update) + setBuildingsEnabled(boolean enabled) + setContentDescription(java.lang.String description) + setIndoorEnabled(boolean enabled) + setInfoWindowAdapter(com.google.android.gms.maps.GoogleMap.InfoWindowAdapter adapter) + setLatLngBoundsForCameraTarget(com.google.android.gms.maps.model.LatLngBounds bounds) + setLocationSource(com.google.android.gms.maps.LocationSource source) + setMapStyle(com.google.android.gms.maps.model.MapStyleOptions style) + setMapType(int type) + setMaxZoomPreference(float maxZoomPreference) + setMinZoomPreference(float minZoomPreference) + setMyLocationEnabled(boolean enabled) + setOnCameraChangeListener(com.google.android.gms.maps.GoogleMap.OnCameraChangeListener listener) + setOnCameraIdleListener(com.google.android.gms.maps.GoogleMap.OnCameraIdleListener listener) + setOnCameraMoveCanceledListener(com.google.android.gms.maps.GoogleMap.OnCameraMoveCanceledListener listener) + setOnCameraMoveListener(com.google.android.gms.maps.GoogleMap.OnCameraMoveListener listener) + setOnCameraMoveStartedListener(com.google.android.gms.maps.GoogleMap.OnCameraMoveStartedListener listener) + setOnCircleClickListener(com.google.android.gms.maps.GoogleMap.OnCircleClickListener listener) + setOnGroundOverlayClickListener(com.google.android.gms.maps.GoogleMap.OnGroundOverlayClickListener listener) + setOnIndoorStateChangeListener(com.google.android.gms.maps.GoogleMap.OnIndoorStateChangeListener listener) + setOnInfoWindowClickListener(com.google.android.gms.maps.GoogleMap.OnInfoWindowClickListener listener) + setOnInfoWindowCloseListener(com.google.android.gms.maps.GoogleMap.OnInfoWindowCloseListener listener) + setOnInfoWindowLongClickListener(com.google.android.gms.maps.GoogleMap.OnInfoWindowLongClickListener listener) + setOnMapClickListener(com.google.android.gms.maps.GoogleMap.OnMapClickListener listener) + setOnMapLoadedCallback(com.google.android.gms.maps.GoogleMap.OnMapLoadedCallback callback) + setOnMapLongClickListener(com.google.android.gms.maps.GoogleMap.OnMapLongClickListener listener) + setOnMarkerClickListener(com.google.android.gms.maps.GoogleMap.OnMarkerClickListener listener) + setOnMarkerDragListener(com.google.android.gms.maps.GoogleMap.OnMarkerDragListener listener) + setOnMyLocationButtonClickListener(com.google.android.gms.maps.GoogleMap.OnMyLocationButtonClickListener listener) + setOnMyLocationChangeListener(com.google.android.gms.maps.GoogleMap.OnMyLocationChangeListener listener) + setOnMyLocationClickListener(com.google.android.gms.maps.GoogleMap.OnMyLocationClickListener listener) + setOnPoiClickListener(com.google.android.gms.maps.GoogleMap.OnPoiClickListener listener) + setOnPolygonClickListener(com.google.android.gms.maps.GoogleMap.OnPolygonClickListener listener) + setOnPolylineClickListener(com.google.android.gms.maps.GoogleMap.OnPolylineClickListener listener) + setPadding(int left, int top, int right, int bottom) + setTrafficEnabled(boolean enabled) + snapshot(com.google.android.gms.maps.GoogleMap.SnapshotReadyCallback callback, android.graphics.Bitmap bitmap) + snapshot(com.google.android.gms.maps.GoogleMap.SnapshotReadyCallback callback) + interface GoogleMap.InfoWindowAdapter + getInfoContents(com.google.android.gms.maps.model.Marker marker) + getInfoWindow(com.google.android.gms.maps.model.Marker marker) + interface GoogleMap.OnCameraChangeListener + onCameraChange(com.google.android.gms.maps.model.CameraPosition position) + interface GoogleMap.OnCameraMoveStartedListener + onCameraMoveStarted(int reason) + interface GoogleMap.OnCircleClickListener + onCircleClick(com.google.android.gms.maps.model.Circle circle) + interface GoogleMap.OnGroundOverlayClickListener + onGroundOverlayClick(com.google.android.gms.maps.model.GroundOverlay groundOverlay) + interface GoogleMap.OnIndoorStateChangeListener + onIndoorLevelActivated(com.google.android.gms.maps.model.IndoorBuilding building) + interface GoogleMap.OnInfoWindowClickListener + onInfoWindowClick(com.google.android.gms.maps.model.Marker marker) + interface GoogleMap.OnInfoWindowCloseListener + onInfoWindowClose(com.google.android.gms.maps.model.Marker marker) + interface GoogleMap.OnInfoWindowLongClickListener + onInfoWindowLongClick(com.google.android.gms.maps.model.Marker marker) + interface GoogleMap.OnMapClickListener + onMapClick(com.google.android.gms.maps.model.LatLng point) + interface GoogleMap.OnMapLongClickListener + onMapLongClick(com.google.android.gms.maps.model.LatLng point) + interface GoogleMap.OnMarkerClickListener + onMarkerClick(com.google.android.gms.maps.model.Marker marker) + interface GoogleMap.OnMarkerDragListener + onMarkerDrag(com.google.android.gms.maps.model.Marker marker) + onMarkerDragEnd(com.google.android.gms.maps.model.Marker marker) + onMarkerDragStart(com.google.android.gms.maps.model.Marker marker) + interface GoogleMap.OnMyLocationChangeListener + onMyLocationChange(android.location.Location location) + interface GoogleMap.OnMyLocationClickListener + onMyLocationClick(android.location.Location location) + interface GoogleMap.OnPoiClickListener + onPoiClick(com.google.android.gms.maps.model.PointOfInterest poi) + interface GoogleMap.OnPolygonClickListener + onPolygonClick(com.google.android.gms.maps.model.Polygon polygon) + interface GoogleMap.OnPolylineClickListener + onPolylineClick(com.google.android.gms.maps.model.Polyline polyline) + interface GoogleMap.SnapshotReadyCallback + onSnapshotReady(android.graphics.Bitmap snapshot) + class GoogleMapOptions + #ctor(boolean enabled) + #ctor(com.google.android.gms.maps.model.CameraPosition camera) + #ctor(boolean enabled) + #ctor(android.content.Context context, android.util.AttributeSet attrs) + #ctor(com.google.android.gms.maps.model.LatLngBounds llbounds) + #ctor(boolean enabled) + #ctor(boolean enabled) + #ctor(int mapType) + #ctor(float maxZoomPreference) + #ctor(float minZoomPreference) + #ctor(boolean enabled) + #ctor(boolean enabled) + #ctor(boolean enabled) + #ctor(boolean enabled) + #ctor(boolean useViewLifecycleInFragment) + #ctor(android.os.Parcel out, int flags) + #ctor(boolean zOrderOnTop) + #ctor(boolean enabled) + #ctor(boolean enabled) + interface LocationSource + activate(com.google.android.gms.maps.LocationSource.OnLocationChangedListener listener) + interface LocationSource.OnLocationChangedListener + onLocationChanged(android.location.Location location) + class MapFragment + #ctor(com.google.android.gms.maps.OnMapReadyCallback callback) + #ctor(com.google.android.gms.maps.GoogleMapOptions options) + #ctor(android.os.Bundle savedInstanceState) + #ctor(android.app.Activity activity) + #ctor(android.os.Bundle savedInstanceState) + #ctor(android.view.LayoutInflater inflater, android.view.ViewGroup container, android.os.Bundle savedInstanceState) + #ctor(android.os.Bundle ambientDetails) + #ctor(android.app.Activity activity, android.util.AttributeSet attrs, android.os.Bundle savedInstanceState) + #ctor(android.os.Bundle outState) + #ctor(android.os.Bundle args) + class MapsInitializer + initialize(android.content.Context context) + class MapView + #ctor(android.content.Context context) + #ctor(android.content.Context context, android.util.AttributeSet attrs) + #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyle) + #ctor(android.content.Context context, com.google.android.gms.maps.GoogleMapOptions options) + #ctor(com.google.android.gms.maps.OnMapReadyCallback callback) + #ctor(android.os.Bundle savedInstanceState) + #ctor(android.os.Bundle ambientDetails) + #ctor(android.os.Bundle outState) + interface OnMapReadyCallback + onMapReady(com.google.android.gms.maps.GoogleMap googleMap) + interface OnStreetViewPanoramaReadyCallback + onStreetViewPanoramaReady(com.google.android.gms.maps.StreetViewPanorama panorama) + class Projection + fromScreenLocation(android.graphics.Point point) + toScreenLocation(com.google.android.gms.maps.model.LatLng location) + class StreetViewPanorama + animateTo(com.google.android.gms.maps.model.StreetViewPanoramaCamera camera, long duration) + orientationToPoint(com.google.android.gms.maps.model.StreetViewPanoramaOrientation orientation) + pointToOrientation(android.graphics.Point point) + setOnStreetViewPanoramaCameraChangeListener(com.google.android.gms.maps.StreetViewPanorama.OnStreetViewPanoramaCameraChangeListener listener) + setOnStreetViewPanoramaChangeListener(com.google.android.gms.maps.StreetViewPanorama.OnStreetViewPanoramaChangeListener listener) + setOnStreetViewPanoramaClickListener(com.google.android.gms.maps.StreetViewPanorama.OnStreetViewPanoramaClickListener listener) + setOnStreetViewPanoramaLongClickListener(com.google.android.gms.maps.StreetViewPanorama.OnStreetViewPanoramaLongClickListener listener) + setPanningGesturesEnabled(boolean enablePanning) + setPosition(com.google.android.gms.maps.model.LatLng position, com.google.android.gms.maps.model.StreetViewSource source) + setPosition(com.google.android.gms.maps.model.LatLng position) + setPosition(com.google.android.gms.maps.model.LatLng position, int radius) + setPosition(com.google.android.gms.maps.model.LatLng position, int radius, com.google.android.gms.maps.model.StreetViewSource source) + setPosition(java.lang.String panoId) + setStreetNamesEnabled(boolean enableStreetNames) + setUserNavigationEnabled(boolean enableUserNavigation) + setZoomGesturesEnabled(boolean enableZoom) + interface StreetViewPanorama.OnStreetViewPanoramaCameraChangeListener + onStreetViewPanoramaCameraChange(com.google.android.gms.maps.model.StreetViewPanoramaCamera camera) + interface StreetViewPanorama.OnStreetViewPanoramaChangeListener + onStreetViewPanoramaChange(com.google.android.gms.maps.model.StreetViewPanoramaLocation location) + interface StreetViewPanorama.OnStreetViewPanoramaClickListener + onStreetViewPanoramaClick(com.google.android.gms.maps.model.StreetViewPanoramaOrientation orientation) + interface StreetViewPanorama.OnStreetViewPanoramaLongClickListener + onStreetViewPanoramaLongClick(com.google.android.gms.maps.model.StreetViewPanoramaOrientation orientation) + class StreetViewPanoramaFragment + #ctor(com.google.android.gms.maps.OnStreetViewPanoramaReadyCallback callback) + #ctor(com.google.android.gms.maps.StreetViewPanoramaOptions options) + #ctor(android.os.Bundle savedInstanceState) + #ctor(android.app.Activity activity) + #ctor(android.os.Bundle savedInstanceState) + #ctor(android.view.LayoutInflater inflater, android.view.ViewGroup container, android.os.Bundle savedInstanceState) + #ctor(android.app.Activity activity, android.util.AttributeSet attrs, android.os.Bundle savedInstanceState) + #ctor(android.os.Bundle outState) + #ctor(android.os.Bundle args) + class StreetViewPanoramaOptions + #ctor(boolean enabled) + #ctor(com.google.android.gms.maps.model.StreetViewPanoramaCamera camera) + #ctor(java.lang.String panoId) + #ctor(com.google.android.gms.maps.model.LatLng position) + #ctor(com.google.android.gms.maps.model.LatLng position, java.lang.Integer radius, com.google.android.gms.maps.model.StreetViewSource source) + #ctor(com.google.android.gms.maps.model.LatLng position, java.lang.Integer radius) + #ctor(com.google.android.gms.maps.model.LatLng position, com.google.android.gms.maps.model.StreetViewSource source) + #ctor(boolean enabled) + #ctor(boolean useViewLifecycleInFragment) + #ctor(boolean enabled) + #ctor(android.os.Parcel out, int flags) + #ctor(boolean enabled) + class StreetViewPanoramaView + #ctor(android.content.Context context) + #ctor(android.content.Context context, android.util.AttributeSet attrs) + #ctor(android.content.Context context, android.util.AttributeSet attrs, int defStyle) + #ctor(android.content.Context context, com.google.android.gms.maps.StreetViewPanoramaOptions options) + #ctor(com.google.android.gms.maps.OnStreetViewPanoramaReadyCallback callback) + #ctor(android.os.Bundle savedInstanceState) + #ctor(android.os.Bundle outState) + class SupportMapFragment + #ctor(com.google.android.gms.maps.OnMapReadyCallback callback) + #ctor(com.google.android.gms.maps.GoogleMapOptions options) + #ctor(android.os.Bundle savedInstanceState) + #ctor(android.app.Activity activity) + #ctor(android.os.Bundle savedInstanceState) + #ctor(android.view.LayoutInflater inflater, android.view.ViewGroup container, android.os.Bundle savedInstanceState) + #ctor(android.os.Bundle ambientDetails) + #ctor(android.app.Activity activity, android.util.AttributeSet attrs, android.os.Bundle savedInstanceState) + #ctor(android.os.Bundle outState) + #ctor(android.os.Bundle args) + class SupportStreetViewPanoramaFragment + #ctor(com.google.android.gms.maps.OnStreetViewPanoramaReadyCallback callback) + #ctor(com.google.android.gms.maps.StreetViewPanoramaOptions options) + #ctor(android.os.Bundle savedInstanceState) + #ctor(android.app.Activity activity) + #ctor(android.os.Bundle savedInstanceState) + #ctor(android.view.LayoutInflater inflater, android.view.ViewGroup container, android.os.Bundle savedInstanceState) + #ctor(android.app.Activity activity, android.util.AttributeSet attrs, android.os.Bundle savedInstanceState) + #ctor(android.os.Bundle outState) + #ctor(android.os.Bundle args) + class UiSettings + setAllGesturesEnabled(boolean enabled) + setCompassEnabled(boolean enabled) + setIndoorLevelPickerEnabled(boolean enabled) + setMapToolbarEnabled(boolean enabled) + setMyLocationButtonEnabled(boolean enabled) + setRotateGesturesEnabled(boolean enabled) + setScrollGesturesEnabled(boolean enabled) + setScrollGesturesEnabledDuringRotateOrZoom(boolean enabled) + setTiltGesturesEnabled(boolean enabled) + setZoomControlsEnabled(boolean enabled) + setZoomGesturesEnabled(boolean enabled) +package com.google.android.gms.maps.model +;--------------------------------------- + class BitmapDescriptorFactory + defaultMarker(float hue) + fromAsset(java.lang.String assetName) + fromBitmap(android.graphics.Bitmap image) + fromFile(java.lang.String fileName) + fromPath(java.lang.String absolutePath) + fromResource(int resourceId) + class CameraPosition + #ctor(com.google.android.gms.maps.model.LatLng target, float zoom, float tilt, float bearing) + #ctor(com.google.android.gms.maps.model.CameraPosition camera) + #ctor(android.content.Context context, android.util.AttributeSet attrs) + #ctor(java.lang.Object o) + #ctor(com.google.android.gms.maps.model.LatLng target, float zoom) + #ctor(android.os.Parcel out, int flags) + class CameraPosition.Builder + #ctor(com.google.android.gms.maps.model.CameraPosition previous) + #ctor(float bearing) + #ctor(com.google.android.gms.maps.model.LatLng location) + #ctor(float tilt) + #ctor(float zoom) + class Cap + equals(java.lang.Object o) + writeToParcel(android.os.Parcel out, int flags) + class Circle + setCenter(com.google.android.gms.maps.model.LatLng center) + setClickable(boolean clickable) + setFillColor(int color) + setRadius(double radius) + setStrokeColor(int color) + setStrokePattern(java.util.List pattern) + setStrokeWidth(float width) + setTag(java.lang.Object tag) + setVisible(boolean visible) + setZIndex(float zIndex) + class CircleOptions + #ctor(com.google.android.gms.maps.model.LatLng center) + #ctor(boolean clickable) + #ctor(int color) + #ctor(double radius) + #ctor(int color) + #ctor(java.util.List pattern) + #ctor(float width) + #ctor(boolean visible) + #ctor(float zIndex) + class CustomCap + #ctor(com.google.android.gms.maps.model.BitmapDescriptor bitmapDescriptor, float refWidth) + #ctor(com.google.android.gms.maps.model.BitmapDescriptor bitmapDescriptor) + class Dash + #ctor(float length) + class Gap + #ctor(float length) + class GroundOverlay + equals(java.lang.Object other) + setBearing(float bearing) + setClickable(boolean clickable) + setDimensions(float width, float height) + setDimensions(float width) + setImage(com.google.android.gms.maps.model.BitmapDescriptor imageDescriptor) + setPosition(com.google.android.gms.maps.model.LatLng latLng) + setPositionFromBounds(com.google.android.gms.maps.model.LatLngBounds bounds) + setTag(java.lang.Object tag) + setTransparency(float transparency) + setVisible(boolean visible) + setZIndex(float zIndex) + class GroundOverlayOptions + #ctor(float u, float v) + #ctor(float bearing) + #ctor(boolean clickable) + #ctor(com.google.android.gms.maps.model.BitmapDescriptor imageDescriptor) + #ctor(com.google.android.gms.maps.model.LatLng location, float width) + #ctor(com.google.android.gms.maps.model.LatLng location, float width, float height) + #ctor(com.google.android.gms.maps.model.LatLngBounds bounds) + #ctor(float transparency) + #ctor(boolean visible) + #ctor(android.os.Parcel out, int flags) + #ctor(float zIndex) + class IndoorBuilding + equals(java.lang.Object other) + class IndoorLevel + equals(java.lang.Object other) + class LatLng + #ctor(double latitude, double longitude) + #ctor(java.lang.Object o) + #ctor(android.os.Parcel out, int flags) + class LatLngBounds + #ctor(com.google.android.gms.maps.model.LatLng southwest, com.google.android.gms.maps.model.LatLng northeast) + #ctor(com.google.android.gms.maps.model.LatLng point) + #ctor(android.content.Context context, android.util.AttributeSet attrs) + #ctor(java.lang.Object o) + #ctor(com.google.android.gms.maps.model.LatLng point) + #ctor(android.os.Parcel out, int flags) + class LatLngBounds.Builder + #ctor(com.google.android.gms.maps.model.LatLng point) + class MapStyleOptions + #ctor(java.lang.String json) + #ctor(android.content.Context clientContext, int resourceId) + #ctor(android.os.Parcel out, int flags) + class Marker + equals(java.lang.Object other) + setAlpha(float alpha) + setAnchor(float anchorU, float anchorV) + setDraggable(boolean draggable) + setFlat(boolean flat) + setIcon(com.google.android.gms.maps.model.BitmapDescriptor iconDescriptor) + setInfoWindowAnchor(float anchorU, float anchorV) + setPosition(com.google.android.gms.maps.model.LatLng latlng) + setRotation(float rotation) + setSnippet(java.lang.String snippet) + setTag(java.lang.Object tag) + setTitle(java.lang.String title) + setVisible(boolean visible) + setZIndex(float zIndex) + class MarkerOptions + #ctor(float alpha) + #ctor(float u, float v) + #ctor(boolean draggable) + #ctor(boolean flat) + #ctor(com.google.android.gms.maps.model.BitmapDescriptor iconDescriptor) + #ctor(float u, float v) + #ctor(com.google.android.gms.maps.model.LatLng latlng) + #ctor(float rotation) + #ctor(java.lang.String snippet) + #ctor(java.lang.String title) + #ctor(boolean visible) + #ctor(android.os.Parcel out, int flags) + #ctor(float zIndex) + class PatternItem + equals(java.lang.Object o) + writeToParcel(android.os.Parcel out, int flags) + class PointOfInterest + #ctor(com.google.android.gms.maps.model.LatLng latLng, java.lang.String placeId, java.lang.String name) + #ctor(android.os.Parcel out, int flags) + class Polygon + equals(java.lang.Object other) + setClickable(boolean clickable) + setFillColor(int color) + setGeodesic(boolean geodesic) + setHoles(java.util.List> holes) + setPoints(java.util.List points) + setStrokeColor(int color) + setStrokeJointType(int jointType) + setStrokePattern(java.util.List pattern) + setStrokeWidth(float width) + setTag(java.lang.Object tag) + setVisible(boolean visible) + setZIndex(float zIndex) + class PolygonOptions + #ctor(com.google.android.gms.maps.model.LatLng... points) + #ctor(com.google.android.gms.maps.model.LatLng point) + #ctor(java.lang.Iterable points) + #ctor(java.lang.Iterable points) + #ctor(boolean clickable) + #ctor(int color) + #ctor(boolean geodesic) + #ctor(int color) + #ctor(int jointType) + #ctor(java.util.List pattern) + #ctor(float width) + #ctor(boolean visible) + #ctor(android.os.Parcel out, int flags) + #ctor(float zIndex) + class Polyline + equals(java.lang.Object other) + setClickable(boolean clickable) + setColor(int color) + setEndCap(com.google.android.gms.maps.model.Cap endCap) + setGeodesic(boolean geodesic) + setJointType(int jointType) + setPattern(java.util.List pattern) + setPoints(java.util.List points) + setStartCap(com.google.android.gms.maps.model.Cap startCap) + setTag(java.lang.Object tag) + setVisible(boolean visible) + setWidth(float width) + setZIndex(float zIndex) + class PolylineOptions + #ctor(com.google.android.gms.maps.model.LatLng... points) + #ctor(com.google.android.gms.maps.model.LatLng point) + #ctor(java.lang.Iterable points) + #ctor(boolean clickable) + #ctor(int color) + #ctor(com.google.android.gms.maps.model.Cap endCap) + #ctor(boolean geodesic) + #ctor(int jointType) + #ctor(java.util.List pattern) + #ctor(com.google.android.gms.maps.model.Cap startCap) + #ctor(boolean visible) + #ctor(float width) + #ctor(android.os.Parcel out, int flags) + #ctor(float zIndex) + class RuntimeRemoteException + #ctor(android.os.RemoteException e) + class StreetViewPanoramaCamera + #ctor(float zoom, float tilt, float bearing) + #ctor(com.google.android.gms.maps.model.StreetViewPanoramaCamera camera) + #ctor(java.lang.Object o) + #ctor(android.os.Parcel out, int flags) + class StreetViewPanoramaCamera.Builder + #ctor(com.google.android.gms.maps.model.StreetViewPanoramaCamera previous) + #ctor(float bearing) + #ctor(com.google.android.gms.maps.model.StreetViewPanoramaOrientation orientation) + #ctor(float tilt) + #ctor(float zoom) + class StreetViewPanoramaLink + equals(java.lang.Object o) + writeToParcel(android.os.Parcel out, int flags) + class StreetViewPanoramaLocation + #ctor(com.google.android.gms.maps.model.StreetViewPanoramaLink[] links, com.google.android.gms.maps.model.LatLng position, java.lang.String panoId) + #ctor(java.lang.Object o) + #ctor(android.os.Parcel out, int flags) + class StreetViewPanoramaOrientation + #ctor(float tilt, float bearing) + #ctor(com.google.android.gms.maps.model.StreetViewPanoramaOrientation orientation) + #ctor(java.lang.Object o) + #ctor(android.os.Parcel out, int flags) + class StreetViewPanoramaOrientation.Builder + #ctor(com.google.android.gms.maps.model.StreetViewPanoramaOrientation previous) + #ctor(float bearing) + #ctor(float tilt) + class StreetViewSource + equals(java.lang.Object o) + writeToParcel(android.os.Parcel out, int flags) + class Tile + #ctor(int width, int height, byte[] data) + #ctor(android.os.Parcel out, int flags) + class TileOverlay + equals(java.lang.Object other) + setFadeIn(boolean fadeIn) + setTransparency(float transparency) + setVisible(boolean visible) + setZIndex(float zIndex) + class TileOverlayOptions + #ctor(boolean fadeIn) + #ctor(com.google.android.gms.maps.model.TileProvider tileProvider) + #ctor(float transparency) + #ctor(boolean visible) + #ctor(android.os.Parcel out, int flags) + #ctor(float zIndex) + interface TileProvider + getTile(int x, int y, int zoom) + class UrlTileProvider + #ctor(int width, int height) + #ctor(int x, int y, int zoom) + #ctor(int x, int y, int zoom) + class VisibleRegion + #ctor(com.google.android.gms.maps.model.LatLng nearLeft, com.google.android.gms.maps.model.LatLng nearRight, com.google.android.gms.maps.model.LatLng farLeft, com.google.android.gms.maps.model.LatLng farRight, com.google.android.gms.maps.model.LatLngBounds latLngBounds) + #ctor(java.lang.Object o) + #ctor(android.os.Parcel out, int flags) +package com.google.android.gms.measurement +;--------------------------------------- + class AppMeasurementContentProvider + #ctor(android.content.Context context, android.content.pm.ProviderInfo info) + #ctor(android.net.Uri uri, java.lang.String selection, java.lang.String[] selectionArgs) + #ctor(android.net.Uri uri) + #ctor(android.net.Uri uri, android.content.ContentValues values) + #ctor(android.net.Uri uri, java.lang.String[] projection, java.lang.String selection, java.lang.String[] selectionArgs, java.lang.String sortOrder) + #ctor(android.net.Uri uri, android.content.ContentValues values, java.lang.String selection, java.lang.String[] selectionArgs) + class AppMeasurementInstallReferrerReceiver + #ctor(android.content.Context context, android.content.Intent service) + #ctor(android.content.Context context, android.content.Intent intent) + class AppMeasurementJobService + #ctor(android.content.Intent intent) + #ctor(android.app.job.JobParameters params) + #ctor(android.app.job.JobParameters params) + #ctor(android.content.Intent intent) + class AppMeasurementReceiver + #ctor(android.content.Context context, android.content.Intent service) + #ctor(android.content.Context context, android.content.Intent intent) + class AppMeasurementService + #ctor(android.content.Intent intent) + #ctor(android.content.Intent intent) + #ctor(android.content.Intent intent, int flags, int startId) + #ctor(android.content.Intent intent) +package com.google.android.gms.nearby.connection +;--------------------------------------- + class AdvertisingOptions + #ctor(com.google.android.gms.nearby.connection.Strategy strategy) + #ctor(java.lang.Object other) + #ctor(android.os.Parcel dest, int flags) + class AdvertisingOptions.Builder + #ctor(com.google.android.gms.nearby.connection.AdvertisingOptions origin) + #ctor(com.google.android.gms.nearby.connection.Strategy strategy) + class AppIdentifier + #ctor(java.lang.String identifier) + #ctor(android.os.Parcel out, int flags) + class AppMetadata + #ctor(java.util.List appIdentifiers) + #ctor(android.os.Parcel out, int flags) + class ConnectionInfo + #ctor(java.lang.String endpointName, java.lang.String authenticationToken, boolean isIncomingConnection) + class ConnectionLifecycleCallback + #ctor(java.lang.String endpointId, com.google.android.gms.nearby.connection.ConnectionInfo connectionInfo) + #ctor(java.lang.String endpointId, com.google.android.gms.nearby.connection.ConnectionResolution resolution) + #ctor(java.lang.String endpointId) + class ConnectionResolution + #ctor(com.google.android.gms.common.api.Status status) + interface Connections + acceptConnection(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String endpointId, com.google.android.gms.nearby.connection.PayloadCallback payloadCallback) + acceptConnectionRequest(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String endpointId, byte[] handshakeData, com.google.android.gms.nearby.connection.Connections.MessageListener messageListener) + cancelPayload(com.google.android.gms.common.api.GoogleApiClient apiClient, long payloadId) + disconnectFromEndpoint(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String endpointId) + rejectConnection(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String endpointId) + rejectConnectionRequest(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String remoteEndpointId) + requestConnection(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String name, java.lang.String endpointId, com.google.android.gms.nearby.connection.ConnectionLifecycleCallback connectionLifecycleCallback) + sendConnectionRequest(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String name, java.lang.String remoteEndpointId, byte[] handshakeData, com.google.android.gms.nearby.connection.Connections.ConnectionResponseCallback connectionResponseCallback, com.google.android.gms.nearby.connection.Connections.MessageListener messageListener) + sendPayload(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String endpointId, com.google.android.gms.nearby.connection.Payload payload) + sendPayload(com.google.android.gms.common.api.GoogleApiClient apiClient, java.util.List endpointIds, com.google.android.gms.nearby.connection.Payload payload) + sendReliableMessage(com.google.android.gms.common.api.GoogleApiClient apiClient, java.util.List remoteEndpointIds, byte[] payload) + sendReliableMessage(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String remoteEndpointId, byte[] payload) + sendUnreliableMessage(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String remoteEndpointId, byte[] payload) + sendUnreliableMessage(com.google.android.gms.common.api.GoogleApiClient apiClient, java.util.List remoteEndpointIds, byte[] payload) + startAdvertising(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String name, java.lang.String serviceId, com.google.android.gms.nearby.connection.ConnectionLifecycleCallback connectionLifecycleCallback, com.google.android.gms.nearby.connection.AdvertisingOptions options) + startAdvertising(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String name, com.google.android.gms.nearby.connection.AppMetadata appMetadata, long durationMillis, com.google.android.gms.nearby.connection.Connections.ConnectionRequestListener connectionRequestListener) + startDiscovery(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String serviceId, long durationMillis, com.google.android.gms.nearby.connection.Connections.EndpointDiscoveryListener listener) + startDiscovery(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String serviceId, com.google.android.gms.nearby.connection.EndpointDiscoveryCallback endpointDiscoveryCallback, com.google.android.gms.nearby.connection.DiscoveryOptions options) + stopAdvertising(com.google.android.gms.common.api.GoogleApiClient apiClient) + stopAllEndpoints(com.google.android.gms.common.api.GoogleApiClient apiClient) + stopDiscovery(com.google.android.gms.common.api.GoogleApiClient apiClient) + stopDiscovery(com.google.android.gms.common.api.GoogleApiClient apiClient, java.lang.String serviceId) + class Connections.ConnectionRequestListener + #ctor(java.lang.String remoteEndpointId, java.lang.String remoteEndpointName, byte[] handshakeData) + interface Connections.ConnectionResponseCallback + onConnectionResponse(java.lang.String remoteEndpointId, com.google.android.gms.common.api.Status status, byte[] handshakeData) + class Connections.EndpointDiscoveryListener + #ctor(java.lang.String endpointId, java.lang.String serviceId, java.lang.String name) + #ctor(java.lang.String endpointId) + interface Connections.MessageListener + onDisconnected(java.lang.String endpointId) + onMessageReceived(java.lang.String endpointId, byte[] payload, boolean isReliable) + class ConnectionsClient + acceptConnection(java.lang.String endpointId, com.google.android.gms.nearby.connection.PayloadCallback payloadCallback) + cancelPayload(long payloadId) + disconnectFromEndpoint(java.lang.String endpointId) + rejectConnection(java.lang.String endpointId) + requestConnection(java.lang.String name, java.lang.String endpointId, com.google.android.gms.nearby.connection.ConnectionLifecycleCallback connectionLifecycleCallback) + sendPayload(java.lang.String endpointId, com.google.android.gms.nearby.connection.Payload payload) + sendPayload(java.util.List endpointIds, com.google.android.gms.nearby.connection.Payload payload) + startAdvertising(java.lang.String name, java.lang.String serviceId, com.google.android.gms.nearby.connection.ConnectionLifecycleCallback connectionLifecycleCallback, com.google.android.gms.nearby.connection.AdvertisingOptions options) + startDiscovery(java.lang.String serviceId, com.google.android.gms.nearby.connection.EndpointDiscoveryCallback endpointDiscoveryCallback, com.google.android.gms.nearby.connection.DiscoveryOptions options) + class ConnectionsStatusCodes + getStatusCodeString(int statusCode) + class DiscoveredEndpointInfo + #ctor(java.lang.String serviceId, java.lang.String endpointName) + class DiscoveryOptions + #ctor(com.google.android.gms.nearby.connection.Strategy strategy) + #ctor(java.lang.Object other) + #ctor(android.os.Parcel dest, int flags) + class DiscoveryOptions.Builder + #ctor(com.google.android.gms.nearby.connection.DiscoveryOptions origin) + #ctor(com.google.android.gms.nearby.connection.Strategy strategy) + class EndpointDiscoveryCallback + #ctor(java.lang.String endpointId, com.google.android.gms.nearby.connection.DiscoveredEndpointInfo info) + #ctor(java.lang.String endpointId) + class Payload + fromBytes(byte[] bytes) + fromFile(android.os.ParcelFileDescriptor pfd) + fromFile(java.io.File javaFile) + fromStream(android.os.ParcelFileDescriptor pfd) + fromStream(java.io.InputStream inputStream) + class PayloadCallback + #ctor(java.lang.String endpointId, com.google.android.gms.nearby.connection.Payload payload) + #ctor(java.lang.String endpointId, com.google.android.gms.nearby.connection.PayloadTransferUpdate update) + class PayloadTransferUpdate + equals(java.lang.Object other) + writeToParcel(android.os.Parcel dest, int flags) + class PayloadTransferUpdate.Builder + #ctor(com.google.android.gms.nearby.connection.PayloadTransferUpdate origin) + #ctor(long bytesTransferred) + #ctor(long payloadId) + #ctor(int status) + #ctor(long totalBytes) + class Strategy + equals(java.lang.Object object) +package com.google.android.gms.nearby.messages.audio +;--------------------------------------- + class AudioBytes + #ctor(byte[] audioData) + #ctor(com.google.android.gms.nearby.messages.Message message) +package com.google.android.gms.nearby.messages +;--------------------------------------- + interface Distance + compareTo(com.google.android.gms.nearby.messages.Distance other) + class EddystoneUid + #ctor(java.lang.String hexId) + #ctor(java.lang.String hexNamespace, java.lang.String hexInstance) + #ctor(java.lang.Object o) + #ctor(com.google.android.gms.nearby.messages.Message message) + class IBeaconId + #ctor(java.util.UUID proximityUuid, short major, short minor) + #ctor(java.lang.Object o) + #ctor(com.google.android.gms.nearby.messages.Message message) + class Message + #ctor(byte[] content) + #ctor(byte[] content, java.lang.String type) + #ctor(java.lang.Object object) + #ctor(android.os.Parcel out, int flags) + class MessageFilter + equals(java.lang.Object o) + writeToParcel(android.os.Parcel dest, int flags) + class MessageFilter.Builder + #ctor(int numAudioBytes) + #ctor(java.lang.String hexNamespace, java.lang.String hexInstance) + #ctor(com.google.android.gms.nearby.messages.MessageFilter filter) + #ctor(java.util.UUID proximityUuid, java.lang.Short major, java.lang.Short minor) + #ctor(java.lang.String namespace, java.lang.String type) + class MessageListener + #ctor(com.google.android.gms.nearby.messages.Message message, com.google.android.gms.nearby.messages.BleSignal bleSignal) + #ctor(com.google.android.gms.nearby.messages.Message message, com.google.android.gms.nearby.messages.Distance distance) + #ctor(com.google.android.gms.nearby.messages.Message message) + #ctor(com.google.android.gms.nearby.messages.Message message) + interface Messages + getPermissionStatus(com.google.android.gms.common.api.GoogleApiClient client) + handleIntent(android.content.Intent intent, com.google.android.gms.nearby.messages.MessageListener messageListener) + publish(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.nearby.messages.Message message) + publish(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.nearby.messages.Message message, com.google.android.gms.nearby.messages.PublishOptions options) + registerStatusCallback(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.nearby.messages.StatusCallback statusCallback) + subscribe(com.google.android.gms.common.api.GoogleApiClient client, android.app.PendingIntent pendingIntent, com.google.android.gms.nearby.messages.SubscribeOptions options) + subscribe(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.nearby.messages.MessageListener listener, com.google.android.gms.nearby.messages.SubscribeOptions options) + subscribe(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.nearby.messages.MessageListener listener) + subscribe(com.google.android.gms.common.api.GoogleApiClient client, android.app.PendingIntent pendingIntent) + unpublish(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.nearby.messages.Message message) + unregisterStatusCallback(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.nearby.messages.StatusCallback statusCallback) + unsubscribe(com.google.android.gms.common.api.GoogleApiClient client, android.app.PendingIntent pendingIntent) + unsubscribe(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.nearby.messages.MessageListener listener) + class MessagesClient + handleIntent(android.content.Intent intent, com.google.android.gms.nearby.messages.MessageListener messageListener) + publish(com.google.android.gms.nearby.messages.Message message) + publish(com.google.android.gms.nearby.messages.Message message, com.google.android.gms.nearby.messages.PublishOptions options) + registerStatusCallback(com.google.android.gms.nearby.messages.StatusCallback statusCallback) + subscribe(com.google.android.gms.nearby.messages.MessageListener listener, com.google.android.gms.nearby.messages.SubscribeOptions options) + subscribe(com.google.android.gms.nearby.messages.MessageListener listener) + subscribe(android.app.PendingIntent pendingIntent, com.google.android.gms.nearby.messages.SubscribeOptions options) + subscribe(android.app.PendingIntent pendingIntent) + unpublish(com.google.android.gms.nearby.messages.Message message) + unregisterStatusCallback(com.google.android.gms.nearby.messages.StatusCallback statusCallback) + unsubscribe(com.google.android.gms.nearby.messages.MessageListener listener) + unsubscribe(android.app.PendingIntent pendingIntent) + class MessagesOptions.Builder + #ctor(int permissions) + class NearbyMessagesStatusCodes + getStatusCodeString(int statusCode) + class PublishOptions.Builder + #ctor(com.google.android.gms.nearby.messages.PublishCallback callback) + #ctor(com.google.android.gms.nearby.messages.Strategy strategy) + class StatusCallback + #ctor(boolean permissionGranted) + class Strategy + equals(java.lang.Object other) + writeToParcel(android.os.Parcel out, int flags) + class Strategy.Builder + #ctor(int discoveryMode) + #ctor(int distanceType) + #ctor(int ttlSeconds) + class SubscribeOptions.Builder + #ctor(com.google.android.gms.nearby.messages.SubscribeCallback callback) + #ctor(com.google.android.gms.nearby.messages.MessageFilter filter) + #ctor(com.google.android.gms.nearby.messages.Strategy strategy) +package com.google.android.gms.nearby +;--------------------------------------- + class Nearby + getConnectionsClient(android.content.Context context) + getConnectionsClient(android.app.Activity activity) + getMessagesClient(android.app.Activity activity, com.google.android.gms.nearby.messages.MessagesOptions options) + getMessagesClient(android.app.Activity activity) + getMessagesClient(android.content.Context context, com.google.android.gms.nearby.messages.MessagesOptions options) + getMessagesClient(android.content.Context context) +package com.google.android.gms.oss.licenses +;--------------------------------------- + class OssLicensesActivity + #ctor(android.os.Bundle bundle) + #ctor(android.view.MenuItem item) + #ctor(android.os.Bundle savedInstanceState) + #ctor(android.os.Bundle bundle) + class OssLicensesMenuActivity + #ctor(int i, android.os.Bundle bundle) + #ctor(android.support.v4.content.Loader> loader, java.util.List licenses) + #ctor(android.support.v4.content.Loader> loader) + #ctor(android.view.MenuItem item) + #ctor(java.lang.String title) + #ctor(android.os.Bundle bundle) +package com.google.android.gms.panorama +;--------------------------------------- + interface PanoramaApi + loadPanoramaInfo(com.google.android.gms.common.api.GoogleApiClient client, android.net.Uri uri) + loadPanoramaInfoAndGrantAccess(com.google.android.gms.common.api.GoogleApiClient client, android.net.Uri uri) +package com.google.android.gms.plus +;--------------------------------------- + interface Account + clearDefaultAccount(com.google.android.gms.common.api.GoogleApiClient googleApiClient) + getAccountName(com.google.android.gms.common.api.GoogleApiClient googleApiClient) + revokeAccessAndDisconnect(com.google.android.gms.common.api.GoogleApiClient googleApiClient) + interface People + getCurrentPerson(com.google.android.gms.common.api.GoogleApiClient googleApiClient) + load(com.google.android.gms.common.api.GoogleApiClient googleApiClient, java.util.Collection personIds) + load(com.google.android.gms.common.api.GoogleApiClient googleApiClient, java.lang.String... personIds) + loadConnected(com.google.android.gms.common.api.GoogleApiClient googleApiClient) + loadVisible(com.google.android.gms.common.api.GoogleApiClient googleApiClient, int orderBy, java.lang.String pageToken) + loadVisible(com.google.android.gms.common.api.GoogleApiClient googleApiClient, java.lang.String pageToken) + class Plus.PlusOptions.Builder + #ctor(java.lang.String... activityTypes) + #ctor(java.lang.String clientId) + class PlusOneButton + #ctor(android.content.Context context) + #ctor(android.content.Context context, android.util.AttributeSet attrs) + #ctor(java.lang.String url, int activityRequestCode) + #ctor(java.lang.String url, com.google.android.gms.plus.PlusOneButton.OnPlusOneClickListener plusOneClickListener) + #ctor(int annotation) + #ctor(android.content.Intent intent) + #ctor(com.google.android.gms.plus.PlusOneButton.OnPlusOneClickListener listener) + #ctor(int size) + #ctor(android.content.Context context, android.util.AttributeSet attrs) + #ctor(android.content.Context context, android.util.AttributeSet attrs) + class PlusOneButton.DefaultOnPlusOneClickListener + #ctor(com.google.android.gms.plus.PlusOneButton.OnPlusOneClickListener proxy) + #ctor(android.view.View view) + #ctor(android.content.Intent intent) + interface PlusOneButton.OnPlusOneClickListener + onPlusOneClick(android.content.Intent intent) + class PlusOneDummyView + #ctor(android.content.Context context, int size) + class PlusShare + #ctor(java.lang.String id, java.lang.String displayName) + #ctor(android.content.Intent intent) + class PlusShare.Builder + #ctor(android.content.Context context) + #ctor(android.app.Activity launchingActivity) + #ctor(java.lang.String label, android.net.Uri uri, java.lang.String deepLinkId) + #ctor(android.net.Uri streamUri) + #ctor(java.lang.String deepLinkId) + #ctor(java.lang.String deepLinkId, java.lang.String title, java.lang.String description, android.net.Uri thumbnailUri) + #ctor(android.net.Uri uri) + #ctor(com.google.android.gms.plus.model.people.Person user, java.util.List recipientList) + #ctor(android.net.Uri streamUri) + #ctor(java.lang.CharSequence text) + #ctor(java.lang.String mimeType) +package com.google.android.gms.plus.model.people +;--------------------------------------- + class PersonBuffer + get(int position) +package com.google.android.gms.safetynet +;--------------------------------------- + class SafetyNet + getClient(android.app.Activity activity) + getClient(android.content.Context context) + interface SafetyNetApi + verifyWithRecaptcha(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String siteKey) + class SafetyNetClient + attest(byte[] nonce, java.lang.String apiKey) + lookupUri(java.lang.String uri, java.lang.String apiKey, int... threatTypes) + verifyWithRecaptcha(java.lang.String siteKey) +package com.google.android.gms.search +;--------------------------------------- + interface SearchAuthApi + clearToken(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String accessToken) + getGoogleNowAuth(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String webAppClientId) +package com.google.android.gms.security +;--------------------------------------- + class ProviderInstaller + #ctor(android.content.Context context) + #ctor(android.content.Context context, com.google.android.gms.security.ProviderInstaller.ProviderInstallListener listener) + interface ProviderInstaller.ProviderInstallListener + onProviderInstallFailed(int errorCode, android.content.Intent recoveryIntent) +package com.google.android.gms.tagmanager +;--------------------------------------- + class Container + getBoolean(java.lang.String key) + getDouble(java.lang.String key) + getLong(java.lang.String key) + getString(java.lang.String key) + registerFunctionCallMacroCallback(java.lang.String customMacroName, com.google.android.gms.tagmanager.Container.FunctionCallMacroCallback customMacroCallback) + registerFunctionCallTagCallback(java.lang.String customTagName, com.google.android.gms.tagmanager.Container.FunctionCallTagCallback customTagCallback) + unregisterFunctionCallMacroCallback(java.lang.String customMacroName) + unregisterFunctionCallTagCallback(java.lang.String customTagName) + interface Container.FunctionCallMacroCallback + getValue(java.lang.String functionName, java.util.Map task) + interface OnCompleteListener + onComplete(com.google.android.gms.tasks.Task task) + interface OnFailureListener + onFailure(java.lang.Exception e) + interface OnSuccessListener + onSuccess(TResult result) + class RuntimeExecutionException + #ctor(java.lang.Throwable cause) + interface SuccessContinuation + then(TResult result) + class Task + #ctor(com.google.android.gms.tasks.OnCanceledListener listener) + #ctor(java.util.concurrent.Executor executor, com.google.android.gms.tasks.OnCanceledListener listener) + #ctor(android.app.Activity activity, com.google.android.gms.tasks.OnCanceledListener listener) + #ctor(com.google.android.gms.tasks.OnCompleteListener listener) + #ctor(android.app.Activity activity, com.google.android.gms.tasks.OnCompleteListener listener) + #ctor(java.util.concurrent.Executor executor, com.google.android.gms.tasks.OnCompleteListener listener) + #ctor(android.app.Activity activity, com.google.android.gms.tasks.OnFailureListener listener) + #ctor(com.google.android.gms.tasks.OnFailureListener listener) + #ctor(java.util.concurrent.Executor executor, com.google.android.gms.tasks.OnFailureListener listener) + #ctor(java.util.concurrent.Executor executor, com.google.android.gms.tasks.OnSuccessListener listener) + #ctor(com.google.android.gms.tasks.OnSuccessListener listener) + #ctor(android.app.Activity activity, com.google.android.gms.tasks.OnSuccessListener listener) + #ctor(com.google.android.gms.tasks.Continuation exceptionType) + #ctor(java.util.concurrent.Executor executor, com.google.android.gms.tasks.SuccessContinuation task, long timeout, java.util.concurrent.TimeUnit unit) + await(com.google.android.gms.tasks.Task task) + call(java.util.concurrent.Callable callable) + call(java.util.concurrent.Executor executor, java.util.concurrent.Callable callable) + forException(java.lang.Exception e) + forResult(TResult result) + whenAll(java.util.Collection> tasks) + whenAll(com.google.android.gms.tasks.Task... tasks) + whenAllComplete(com.google.android.gms.tasks.Task... tasks) + whenAllComplete(java.util.Collection> tasks) + whenAllSuccess(com.google.android.gms.tasks.Task... tasks) + whenAllSuccess(java.util.Collection> tasks) +package com.google.android.gms.vision.barcode +;--------------------------------------- + class BarcodeDetector + detect(com.google.android.gms.vision.Frame frame) + class BarcodeDetector.Builder + #ctor(android.content.Context context) + #ctor(int format) +package com.google.android.gms.vision +;--------------------------------------- + class CameraSource + start(android.view.SurfaceHolder surfaceHolder) + takePicture(com.google.android.gms.vision.CameraSource.ShutterCallback shutter, com.google.android.gms.vision.CameraSource.PictureCallback jpeg) + class CameraSource.Builder + #ctor(android.content.Context context, com.google.android.gms.vision.Detector detector) + #ctor(boolean autoFocusEnabled) + #ctor(int facing) + #ctor(float fps) + #ctor(int width, int height) + interface CameraSource.PictureCallback + onPictureTaken(byte[] data) + class Detector + #ctor(com.google.android.gms.vision.Frame frame) + #ctor(com.google.android.gms.vision.Frame frame) + #ctor(int id) + #ctor(com.google.android.gms.vision.Detector.Processor processor) + interface Detector.Processor + receiveDetections(com.google.android.gms.vision.Detector.Detections detections) + class FocusingProcessor + #ctor(com.google.android.gms.vision.Detector detector, com.google.android.gms.vision.Tracker tracker) + #ctor(com.google.android.gms.vision.Detector.Detections detections) + class Frame.Builder + #ctor(android.graphics.Bitmap image) + #ctor(int id) + #ctor(java.nio.ByteBuffer data, int width, int height, int format) + #ctor(int rotation) + #ctor(long timestampMillis) + class Frame.Metadata + #ctor(com.google.android.gms.vision.Frame.Metadata metadata) + class MultiDetector + detect(com.google.android.gms.vision.Frame frame) + setProcessor(com.google.android.gms.vision.Detector.Processor processor) + class MultiDetector.Builder + #ctor(com.google.android.gms.vision.Detector detector) + class MultiProcessor.Builder + #ctor(com.google.android.gms.vision.MultiProcessor.Factory factory) + #ctor(int maxGapFrames) + interface MultiProcessor.Factory + create(T item) + class Tracker + #ctor(com.google.android.gms.vision.Detector.Detections detections) + #ctor(int id, T item) + #ctor(com.google.android.gms.vision.Detector.Detections detections, T item) +package com.google.android.gms.vision.face +;--------------------------------------- + class FaceDetector + detect(com.google.android.gms.vision.Frame frame) + setFocus(int id) + class FaceDetector.Builder + #ctor(android.content.Context context) + #ctor(int classificationType) + #ctor(int landmarkType) + #ctor(float proportionalMinFaceSize) + #ctor(int mode) + #ctor(boolean prominentFaceOnly) + #ctor(boolean trackingEnabled) + class LargestFaceFocusingProcessor + #ctor(com.google.android.gms.vision.Detector detector, com.google.android.gms.vision.Tracker tracker) + class LargestFaceFocusingProcessor.Builder + #ctor(com.google.android.gms.vision.Detector detector, com.google.android.gms.vision.Tracker tracker) + #ctor(int maxGapFrames) +package com.google.android.gms.vision.text +;--------------------------------------- + class TextRecognizer + detect(com.google.android.gms.vision.Frame frame) + class TextRecognizer.Builder + #ctor(android.content.Context context) +package com.google.android.gms.wallet +;--------------------------------------- + interface AutoResolvableResult + putIntoIntent(android.content.Intent intent) + class AutoResolvableVoidResult + #ctor(android.content.Intent intent) + class AutoResolveHelper + getStatusFromIntent(android.content.Intent data) + putStatusIntoIntent(android.content.Intent data, com.google.android.gms.common.api.Status status) + resolveTask(com.google.android.gms.tasks.Task task, android.app.Activity activity, int requestCode) + class CardInfo + writeToParcel(android.os.Parcel out, int flags) + class CardRequirements + writeToParcel(android.os.Parcel out, int flags) + class CardRequirements.Builder + addAllowedCardNetwork(int allowedCardNetwork) + addAllowedCardNetworks(java.util.Collection allowedCardNetworks) + setAllowPrepaidCards(boolean allowPrepaidCards) + setBillingAddressFormat(int billingAddressFormat) + setBillingAddressRequired(boolean billingAddressRequired) + class Cart + writeToParcel(android.os.Parcel dest, int flags) + class Cart.Builder + addLineItem(com.google.android.gms.wallet.LineItem lineItem) + setCurrencyCode(java.lang.String currencyCode) + setLineItems(java.util.List lineItems) + setTotalPrice(java.lang.String totalPrice) + class CountrySpecification + #ctor(java.lang.String countryCode) + #ctor(android.os.Parcel dest, int flags) + class CreateWalletObjectsRequest + #ctor(com.google.android.gms.wallet.LoyaltyWalletObject loyaltyWalletObject) + #ctor(com.google.android.gms.wallet.OfferWalletObject offerWalletObject) + #ctor(com.google.android.gms.wallet.GiftCardWalletObject giftCardWalletObject) + #ctor(android.os.Parcel dest, int flags) + class CreateWalletObjectsRequest.Builder + setCreateMode(int createMode) + setGiftCardWalletObject(com.google.android.gms.wallet.GiftCardWalletObject giftCardWalletObject) + setLoyaltyWalletObject(com.google.android.gms.wallet.LoyaltyWalletObject loyaltyWalletObject) + setOfferWalletObject(com.google.android.gms.wallet.OfferWalletObject offerWalletObject) + class EnableWalletOptimizationReceiver + #ctor(android.content.Context context, android.content.Intent intent) + class FullWallet + writeToParcel(android.os.Parcel out, int flags) + class FullWalletRequest + writeToParcel(android.os.Parcel dest, int flags) + class FullWalletRequest.Builder + setCart(com.google.android.gms.wallet.Cart cart) + setGoogleTransactionId(java.lang.String googleTransactionId) + setMerchantTransactionId(java.lang.String merchantTransactionId) + class GiftCardWalletObject + writeToParcel(android.os.Parcel dest, int flags) + class GiftCardWalletObject.Builder + addImageModuleDataMainImageUri(com.google.android.gms.wallet.wobs.UriData uri) + addImageModuleDataMainImageUris(java.util.Collection uris) + addInfoModuleDataLabelValueRow(com.google.android.gms.wallet.wobs.LabelValueRow row) + addInfoModuleDataLabelValueRows(java.util.Collection rows) + addLinksModuleDataUri(com.google.android.gms.wallet.wobs.UriData uri) + addLinksModuleDataUris(java.util.Collection uris) + addLocation(com.google.android.gms.maps.model.LatLng location) + addLocations(java.util.Collection locations) + addMessage(com.google.android.gms.wallet.wobs.WalletObjectMessage message) + addMessages(java.util.Collection messages) + addTextModuleData(com.google.android.gms.wallet.wobs.TextModuleData data) + addTextModulesData(java.util.Collection data) + setBalanceCurrencyCode(java.lang.String currencyCode) + setBalanceMicros(long valueMicros) + setBalanceUpdateTime(long balanceUpdateTimeStamp) + setBarcodeAlternateText(java.lang.String barcodeAlternateText) + setBarcodeLabel(java.lang.String barcodeLabel) + setBarcodeType(java.lang.String barcodeType) + setBarcodeValue(java.lang.String barcodeValue) + setCardIdentifier(java.lang.String cardIdentifier) + setCardNumber(java.lang.String cardNumber) + setClassId(java.lang.String classId) + setEventNumber(java.lang.String eventNumber) + setId(java.lang.String id) + setInfoModuleDataHexBackgroundColor(java.lang.String color) + setInfoModuleDataHexFontColor(java.lang.String color) + setInfoModuleDataShowLastUpdateTime(boolean show) + setIssuerName(java.lang.String issuerName) + setPin(java.lang.String pin) + setState(int state) + setTitle(java.lang.String title) + setValidTimeInterval(com.google.android.gms.wallet.wobs.TimeInterval interval) + class InstrumentInfo + writeToParcel(android.os.Parcel out, int flags) + class IsReadyToPayRequest + fromJson(java.lang.String isReadyToPayRequestJson) + class IsReadyToPayRequest.Builder + addAllowedCardNetwork(int allowedCardNetwork) + addAllowedCardNetworks(java.util.Collection allowedCardNetworks) + addAllowedPaymentMethod(int allowedPaymentMethod) + addAllowedPaymentMethods(java.util.Collection allowedPaymentMethods) + setExistingPaymentMethodRequired(boolean existingPaymentMethodRequired) + class LineItem + writeToParcel(android.os.Parcel dest, int flags) + class LineItem.Builder + setCurrencyCode(java.lang.String currencyCode) + setDescription(java.lang.String description) + setQuantity(java.lang.String quantity) + setRole(int role) + setTotalPrice(java.lang.String totalPrice) + setUnitPrice(java.lang.String unitPrice) + class LoyaltyWalletObject + writeToParcel(android.os.Parcel dest, int flags) + class LoyaltyWalletObject.Builder + addImageModuleDataMainImageUri(com.google.android.gms.wallet.wobs.UriData uri) + addImageModuleDataMainImageUris(java.util.Collection uris) + addInfoModuleDataLabeValueRow(com.google.android.gms.wallet.wobs.LabelValueRow row) + addInfoModuleDataLabelValueRows(java.util.Collection rows) + addLinksModuleDataUri(com.google.android.gms.wallet.wobs.UriData uri) + addLinksModuleDataUris(java.util.Collection uris) + addLocation(com.google.android.gms.maps.model.LatLng location) + addLocations(java.util.Collection locations) + addMessage(com.google.android.gms.wallet.wobs.WalletObjectMessage message) + addMessages(java.util.Collection messages) + addTextModuleData(com.google.android.gms.wallet.wobs.TextModuleData data) + addTextModulesData(java.util.Collection data) + setAccountId(java.lang.String accountId) + setAccountName(java.lang.String accountName) + setBarcodeAlternateText(java.lang.String barcodeAlternateText) + setBarcodeLabel(java.lang.String barcodeLabel) + setBarcodeType(java.lang.String barcodeType) + setBarcodeValue(java.lang.String barcodeValue) + setClassId(java.lang.String classId) + setId(java.lang.String id) + setInfoModuleDataHexBackgroundColor(java.lang.String color) + setInfoModuleDataHexFontColor(java.lang.String color) + setInfoModuleDataShowLastUpdateTime(boolean show) + setIssuerName(java.lang.String issuerName) + setLoyaltyPoints(com.google.android.gms.wallet.wobs.LoyaltyPoints loyaltyPoints) + setProgramName(java.lang.String programName) + setState(int state) + setValidTimeInterval(com.google.android.gms.wallet.wobs.TimeInterval interval) + class MaskedWallet + newBuilderFrom(com.google.android.gms.wallet.MaskedWallet maskedWallet) + writeToParcel(android.os.Parcel dest, int flags) + class MaskedWallet.Builder + setBuyerBillingAddress(com.google.android.gms.identity.intents.model.UserAddress buyerBillingAddress) + setBuyerShippingAddress(com.google.android.gms.identity.intents.model.UserAddress buyerShippingAddress) + setEmail(java.lang.String email) + setGoogleTransactionId(java.lang.String googleTransactionId) + setInstrumentInfos(com.google.android.gms.wallet.InstrumentInfo[] instrumentInfos) + setMerchantTransactionId(java.lang.String merchantTransactionId) + setPaymentDescriptions(java.lang.String[] paymentDescriptions) + class MaskedWalletRequest + writeToParcel(android.os.Parcel dest, int flags) + class MaskedWalletRequest.Builder + addAllowedCardNetwork(int allowedCardNetwork) + addAllowedCardNetworks(java.util.Collection allowedCardNetworks) + addAllowedCountrySpecificationForShipping(com.google.android.gms.identity.intents.model.CountrySpecification countrySpecification) + addAllowedCountrySpecificationsForShipping(java.util.Collection countrySpecifications) + setAllowDebitCard(boolean allowDebitCard) + setAllowPrepaidCard(boolean allowPrepaidCard) + setCart(com.google.android.gms.wallet.Cart cart) + setCountryCode(java.lang.String countryCode) + setCurrencyCode(java.lang.String currencyCode) + setEstimatedTotalPrice(java.lang.String estimatedTotalPrice) + setIsBillingAgreement(boolean isBillingAgreement) + setMerchantName(java.lang.String merchantName) + setMerchantTransactionId(java.lang.String merchantTransactionId) + setPaymentMethodTokenizationParameters(com.google.android.gms.wallet.PaymentMethodTokenizationParameters paymentMethodTokenizationParameters) + setPhoneNumberRequired(boolean phoneNumberRequired) + setShippingAddressRequired(boolean shippingAddressRequired) + setUseMinimalBillingAddress(boolean useMinimalBillingAddress) + class OfferWalletObject + writeToParcel(android.os.Parcel dest, int flags) + class OfferWalletObject.Builder + addImageModuleDataMainImageUri(com.google.android.gms.wallet.wobs.UriData uri) + addImageModuleDataMainImageUris(java.util.Collection uris) + addInfoModuleDataLabelValueRow(com.google.android.gms.wallet.wobs.LabelValueRow row) + addInfoModuleDataLabelValueRows(java.util.Collection rows) + addLinksModuleDataUri(com.google.android.gms.wallet.wobs.UriData uri) + addLinksModuleDataUris(java.util.Collection uris) + addLocation(com.google.android.gms.maps.model.LatLng location) + addLocations(java.util.Collection locations) + addMessage(com.google.android.gms.wallet.wobs.WalletObjectMessage message) + addMessages(java.util.Collection messages) + addTextModuleData(com.google.android.gms.wallet.wobs.TextModuleData data) + addTextModulesData(java.util.Collection data) + setBarcodeAlternateText(java.lang.String barcodeAlternateText) + setBarcodeLabel(java.lang.String barcodeLabel) + setBarcodeType(java.lang.String barcodeType) + setBarcodeValue(java.lang.String barcodeValue) + setClassId(java.lang.String classId) + setId(java.lang.String id) + setInfoModuleDataHexBackgroundColor(java.lang.String color) + setInfoModuleDataHexFontColor(java.lang.String color) + setInfoModuleDataShowLastUpdateTime(boolean show) + setIssuerName(java.lang.String issuerName) + setRedemptionCode(java.lang.String redemptionCode) + setState(int state) + setTitle(java.lang.String title) + setValidTimeInterval(com.google.android.gms.wallet.wobs.TimeInterval interval) + class PaymentData + fromJson(java.lang.String paymentDataJson) + getFromIntent(android.content.Intent intent) + putIntoIntent(android.content.Intent intent) + writeToParcel(android.os.Parcel dest, int flags) + class PaymentDataRequest + fromJson(java.lang.String paymentDataRequestJson) + writeToParcel(android.os.Parcel dest, int flags) + class PaymentDataRequest.Builder + addAllowedPaymentMethod(int allowedPaymentMethod) + addAllowedPaymentMethods(java.util.Collection allowedPaymentMethods) + setCardRequirements(com.google.android.gms.wallet.CardRequirements cardRequirements) + setEmailRequired(boolean emailRequired) + setPaymentMethodTokenizationParameters(com.google.android.gms.wallet.PaymentMethodTokenizationParameters paymentMethodTokenizationParameters) + setPhoneNumberRequired(boolean phoneNumberRequired) + setShippingAddressRequired(boolean shippingAddressRequired) + setShippingAddressRequirements(com.google.android.gms.wallet.ShippingAddressRequirements shippingAddressRequirements) + setTransactionInfo(com.google.android.gms.wallet.TransactionInfo transactionInfo) + setUiRequired(boolean uiRequired) + class PaymentMethodToken + writeToParcel(android.os.Parcel out, int flags) + class PaymentMethodTokenizationParameters + writeToParcel(android.os.Parcel out, int flags) + class PaymentMethodTokenizationParameters.Builder + addParameter(java.lang.String name, java.lang.String value) + setPaymentMethodTokenizationType(int tokenizationType) + interface Payments + changeMaskedWallet(com.google.android.gms.common.api.GoogleApiClient googleApiClient, java.lang.String googleTransactionId, java.lang.String merchantTransactionId, int requestCode) + checkForPreAuthorization(com.google.android.gms.common.api.GoogleApiClient googleApiClient, int requestCode) + isReadyToPay(com.google.android.gms.common.api.GoogleApiClient googleApiClient, com.google.android.gms.wallet.IsReadyToPayRequest request) + isReadyToPay(com.google.android.gms.common.api.GoogleApiClient googleApiClient) + loadFullWallet(com.google.android.gms.common.api.GoogleApiClient googleApiClient, com.google.android.gms.wallet.FullWalletRequest request, int requestCode) + loadMaskedWallet(com.google.android.gms.common.api.GoogleApiClient googleApiClient, com.google.android.gms.wallet.MaskedWalletRequest request, int requestCode) + class PaymentsClient + isReadyToPay(com.google.android.gms.wallet.IsReadyToPayRequest request) + loadPaymentData(com.google.android.gms.wallet.PaymentDataRequest request) + class ProxyCard + writeToParcel(android.os.Parcel out, int flags) + class ShippingAddressRequirements + writeToParcel(android.os.Parcel out, int flags) + class ShippingAddressRequirements.Builder + addAllowedCountryCode(java.lang.String allowedCountryCode) + addAllowedCountryCodes(java.util.Collection allowedCountryCodes) + class TransactionInfo + writeToParcel(android.os.Parcel out, int flags) + class TransactionInfo.Builder + setCurrencyCode(java.lang.String currencyCode) + setTotalPrice(java.lang.String totalPrice) + setTotalPriceStatus(int totalPriceStatus) + class Wallet + getPaymentsClient(android.app.Activity activity, com.google.android.gms.wallet.Wallet.WalletOptions options) + getPaymentsClient(android.content.Context context, com.google.android.gms.wallet.Wallet.WalletOptions options) + getWalletObjectsClient(android.app.Activity activity, com.google.android.gms.wallet.Wallet.WalletOptions options) + class Wallet.WalletOptions + equals(java.lang.Object other) + class Wallet.WalletOptions.Builder + #ctor(int environment) + #ctor(int theme) + class WalletObjectsClient + createWalletObjects(com.google.android.gms.wallet.CreateWalletObjectsRequest request) +package com.google.android.gms.wallet.fragment +;--------------------------------------- + class SupportWalletFragment + #ctor(com.google.android.gms.wallet.fragment.WalletFragmentInitParams initParams) + #ctor(com.google.android.gms.wallet.fragment.WalletFragmentOptions options) + #ctor(int requestCode, int resultCode, android.content.Intent data) + #ctor(android.os.Bundle savedInstanceState) + #ctor(android.view.LayoutInflater inflater, android.view.ViewGroup container, android.os.Bundle savedInstanceState) + #ctor(android.app.Activity activity, android.util.AttributeSet attrs, android.os.Bundle savedInstanceState) + #ctor(android.os.Bundle outState) + #ctor(boolean enabled) + #ctor(com.google.android.gms.wallet.fragment.SupportWalletFragment.OnStateChangedListener listener) + #ctor(com.google.android.gms.wallet.MaskedWallet maskedWallet) + #ctor(com.google.android.gms.wallet.MaskedWalletRequest request) + interface SupportWalletFragment.OnStateChangedListener + onStateChanged(com.google.android.gms.wallet.fragment.SupportWalletFragment fragment, int oldState, int newState, android.os.Bundle extras) + class WalletFragment + #ctor(com.google.android.gms.wallet.fragment.WalletFragmentInitParams initParams) + #ctor(com.google.android.gms.wallet.fragment.WalletFragmentOptions options) + #ctor(int requestCode, int resultCode, android.content.Intent data) + #ctor(android.os.Bundle savedInstanceState) + #ctor(android.view.LayoutInflater inflater, android.view.ViewGroup container, android.os.Bundle savedInstanceState) + #ctor(android.app.Activity activity, android.util.AttributeSet attrs, android.os.Bundle savedInstanceState) + #ctor(android.os.Bundle outState) + #ctor(boolean enabled) + #ctor(com.google.android.gms.wallet.fragment.WalletFragment.OnStateChangedListener listener) + #ctor(com.google.android.gms.wallet.MaskedWallet maskedWallet) + #ctor(com.google.android.gms.wallet.MaskedWalletRequest request) + interface WalletFragment.OnStateChangedListener + onStateChanged(com.google.android.gms.wallet.fragment.WalletFragment fragment, int oldState, int newState, android.os.Bundle extras) + class WalletFragmentInitParams + writeToParcel(android.os.Parcel dest, int flags) + class WalletFragmentInitParams.Builder + setAccountName(java.lang.String accountName) + setMaskedWallet(com.google.android.gms.wallet.MaskedWallet maskedWallet) + setMaskedWalletRequest(com.google.android.gms.wallet.MaskedWalletRequest request) + setMaskedWalletRequestCode(int requestCode) + class WalletFragmentOptions + writeToParcel(android.os.Parcel dest, int flags) + class WalletFragmentOptions.Builder + setEnvironment(int environment) + setFragmentStyle(com.google.android.gms.wallet.fragment.WalletFragmentStyle fragmentStyle) + setFragmentStyle(int styleResourceId) + setMode(int mode) + setTheme(int theme) + class WalletFragmentStyle + #ctor(int buyButtonAppearance) + #ctor(int unit, float height) + #ctor(int height) + #ctor(int buyButtonText) + #ctor(int width) + #ctor(int unit, float width) + #ctor(int color) + #ctor(int resourceId) + #ctor(int color) + #ctor(int resourceId) + #ctor(int resourceId) + #ctor(int resourceId) + #ctor(int imageType) + #ctor(int color) + #ctor(int resourceId) + #ctor(int id) + #ctor(android.os.Parcel dest, int flags) +package com.google.android.gms.wallet.wobs +;--------------------------------------- + class LabelValue + #ctor(java.lang.String label, java.lang.String value) + #ctor(android.os.Parcel dest, int flags) + class LabelValueRow + writeToParcel(android.os.Parcel dest, int flags) + class LabelValueRow.Builder + addColumn(com.google.android.gms.wallet.wobs.LabelValue column) + addColumns(java.util.Collection columns) + setHexBackgroundColor(java.lang.String color) + setHexFontColor(java.lang.String color) + class LoyaltyPoints + writeToParcel(android.os.Parcel dest, int flags) + class LoyaltyPoints.Builder + setBalance(com.google.android.gms.wallet.wobs.LoyaltyPointsBalance balance) + setLabel(java.lang.String label) + setType(java.lang.String type) + setValidTimeInterval(com.google.android.gms.wallet.wobs.TimeInterval interval) + class LoyaltyPointsBalance + writeToParcel(android.os.Parcel dest, int flags) + class LoyaltyPointsBalance.Builder + setDouble(double balance) + setInt(int balance) + setMoney(java.lang.String currencyCode, long currencyMicros) + setString(java.lang.String balance) + class TextModuleData + #ctor(java.lang.String header, java.lang.String body) + #ctor(android.os.Parcel dest, int flags) + class TimeInterval + #ctor(long startTimestamp, long endTimestamp) + #ctor(android.os.Parcel dest, int flags) + class UriData + #ctor(java.lang.String uri, java.lang.String description) + #ctor(android.os.Parcel dest, int flags) + class WalletObjectMessage + writeToParcel(android.os.Parcel dest, int flags) + class WalletObjectMessage.Builder + setActionUri(com.google.android.gms.wallet.wobs.UriData uri) + setBody(java.lang.String body) + setDisplayInterval(com.google.android.gms.wallet.wobs.TimeInterval interval) + setHeader(java.lang.String header) + setImageUri(com.google.android.gms.wallet.wobs.UriData uri) + interface WalletObjects + createWalletObjects(com.google.android.gms.common.api.GoogleApiClient googleApiClient, com.google.android.gms.wallet.CreateWalletObjectsRequest request, int requestCode) +package com.google.android.gms.wearable +;--------------------------------------- + class Asset + createFromBytes(byte[] assetData) + createFromFd(android.os.ParcelFileDescriptor fd) + createFromRef(java.lang.String digest) + createFromUri(android.net.Uri uri) + equals(java.lang.Object o) + writeToParcel(android.os.Parcel dest, int flags) + interface CapabilityApi + addCapabilityListener(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.wearable.CapabilityApi.CapabilityListener listener, java.lang.String capability) + addListener(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.wearable.CapabilityApi.CapabilityListener listener, android.net.Uri uri, int filterType) + addLocalCapability(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String capability) + getAllCapabilities(com.google.android.gms.common.api.GoogleApiClient client, int nodeFilter) + getCapability(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String capability, int nodeFilter) + removeCapabilityListener(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.wearable.CapabilityApi.CapabilityListener listener, java.lang.String capability) + removeListener(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.wearable.CapabilityApi.CapabilityListener listener) + removeLocalCapability(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String capability) + interface CapabilityApi.CapabilityListener + onCapabilityChanged(com.google.android.gms.wearable.CapabilityInfo capabilityInfo) + class CapabilityClient + addListener(com.google.android.gms.wearable.CapabilityClient.OnCapabilityChangedListener listener, java.lang.String capability) + addListener(com.google.android.gms.wearable.CapabilityClient.OnCapabilityChangedListener listener, android.net.Uri uri, int filterType) + addLocalCapability(java.lang.String capability) + getAllCapabilities(int nodeFilter) + getCapability(java.lang.String capability, int nodeFilter) + removeListener(com.google.android.gms.wearable.CapabilityClient.OnCapabilityChangedListener listener) + removeListener(com.google.android.gms.wearable.CapabilityClient.OnCapabilityChangedListener listener, java.lang.String capability) + removeLocalCapability(java.lang.String capability) + interface CapabilityClient.OnCapabilityChangedListener + onCapabilityChanged(com.google.android.gms.wearable.CapabilityInfo capabilityInfo) + interface Channel + addListener(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.wearable.ChannelApi.ChannelListener listener) + close(com.google.android.gms.common.api.GoogleApiClient client, int errorCode) + close(com.google.android.gms.common.api.GoogleApiClient client) + getInputStream(com.google.android.gms.common.api.GoogleApiClient client) + getOutputStream(com.google.android.gms.common.api.GoogleApiClient client) + receiveFile(com.google.android.gms.common.api.GoogleApiClient client, android.net.Uri uri, boolean append) + removeListener(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.wearable.ChannelApi.ChannelListener listener) + sendFile(com.google.android.gms.common.api.GoogleApiClient client, android.net.Uri uri) + sendFile(com.google.android.gms.common.api.GoogleApiClient client, android.net.Uri uri, long startOffset, long length) + interface ChannelApi + addListener(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.wearable.ChannelApi.ChannelListener listener) + openChannel(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String nodeId, java.lang.String path) + removeListener(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.wearable.ChannelApi.ChannelListener listener) + interface ChannelApi.ChannelListener + onChannelClosed(com.google.android.gms.wearable.Channel channel, int closeReason, int appSpecificErrorCode) + onChannelOpened(com.google.android.gms.wearable.Channel channel) + onInputClosed(com.google.android.gms.wearable.Channel channel, int closeReason, int appSpecificErrorCode) + onOutputClosed(com.google.android.gms.wearable.Channel channel, int closeReason, int appSpecificErrorCode) + class ChannelClient + close(com.google.android.gms.wearable.ChannelClient.Channel channel, int errorCode) + close(com.google.android.gms.wearable.ChannelClient.Channel channel) + getInputStream(com.google.android.gms.wearable.ChannelClient.Channel channel) + getOutputStream(com.google.android.gms.wearable.ChannelClient.Channel channel) + openChannel(java.lang.String nodeId, java.lang.String path) + receiveFile(com.google.android.gms.wearable.ChannelClient.Channel channel, android.net.Uri uri, boolean append) + registerChannelCallback(com.google.android.gms.wearable.ChannelClient.Channel channel, com.google.android.gms.wearable.ChannelClient.ChannelCallback callback) + registerChannelCallback(com.google.android.gms.wearable.ChannelClient.ChannelCallback callback) + sendFile(com.google.android.gms.wearable.ChannelClient.Channel channel, android.net.Uri uri) + sendFile(com.google.android.gms.wearable.ChannelClient.Channel channel, android.net.Uri uri, long startOffset, long length) + unregisterChannelCallback(com.google.android.gms.wearable.ChannelClient.Channel channel, com.google.android.gms.wearable.ChannelClient.ChannelCallback callback) + unregisterChannelCallback(com.google.android.gms.wearable.ChannelClient.ChannelCallback callback) + class ChannelClient.ChannelCallback + #ctor(com.google.android.gms.wearable.ChannelClient.Channel channel, int closeReason, int appSpecificErrorCode) + #ctor(com.google.android.gms.wearable.ChannelClient.Channel channel) + #ctor(com.google.android.gms.wearable.ChannelClient.Channel channel, int closeReason, int appSpecificErrorCode) + #ctor(com.google.android.gms.wearable.ChannelClient.Channel channel, int closeReason, int appSpecificErrorCode) + class ChannelIOException + #ctor(java.lang.String message, int closeReason, int appSpecificErrorCode) + interface DataApi + addListener(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.wearable.DataApi.DataListener listener) + addListener(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.wearable.DataApi.DataListener listener, android.net.Uri uri, int filterType) + deleteDataItems(com.google.android.gms.common.api.GoogleApiClient client, android.net.Uri uri, int filterType) + deleteDataItems(com.google.android.gms.common.api.GoogleApiClient client, android.net.Uri uri) + getDataItem(com.google.android.gms.common.api.GoogleApiClient client, android.net.Uri uri) + getDataItems(com.google.android.gms.common.api.GoogleApiClient client, android.net.Uri uri, int filterType) + getDataItems(com.google.android.gms.common.api.GoogleApiClient client) + getDataItems(com.google.android.gms.common.api.GoogleApiClient client, android.net.Uri uri) + getFdForAsset(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.wearable.Asset asset) + getFdForAsset(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.wearable.DataItemAsset asset) + putDataItem(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.wearable.PutDataRequest request) + removeListener(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.wearable.DataApi.DataListener listener) + interface DataApi.DataListener + onDataChanged(com.google.android.gms.wearable.DataEventBuffer dataEvents) + class DataClient + addListener(com.google.android.gms.wearable.DataClient.OnDataChangedListener listener) + addListener(com.google.android.gms.wearable.DataClient.OnDataChangedListener listener, android.net.Uri uri, int filterType) + deleteDataItems(android.net.Uri uri, int filterType) + deleteDataItems(android.net.Uri uri) + getDataItem(android.net.Uri uri) + getDataItems(android.net.Uri uri, int filterType) + getDataItems(android.net.Uri uri) + getFdForAsset(com.google.android.gms.wearable.DataItemAsset asset) + getFdForAsset(com.google.android.gms.wearable.Asset asset) + putDataItem(com.google.android.gms.wearable.PutDataRequest request) + removeListener(com.google.android.gms.wearable.DataClient.OnDataChangedListener listener) + interface DataClient.OnDataChangedListener + onDataChanged(com.google.android.gms.wearable.DataEventBuffer dataEvents) + class DataEventBuffer + get(int position) + interface DataItem + setData(byte[] data) + class DataItemBuffer + get(int position) + class DataMap + #ctor(java.util.ArrayList bundleArrayList) + #ctor(java.lang.String key) + #ctor(java.lang.Object o) + #ctor(android.os.Bundle bundle) + #ctor(byte[] bytes) + #ctor(java.lang.String key) + #ctor(java.lang.String key) + #ctor(java.lang.String key, boolean defaultValue) + #ctor(java.lang.String key) + #ctor(java.lang.String key) + #ctor(java.lang.String key, byte defaultValue) + #ctor(java.lang.String key) + #ctor(java.lang.String key) + #ctor(java.lang.String key) + #ctor(java.lang.String key, double defaultValue) + #ctor(java.lang.String key) + #ctor(java.lang.String key, float defaultValue) + #ctor(java.lang.String key) + #ctor(java.lang.String key) + #ctor(java.lang.String key, int defaultValue) + #ctor(java.lang.String key) + #ctor(java.lang.String key) + #ctor(java.lang.String key, long defaultValue) + #ctor(java.lang.String key) + #ctor(java.lang.String key) + #ctor(java.lang.String key) + #ctor(java.lang.String key, java.lang.String defaultValue) + #ctor(java.lang.String key) + #ctor(java.lang.String key) + #ctor(com.google.android.gms.wearable.DataMap dataMap) + #ctor(java.lang.String key, com.google.android.gms.wearable.Asset value) + #ctor(java.lang.String key, boolean value) + #ctor(java.lang.String key, byte value) + #ctor(java.lang.String key, byte[] value) + #ctor(java.lang.String key, com.google.android.gms.wearable.DataMap value) + #ctor(java.lang.String key, java.util.ArrayList value) + #ctor(java.lang.String key, double value) + #ctor(java.lang.String key, float value) + #ctor(java.lang.String key, float[] value) + #ctor(java.lang.String key, int value) + #ctor(java.lang.String key, java.util.ArrayList value) + #ctor(java.lang.String key, long value) + #ctor(java.lang.String key, long[] value) + #ctor(java.lang.String key, java.lang.String value) + #ctor(java.lang.String key, java.lang.String[] value) + #ctor(java.lang.String key, java.util.ArrayList value) + #ctor(java.lang.String key) + class DataMapItem + fromDataItem(com.google.android.gms.wearable.DataItem dataItem) + interface MessageApi + addListener(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.wearable.MessageApi.MessageListener listener, android.net.Uri uri, int filterType) + addListener(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.wearable.MessageApi.MessageListener listener) + removeListener(com.google.android.gms.common.api.GoogleApiClient client, com.google.android.gms.wearable.MessageApi.MessageListener listener) + sendMessage(com.google.android.gms.common.api.GoogleApiClient client, java.lang.String nodeId, java.lang.String path, byte[] data) + interface MessageApi.MessageListener + onMessageReceived(com.google.android.gms.wearable.MessageEvent messageEvent) + class MessageClient + addListener(com.google.android.gms.wearable.MessageClient.OnMessageReceivedListener listener, android.net.Uri uri, int filterType) + addListener(com.google.android.gms.wearable.MessageClient.OnMessageReceivedListener listener) + removeListener(com.google.android.gms.wearable.MessageClient.OnMessageReceivedListener listener) + sendMessage(java.lang.String nodeId, java.lang.String path, byte[] data) + interface MessageClient.OnMessageReceivedListener + onMessageReceived(com.google.android.gms.wearable.MessageEvent messageEvent) + interface NodeApi + getConnectedNodes(com.google.android.gms.common.api.GoogleApiClient client) + getLocalNode(com.google.android.gms.common.api.GoogleApiClient client) + class PutDataMapRequest + create(java.lang.String path) + createFromDataMapItem(com.google.android.gms.wearable.DataMapItem source) + createWithAutoAppendedId(java.lang.String pathPrefix) + class PutDataRequest + create(java.lang.String path) + createFromDataItem(com.google.android.gms.wearable.DataItem source) + createWithAutoAppendedId(java.lang.String pathPrefix) + getAsset(java.lang.String key) + hasAsset(java.lang.String key) + putAsset(java.lang.String key, com.google.android.gms.wearable.Asset value) + removeAsset(java.lang.String key) + setData(byte[] data) + toString(boolean verbose) + writeToParcel(android.os.Parcel dest, int flags) + class Wearable + getCapabilityClient(android.content.Context context) + getCapabilityClient(android.app.Activity activity, com.google.android.gms.wearable.Wearable.WearableOptions options) + getCapabilityClient(android.content.Context context, com.google.android.gms.wearable.Wearable.WearableOptions options) + getCapabilityClient(android.app.Activity activity) + getChannelClient(android.content.Context context, com.google.android.gms.wearable.Wearable.WearableOptions options) + getChannelClient(android.content.Context context) + getChannelClient(android.app.Activity activity, com.google.android.gms.wearable.Wearable.WearableOptions options) + getChannelClient(android.app.Activity activity) + getDataClient(android.app.Activity activity, com.google.android.gms.wearable.Wearable.WearableOptions options) + getDataClient(android.app.Activity activity) + getDataClient(android.content.Context context, com.google.android.gms.wearable.Wearable.WearableOptions options) + getDataClient(android.content.Context context) + getMessageClient(android.content.Context context, com.google.android.gms.wearable.Wearable.WearableOptions options) + getMessageClient(android.app.Activity activity) + getMessageClient(android.content.Context context) + getMessageClient(android.app.Activity activity, com.google.android.gms.wearable.Wearable.WearableOptions options) + getNodeClient(android.content.Context context) + getNodeClient(android.app.Activity activity) + getNodeClient(android.content.Context context, com.google.android.gms.wearable.Wearable.WearableOptions options) + getNodeClient(android.app.Activity activity, com.google.android.gms.wearable.Wearable.WearableOptions options) + class Wearable.WearableOptions.Builder + #ctor(android.os.Looper looper) + class WearableListenerService + #ctor(android.content.Intent intent) + #ctor(com.google.android.gms.wearable.CapabilityInfo capabilityInfo) + #ctor(com.google.android.gms.wearable.Channel channel, int closeReason, int appSpecificErrorCode) + #ctor(com.google.android.gms.wearable.ChannelClient.Channel channel, int closeReason, int appSpecificErrorCode) + #ctor(com.google.android.gms.wearable.Channel channel) + #ctor(com.google.android.gms.wearable.ChannelClient.Channel channel) + #ctor(java.util.List connectedNodes) + #ctor(com.google.android.gms.wearable.DataEventBuffer dataEvents) + #ctor(com.google.android.gms.wearable.Channel channel, int closeReason, int appSpecificErrorCode) + #ctor(com.google.android.gms.wearable.ChannelClient.Channel channel, int closeReason, int appSpecificErrorCode) + #ctor(com.google.android.gms.wearable.MessageEvent messageEvent) + #ctor(com.google.android.gms.wearable.Channel channel, int closeReason, int appSpecificErrorCode) + #ctor(com.google.android.gms.wearable.ChannelClient.Channel channel, int closeReason, int appSpecificErrorCode) + #ctor(com.google.android.gms.wearable.Node peer) + #ctor(com.google.android.gms.wearable.Node peer) + class WearableStatusCodes + getStatusCodeString(int statusCode) +package com.google.android.vending.verifier +;--------------------------------------- + interface IListHarmfulAppsCallback + onListHarmfulAppsResult(boolean success, byte[] result) + class IListHarmfulAppsCallback.Stub + #ctor(android.os.IBinder obj) + #ctor(int code, android.os.Parcel data, android.os.Parcel reply, int flags) + class IListHarmfulAppsCallback.Stub.Proxy + onListHarmfulAppsResult(boolean success, byte[] result) + interface IPackageVerificationApiService + getVerifyAppsData(com.google.android.vending.verifier.IVerifyAppsDataCallback callback, long flags) + getVerifyAppsDataV2(com.google.android.vending.verifier.IVerifyAppsDataCallback callback, android.os.Bundle bundle) + listHarmfulApps(com.google.android.vending.verifier.IListHarmfulAppsCallback callback) + class IPackageVerificationApiService.Stub + #ctor(android.os.IBinder obj) + #ctor(int code, android.os.Parcel data, android.os.Parcel reply, int flags) + class IPackageVerificationApiService.Stub.Proxy + getVerifyAppsData(com.google.android.vending.verifier.IVerifyAppsDataCallback callback, long flags) + getVerifyAppsDataV2(com.google.android.vending.verifier.IVerifyAppsDataCallback callback, android.os.Bundle bundle) + listHarmfulApps(com.google.android.vending.verifier.IListHarmfulAppsCallback callback) + interface IVerifyAppsDataCallback + onGetVerifyAppsDataResult(boolean success, android.os.Bundle result) + class IVerifyAppsDataCallback.Stub + #ctor(android.os.IBinder obj) + #ctor(int code, android.os.Parcel data, android.os.Parcel reply, int flags) + class IVerifyAppsDataCallback.Stub.Proxy + onGetVerifyAppsDataResult(boolean success, android.os.Bundle result) +package com.google.firebase.analytics +;--------------------------------------- + class FirebaseAnalytics + getInstance(android.content.Context context) + logEvent(java.lang.String name, android.os.Bundle params) + setAnalyticsCollectionEnabled(boolean enabled) + setCurrentScreen(android.app.Activity activity, java.lang.String screenName, java.lang.String screenClassOverride) + setMinimumSessionDuration(long milliseconds) + setSessionTimeoutDuration(long milliseconds) + setUserId(java.lang.String id) + setUserProperty(java.lang.String name, java.lang.String value) +package com.google.firebase.appindexing +;--------------------------------------- + class Action.Builder + #ctor(java.lang.String type) + #ctor(java.lang.String key, double... values) + #ctor(java.lang.String key, boolean... values) + #ctor(java.lang.String key, com.google.firebase.appindexing.Indexable... values) + #ctor(java.lang.String key, java.lang.String... values) + #ctor(java.lang.String key, long... values) + #ctor(java.lang.String actionStatus) + #ctor(com.google.firebase.appindexing.Action.Metadata.Builder metadataBuilder) + #ctor(java.lang.String name) + #ctor(java.lang.String name, java.lang.String url) + #ctor(java.lang.String name, java.lang.String url, java.lang.String webUrl) + #ctor(java.lang.String url) + class Action.Metadata.Builder + #ctor(boolean uploadable) + class AndroidAppUri + equals(java.lang.Object object) + newAndroidAppUri(android.net.Uri uri) + class FirebaseAppIndex + #ctor(java.lang.String... urls) + #ctor(com.google.firebase.appindexing.Indexable... indexables) + class FirebaseAppIndexingException + #ctor(java.lang.String detailMessage) + #ctor(java.lang.String detailMessage, java.lang.Throwable cause) + class FirebaseAppIndexingInvalidArgumentException + #ctor(java.lang.String message) + #ctor(java.lang.String message, java.lang.Throwable cause) + class FirebaseAppIndexingTooManyArgumentsException + #ctor(java.lang.String message) + #ctor(java.lang.String message, java.lang.Throwable cause) + class FirebaseUserActions + #ctor(com.google.firebase.appindexing.Action action) + #ctor(com.google.firebase.appindexing.Action action) + class Indexable.Builder + #ctor(java.lang.String type) + class Indexable.Metadata.Builder + #ctor(int scope) + #ctor(int score) + #ctor(android.net.Uri sliceUri) + #ctor(boolean worksOffline) +package com.google.firebase.appindexing.builders +;--------------------------------------- + class Actions + #ctor(java.lang.String name, java.lang.String url) + class AggregateRatingBuilder + setRatingCount(long ratingCount) + setRatingValue(java.lang.String ratingValue) + class AudiobookBuilder + setAuthor(com.google.firebase.appindexing.builders.PersonBuilder... personBuilders) + setReadBy(com.google.firebase.appindexing.builders.PersonBuilder... personBuilders) + class BookBuilder + setAuthor(com.google.firebase.appindexing.builders.PersonBuilder... personBuilders) + class ConversationBuilder + setId(java.lang.String id) + class DigitalDocumentBuilder + setAuthor(com.google.firebase.appindexing.builders.PersonBuilder... personBuilders) + setDateCreated(java.util.Date dateCreated) + setDateModified(java.util.Date dateModified) + setHasDigitalDocumentPermission(com.google.firebase.appindexing.builders.DigitalDocumentPermissionBuilder... permissions) + setText(java.lang.String text) + class DigitalDocumentPermissionBuilder + setGrantee(com.google.firebase.appindexing.builders.PersonBuilder... grantees) + setPermissionType(java.lang.String type) + class GeoShapeBuilder + setBox(java.lang.String... box) + setBox(java.lang.String box) + class IndexableBuilder + #ctor(java.lang.String type) + #ctor(java.lang.String key, boolean... values) + #ctor(java.lang.String key, com.google.firebase.appindexing.Indexable... values) + #ctor(java.lang.String key, java.lang.String... values) + #ctor(java.lang.String key, long... values) + #ctor(java.lang.String description) + #ctor(java.lang.String url) + #ctor(java.lang.String... keywords) + #ctor(com.google.firebase.appindexing.Indexable.Metadata.Builder metadataBuilder) + #ctor(java.lang.String name) + #ctor(java.lang.String webUrl) + #ctor(java.lang.String url) + #ctor(java.lang.String key, S... values) + class Indexables + newSimple(java.lang.String name, java.lang.String url) + class LocalBusinessBuilder + setAddress(com.google.firebase.appindexing.builders.PostalAddressBuilder address) + setAggregateRating(com.google.firebase.appindexing.builders.AggregateRatingBuilder aggregateRating) + setGeo(com.google.firebase.appindexing.builders.GeoShapeBuilder geoShape) + setPriceRange(java.lang.String priceRange) + setTelephone(java.lang.String telephone) + class MessageBuilder + setDateRead(java.util.Date dateRead) + setDateReceived(java.util.Date dateReceived) + setDateSent(java.util.Date dateSent) + setIsPartOf(com.google.firebase.appindexing.builders.ConversationBuilder... conversation) + setMessageAttachment(com.google.firebase.appindexing.builders.IndexableBuilder... attachments) + setRecipient(com.google.firebase.appindexing.builders.PersonBuilder... recipients) + setSender(com.google.firebase.appindexing.builders.PersonBuilder sender) + setText(java.lang.String text) + class MusicAlbumBuilder + setByArtist(com.google.firebase.appindexing.builders.MusicGroupBuilder artist) + setNumTracks(int numTracks) + setTrack(com.google.firebase.appindexing.builders.MusicRecordingBuilder... tracks) + class MusicGroupBuilder + setAlbum(com.google.firebase.appindexing.builders.MusicAlbumBuilder... musicAlbums) + setGenre(java.lang.String genre) + setTrack(com.google.firebase.appindexing.builders.MusicRecordingBuilder... tracks) + class MusicPlaylistBuilder + setNumTracks(int numTracks) + setTrack(com.google.firebase.appindexing.builders.MusicRecordingBuilder... tracks) + class MusicRecordingBuilder + setByArtist(com.google.firebase.appindexing.builders.MusicGroupBuilder artist) + setDuration(int durationInSeconds) + setInAlbum(com.google.firebase.appindexing.builders.MusicAlbumBuilder musicAlbum) + setInPlaylist(com.google.firebase.appindexing.builders.MusicPlaylistBuilder... musicPlaylists) + class PersonBuilder + setEmail(java.lang.String email) + setIsSelf(boolean isSelf) + setTelephone(java.lang.String telephone) + class PhotographBuilder + setDateCreated(java.util.Date dateCreated) + setLocationCreated(com.google.firebase.appindexing.builders.PlaceBuilder place) + class PlaceBuilder + setGeo(com.google.firebase.appindexing.builders.GeoShapeBuilder geoShape) + class PostalAddressBuilder + setAddressCountry(java.lang.String country) + setAddressLocality(java.lang.String addressLocality) + setPostalCode(java.lang.String postalCode) + setStreetAddress(java.lang.String streetAddress) + class ReservationBuilder + setPartySize(long partySize) + setReservationFor(com.google.firebase.appindexing.builders.LocalBusinessBuilder localBusiness) + setStartDate(java.util.Date startDate) + class StickerBuilder + setIsPartOf(com.google.firebase.appindexing.builders.StickerPackBuilder stickerPack) + class StickerPackBuilder + setHasSticker(com.google.firebase.appindexing.builders.StickerBuilder... stickers) + class VideoObjectBuilder + setAuthor(com.google.firebase.appindexing.builders.PersonBuilder author) + setDuration(long durationInSeconds) + setDurationWatched(long durationWatchedInSeconds) + setLocationCreated(com.google.firebase.appindexing.builders.PlaceBuilder place) + setSeriesName(java.lang.String seriesName) + setUploadDate(java.util.Date uploadDate) +package com.google.firebase.appinvite +;--------------------------------------- + class FirebaseAppInvite + #ctor(com.google.firebase.dynamiclinks.PendingDynamicLinkData pendingDynamicLinkData) +package com.google.firebase.auth +;--------------------------------------- + interface ActionCodeResult + getData(int key) + class ActionCodeSettings + writeToParcel(android.os.Parcel out, int flags) + class ActionCodeSettings.Builder + setAndroidPackageName(java.lang.String androidPackageName, boolean installIfNotAvailable, java.lang.String minimumVersion) + setDynamicLinkDomain(java.lang.String dynamicLinkDomain) + setHandleCodeInApp(boolean status) + setIOSBundleId(java.lang.String iOSBundleId) + setUrl(java.lang.String url) + class EmailAuthProvider + getCredential(java.lang.String email, java.lang.String password) + getCredentialWithLink(java.lang.String email, java.lang.String emailLink) + class FacebookAuthProvider + getCredential(java.lang.String accessToken) + class FirebaseAuth + addAuthStateListener(com.google.firebase.auth.FirebaseAuth.AuthStateListener listener) + addIdTokenListener(com.google.firebase.auth.FirebaseAuth.IdTokenListener listener) + applyActionCode(java.lang.String code) + checkActionCode(java.lang.String code) + confirmPasswordReset(java.lang.String code, java.lang.String newPassword) + createUserWithEmailAndPassword(java.lang.String email, java.lang.String password) + fetchProvidersForEmail(java.lang.String email) + fetchSignInMethodsForEmail(java.lang.String email) + getInstance(com.google.firebase.FirebaseApp firebaseApp) + isSignInWithEmailLink(java.lang.String link) + removeAuthStateListener(com.google.firebase.auth.FirebaseAuth.AuthStateListener listener) + removeIdTokenListener(com.google.firebase.auth.FirebaseAuth.IdTokenListener listener) + sendPasswordResetEmail(java.lang.String email, com.google.firebase.auth.ActionCodeSettings actionCodeSettings) + sendPasswordResetEmail(java.lang.String email) + sendSignInLinkToEmail(java.lang.String email, com.google.firebase.auth.ActionCodeSettings actionCodeSettings) + setFirebaseUIVersion(java.lang.String firebaseUIVersion) + setLanguageCode(java.lang.String languageCode) + signInWithCredential(com.google.firebase.auth.AuthCredential credential) + signInWithCustomToken(java.lang.String token) + signInWithEmailAndPassword(java.lang.String email, java.lang.String password) + signInWithEmailLink(java.lang.String email, java.lang.String link) + updateCurrentUser(com.google.firebase.auth.FirebaseUser user) + verifyPasswordResetCode(java.lang.String code) + interface FirebaseAuth.AuthStateListener + onAuthStateChanged(com.google.firebase.auth.FirebaseAuth auth) + interface FirebaseAuth.IdTokenListener + onIdTokenChanged(com.google.firebase.auth.FirebaseAuth auth) + class FirebaseAuthException + #ctor(java.lang.String errorCode, java.lang.String detailMessage) + class FirebaseAuthInvalidCredentialsException + #ctor(java.lang.String code, java.lang.String message) + class FirebaseAuthInvalidUserException + #ctor(java.lang.String code, java.lang.String message) + class FirebaseAuthRecentLoginRequiredException + #ctor(java.lang.String code, java.lang.String message) + class FirebaseAuthSettings + #ctor(java.lang.String phoneNumber, java.lang.String smsCode) + class FirebaseUser + #ctor(boolean forceRefresh) + #ctor(com.google.firebase.auth.AuthCredential credential) + #ctor(com.google.firebase.auth.AuthCredential credential) + #ctor(com.google.firebase.auth.AuthCredential credential) + #ctor(com.google.firebase.auth.ActionCodeSettings actionCodeSettings) + #ctor(java.lang.String provider) + #ctor(java.lang.String email) + #ctor(java.lang.String password) + #ctor(com.google.firebase.auth.PhoneAuthCredential credential) + #ctor(com.google.firebase.auth.UserProfileChangeRequest request) + class GithubAuthProvider + getCredential(java.lang.String token) + class GoogleAuthProvider + getCredential(java.lang.String idToken, java.lang.String accessToken) + class OAuthProvider + getCredential(java.lang.String providerId, java.lang.String idToken, java.lang.String accessToken) + class PhoneAuthProvider + getCredential(java.lang.String verificationId, java.lang.String smsCode) + getInstance(com.google.firebase.auth.FirebaseAuth firebaseAuth) + verifyPhoneNumber(java.lang.String phoneNumber, long timeout, java.util.concurrent.TimeUnit unit, android.app.Activity activity, com.google.firebase.auth.PhoneAuthProvider.OnVerificationStateChangedCallbacks callbacks) + verifyPhoneNumber(java.lang.String phoneNumber, long timeout, java.util.concurrent.TimeUnit unit, java.util.concurrent.Executor executor, com.google.firebase.auth.PhoneAuthProvider.OnVerificationStateChangedCallbacks callbacks) + verifyPhoneNumber(java.lang.String phoneNumber, long timeout, java.util.concurrent.TimeUnit unit, android.app.Activity activity, com.google.firebase.auth.PhoneAuthProvider.OnVerificationStateChangedCallbacks callbacks, com.google.firebase.auth.PhoneAuthProvider.ForceResendingToken forceResendingToken) + verifyPhoneNumber(java.lang.String phoneNumber, long timeout, java.util.concurrent.TimeUnit unit, java.util.concurrent.Executor executor, com.google.firebase.auth.PhoneAuthProvider.OnVerificationStateChangedCallbacks callbacks, com.google.firebase.auth.PhoneAuthProvider.ForceResendingToken forceResendingToken) + class PhoneAuthProvider.OnVerificationStateChangedCallbacks + #ctor(java.lang.String verificationId) + #ctor(java.lang.String verificationId, com.google.firebase.auth.PhoneAuthProvider.ForceResendingToken forceResendingToken) + #ctor(com.google.firebase.auth.PhoneAuthCredential credential) + #ctor(com.google.firebase.FirebaseException exception) + class PlayGamesAuthProvider + getCredential(java.lang.String serverAuthCode) + class TwitterAuthProvider + getCredential(java.lang.String token, java.lang.String secret) + class UserProfileChangeRequest.Builder + #ctor(java.lang.String displayName) + #ctor(android.net.Uri photoUri) +package com.google.firebase.auth.internal +;--------------------------------------- + interface IdTokenListener + onIdTokenChanged(com.google.firebase.internal.InternalTokenResult tokenResult) + interface InternalAuthProvider + addIdTokenListener(com.google.firebase.auth.internal.IdTokenListener listener) + getAccessToken(boolean forceRefresh) + removeIdTokenListener(com.google.firebase.auth.internal.IdTokenListener listenerToRemove) +package com.google.firebase.crash +;--------------------------------------- + class FirebaseCrash + getInstance(com.google.firebase.FirebaseApp firebaseApp) + log(java.lang.String message) + logcat(int level, java.lang.String tag, java.lang.String message) + report(java.lang.Throwable throwable) + setCrashCollectionEnabled(boolean enable) +package com.google.firebase.dynamiclinks +;--------------------------------------- + class DynamicLink.AndroidParameters.Builder + #ctor(java.lang.String packageName) + #ctor(android.net.Uri fallbackUrl) + #ctor(int minimumVersion) + class DynamicLink.Builder + buildShortDynamicLink(int suffix) + setAndroidParameters(com.google.firebase.dynamiclinks.DynamicLink.AndroidParameters androidParameters) + setDynamicLinkDomain(java.lang.String dynamicLinkDomain) + setGoogleAnalyticsParameters(com.google.firebase.dynamiclinks.DynamicLink.GoogleAnalyticsParameters googleAnalyticsParameters) + setIosParameters(com.google.firebase.dynamiclinks.DynamicLink.IosParameters iosParameters) + setItunesConnectAnalyticsParameters(com.google.firebase.dynamiclinks.DynamicLink.ItunesConnectAnalyticsParameters itunesConnectAnalyticsParameters) + setLink(android.net.Uri link) + setLongLink(android.net.Uri longLink) + setNavigationInfoParameters(com.google.firebase.dynamiclinks.DynamicLink.NavigationInfoParameters navigationInfoParameters) + setSocialMetaTagParameters(com.google.firebase.dynamiclinks.DynamicLink.SocialMetaTagParameters socialMetaTagParameters) + class DynamicLink.GoogleAnalyticsParameters.Builder + #ctor(java.lang.String source, java.lang.String medium, java.lang.String campaign) + #ctor(java.lang.String campaign) + #ctor(java.lang.String content) + #ctor(java.lang.String medium) + #ctor(java.lang.String source) + #ctor(java.lang.String term) + class DynamicLink.IosParameters.Builder + #ctor(java.lang.String bundleId) + #ctor(java.lang.String appStoreId) + #ctor(java.lang.String customScheme) + #ctor(android.net.Uri fallbackUrl) + #ctor(java.lang.String bundleId) + #ctor(android.net.Uri fallbackUrl) + #ctor(java.lang.String minimumVersion) + class DynamicLink.ItunesConnectAnalyticsParameters.Builder + #ctor(java.lang.String affiliateToken) + #ctor(java.lang.String campaignToken) + #ctor(java.lang.String providerToken) + class DynamicLink.NavigationInfoParameters.Builder + #ctor(boolean forcedRedirectEnabled) + class DynamicLink.SocialMetaTagParameters.Builder + #ctor(java.lang.String description) + #ctor(android.net.Uri imageUrl) + #ctor(java.lang.String title) + class FirebaseDynamicLinks + #ctor(android.net.Uri dynamicLinkUri) + #ctor(android.content.Intent intent) + class PendingDynamicLinkData + #ctor(java.lang.String deepLink, int minVersion, long clickTimestamp, android.net.Uri redirectUrl) + #ctor(android.content.Context context) +package com.google.firebase +;--------------------------------------- + class FirebaseApiNotAvailableException + #ctor(java.lang.String message) + class FirebaseException + #ctor(java.lang.String detailMessage) + #ctor(java.lang.String detailMessage, java.lang.Throwable cause) +package com.google.firebase.iid +;--------------------------------------- + class FirebaseInstanceId + deleteToken(java.lang.String authorizedEntity, java.lang.String scope) + getInstance(com.google.firebase.FirebaseApp app) + getToken(java.lang.String authorizedEntity, java.lang.String scope) + class FirebaseInstanceIdReceiver + #ctor(android.content.Context context, android.content.Intent intent) +package com.google.firebase.messaging +;--------------------------------------- + class FirebaseMessaging + send(com.google.firebase.messaging.RemoteMessage message) + setAutoInitEnabled(boolean enable) + subscribeToTopic(java.lang.String topic) + unsubscribeFromTopic(java.lang.String topic) + class FirebaseMessagingService + #ctor(com.google.firebase.messaging.RemoteMessage message) + #ctor(java.lang.String msgId) + #ctor(java.lang.String token) + #ctor(java.lang.String msgId, java.lang.Exception exception) + class RemoteMessage + writeToParcel(android.os.Parcel out, int flags) + class RemoteMessage.Builder + #ctor(java.lang.String to) + #ctor(java.lang.String key, java.lang.String value) + #ctor(java.lang.String collapseKey) + #ctor(java.util.Map hintedLanguages) + class FirebaseVisionDocumentTextRecognizer + processImage(com.google.firebase.ml.vision.common.FirebaseVisionImage image) +package com.google.firebase.ml.vision.face +;--------------------------------------- + class FirebaseVisionFace + getContour(int contourType) + getLandmark(int landmarkType) + class FirebaseVisionFaceDetector + detectInImage(com.google.firebase.ml.vision.common.FirebaseVisionImage image) + class FirebaseVisionFaceDetectorOptions + equals(java.lang.Object o) + class FirebaseVisionFaceDetectorOptions.Builder + #ctor(int classificationMode) + #ctor(int contourMode) + #ctor(int landmarkMode) + #ctor(float minFaceSize) + #ctor(int performanceMode) +package com.google.firebase.ml.vision +;--------------------------------------- + class FirebaseVision + getCloudDocumentTextRecognizer(com.google.firebase.ml.vision.document.FirebaseVisionCloudDocumentRecognizerOptions options) + getCloudImageLabeler(com.google.firebase.ml.vision.label.FirebaseVisionCloudImageLabelerOptions options) + getCloudTextRecognizer(com.google.firebase.ml.vision.text.FirebaseVisionCloudTextRecognizerOptions options) + getInstance(com.google.firebase.FirebaseApp app) + getOnDeviceImageLabeler(com.google.firebase.ml.vision.label.FirebaseVisionOnDeviceImageLabelerOptions options) + getVisionBarcodeDetector(com.google.firebase.ml.vision.barcode.FirebaseVisionBarcodeDetectorOptions options) + getVisionCloudLandmarkDetector(com.google.firebase.ml.vision.cloud.FirebaseVisionCloudDetectorOptions options) + getVisionFaceDetector(com.google.firebase.ml.vision.face.FirebaseVisionFaceDetectorOptions options) + setStatsCollectionEnabled(boolean enable) +package com.google.firebase.ml.vision.label +;--------------------------------------- + class FirebaseVisionCloudImageLabelerOptions + equals(java.lang.Object o) + class FirebaseVisionCloudImageLabelerOptions.Builder + #ctor(float confidenceThreshold) + class FirebaseVisionImageLabel + equals(java.lang.Object o) + class FirebaseVisionImageLabeler + processImage(com.google.firebase.ml.vision.common.FirebaseVisionImage image) + class FirebaseVisionLabelDetector + detectInImage(com.google.firebase.ml.vision.common.FirebaseVisionImage image) + class FirebaseVisionLabelDetectorOptions + equals(java.lang.Object o) + class FirebaseVisionLabelDetectorOptions.Builder + #ctor(float confidenceThreshold) + class FirebaseVisionOnDeviceImageLabelerOptions + equals(java.lang.Object o) + class FirebaseVisionOnDeviceImageLabelerOptions.Builder + #ctor(float confidenceThreshold) +package com.google.firebase.ml.vision.text +;--------------------------------------- + class FirebaseVisionCloudTextRecognizerOptions + equals(java.lang.Object o) + class FirebaseVisionCloudTextRecognizerOptions.Builder + #ctor(java.util.List hintedLanguages) + #ctor(int modelType) + class FirebaseVisionTextDetector + detectInImage(com.google.firebase.ml.vision.common.FirebaseVisionImage image) + class FirebaseVisionTextRecognizer + processImage(com.google.firebase.ml.vision.common.FirebaseVisionImage image) + class RecognizedLanguage + equals(java.lang.Object o) +package com.google.firebase.perf +;--------------------------------------- + class FirebasePerformance + newHttpMetric(java.net.URL url, java.lang.String httpMethod) + newHttpMetric(java.lang.String url, java.lang.String httpMethod) + newTrace(java.lang.String traceName) + setPerformanceCollectionEnabled(boolean enable) + startTrace(java.lang.String traceName) +package com.google.firebase.perf.metrics +;--------------------------------------- + class HttpMetric + getAttribute(java.lang.String attribute) + putAttribute(java.lang.String attribute, java.lang.String value) + removeAttribute(java.lang.String attribute) + setHttpResponseCode(int responseCode) + setRequestPayloadSize(long bytes) + setResponseContentType(java.lang.String contentType) + setResponsePayloadSize(long bytes) + class Trace + getAttribute(java.lang.String attribute) + getLongMetric(java.lang.String metricName) + incrementCounter(java.lang.String counterName, long incrementBy) + incrementCounter(java.lang.String counterName) + incrementMetric(java.lang.String metricName, long incrementBy) + putAttribute(java.lang.String attribute, java.lang.String value) + putMetric(java.lang.String metricName, long value) + removeAttribute(java.lang.String attribute) + writeToParcel(android.os.Parcel out, int flags) +package com.google.firebase.remoteconfig +;--------------------------------------- + class FirebaseRemoteConfig + fetch(long cacheExpirationSeconds) + getBoolean(java.lang.String key, java.lang.String namespace) + getBoolean(java.lang.String key) + getByteArray(java.lang.String key, java.lang.String namespace) + getByteArray(java.lang.String key) + getDouble(java.lang.String key, java.lang.String namespace) + getDouble(java.lang.String key) + getKeysByPrefix(java.lang.String prefix, java.lang.String namespace) + getKeysByPrefix(java.lang.String prefix) + getLong(java.lang.String key) + getLong(java.lang.String key, java.lang.String namespace) + getString(java.lang.String key) + getString(java.lang.String key, java.lang.String namespace) + getValue(java.lang.String key) + getValue(java.lang.String key, java.lang.String namespace) + setConfigSettings(com.google.firebase.remoteconfig.FirebaseRemoteConfigSettings settings) + setDefaults(int resourceId) + setDefaults(java.util.Map namespace) + setDefaults(int resourceId, java.lang.String namespace) + setDefaults(java.util.Map + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/com.android.billingclient/billing-ktx/Transforms/EnumMethods.xml b/source/com.android.billingclient/billing-ktx/Transforms/EnumMethods.xml new file mode 100644 index 000000000..a94a7389d --- /dev/null +++ b/source/com.android.billingclient/billing-ktx/Transforms/EnumMethods.xml @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + diff --git a/source/com.android.billingclient/billing-ktx/Transforms/Metadata.xml b/source/com.android.billingclient/billing-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..a40be401e --- /dev/null +++ b/source/com.android.billingclient/billing-ktx/Transforms/Metadata.xml @@ -0,0 +1,21 @@ + + + + Android.BillingClient + + + Android.BillingClient.Api + + + Android.BillingClient.Ktx + + \ No newline at end of file diff --git a/source/com.android.billingclient/billing/Additions/Additions.cs b/source/com.android.billingclient/billing/Additions/Additions.cs new file mode 100644 index 000000000..0228a88c4 --- /dev/null +++ b/source/com.android.billingclient/billing/Additions/Additions.cs @@ -0,0 +1,292 @@ +using System; +using System.Collections.Generic; +using System.Threading.Tasks; + +namespace Android.BillingClient.Api +{ + public class ConsumeResult + { + public BillingResult BillingResult { get; set; } + + public string PurchaseToken { get; set; } + } + + public class QueryPurchaseHistoryResult + { + public BillingResult Result { get; set; } + + public IList PurchaseHistoryRecords { get; set; } + } + + [Obsolete("Use QueryProductDetailsAsync(QueryProductDetailsParams) instead")] + public class QuerySkuDetailsResult + { + public BillingResult Result { get; set; } + + public IList SkuDetails { get; set; } + } + + public class QueryProductDetailsResult + { + public BillingResult Result { get; set; } + + public IList ProductDetails { get; set; } + } + + public class QueryPurchasesResult + { + public BillingResult Result { get; set; } + + public IList Purchases { get; set; } + } + + public partial class BillingClient + { + public partial class Builder + { + InternalPurchasesUpdatedListener purchasesUpdatedListener; + + public void SetListener(Action> handler) + { + purchasesUpdatedListener = new InternalPurchasesUpdatedListener + { + PurchasesUpdatedHandler = (r, p) => handler?.Invoke(r, p) + }; + + SetListener(purchasesUpdatedListener); + } + } + + public Task AcknowledgePurchaseAsync(AcknowledgePurchaseParams acknowledgePurchaseParams) + { + var tcs = new TaskCompletionSource(); + + var listener = new InternalAcknowledgePurchaseResponseListener + { + AcknowledgePurchaseResponseHandler = r => tcs.TrySetResult(r) + }; + + AcknowledgePurchase(acknowledgePurchaseParams, listener); + + return tcs.Task; + } + + public Task ConsumeAsync(ConsumeParams consumeParams) + { + var tcs = new TaskCompletionSource(); + + var listener = new InternalConsumeResponseListener + { + ConsumeResponseHandler = (r, s) => tcs.TrySetResult(new ConsumeResult + { + BillingResult = r, + PurchaseToken = s + }) + }; + + Consume(consumeParams, listener); + + return tcs.Task; + } + + [Obsolete("Use QueryPurchaseHistoryAsync(QueryPurchaseHistoryParams) instead")] + public Task QueryPurchaseHistoryAsync(string skuType) + { + var tcs = new TaskCompletionSource(); + + var listener = new InternalPurchaseHistoryResponseListener + { + PurchaseHistoryResponseHandler = (r, h) => tcs.TrySetResult(new QueryPurchaseHistoryResult + { + Result = r, + PurchaseHistoryRecords = h + }) + }; + + QueryPurchaseHistory(skuType, listener); + + return tcs.Task; + } + + public Task QueryPurchaseHistoryAsync(QueryPurchaseHistoryParams queryPurchaseHistoryParams) + { + var tcs = new TaskCompletionSource(); + + var listener = new InternalPurchaseHistoryResponseListener + { + PurchaseHistoryResponseHandler = (r, h) => tcs.TrySetResult(new QueryPurchaseHistoryResult + { + Result = r, + PurchaseHistoryRecords = h + }) + }; + + QueryPurchaseHistory(queryPurchaseHistoryParams, listener); + + return tcs.Task; + } + + [Obsolete("Use QueryProductDetailsAsync(QueryProductDetailsParams) instead")] + public Task QuerySkuDetailsAsync(SkuDetailsParams skuDetailsParams) + { + var tcs = new TaskCompletionSource(); + + var listener = new InternalSkuDetailsResponseListener + { + SkuDetailsResponseHandler = (r, s) => tcs.TrySetResult(new QuerySkuDetailsResult + { + Result = r, + SkuDetails = s + }) + }; + + QuerySkuDetails(skuDetailsParams, listener); + + return tcs.Task; + } + + public Task QueryProductDetailsAsync(QueryProductDetailsParams productDetailsParams) + { + var tcs = new TaskCompletionSource(); + + var listener = new InternalProductDetailsResponseListener + { + ProductDetailsResponseHandler = (r, s) => tcs.TrySetResult(new QueryProductDetailsResult + { + Result = r, + ProductDetails = s + }) + }; + + QueryProductDetails(productDetailsParams, listener); + + return tcs.Task; + } + + public Task QueryPurchasesAsync(QueryPurchasesParams purchasesParams) + { + var tcs = new TaskCompletionSource(); + + var listener = new InternalPurchasesResponseListener + { + PurchasesResponseHandler = (r, s) => tcs.TrySetResult(new QueryPurchasesResult + { + Result = r, + Purchases = s + }) + }; + + QueryPurchases(purchasesParams, listener); + + return tcs.Task; + } + + public Task StartConnectionAsync(Action onDisconnected = null) + { + var tcs = new TaskCompletionSource(); + + var listener = new InternalBillingClientStateListener + { + BillingServiceDisconnectedHandler = () => + { + onDisconnected?.Invoke(); + tcs.TrySetResult(null); + }, + BillingSetupFinishedHandler = r => + tcs.TrySetResult(r) + }; + + StartConnection(listener); + + return tcs.Task; + } + + public void StartConnection(Action setupFinished, Action onDisconnected) + { + var listener = new InternalBillingClientStateListener + { + BillingServiceDisconnectedHandler = () => + onDisconnected?.Invoke(), + BillingSetupFinishedHandler = r => + setupFinished?.Invoke(r) + }; + + StartConnection(listener); + } + } + + internal class InternalAcknowledgePurchaseResponseListener : Java.Lang.Object, IAcknowledgePurchaseResponseListener + { + public Action AcknowledgePurchaseResponseHandler { get; set; } + + public void OnAcknowledgePurchaseResponse(BillingResult result) + => AcknowledgePurchaseResponseHandler?.Invoke(result); + } + + internal class InternalBillingClientStateListener : Java.Lang.Object, IBillingClientStateListener + { + public Action BillingServiceDisconnectedHandler { get; set; } + + public Action BillingSetupFinishedHandler { get; set; } + + public void OnBillingServiceDisconnected() + => BillingServiceDisconnectedHandler?.Invoke(); + + public void OnBillingSetupFinished(BillingResult result) + => BillingSetupFinishedHandler?.Invoke(result); + } + + internal class InternalConsumeResponseListener : Java.Lang.Object, IConsumeResponseListener + { + public Action ConsumeResponseHandler { get; set; } + public void OnConsumeResponse(BillingResult result, string str) + => ConsumeResponseHandler?.Invoke(result, str); + } + + internal class InternalPriceChangeConfirmationListener : Java.Lang.Object //, IPriceChangeConfirmationListener + { + public Action PriceChangeConfirmationHandler { get; set; } + public void OnPriceChangeConfirmationResult(BillingResult result) + => PriceChangeConfirmationHandler?.Invoke(result); + } + + internal class InternalPurchaseHistoryResponseListener : Java.Lang.Object, IPurchaseHistoryResponseListener + { + public Action> PurchaseHistoryResponseHandler { get; set; } + + public void OnPurchaseHistoryResponse(BillingResult result, IList history) + => PurchaseHistoryResponseHandler?.Invoke(result, history); + } + + internal class InternalPurchasesUpdatedListener : Java.Lang.Object, IPurchasesUpdatedListener + { + public Action> PurchasesUpdatedHandler { get; set; } + public void OnPurchasesUpdated(BillingResult result, IList purchases) + => PurchasesUpdatedHandler?.Invoke(result, purchases); + } + + [Obsolete("Use QueryProductDetailsAsync(QueryProductDetailsParams) instead")] + internal class InternalSkuDetailsResponseListener : Java.Lang.Object, ISkuDetailsResponseListener + { + public Action> SkuDetailsResponseHandler { get; set; } + + public void OnSkuDetailsResponse(BillingResult result, IList skuDetails) + => SkuDetailsResponseHandler?.Invoke(result, skuDetails); + } + + internal class InternalProductDetailsResponseListener : Java.Lang.Object, IProductDetailsResponseListener + { + public Action> ProductDetailsResponseHandler { get; set; } + + public void OnProductDetailsResponse(BillingResult result, IList skuDetails) + => ProductDetailsResponseHandler?.Invoke(result, skuDetails); + } + + internal class InternalPurchasesResponseListener : Java.Lang.Object, IPurchasesResponseListener + { + public Action> PurchasesResponseHandler { get; set; } + + public void OnQueryPurchasesResponse(BillingResult result, IList purchases) + => PurchasesResponseHandler?.Invoke(result, purchases); + } +} diff --git a/source/com.android.billingclient/billing/Transforms/EnumFields.xml b/source/com.android.billingclient/billing/Transforms/EnumFields.xml new file mode 100644 index 000000000..6e6ce70bf --- /dev/null +++ b/source/com.android.billingclient/billing/Transforms/EnumFields.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/com.android.billingclient/billing/Transforms/EnumMethods.xml b/source/com.android.billingclient/billing/Transforms/EnumMethods.xml new file mode 100644 index 000000000..4a4ed0730 --- /dev/null +++ b/source/com.android.billingclient/billing/Transforms/EnumMethods.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/source/com.android.billingclient/billing/Transforms/Metadata.xml b/source/com.android.billingclient/billing/Transforms/Metadata.xml new file mode 100644 index 000000000..dbe25e423 --- /dev/null +++ b/source/com.android.billingclient/billing/Transforms/Metadata.xml @@ -0,0 +1,15 @@ + + + Android.BillingClient + Android.BillingClient.Api + + + + + + Consume + QueryPurchaseHistory + QuerySkuDetails + QueryProductDetails + QueryPurchases + diff --git a/source/com.android.volley/volley-cronet/Additions/Additions.cs b/source/com.android.volley/volley-cronet/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.android.volley/volley-cronet/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.android.volley/volley-cronet/Transforms/EnumFields.xml b/source/com.android.volley/volley-cronet/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.android.volley/volley-cronet/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.android.volley/volley-cronet/Transforms/EnumMethods.xml b/source/com.android.volley/volley-cronet/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.android.volley/volley-cronet/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.android.volley/volley-cronet/Transforms/Metadata.Namespaces.xml b/source/com.android.volley/volley-cronet/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..0338d4349 --- /dev/null +++ b/source/com.android.volley/volley-cronet/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,17 @@ + + + + Volley.CroNet + + + \ No newline at end of file diff --git a/source/com.android.volley/volley-cronet/Transforms/Metadata.ParameterNames.xml b/source/com.android.volley/volley-cronet/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.android.volley/volley-cronet/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.android.volley/volley-cronet/Transforms/Metadata.xml b/source/com.android.volley/volley-cronet/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.android.volley/volley-cronet/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.android.volley/volley/Additions/Additions.cs b/source/com.android.volley/volley/Additions/Additions.cs new file mode 100644 index 000000000..b06225bb0 --- /dev/null +++ b/source/com.android.volley/volley/Additions/Additions.cs @@ -0,0 +1,10 @@ +using System; + +namespace Volley.Toolbox { + public partial class StringRequest { + protected override void DeliverResponse (Java.Lang.Object response) + { + DeliverResponse ((string)response); + } + } +} \ No newline at end of file diff --git a/source/com.android.volley/volley/Transforms/EnumFields.xml b/source/com.android.volley/volley/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.android.volley/volley/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.android.volley/volley/Transforms/EnumMethods.xml b/source/com.android.volley/volley/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.android.volley/volley/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.android.volley/volley/Transforms/Metadata.Namespaces.xml b/source/com.android.volley/volley/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..396076a19 --- /dev/null +++ b/source/com.android.volley/volley/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,11 @@ + + + + \ No newline at end of file diff --git a/source/com.android.volley/volley/Transforms/Metadata.ParameterNames.xml b/source/com.android.volley/volley/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.android.volley/volley/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.android.volley/volley/Transforms/Metadata.xml b/source/com.android.volley/volley/Transforms/Metadata.xml new file mode 100644 index 000000000..8506ceba7 --- /dev/null +++ b/source/com.android.volley/volley/Transforms/Metadata.xml @@ -0,0 +1,27 @@ + + + Volley + + Java.Lang.Object + VolleyError + private + + Volley.Toolbox + Java.Lang.Object + + + + + RequestQueueRequestEvent + + + false + + + \ No newline at end of file diff --git a/source/com.github.bumptech.glide/annotations/Transforms/Metadata.Namespaces.xml b/source/com.github.bumptech.glide/annotations/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..83ebf4b8a --- /dev/null +++ b/source/com.github.bumptech.glide/annotations/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,15 @@ + + + Bumptech.Glide.Annotations + + + Bumptech.Glide.Annotations.Compilers + + + \ No newline at end of file diff --git a/source/com.github.bumptech.glide/annotations/Xamarin.Android.Glide.Annotations.targets b/source/com.github.bumptech.glide/annotations/Xamarin.Android.Glide.Annotations.targets new file mode 100644 index 000000000..2c3aa7c95 --- /dev/null +++ b/source/com.github.bumptech.glide/annotations/Xamarin.Android.Glide.Annotations.targets @@ -0,0 +1,7 @@ + + + + true + + + \ No newline at end of file diff --git a/source/com.github.bumptech.glide/disklrucache/Transforms/Metadata.xml b/source/com.github.bumptech.glide/disklrucache/Transforms/Metadata.xml new file mode 100644 index 000000000..1ac2ba90c --- /dev/null +++ b/source/com.github.bumptech.glide/disklrucache/Transforms/Metadata.xml @@ -0,0 +1,4 @@ + + + Bumptech.Glide.DiskLruCache + diff --git a/source/com.github.bumptech.glide/disklrucache/Xamarin.Android.Glide.DiskLruCache.targets b/source/com.github.bumptech.glide/disklrucache/Xamarin.Android.Glide.DiskLruCache.targets new file mode 100644 index 000000000..0ceda23aa --- /dev/null +++ b/source/com.github.bumptech.glide/disklrucache/Xamarin.Android.Glide.DiskLruCache.targets @@ -0,0 +1,7 @@ + + + + true + + + \ No newline at end of file diff --git a/source/com.github.bumptech.glide/gifdecoder/Transforms/Metadata.xml b/source/com.github.bumptech.glide/gifdecoder/Transforms/Metadata.xml new file mode 100644 index 000000000..81b069a3e --- /dev/null +++ b/source/com.github.bumptech.glide/gifdecoder/Transforms/Metadata.xml @@ -0,0 +1,4 @@ + + + Bumptech.Glide.GifDecoder + diff --git a/source/com.github.bumptech.glide/gifdecoder/Xamarin.Android.Glide.GifDecoder.targets b/source/com.github.bumptech.glide/gifdecoder/Xamarin.Android.Glide.GifDecoder.targets new file mode 100644 index 000000000..d72149f73 --- /dev/null +++ b/source/com.github.bumptech.glide/gifdecoder/Xamarin.Android.Glide.GifDecoder.targets @@ -0,0 +1,7 @@ + + + + true + + + \ No newline at end of file diff --git a/source/com.github.bumptech.glide/glide/Additions/Additions.cs b/source/com.github.bumptech.glide/glide/Additions/Additions.cs new file mode 100644 index 000000000..711f80100 --- /dev/null +++ b/source/com.github.bumptech.glide/glide/Additions/Additions.cs @@ -0,0 +1,458 @@ +using System.Collections; +using System.Linq; +using Android.Content; +using Android.Content.Res; +using Android.Graphics; +using Android.Graphics.Drawables; +using Android.Net; +using Android.OS; +using Android.Runtime; +using Bumptech.Glide.Load; +using Bumptech.Glide.Load.Engine; +using Bumptech.Glide.Load.Resource.Bitmap; +using Bumptech.Glide.Request; +using Bumptech.Glide.Request.Transition; +using Java.IO; +using Java.Lang; +using Java.Util.Concurrent; + +namespace Bumptech.Glide +{ + public partial class RequestBuilder + { + public virtual RequestBuilder Apply(BaseRequestOptions o) => (RequestBuilder)Apply_T(o); + + public virtual RequestBuilder AutoClone() => (RequestBuilder)AutoClone_T(); + + public virtual RequestBuilder CenterCrop() => (RequestBuilder)CenterCrop_T(); + + public virtual RequestBuilder CenterInside() => (RequestBuilder)CenterInside_T(); + + public virtual RequestBuilder CircleCrop() => (RequestBuilder)CircleCrop_T(); + + public new virtual RequestBuilder Clone() => (RequestBuilder)Clone_T(); + + public virtual RequestBuilder Decode(Class resourceClass) => (RequestBuilder)Decode_T(resourceClass); + + public virtual RequestBuilder DisallowHardwareConfig() => (RequestBuilder)DisallowHardwareConfig_T(); + + public virtual RequestBuilder Downsample(DownsampleStrategy strategy) => (RequestBuilder)Downsample_T(strategy); + + public virtual RequestBuilder DontAnimate() => (RequestBuilder)DontAnimate_T(); + + public virtual RequestBuilder DontTransform() => (RequestBuilder)DontTransform_T(); + + public virtual RequestBuilder EncodeFormat(Bitmap.CompressFormat format) => (RequestBuilder)EncodeFormat_T(format); + + public virtual RequestBuilder EncodeQuality(int quality) => (RequestBuilder)EncodeQuality_T(quality); + + public virtual RequestBuilder Error(Drawable drawable) => (RequestBuilder)Error_T(drawable); + + public virtual RequestBuilder Error(int resourceId) => (RequestBuilder)Error_T(resourceId); + + public virtual RequestBuilder Fallback(Drawable drawable) => (RequestBuilder)Fallback_T(drawable); + + public virtual RequestBuilder Fallback(int resourceId) => (RequestBuilder)Fallback_T(resourceId); + + public virtual RequestBuilder FitCenter() => (RequestBuilder)FitCenter_T(); + + public virtual RequestBuilder Format(DecodeFormat format) => (RequestBuilder)Format_T(format); + + public virtual RequestBuilder Frame(long frameTimeMicros) => (RequestBuilder)Frame_T(frameTimeMicros); + + public virtual RequestBuilder Lock() => (RequestBuilder)Lock_T(); + + public virtual RequestBuilder OptionalCenterCrop() => (RequestBuilder)OptionalCenterCrop_T(); + + public virtual RequestBuilder OptionalCenterInside() => (RequestBuilder)OptionalCenterInside_T(); + + public virtual RequestBuilder OptionalCircleCrop() => (RequestBuilder)OptionalCircleCrop_T(); + + public virtual RequestBuilder OptionalFitCenter() => (RequestBuilder)OptionalFitCenter_T(); + + public virtual RequestBuilder OptionalTransform(Class resourceClass, ITransformation transformation) => (RequestBuilder)OptionalTransform_T(resourceClass, transformation); + + public virtual RequestBuilder OptionalTransform(ITransformation transformation) => (RequestBuilder)OptionalTransform_T(transformation); + + public virtual RequestBuilder Override(int width, int height) => (RequestBuilder)Override_T(width, height); + + public virtual RequestBuilder Override(int size) => (RequestBuilder)Override_T(size); + + public virtual RequestBuilder Placeholder(Drawable drawable) => (RequestBuilder)Placeholder_T(drawable); + + public virtual RequestBuilder Placeholder(int resourceId) => (RequestBuilder)Placeholder_T(resourceId); + + public virtual RequestBuilder Set(Option option, Object value) => (RequestBuilder)Set_T(option, value); + + public virtual RequestBuilder SetDiskCacheStrategy(DiskCacheStrategy strategy) => (RequestBuilder)DiskCacheStrategy_T(strategy); + + public virtual RequestBuilder SetOnlyRetrieveFromCache(bool flag) => (RequestBuilder)OnlyRetrieveFromCache_T(flag); + + public virtual RequestBuilder SetPriority(Priority priority) => (RequestBuilder)Priority_T(priority); + + public virtual RequestBuilder SetSignature(IKey signature) => (RequestBuilder)Signature_T(signature); + + public virtual RequestBuilder SetSizeMultiplier(float sizeMultiplier) => (RequestBuilder)SizeMultiplier_T(sizeMultiplier); + + public virtual RequestBuilder SetTheme(Resources.Theme theme) => (RequestBuilder)Theme_T(theme); + + public virtual RequestBuilder SetUseAnimationPool(bool flag) => (RequestBuilder)UseAnimationPool_T(flag); + + public virtual RequestBuilder SetUseUnlimitedSourceGeneratorsPool(bool flag) => (RequestBuilder)UseUnlimitedSourceGeneratorsPool_T(flag); + + public virtual RequestBuilder SkipMemoryCache(bool skip) => (RequestBuilder)SkipMemoryCache_T(skip); + + public virtual RequestBuilder Timeout(int timeoutMs) => (RequestBuilder)Timeout_T(timeoutMs); + + public virtual RequestBuilder Transform(Class resourceClass, ITransformation transformation) => (RequestBuilder)Transform_T(resourceClass, transformation); + + public virtual RequestBuilder Transform(params ITransformation[] transformations) => (RequestBuilder)Transform_T(transformations); + + public virtual RequestBuilder Transform(ITransformation transformation) => (RequestBuilder)Transform_T(transformation); + } +} + +namespace Bumptech.Glide.Load.Data +{ + public partial class AssetFileDescriptorLocalUriFetcher + { + protected override void Close(Object data) => Close((AssetFileDescriptor)data); + + protected override Object LoadResource(Uri uri, ContentResolver contentResolver) => LoadResource_T(uri, contentResolver); + } + + public partial class FileDescriptorAssetPathFetcher + { + protected override void Close(Object data) => Close((ParcelFileDescriptor)data); + + protected override Object LoadResource(AssetManager assetManager, string path) => LoadResource_T(assetManager, path); + } + + public partial class FileDescriptorLocalUriFetcher + { + protected override void Close(Object data) => Close((ParcelFileDescriptor)data); + + protected override Object LoadResource(Uri uri, ContentResolver contentResolver) => LoadResource_T(uri, contentResolver); + } + + public partial class StreamAssetPathFetcher + { + protected override void Close(Object data) + { + var stream = InputStreamInvoker.FromJniHandle(((InputStream)data).Handle, JniHandleOwnership.DoNotTransfer); + + Close(stream); + } + + protected override Object LoadResource(AssetManager assetManager, string path) + { + var handle = InputStreamAdapter.ToLocalJniHandle(LoadResource_T(assetManager, path)); + + try + { + return new Object(handle, JniHandleOwnership.TransferLocalRef); + } + finally + { + JNIEnv.DeleteLocalRef(handle); + } + } + } + + public partial class StreamLocalUriFetcher + { + protected override void Close(Object data) + { + var stream = InputStreamInvoker.FromJniHandle(((InputStream)data).Handle, JniHandleOwnership.DoNotTransfer); + + Close(stream); + } + + protected override Object LoadResource(Uri uri, ContentResolver contentResolver) + { + var handle = InputStreamAdapter.ToLocalJniHandle(LoadResource_T(uri, contentResolver)); + + try + { + return new Object(handle, JniHandleOwnership.TransferLocalRef); + } + finally + { + JNIEnv.DeleteLocalRef(handle); + } + } + } +} + +namespace Bumptech.Glide.Load.Engine.Executor +{ + public partial class GlideExecutor + { + IList IExecutorService.InvokeAll(ICollection tasks) => InvokeAll(tasks.Cast().ToList()).ToList(); + + IList IExecutorService.InvokeAll(ICollection tasks, long timeout, TimeUnit unit) => InvokeAll(tasks.Cast().ToList(), timeout, unit).ToList(); + + Object IExecutorService.InvokeAny(ICollection tasks) => InvokeAny(tasks.Cast().ToList()); + + Object IExecutorService.InvokeAny(ICollection tasks, long timeout, TimeUnit unit) => InvokeAny(tasks.Cast().ToList(), timeout, unit); + } +} + +namespace Bumptech.Glide.Load.Model +{ + public partial class AssetUriLoader + { + public virtual ModelLoaderLoadData BuildLoadData(Object model, int width, int height, Options options) => + BuildLoadData((Uri)model, width, height, options); + + public virtual bool Handles(Object model) => Handles((Uri)model); + } + + public partial class ByteArrayLoader + { + public virtual ModelLoaderLoadData BuildLoadData(Object model, int width, int height, Options options) => + BuildLoadData(model?.ToArray(), width, height, options); + + public virtual bool Handles(Object model) => Handles(model?.ToArray()); + } + + public partial class StringLoader + { + public virtual ModelLoaderLoadData BuildLoadData(Object model, int width, int height, Options options) => + BuildLoadData(model?.ToString(), width, height, options); + + public virtual bool Handles(Object model) => Handles(model?.ToString()); + } + public partial class FileLoader + { + public virtual ModelLoaderLoadData BuildLoadData(Object model, int width, int height, Options options) => + BuildLoadData((File)model, width, height, options); + + public virtual bool Handles(Object model) => Handles((File)model); + } + + public partial class ResourceLoader + { + public virtual ModelLoaderLoadData BuildLoadData(Object model, int width, int height, Options options) => + BuildLoadData((Integer)model, width, height, options); + + public virtual bool Handles(Object model) => Handles((Integer)model); + } + + public partial class UriLoader + { + public virtual ModelLoaderLoadData BuildLoadData(Object model, int width, int height, Options options) => + BuildLoadData((Uri)model, width, height, options); + + public virtual bool Handles(Object model) => Handles((Uri)model); + } + + public partial class UrlUriLoader + { + public virtual ModelLoaderLoadData BuildLoadData(Object model, int width, int height, Options options) => + BuildLoadData((Uri)model, width, height, options); + + public virtual bool Handles(Object model) => Handles((Uri)model); + } +} + +namespace Bumptech.Glide.Load.Model.Stream +{ + partial class QMediaStoreUriLoader + { + public bool Handles(Java.Lang.Object uri) + => Handles((Uri)uri); + + public ModelLoaderLoadData BuildLoadData(Object uri, int width, int height, Options options) + => BuildLoadData((Uri)uri, width, height, options); + } +} + + +namespace Bumptech.Glide.Load.Resource +{ + partial class ImageDecoderResourceDecoder + { + public IResource Decode(Object source, int requestedWidth, int requestedHeight, Options options) + => Decode((ImageDecoder.Source)source, requestedWidth, requestedHeight, options); + + public bool Handles(Object source, Options options) + => Handles((ImageDecoder.Source)source, options); + } +} + +namespace Bumptech.Glide.Load.Resource.Gif +{ + public partial class GifDrawableEncoder + { + public virtual unsafe bool Encode(Object data, global::Java.IO.File file, global::Bumptech.Glide.Load.Options options) + => Encode((IResource)data, file, options); + } +} + +namespace Bumptech.Glide.Load.Resource.Bitmap +{ + public partial class BitmapDrawableEncoder + { + public virtual bool Encode(Object data, Java.IO.File file, Options options) => Encode((IResource)data, file, options); + } + + public partial class BitmapEncoder + { + public virtual bool Encode(Object data, Java.IO.File file, Options options) => Encode((IResource)data, file, options); + } + + public partial class StreamBitmapDecoder : IResourceDecoder + { + IResource IResourceDecoder.Decode(Object source, int width, int height, Options options) + { + var stream = InputStreamInvoker.FromJniHandle(source.Handle, JniHandleOwnership.DoNotTransfer); + + return Decode(stream, width, height, options); + } + + bool IResourceDecoder.Handles(Object source, Options options) + { + var stream = InputStreamInvoker.FromJniHandle(source.Handle, JniHandleOwnership.DoNotTransfer); + + return Handles(stream, options); + } + } +} + +namespace Bumptech.Glide.Request +{ + public partial class RequestOptions + { + public virtual RequestOptions Apply(BaseRequestOptions o) => (RequestOptions)Apply_T(o); + + public virtual RequestOptions AutoClone() => (RequestOptions)AutoClone_T(); + + public virtual RequestOptions CenterCrop() => (RequestOptions)CenterCrop_T(); + + public virtual RequestOptions CenterInside() => (RequestOptions)CenterInside_T(); + + public virtual RequestOptions CircleCrop() => (RequestOptions)CircleCrop_T(); + + public new virtual RequestOptions Clone() => (RequestOptions)Clone_T(); + + public virtual RequestOptions Decode(Class resourceClass) => (RequestOptions)Decode_T(resourceClass); + + public virtual RequestOptions DisallowHardwareConfig() => (RequestOptions)DisallowHardwareConfig_T(); + + public virtual RequestOptions DontAnimate() => (RequestOptions)DontAnimate_T(); + + public virtual RequestOptions DontTransform() => (RequestOptions)DontTransform_T(); + + public virtual RequestOptions Downsample(DownsampleStrategy strategy) => (RequestOptions)Downsample_T(strategy); + + public virtual RequestOptions EncodeFormat(Bitmap.CompressFormat format) => (RequestOptions)EncodeFormat_T(format); + + public virtual RequestOptions EncodeQuality(int quality) => (RequestOptions)EncodeQuality_T(quality); + + public virtual RequestBuilder Error(Drawable drawable) => (RequestBuilder)Error_T(drawable); + + public virtual RequestOptions Error(int resourceId) => (RequestOptions)Error_T(resourceId); + + public virtual RequestOptions Fallback(Drawable drawable) => (RequestOptions)Fallback_T(drawable); + + public virtual RequestOptions Fallback(int resourceId) => (RequestOptions)Fallback_T(resourceId); + + public virtual RequestOptions FitCenter() => (RequestOptions)FitCenter_T(); + + public virtual RequestOptions Format(DecodeFormat format) => (RequestOptions)Format_T(format); + + public virtual RequestOptions Frame(long frameTimeMicros) => (RequestOptions)Frame_T(frameTimeMicros); + + public virtual RequestOptions Lock() => (RequestOptions)Lock_T(); + + public virtual RequestOptions OptionalCenterCrop() => (RequestOptions)OptionalCenterCrop_T(); + + public virtual RequestOptions OptionalCenterInside() => (RequestOptions)OptionalCenterInside_T(); + + public virtual RequestOptions OptionalCircleCrop() => (RequestOptions)OptionalCircleCrop_T(); + + public virtual RequestOptions OptionalFitCenter() => (RequestOptions)OptionalFitCenter_T(); + + public virtual RequestOptions OptionalTransform(Class resourceClass, ITransformation transformation) => (RequestOptions)OptionalTransform_T(resourceClass, transformation); + + public virtual RequestOptions OptionalTransform(ITransformation transformation) => (RequestOptions)OptionalTransform_T(transformation); + + public virtual RequestOptions Override(int width, int height) => (RequestOptions)Override_T(width, height); + + public virtual RequestOptions Override(int size) => (RequestOptions)Override_T(size); + + public virtual RequestOptions Placeholder(Drawable drawable) => (RequestOptions)Placeholder_T(drawable); + + public virtual RequestOptions Placeholder(int resourceId) => (RequestOptions)Placeholder_T(resourceId); + + public virtual RequestOptions Set(Option option, Object value) => (RequestOptions)Set_T(option, value); + + public virtual RequestOptions SetDiskCacheStrategy(DiskCacheStrategy strategy) => (RequestOptions)DiskCacheStrategy_T(strategy); + + public virtual RequestOptions SetOnlyRetrieveFromCache(bool flag) => (RequestOptions)OnlyRetrieveFromCache_T(flag); + + public virtual RequestOptions SetPriority(Priority priority) => (RequestOptions)Priority_T(priority); + + public virtual RequestOptions SetSignature(IKey signature) => (RequestOptions)Signature_T(signature); + + public virtual RequestOptions SetSizeMultiplier(float sizeMultiplier) => (RequestOptions)SizeMultiplier_T(sizeMultiplier); + + public virtual RequestOptions SetTheme(Resources.Theme theme) => (RequestOptions)Theme_T(theme); + + public virtual RequestOptions SetUseAnimationPool(bool flag) => (RequestOptions)UseAnimationPool_T(flag); + + public virtual RequestOptions SetUseUnlimitedSourceGeneratorsPool(bool flag) => (RequestOptions)UseUnlimitedSourceGeneratorsPool_T(flag); + + public virtual RequestOptions SkipMemoryCache(bool skip) => (RequestOptions)SkipMemoryCache_T(skip); + + public virtual RequestOptions Timeout(int timeoutMs) => (RequestOptions)Timeout_T(timeoutMs); + + public virtual RequestOptions Transform(Class resourceClass, ITransformation transformation) => (RequestOptions)Transform_T(resourceClass, transformation); + + public virtual RequestOptions Transform(params ITransformation[] transformations) => (RequestOptions)Transform_T(transformations); + + public virtual RequestOptions Transform(ITransformation transformation) => (RequestOptions)Transform_T(transformation); + } +} + +namespace Bumptech.Glide.Request.Target +{ + public partial class AppWidgetTarget + { + public override void OnResourceReady(Object resource, ITransition transition) => OnResourceReady((Bitmap)resource, transition); + } + + public partial class BitmapImageViewTarget + { + protected override void SetResource(Object resource) => SetResource((Bitmap)resource); + } + + public partial class BitmapThumbnailImageViewTarget + { + protected override Drawable GetDrawable(Object resource) => GetDrawable((Bitmap)resource); + } + + public partial class DrawableImageViewTarget + { + protected override void SetResource(Object resource) => SetResource((Drawable)resource); + } + + public partial class DrawableThumbnailImageViewTarget + { + protected override Drawable GetDrawable(Object resource) => GetDrawable((Drawable)resource); + } + + public partial class NotificationTarget + { + public override void OnResourceReady(Object resource, ITransition transition) => OnResourceReady((Bitmap)resource, transition); + } +} + +namespace Bumptech.Glide.Request.Transition +{ + public partial class BitmapTransitionFactory + { + protected override Bitmap GetBitmap(Object current) => GetBitmap((Bitmap)current); + } +} diff --git a/source/com.github.bumptech.glide/glide/Transforms/Metadata.xml b/source/com.github.bumptech.glide/glide/Transforms/Metadata.xml new file mode 100644 index 000000000..fe73e3ae8 --- /dev/null +++ b/source/com.github.bumptech.glide/glide/Transforms/Metadata.xml @@ -0,0 +1,177 @@ + + + Bumptech.Glide + Bumptech.Glide.Load + Bumptech.Glide.Load.Data + Bumptech.Glide.Load.Data.Mediastore + Bumptech.Glide.Load.Engine + Bumptech.Glide.Load.Engine.BitmapRecycle + Bumptech.Glide.Load.Engine.Cache + Bumptech.Glide.Load.Engine.Executor + Bumptech.Glide.Load.Engine.Prefill + Bumptech.Glide.Load.Model + Bumptech.Glide.Load.Model.Stream + Bumptech.Glide.Load.Resource + Bumptech.Glide.Load.Resource.Bitmap + Bumptech.Glide.Load.Resource.Bytes + Bumptech.Glide.Load.Resource.Drawable + Bumptech.Glide.Load.Resource.File + Bumptech.Glide.Load.Resource.Gif + Bumptech.Glide.Load.Resource.Transcode + Bumptech.Glide.Manager + Bumptech.Glide.Module + Bumptech.Glide.Provider + Bumptech.Glide.Request + Bumptech.Glide.Request.Target + Bumptech.Glide.Request.Transition + Bumptech.Glide.Signature + Bumptech.Glide.Util + Bumptech.Glide.Util.Pool + + LoadResource_T + LoadResource_T + LoadResource_T + LoadResource_T + LoadResource_T + _view + android.view.View + + Apply_T + AutoClone_T + CenterCrop_T + CenterInside_T + CircleCrop_T + Clone_T + Decode_T + DisallowHardwareConfig_T + DiskCacheStrategy_T + DontAnimate_T + DontTransform_T + Downsample_T + EncodeFormat_T + EncodeQuality_T + Error_T + Error_T + Fallback_T + Fallback_T + FitCenter_T + Format_T + Frame_T + Lock_T + OnlyRetrieveFromCache_T + OptionalCenterCrop_T + OptionalCenterInside_T + OptionalCircleCrop_T + OptionalFitCenter_T + OptionalTransform_T + OptionalTransform_T + Override_T + Override_T + Placeholder_T + Placeholder_T + Priority_T + Set_T + Signature_T + SizeMultiplier_T + SkipMemoryCache_T + Theme_T + Timeout_T + Transform_T + Transform_T + Transform_T + UseAnimationPool_T + UseUnlimitedSourceGeneratorsPool_T + + public + public + public + public + public + public + public + + + + + + + + public + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + + diff --git a/source/com.github.bumptech.glide/glide/Xamarin.Android.Glide.targets b/source/com.github.bumptech.glide/glide/Xamarin.Android.Glide.targets new file mode 100644 index 000000000..adaaa0fbd --- /dev/null +++ b/source/com.github.bumptech.glide/glide/Xamarin.Android.Glide.targets @@ -0,0 +1,7 @@ + + + + true + + + \ No newline at end of file diff --git a/source/com.github.bumptech.glide/recyclerview-integration/Transforms/Metadata.xml b/source/com.github.bumptech.glide/recyclerview-integration/Transforms/Metadata.xml new file mode 100644 index 000000000..31030d78e --- /dev/null +++ b/source/com.github.bumptech.glide/recyclerview-integration/Transforms/Metadata.xml @@ -0,0 +1,4 @@ + + + Bumptech.Glide.Integration.RecyclerView + diff --git a/source/com.github.bumptech.glide/recyclerview-integration/Xamarin.Android.Glide.RecyclerViewIntegration.targets b/source/com.github.bumptech.glide/recyclerview-integration/Xamarin.Android.Glide.RecyclerViewIntegration.targets new file mode 100644 index 000000000..452e3fe62 --- /dev/null +++ b/source/com.github.bumptech.glide/recyclerview-integration/Xamarin.Android.Glide.RecyclerViewIntegration.targets @@ -0,0 +1,7 @@ + + + + true + + + \ No newline at end of file diff --git a/source/com.google.ads.interactivemedia.v3/interactivemedia/Transforms/Metadata.Namespaces.xml b/source/com.google.ads.interactivemedia.v3/interactivemedia/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..3067aed8b --- /dev/null +++ b/source/com.google.ads.interactivemedia.v3/interactivemedia/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,48 @@ + + + Google.Ads.InteractiveMedia.V3.Api + + + Google.Ads.InteractiveMedia.V3.Api.Player + + + Google.Ads.InteractiveMedia.V3.Api.Signals + + + Google.Ads.InteractiveMedia.V3.Impl + + + Google.Ads.InteractiveMedia.V3.Impl.Data + + + + Google.Ads.InteractiveMedia.Omid.Library.AdSession + + + Google.Ads.InteractiveMedia.V3.Impl.Util + + + + + \ No newline at end of file diff --git a/source/com.google.ads.interactivemedia.v3/interactivemedia/Transforms/Metadata.xml b/source/com.google.ads.interactivemedia.v3/interactivemedia/Transforms/Metadata.xml new file mode 100644 index 000000000..e9e29db78 --- /dev/null +++ b/source/com.google.ads.interactivemedia.v3/interactivemedia/Transforms/Metadata.xml @@ -0,0 +1,18 @@ + + + + + + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-ads-base/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-ads-base/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-ads-base/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-ads-base/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-ads-base/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-ads-base/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-ads-base/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-ads-base/Transforms/Metadata.xml new file mode 100644 index 000000000..5871f4553 --- /dev/null +++ b/source/com.google.android.gms/play-services-ads-base/Transforms/Metadata.xml @@ -0,0 +1,10 @@ + + + + Google.Ads + + + + + + diff --git a/source/com.google.android.gms/play-services-ads-identifier/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-ads-identifier/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-ads-identifier/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-ads-identifier/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-ads-identifier/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-ads-identifier/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-ads-identifier/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-ads-identifier/Transforms/Metadata.xml new file mode 100644 index 000000000..49d14cd29 --- /dev/null +++ b/source/com.google.android.gms/play-services-ads-identifier/Transforms/Metadata.xml @@ -0,0 +1,14 @@ + + + + Google.Ads + Google.Ads.Identifier + + + + + + + diff --git a/source/com.google.android.gms/play-services-ads-lite/Additions/Additions.cs b/source/com.google.android.gms/play-services-ads-lite/Additions/Additions.cs new file mode 100644 index 000000000..c9d25d932 --- /dev/null +++ b/source/com.google.android.gms/play-services-ads-lite/Additions/Additions.cs @@ -0,0 +1,58 @@ +using System; +using Android.Runtime; +using Java.Interop; + +namespace Android.Gms.Ads.Formats +{ + public partial interface IShouldDelayBannerRenderingListener + { + // Metadata.xml XPath method reference: path="/api/package[@name='com.google.android.gms.ads.formats']/interface[@name='ShouldDelayBannerRenderingListener']/method[@name='zzb' and count(parameter)=1 and parameter[1][@type='java.lang.Runnable']]" + //[Register("zzb", "(Ljava/lang/Runnable;)Z", "GetZzb_Ljava_lang_Runnable_Handler:Android.Gms.Ads.Formats.IShouldDelayBannerRenderingListenerInvoker, Xamarin.GooglePlayServices.Ads.Lite")] + //bool Zzb(global::Java.Lang.IRunnable p0); + } + + internal partial class IShouldDelayBannerRenderingListenerInvoker : global::Java.Lang.Object //, IShouldDelayBannerRenderingListener + { + // static Delegate cb_zzb_Ljava_lang_Runnable_; + //#pragma warning disable 0169 + // static Delegate GetZzb_Ljava_lang_Runnable_Handler() + // { + // if (cb_zzb_Ljava_lang_Runnable_ == null) + // cb_zzb_Ljava_lang_Runnable_ = JNINativeWrapper.CreateDelegate((_JniMarshal_PPL_Z)n_Zzb_Ljava_lang_Runnable_); + // return cb_zzb_Ljava_lang_Runnable_; + // } + + // static bool n_Zzb_Ljava_lang_Runnable_(IntPtr jnienv, IntPtr native__this, IntPtr native_p0) + // { + // var __this = global::Java.Lang.Object.GetObject(jnienv, native__this, JniHandleOwnership.DoNotTransfer); + // var p0 = (global::Java.Lang.IRunnable)global::Java.Lang.Object.GetObject(native_p0, JniHandleOwnership.DoNotTransfer); + // bool __ret = __this.Zzb(p0); + // return __ret; + // } + //#pragma warning restore 0169 + + // IntPtr id_zzb_Ljava_lang_Runnable_; + // public unsafe bool Zzb(global::Java.Lang.IRunnable p0) + // { + // if (id_zzb_Ljava_lang_Runnable_ == IntPtr.Zero) + // id_zzb_Ljava_lang_Runnable_ = JNIEnv.GetMethodID(class_ref, "zzb", "(Ljava/lang/Runnable;)Z"); + // JValue* __args = stackalloc JValue[1]; + // __args[0] = new JValue((p0 == null) ? IntPtr.Zero : ((global::Java.Lang.Object)p0).Handle); + // var __ret = JNIEnv.CallBooleanMethod(((global::Java.Lang.Object)this).Handle, id_zzb_Ljava_lang_Runnable_, __args); + // return __ret; + // } + + //public unsafe bool Zzb(global::Java.Lang.IRunnable p0) + //{ + // throw new NotImplementedException(); + //} + } + + internal sealed partial class IShouldDelayBannerRenderingListenerImplementor + { + //public bool Zzb(global::Java.Lang.IRunnable p0) + //{ + // throw new NotImplementedException(); + //} + } +} diff --git a/source/com.google.android.gms/play-services-ads-lite/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-ads-lite/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-ads-lite/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-ads-lite/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-ads-lite/Transforms/EnumMethods.xml new file mode 100644 index 000000000..57f67f53c --- /dev/null +++ b/source/com.google.android.gms/play-services-ads-lite/Transforms/EnumMethods.xml @@ -0,0 +1,32 @@ + + + + + + + + + diff --git a/source/com.google.android.gms/play-services-ads-lite/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-ads-lite/Transforms/Metadata.xml new file mode 100644 index 000000000..0d917539d --- /dev/null +++ b/source/com.google.android.gms/play-services-ads-lite/Transforms/Metadata.xml @@ -0,0 +1,604 @@ + + + + Google.Ads + Google.Ads.Mediation + Google.Ads.Mediation.Admob + Google.Ads.Mediation.CustomEvent + + Android.Gms.Ads + Android.Gms.Ads.Formats + + Android.Gms.Ads.Reward + Android.Gms.Ads.RewardedInterstitial + Android.Gms.Ads.Reward.Mediation + Android.Gms.Ads.DoubleClick + Android.Gms.Ads.Mediation + Android.Gms.Ads.Mediation.Admob + Android.Gms.Ads.Mediation.CustomEvent + Android.Gms.Ads.Purchase + Android.Gms.Ads.Search + Android.Gms.Internal + Android.Gms.Ads.AdManager + Android.Gms.Ads.NativeAd + + name + data + errorCode + inAppPurchase + productId + inAppPurchaseResult + + + + + + + + + + + + + public + + + BannerDismissScreenEventArgs + BannerFailedToReceiveAdEventArgs + BannerLeaveApplicationEventArgs + BannerPresentScreenEventArgs + BannerReceiveAdEventArgs + + IntersitionalDismissScreenEventArgs + IntersitionalFailedToReceiveAdEventArgs + InterstitialLeaveApplicationEventArgs + InterstitialPresentScreenEventArgs + InterstitialReceiveAdEventArgs + + MediationInterstitialAdClickedEventArgs + MediationInterstitialAdClosedEventArgs + MediationInterstitialAdFailedToLoadEventArgs + MediationInterstitialAdFailedToLoad2EventArgs + MediationInterstitialAdLeftApplicationEventArgs + MediationInterstitialAdLoadedEventArgs + MediationInterstitialAdOpenedEventArgs + + MediationBannerAdClickedEventArgs + MediationBannerAdClosedEventArgs + MediationBannerAdFailedToLoadEventArgs + MediationBannerAdFailedToLoad2EventArgs + MediationBannerAdLeftApplicationEventArgs + MediationBannerAdLoadedEventArgs + MediationBannerAdOpenedEventArgs + + + OnAdFailedToLoad2 + OnAdFailedToLoad2 + OnAdFailedToLoad2 + + false + false + + + false + + + ad + ad + ad + ad + + errorCode + + errorCode + errorCode + + + adapter + adapter + errorCode + adapter + adapter + adapter + adapter + + adapter + adapter + errorCode + adapter + adapter + adapter + + + + + + + + + false + false + + + + + + + + + + + + + + + + + + + + adapterClass + + + networkExtrasClass + + + adapterClass + + + + + + adapterClass + + + customEventExtras + + + + adapterClass + + + networkExtras + + + + networkExtras + + + + + Android.Gms.Ads.Rewarded + + + Android.Gms.Ads.Mediation.Rtb + + + Android.Gms.Ads.Initialization + + + + + + + + + + + + + + + + + + + + + + + + + + false + + + + + false + + + false + + + false + + + false + + + false + + + false + + + false + + + false + + + + true + + + + + + + + + + + + + + + + + + + Zza1 + + + false + + + true + + + Zza2 + + + false + + + true + + + + Android.Gms.Internal.Ads + + + + + + + + Android.Gms.Internal.Ads + + + + PrecisionTypeData + + + + Android.Gms.Ads.Query + + + Android.Gms.Ads.AppOpen + + + Android.Gms.Ads.InStream + + + + Android.Gms.Ads.Interstitial + + + + + Android.Gms.Ads.H5 + + + + + + Java.Lang.Object + + + Java.Lang.Object + + + protected + + + protected + + + + + Android.Gms.Ads.Internal.Util.Client + + + + diff --git a/source/com.google.android.gms/play-services-ads/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-ads/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-ads/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-ads/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-ads/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-ads/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-ads/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-ads/Transforms/Metadata.xml new file mode 100644 index 000000000..16e38f3e5 --- /dev/null +++ b/source/com.google.android.gms/play-services-ads/Transforms/Metadata.xml @@ -0,0 +1,114 @@ + + + + Google.Ads + Google.Ads.Mediation + Google.Ads.Mediation.Admob + Google.Ads.Mediation.CustomEvent + Google.Ads.Afma.Nano + + Android.Gms.Ads + Android.Gms.Ads.Formats + + Android.Gms.Ads.Reward + Android.Gms.Ads.Reward.Mediation + Android.Gms.Ads.DoubleClick + Android.Gms.Ads.Mediation + Android.Gms.Ads.Mediation.Admob + Android.Gms.Ads.Mediation.CustomEvent + Android.Gms.Ads.Nonagon.Transaction.Omid + Android.Gms.Ads.Purchase + Android.Gms.Ads.Search + Android.Gms.Internal + Android.Gms.Dynamite.Descriptors.Ads.Dynamite + + name + data + errorCode + inAppPurchase + productId + inAppPurchaseResult + + + + + + + + + + + + + + + source + size + dest + flags + + + public + + + BannerDismissScreenEventArgs + BannerFailedToReceiveAdEventArgs + BannerLeaveApplicationEventArgs + BannerPresentScreenEventArgs + BannerReceiveAdEventArgs + + IntersitionalDismissScreenEventArgs + IntersitionalFailedToReceiveAdEventArgs + InterstitialLeaveApplicationEventArgs + InterstitialPresentScreenEventArgs + InterstitialReceiveAdEventArgs + + MediationInterstitialAdClickedEventArgs + MediationInterstitialAdClosedEventArgs + MediationInterstitialAdFailedToLoadEventArgs + MediationInterstitialAdLeftApplicationEventArgs + MediationInterstitialAdLoadedEventArgs + MediationInterstitialAdOpenedEventArgs + + MediationBannerAdClickedEventArgs + MediationBannerAdClosedEventArgs + MediationBannerAdFailedToLoadEventArgs + MediationBannerAdLeftApplicationEventArgs + MediationBannerAdLoadedEventArgs + MediationBannerAdOpenedEventArgs + + + ad + ad + ad + ad + + errorCode + + errorCode + errorCode + + + adapter + adapter + errorCode + adapter + adapter + adapter + adapter + + adapter + adapter + errorCode + adapter + adapter + adapter + + + Google.Ads.Nonagon.Util.Logging.Csi + + + diff --git a/source/com.google.android.gms/play-services-afs-native/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-afs-native/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-afs-native/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-afs-native/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-afs-native/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-afs-native/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-afs-native/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-afs-native/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..3e091c57d --- /dev/null +++ b/source/com.google.android.gms/play-services-afs-native/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,27 @@ + + + Android.Gms.Ads.Afsn + + + Android.Gms.Ads.Afsn.Purchase + + + Android.Gms.Ads.Afsn.Search + + + Android.Gms.Internal.SkipJack + + + diff --git a/source/com.google.android.gms/play-services-afs-native/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-afs-native/Transforms/Metadata.xml new file mode 100644 index 000000000..955c3b1b2 --- /dev/null +++ b/source/com.google.android.gms/play-services-afs-native/Transforms/Metadata.xml @@ -0,0 +1,5 @@ + +s + + + diff --git a/source/com.google.android.gms/play-services-analytics-impl/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-analytics-impl/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-analytics-impl/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-analytics-impl/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-analytics-impl/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-analytics-impl/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-analytics-impl/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-analytics-impl/Transforms/Metadata.xml new file mode 100644 index 000000000..19e44eef7 --- /dev/null +++ b/source/com.google.android.gms/play-services-analytics-impl/Transforms/Metadata.xml @@ -0,0 +1,115 @@ + + + + Android.Gms.Analytics + Android.Gms.Analytics.Internal + Android.Gms.Analytics.Ecommerce + Android.Gms.Tagmanager + + TagManagerClass + + + + + + + + + + + + source + size + dest + flags + + containerHolder + containerVersion + + + + + + Java.Lang.Object + Java.Lang.Object + + + public + + + false + false + + + com.google.android.gms.analytics.HitBuilders.HitBuilder + com.google.android.gms.analytics.HitBuilders.HitBuilder + com.google.android.gms.analytics.HitBuilders.HitBuilder + com.google.android.gms.analytics.HitBuilders.HitBuilder + com.google.android.gms.analytics.HitBuilders.HitBuilder + com.google.android.gms.analytics.HitBuilders.HitBuilder + com.google.android.gms.analytics.HitBuilders.HitBuilder + com.google.android.gms.analytics.HitBuilders.HitBuilder + com.google.android.gms.analytics.HitBuilders.HitBuilder + com.google.android.gms.analytics.HitBuilders.HitBuilder + com.google.android.gms.analytics.HitBuilders.HitBuilder + com.google.android.gms.analytics.HitBuilders.HitBuilder + com.google.android.gms.analytics.HitBuilders.HitBuilder + + com.google.android.gms.analytics.HitBuilders.EventBuilder + com.google.android.gms.analytics.HitBuilders.EventBuilder + com.google.android.gms.analytics.HitBuilders.EventBuilder + com.google.android.gms.analytics.HitBuilders.EventBuilder + + com.google.android.gms.analytics.HitBuilders.ExceptionBuilder + com.google.android.gms.analytics.HitBuilders.ExceptionBuilder + + com.google.android.gms.analytics.HitBuilders.ItemBuilder + com.google.android.gms.analytics.HitBuilders.ItemBuilder + com.google.android.gms.analytics.HitBuilders.ItemBuilder + com.google.android.gms.analytics.HitBuilders.ItemBuilder + com.google.android.gms.analytics.HitBuilders.ItemBuilder + com.google.android.gms.analytics.HitBuilders.ItemBuilder + com.google.android.gms.analytics.HitBuilders.ItemBuilder + + com.google.android.gms.analytics.HitBuilders.SocialBuilder + com.google.android.gms.analytics.HitBuilders.SocialBuilder + com.google.android.gms.analytics.HitBuilders.SocialBuilder + + com.google.android.gms.analytics.HitBuilders.TimingBuilder + com.google.android.gms.analytics.HitBuilders.TimingBuilder + com.google.android.gms.analytics.HitBuilders.TimingBuilder + com.google.android.gms.analytics.HitBuilders.TimingBuilder + + com.google.android.gms.analytics.HitBuilders.TransactionBuilder + com.google.android.gms.analytics.HitBuilders.TransactionBuilder + com.google.android.gms.analytics.HitBuilders.TransactionBuilder + com.google.android.gms.analytics.HitBuilders.TransactionBuilder + com.google.android.gms.analytics.HitBuilders.TransactionBuilder + com.google.android.gms.analytics.HitBuilders.TransactionBuilder + + + + java.util.Map<java.lang.String, java.lang.String> + java.util.Map<java.lang.String, java.lang.String> + java.util.Map<java.lang.String, java.lang.String> + java.util.Map<java.lang.String, java.lang.String> + java.util.Map<java.lang.String, java.lang.String> + java.util.Map<java.lang.String, java.lang.String> + java.util.Map<java.lang.String, java.lang.String> + java.util.Map<java.lang.String, java.lang.String> + + java.util.Map<java.lang.String, java.lang.String> + + + + + + diff --git a/source/com.google.android.gms/play-services-analytics/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-analytics/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-analytics/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-analytics/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-analytics/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-analytics/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-analytics/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-analytics/Transforms/Metadata.xml new file mode 100644 index 000000000..b13407709 --- /dev/null +++ b/source/com.google.android.gms/play-services-analytics/Transforms/Metadata.xml @@ -0,0 +1,29 @@ + + + + Android.Gms.Analytics + Android.Gms.Analytics.Internal + Android.Gms.Analytics.Ecommerce + Android.Gms.Tagmanager + + TagManagerClass + + + + + + + + + + + + source + size + dest + flags + + + + + diff --git a/source/com.google.android.gms/play-services-appindex/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-appindex/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..feea48d22 --- /dev/null +++ b/source/com.google.android.gms/play-services-appindex/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,26 @@ + + + Android.Gms.AppIndex + + + Android.Gms.AppIndex.Builders + + + Android.Gms.Internal.AppIndex + + + Firebase.AppIndexing.Internal + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-appindex/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-appindex/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.gms/play-services-appindex/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-appinvite/Additions/Additions.cs b/source/com.google.android.gms/play-services-appinvite/Additions/Additions.cs new file mode 100644 index 000000000..ddd8a9d64 --- /dev/null +++ b/source/com.google.android.gms/play-services-appinvite/Additions/Additions.cs @@ -0,0 +1,16 @@ + +using System; +using Android.Runtime; + +namespace Android.Gms.People.ProtoModel +{ + internal static class FreezeMethodImplementor + { + internal static Java.Lang.Object Freeze(ref IntPtr id_freeze, IntPtr class_ref, IntPtr Handle) + { + if (id_freeze == IntPtr.Zero) + id_freeze = JNIEnv.GetMethodID(class_ref, "freeze", "()Ljava/lang/Object;"); + return (Java.Lang.Object)global::Java.Lang.Object.GetObject(JNIEnv.CallObjectMethod(Handle, id_freeze), JniHandleOwnership.TransferLocalRef); + } + } +} diff --git a/source/com.google.android.gms/play-services-appinvite/Additions/IPendingResultExtensions.cs b/source/com.google.android.gms/play-services-appinvite/Additions/IPendingResultExtensions.cs new file mode 100644 index 000000000..019a35e1f --- /dev/null +++ b/source/com.google.android.gms/play-services-appinvite/Additions/IPendingResultExtensions.cs @@ -0,0 +1,27 @@ +using System; +using System.Threading.Tasks; +using Android.Runtime; +using Android.Gms.Common.Apis; +using Android.App; + +namespace Android.Gms.AppInvite +{ + public static partial class IAppInviteApiExtensions + { + public static async Task ConvertInvitationAsync (this IAppInviteApi api, GoogleApiClient client, string invitationId) { + return (await api.ConvertInvitation (client, invitationId)).JavaCast (); + } + + [Obsolete] + public static async Task UpdateInvitationOnInstallAsync (this IAppInviteApi api, GoogleApiClient client, string invitationId) { + return (await api.UpdateInvitationOnInstall (client, invitationId)).JavaCast (); + } + + [Obsolete] + public static async Task GetInvitationAsync (this IAppInviteApi api, GoogleApiClient client, Activity activity, bool flag) { + return (await api.GetInvitation(client, activity, flag)).JavaCast(); + } + } +} + + diff --git a/source/com.google.android.gms/play-services-appinvite/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-appinvite/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-appinvite/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-appinvite/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-appinvite/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-appinvite/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-appinvite/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-appinvite/Transforms/Metadata.xml new file mode 100644 index 000000000..134fc90aa --- /dev/null +++ b/source/com.google.android.gms/play-services-appinvite/Transforms/Metadata.xml @@ -0,0 +1,34 @@ + + + Android.Gms.AppInvite + Android.Gms.People.ProtoModel + Android.Gms.Internal + Firebase.AppInvite + + + + + + + + + + + + + source + size + dest + flags + + AppInviteClass + + API + + Java.Lang.Object + + + + diff --git a/source/com.google.android.gms/play-services-appset/Additions/Additions.cs b/source/com.google.android.gms/play-services-appset/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.gms/play-services-appset/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.gms/play-services-appset/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-appset/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.gms/play-services-appset/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-appset/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-appset/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.gms/play-services-appset/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-appset/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-appset/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..d2983489a --- /dev/null +++ b/source/com.google.android.gms/play-services-appset/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,9 @@ + + + Android.Gms.AppSet + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-appset/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.gms/play-services-appset/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.gms/play-services-appset/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-appset/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-appset/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.gms/play-services-appset/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-audience/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-audience/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-audience/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-audience/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-audience/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-audience/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-audience/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-audience/Transforms/Metadata.xml new file mode 100644 index 000000000..c60031030 --- /dev/null +++ b/source/com.google.android.gms/play-services-audience/Transforms/Metadata.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + source + size + dest + flags + diff --git a/source/com.google.android.gms/play-services-auth-api-phone/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-auth-api-phone/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-auth-api-phone/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-auth-api-phone/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-auth-api-phone/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-auth-api-phone/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-auth-api-phone/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-auth-api-phone/Transforms/Metadata.xml new file mode 100644 index 000000000..414c0c273 --- /dev/null +++ b/source/com.google.android.gms/play-services-auth-api-phone/Transforms/Metadata.xml @@ -0,0 +1,28 @@ + + + Android.Gms.Gass.Internal + Android.Gms.Auth.Api.Phone + + + + + + + + + + + + + + source + size + dest + flags + + + java.lang.Object + java.lang.Object + + + diff --git a/source/com.google.android.gms/play-services-auth-base/Additions/PendingResultExtensions.cs b/source/com.google.android.gms/play-services-auth-base/Additions/PendingResultExtensions.cs new file mode 100644 index 000000000..895f51c19 --- /dev/null +++ b/source/com.google.android.gms/play-services-auth-base/Additions/PendingResultExtensions.cs @@ -0,0 +1,39 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Common.Apis; +using Android.Gms.Common; +using Android.Runtime; + +namespace Android.Gms.Auth.Api.Proxy +{ + public static partial class IProxyApiExtensions + { + public static async Task PerformProxyRequestAsync (this IProxyApi api, GoogleApiClient client, Android.Gms.Auth.Api.Proxy.ProxyRequest request) + { + return (await api.PerformProxyRequest (client, request)).JavaCast (); + } + } +} + +namespace Android.Gms.Auth.Account +{ + public static partial class IWorkAccountApiExtensions + { + public static async Task AddWorkAccountAsync(this IWorkAccountApi api, GoogleApiClient client, string token) + { + return (await api.AddWorkAccount(client, token)).JavaCast(); + } + + public static async Task PerformProxyRequestAsync(this IWorkAccountApi api, GoogleApiClient client, Accounts.Account account) + { + return (await api.RemoveWorkAccount(client, account)).JavaCast(); + } + + public static async Task SetWorkAuthenticatorEnabledWithResultAsync(this IWorkAccountApi api, Android.Gms.Common.Apis.GoogleApiClient client, bool enabled) + { + return (await api.SetWorkAuthenticatorEnabledWithResult(client, enabled)).JavaCast(); + } + } +} + + diff --git a/source/com.google.android.gms/play-services-auth-base/Additions/TaskExtensions.cs b/source/com.google.android.gms/play-services-auth-base/Additions/TaskExtensions.cs new file mode 100644 index 000000000..af08e95b9 --- /dev/null +++ b/source/com.google.android.gms/play-services-auth-base/Additions/TaskExtensions.cs @@ -0,0 +1,50 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Extensions; + +namespace Android.Gms.Auth.Account +{ + public partial class WorkAccountClient + { + public virtual Task AddWorkAccountAsync(string token) + { + return AddWorkAccount(token).AsAsync(); + } + + public virtual Task RemoveWorkAccountAsync(Android.Accounts.Account account) + { + return RemoveWorkAccount(account).AsAsync(); + } + + public virtual Task SetWorkAuthenticatorEnabledAsync(bool enabled) + { + return SetWorkAuthenticatorEnabled(enabled).AsAsync(); + } + } +} + +namespace Android.Gms.Auth.Api.AccountTransfer +{ + public partial class AccountTransferClient + { + public Task GetDeviceMetaDataAsync(string accountType) + { + return GetDeviceMetaData(accountType).AsAsync(); + } + + public Task NotifyCompletionAsync(string accountType, int completionStatus) + { + return NotifyCompletion(accountType, completionStatus).AsAsync(); + } + + public Task SendDataAsync(string accountType, byte[] transferData) + { + return SendData(accountType, transferData).AsAsync(); + } + + public Task ShowUserChallengeAsync(string accountType, Android.App.PendingIntent pendingIntent) + { + return ShowUserChallenge(accountType, pendingIntent).AsAsync(); + } + } +} diff --git a/source/com.google.android.gms/play-services-auth-base/Additions/Zzd.cs b/source/com.google.android.gms/play-services-auth-base/Additions/Zzd.cs new file mode 100644 index 000000000..6d1ea6836 --- /dev/null +++ b/source/com.google.android.gms/play-services-auth-base/Additions/Zzd.cs @@ -0,0 +1,22 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Extensions; +using Android.OS; +using Java.Lang; + +namespace Android.Gms.Auth +{ + // mc++ ckeck with Jon + public partial class Zzd : global::Android.OS.IParcelableCreator + { + public Java.Lang.Object CreateFromParcel(Parcel source) + { + throw new NotImplementedException("Zzd.CreateFromParcel"); + } + + public Java.Lang.Object[] NewArray(int size) + { + return new Java.Lang.Object[size]; + } + } +} diff --git a/source/com.google.android.gms/play-services-auth-base/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-auth-base/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-auth-base/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-auth-base/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-auth-base/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-auth-base/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-auth-base/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-auth-base/Transforms/Metadata.xml new file mode 100644 index 000000000..033a551b9 --- /dev/null +++ b/source/com.google.android.gms/play-services-auth-base/Transforms/Metadata.xml @@ -0,0 +1,42 @@ + + + Android.Gms.Auth + Android.Gms.Auth.Account + Android.Gms.Auth.Api + Android.Gms.Auth.Api.Proxy + Android.Gms.Auth.Api.AccountTransfer + + + + + + + + + + + + + source + size + dest + flags + + + false + false + false + + + + + + + + java.lang.Object + java.lang.Object + + + diff --git a/source/com.google.android.gms/play-services-auth-blockstore/Additions/Additions.cs b/source/com.google.android.gms/play-services-auth-blockstore/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.gms/play-services-auth-blockstore/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.gms/play-services-auth-blockstore/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-auth-blockstore/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.gms/play-services-auth-blockstore/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-auth-blockstore/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-auth-blockstore/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.gms/play-services-auth-blockstore/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-auth-blockstore/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-auth-blockstore/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..5f4042293 --- /dev/null +++ b/source/com.google.android.gms/play-services-auth-blockstore/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,21 @@ + + + Android.Gms.Auth.Managed.Blockstore + + + Android.Gms.Auth.Managed.Blockstore.RestoreCredential + + + Android.Gms.Auth.Managed.Blockstore.RestoreCredential.Internal + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-auth-blockstore/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.gms/play-services-auth-blockstore/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.gms/play-services-auth-blockstore/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-auth-blockstore/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-auth-blockstore/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.gms/play-services-auth-blockstore/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-auth/Additions/TaskExtensions.cs b/source/com.google.android.gms/play-services-auth/Additions/TaskExtensions.cs new file mode 100644 index 000000000..49bd91e39 --- /dev/null +++ b/source/com.google.android.gms/play-services-auth/Additions/TaskExtensions.cs @@ -0,0 +1,34 @@ +using System; +using System.Threading.Tasks; +using Android.Content; +using Android.Gms.Extensions; + +namespace Android.Gms.Auth.Api.SignIn +{ + + public partial class GoogleSignIn + { + public static Task GetSignedInAccountFromIntentAsync (Intent intent) + { + return GetSignedInAccountFromIntent (intent).AsAsync(); + } + } + + public partial class GoogleSignInClient + { + public Task RevokeAccessAsync () + { + return RevokeAccess ().AsAsync (); + } + + public Task SignOutAsync () + { + return SignOut ().AsAsync (); + } + + public Task SilentSignInAsync () + { + return SilentSignIn ().AsAsync (); + } + } +} diff --git a/source/com.google.android.gms/play-services-auth/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-auth/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-auth/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-auth/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-auth/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-auth/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-auth/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-auth/Transforms/Metadata.xml new file mode 100644 index 000000000..b6ce1b0d2 --- /dev/null +++ b/source/com.google.android.gms/play-services-auth/Transforms/Metadata.xml @@ -0,0 +1,58 @@ + + + + Android.Gms.Auth.Api + Android.Gms.Auth.Api.Consent + Android.Gms.Auth.Api.Credentials + Android.Gms.Auth.Api.Credentials.Internal + Android.Gms.Auth.Api.SignIn + Android.Gms.Auth.Api.SignIn.Internal + + + + + + + + + + + + source + size + dest + flags + + CREDENTIALS_API + PROXY_API + GOOGLE_SIGN_IN_API + + + java.lang.Object + java.lang.Object + + + + + Android.Gms.Auth.Api.Identity + + + + + + + + + + diff --git a/source/com.google.android.gms/play-services-awareness/Additions/PendingResultExtensions.cs b/source/com.google.android.gms/play-services-awareness/Additions/PendingResultExtensions.cs new file mode 100644 index 000000000..46728ab4a --- /dev/null +++ b/source/com.google.android.gms/play-services-awareness/Additions/PendingResultExtensions.cs @@ -0,0 +1,11 @@ +using System; +using System.Threading.Tasks; +using Java.Interop; +using Android.Gms.Common.Apis; + +namespace Android.Gms.Awareness +{ +} + + + diff --git a/source/com.google.android.gms/play-services-awareness/Additions/TaskExtensions.cs b/source/com.google.android.gms/play-services-awareness/Additions/TaskExtensions.cs new file mode 100644 index 000000000..54b84464f --- /dev/null +++ b/source/com.google.android.gms/play-services-awareness/Additions/TaskExtensions.cs @@ -0,0 +1,7 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Extensions; + +namespace Android.Gms.Awareness +{ +} diff --git a/source/com.google.android.gms/play-services-awareness/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-awareness/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-awareness/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-awareness/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-awareness/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-awareness/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-awareness/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-awareness/Transforms/Metadata.xml new file mode 100644 index 000000000..01cce7441 --- /dev/null +++ b/source/com.google.android.gms/play-services-awareness/Transforms/Metadata.xml @@ -0,0 +1,30 @@ + + + Android.ContextManager.Interest + Android.Gms.Awareness + Android.Gms.Awareness.Fence + Android.Gms.Awareness.Snapshot + Android.Gms.Awareness.Snapshot.Internal + Android.Gms.Awareness.State + Android.Gms.ContextManager + Android.Gms.ContextManager.Fence.Internal + Android.Gms.ContextManager.Internal + + + + + + + + + + + + + source + size + dest + flags + + + diff --git a/source/com.google.android.gms/play-services-base/Additions/Additions.cs b/source/com.google.android.gms/play-services-base/Additions/Additions.cs new file mode 100644 index 000000000..7e9e79e7d --- /dev/null +++ b/source/com.google.android.gms/play-services-base/Additions/Additions.cs @@ -0,0 +1,47 @@ +using System; +using Android.Runtime; + +namespace Android.Gms.Common +{ + public partial class SignInButton + { + static IntPtr id_setEnabled_Z; + // Metadata.xml XPath method reference: path="/api/package[@name='com.google.android.gms.common']/class[@name='SignInButton']/method[@name='setEnabled' and count(parameter)=1 and parameter[1][@type='boolean']]" + [Register("setEnabled", "(Z)V", "")] + public unsafe void SetEnabled(bool enabled) + { + if (id_setEnabled_Z == IntPtr.Zero) + id_setEnabled_Z = JNIEnv.GetMethodID(class_ref, "setEnabled", "(Z)V"); + try + { + JValue* __args = stackalloc JValue[1]; + __args[0] = new JValue(enabled); + JNIEnv.CallVoidMethod(((global::Java.Lang.Object)this).Handle, id_setEnabled_Z, __args); + } + finally + { + } + } + } +} +namespace Android.Gms.Common.Data +{ + public partial class DataHolder + { + static IntPtr id_finalize; + // Metadata.xml XPath method reference: path="/api/package[@name='com.google.android.gms.common.data']/class[@name='DataHolder']/method[@name='finalize' and count(parameter)=0]" + [Register("finalize", "()V", "")] + protected unsafe void Finalize() + { + if (id_finalize == IntPtr.Zero) + id_finalize = JNIEnv.GetMethodID(class_ref, "finalize", "()V"); + try + { + JNIEnv.CallVoidMethod(((global::Java.Lang.Object)this).Handle, id_finalize); + } + finally + { + } + } + } +} diff --git a/source/com.google.android.gms/play-services-base/Additions/BitmapTeleporter.cs b/source/com.google.android.gms/play-services-base/Additions/BitmapTeleporter.cs new file mode 100644 index 000000000..b5ce83378 --- /dev/null +++ b/source/com.google.android.gms/play-services-base/Additions/BitmapTeleporter.cs @@ -0,0 +1,26 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Extensions; +using Android.Runtime; + +namespace Android.Gms.Common.Data +{ + public partial class BitmapTeleporter + { + static IntPtr id_describeContents; + // Metadata.xml XPath method reference: path="/api/package[@name='com.google.android.gms.common.data']/class[@name='BitmapTeleporter']/method[@name='describeContents' and count(parameter)=0]" + [Register("describeContents", "()I", "")] + public unsafe int DescribeContents() + { + if (id_describeContents == IntPtr.Zero) + id_describeContents = JNIEnv.GetMethodID(class_ref, "describeContents", "()I"); + try + { + return JNIEnv.CallIntMethod(((global::Java.Lang.Object)this).Handle, id_describeContents); + } + finally + { + } + } + } +} \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-base/Additions/DataBufferAdditions.cs b/source/com.google.android.gms/play-services-base/Additions/DataBufferAdditions.cs new file mode 100644 index 000000000..3f7eb7e4e --- /dev/null +++ b/source/com.google.android.gms/play-services-base/Additions/DataBufferAdditions.cs @@ -0,0 +1,8 @@ +using System; +using System.Linq; +using System.Collections.Generic; + +namespace Android.Gms.Common.Data +{ +} + diff --git a/source/com.google.android.gms/play-services-base/Additions/Extensions.cs b/source/com.google.android.gms/play-services-base/Additions/Extensions.cs new file mode 100644 index 000000000..8e448ca22 --- /dev/null +++ b/source/com.google.android.gms/play-services-base/Additions/Extensions.cs @@ -0,0 +1,39 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Common; +using Android.Gms.Common.Apis; + +namespace Android.Gms.Extensions +{ + public static class GoogleApiClientExtensions + { + public static Task BuildAndConnectAsync (this GoogleApiClient.Builder builder, Action connectionPausedHandler = null) + { + GoogleApiClient client = null; + var tcsConnected = new TaskCompletionSource (); + + builder.AddConnectionCallbacks (hint => { + tcsConnected.SetResult (client); + }, connectionPausedHandler); + builder.AddOnConnectionFailedListener (connectionResult => { + tcsConnected.SetException (new GoogleApiClientConnectionException (connectionResult)); + }); + + client = builder.Build (); + + return tcsConnected.Task; + } + + public class GoogleApiClientConnectionException : Exception + { + public GoogleApiClientConnectionException (ConnectionResult connectionResult) + : base (connectionResult.ErrorMessage) + { + ConnectionResult = connectionResult; + } + + public ConnectionResult ConnectionResult { get; private set; } + } + } +} + diff --git a/source/com.google.android.gms/play-services-base/Additions/GoogleApiAvailability.cs b/source/com.google.android.gms/play-services-base/Additions/GoogleApiAvailability.cs new file mode 100644 index 000000000..4bce4b6ae --- /dev/null +++ b/source/com.google.android.gms/play-services-base/Additions/GoogleApiAvailability.cs @@ -0,0 +1,23 @@ +using System; +using Android.Gms.Extensions; + +namespace Android.Gms.Common +{ + public partial class GoogleApiAvailability + { + public override int IsGooglePlayServicesAvailable (Android.Content.Context context) + { + return base.IsGooglePlayServicesAvailable (context); + } + + public override Android.App.PendingIntent GetErrorResolutionPendingIntent (Android.Content.Context context, int errorCode, int requestCode) + { + return base.GetErrorResolutionPendingIntent (context, errorCode, requestCode); + } + + public System.Threading.Tasks.Task MakeGooglePlayServicesAvailableAsync (App.Activity activity) + { + return MakeGooglePlayServicesAvailable (activity).AsAsync (); + } + } +} diff --git a/source/com.google.android.gms/play-services-base/Additions/GoogleSignInAccount.cs b/source/com.google.android.gms/play-services-base/Additions/GoogleSignInAccount.cs new file mode 100644 index 000000000..a13142add --- /dev/null +++ b/source/com.google.android.gms/play-services-base/Additions/GoogleSignInAccount.cs @@ -0,0 +1,26 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Extensions; +using Android.Runtime; + +namespace Android.Gms.Auth.Api.SignIn +{ + public partial class GoogleSignInAccount + { + static IntPtr id_describeContents; + // Metadata.xml XPath method reference: path="/api/package[@name='com.google.android.gms.auth.api.signin']/class[@name='GoogleSignInAccount']/method[@name='describeContents' and count(parameter)=0]" + [Register("describeContents", "()I", "")] + public unsafe int DescribeContents() + { + if (id_describeContents == IntPtr.Zero) + id_describeContents = JNIEnv.GetMethodID(class_ref, "describeContents", "()I"); + try + { + return JNIEnv.CallIntMethod(((global::Java.Lang.Object)this).Handle, id_describeContents); + } + finally + { + } + } + } +} \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-base/Additions/GoogleSignInOptions.cs b/source/com.google.android.gms/play-services-base/Additions/GoogleSignInOptions.cs new file mode 100644 index 000000000..7f6a308f0 --- /dev/null +++ b/source/com.google.android.gms/play-services-base/Additions/GoogleSignInOptions.cs @@ -0,0 +1,26 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Extensions; +using Android.Runtime; + +namespace Android.Gms.Auth.Api.SignIn +{ + public partial class GoogleSignInOptions + { + static IntPtr id_describeContents; + // Metadata.xml XPath method reference: path="/api/package[@name='com.google.android.gms.auth.api.signin']/class[@name='GoogleSignInOptions']/method[@name='describeContents' and count(parameter)=0]" + [Register("describeContents", "()I", "")] + public unsafe int DescribeContents() + { + if (id_describeContents == IntPtr.Zero) + id_describeContents = JNIEnv.GetMethodID(class_ref, "describeContents", "()I"); + try + { + return JNIEnv.CallIntMethod(((global::Java.Lang.Object)this).Handle, id_describeContents); + } + finally + { + } + } + } +} \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-base/Additions/IPendingResultExtensions.cs b/source/com.google.android.gms/play-services-base/Additions/IPendingResultExtensions.cs new file mode 100644 index 000000000..e69de29bb diff --git a/source/com.google.android.gms/play-services-base/Additions/ResultCallbackImpl.cs b/source/com.google.android.gms/play-services-base/Additions/ResultCallbackImpl.cs new file mode 100644 index 000000000..043bc4e66 --- /dev/null +++ b/source/com.google.android.gms/play-services-base/Additions/ResultCallbackImpl.cs @@ -0,0 +1,132 @@ +using System; +using Android.Runtime; +using Java.Util.Concurrent; +using Android.OS; +using System.Threading.Tasks; +using System.Runtime.CompilerServices; + +namespace Android.Gms.Common.Apis +{ + public static class IPendingResultExtensions + { + public static void SetResultCallback (this PendingResult pr, Action callback) where TResult : class, IResult + { + pr.SetResultCallback (new ResultCallback (callback)); + } + + public static Task AsAsync (this PendingResult pr) where TResult : class, IResult + { + var rc = new AwaitableResultCallback (); + + pr.SetResultCallback (rc); + + return rc.AwaitAsync (); + } + + //public static async Task AsAsync (this PendingResult pr) + //{ + // var rc = new AwaitableResultCallback (); + + // pr.SetResultCallback (rc); + + // await rc.AwaitAsync (); + //} + + public static TaskAwaiter GetAwaiter (this PendingResult pr) where TResult : class, IResult + { + var rc = new AwaitableResultCallback (); + + pr.SetResultCallback (rc); + + return rc.GetAwaiter (); + } + + public static TaskAwaiter GetAwaiter (this PendingResult pr) + { + var rc = new AwaitableResultCallback (); + + pr.SetResultCallback (rc); + + return rc.GetAwaiter (); + } + } + + public partial class GoogleApiClient + { + public partial class Builder + { + public Builder AddConnectionCallbacks (Action connectedCallback, Action connectionSuspendedCallback) + { + return AddConnectionCallbacks (new GoogleApiClientConnectionCallbacksImpl (connectedCallback, connectionSuspendedCallback)); + } + + public Builder AddConnectionCallbacks (Action connectedCallback) + { + return AddConnectionCallbacks (new GoogleApiClientConnectionCallbacksImpl (connectedCallback, null)); + } + + public Builder AddConnectionCallbacks (Action connectedCallback) + { + return AddConnectionCallbacks (new GoogleApiClientConnectionCallbacksImpl (h => connectedCallback (), null)); + } + + public Builder AddOnConnectionFailedListener (Action callback) + { + return AddOnConnectionFailedListener (new GoogleApiClientOnConnectionFailedListenerImpl (callback)); + } + + public Builder EnableAutoManage(AndroidX.Fragment.App.FragmentActivity fragmentActivity, int clientId, Action unresolvedConnectionFailedHandler) + { + return EnableAutoManage(fragmentActivity, clientId, new GoogleApiClientOnConnectionFailedListenerImpl(unresolvedConnectionFailedHandler)); + } + + public Builder EnableAutoManage(AndroidX.Fragment.App.FragmentActivity fragmentActivity, Action unresolvedConnectionFailedHandler) + { + return EnableAutoManage(fragmentActivity, new GoogleApiClientOnConnectionFailedListenerImpl(unresolvedConnectionFailedHandler)); + } + } + } + + internal class GoogleApiClientConnectionCallbacksImpl : Java.Lang.Object, GoogleApiClient.IConnectionCallbacks + { + public GoogleApiClientConnectionCallbacksImpl (Action onConnectedHandler, Action onConnectionSuspendedHandler) + { + OnConnectedHandler = onConnectedHandler; + OnConnectionSuspendedHandler = onConnectionSuspendedHandler; + } + + public Action OnConnectedHandler { get; private set; } + public Action OnConnectionSuspendedHandler { get; private set; } + + public void OnConnected (Bundle bundle) + { + var h = OnConnectedHandler; + if (h != null) + h (bundle); + } + + public void OnConnectionSuspended (int cause) + { + var h = OnConnectionSuspendedHandler; + if (h != null) + h (cause); + } + } + + internal class GoogleApiClientOnConnectionFailedListenerImpl : Java.Lang.Object, GoogleApiClient.IOnConnectionFailedListener + { + public GoogleApiClientOnConnectionFailedListenerImpl (Action handler) + { + OnConnectionFailedHandler = handler; + } + + public Action OnConnectionFailedHandler { get; private set; } + + public void OnConnectionFailed (Android.Gms.Common.ConnectionResult result) + { + var h = OnConnectionFailedHandler; + if (h != null) + h (result); + } + } +} diff --git a/source/com.google.android.gms/play-services-base/Additions/Statuses.cs b/source/com.google.android.gms/play-services-base/Additions/Statuses.cs new file mode 100644 index 000000000..d6246495e --- /dev/null +++ b/source/com.google.android.gms/play-services-base/Additions/Statuses.cs @@ -0,0 +1,9 @@ +namespace Android.Gms.Common.Apis +{ + + // Metadata.xml XPath class reference: path="/api/package[@name='com.google.android.gms.common.api']/class[@name='Status']" + //[global::Android.Runtime.Register ("com/google/android/gms/common/api/Status", DoNotGenerateAcw=true)] + //public sealed partial class Statuses : Android.Gms.Common.Apis.IResult + //{ + //} +} diff --git a/source/com.google.android.gms/play-services-base/Additions/TaskExtensions.cs b/source/com.google.android.gms/play-services-base/Additions/TaskExtensions.cs new file mode 100644 index 000000000..b31e57768 --- /dev/null +++ b/source/com.google.android.gms/play-services-base/Additions/TaskExtensions.cs @@ -0,0 +1,15 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Extensions; + +namespace Android.Gms.Common +{ + public partial class GoogleApiAvailability + { + public Task CheckApiAvailabilityAsync(Apis.GoogleApi apiClient, Apis.GoogleApi[] apis) + { + return CheckApiAvailability(apiClient, apis).AsAsync(); + } + + } +} diff --git a/source/com.google.android.gms/play-services-base/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-base/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-base/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-base/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-base/Transforms/EnumMethods.xml new file mode 100644 index 000000000..f39f48ace --- /dev/null +++ b/source/com.google.android.gms/play-services-base/Transforms/EnumMethods.xml @@ -0,0 +1,22 @@ + + + + + + + diff --git a/source/com.google.android.gms/play-services-base/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-base/Transforms/Metadata.xml new file mode 100644 index 000000000..61073a2d2 --- /dev/null +++ b/source/com.google.android.gms/play-services-base/Transforms/Metadata.xml @@ -0,0 +1,463 @@ + + + + Android.Gms.Common + Android.Gms.Common.Api.Internal + Android.Gms.Common.Data + Android.Gms.Common.Images + Android.Gms.Common.Internal + Android.Gms.Common.Server + Android.Gms.Clearcut + Android.Gms.Auth.Api.SignIn + Android.Gms.Auth.Api.SignIn.Internal + Android.Gms.Common.Apis + Android.Gms.Phenotype + + + Android.Gms.Common.Images.Internal + Android.Gms.Common.Oob + Android.Gms.Common.Server.Converter + Android.Gms.Common.Server.Response + Android.Gms.Dynamic + Android.Gms.SignIn + Android.Gms.SignIn.Internal + + + + + + + + + + + + + + + + + + + + + + dest + flags + + + Android.Gms.Common.Apis.Api.IApiOptionsHasOptions + Android.Gms.Common.Apis.Api.IApiOptionsHasOptions + + + false + InternalResponseObject + + false + false + false + false + + + false + InternalAbstractDataBuffer + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Java.Lang.Object + + + protected + + + + + protected + + + + protected + + + + protected + + + + protected + + + + + + + + + protected + + + protected + + + protected + + + + + + + + false + + + + + + + + public + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + protected + + + protected + + + + + + + + + + + Android.Gms.Common.ModuleInstall + + + Android.Gms.Common.ModuleInstall.Internal + + + + + + + + + AvailabilityStatusCode + + + InstallStateCode + + + + false + + + + diff --git a/source/com.google.android.gms/play-services-basement/Additions/Additions.cs b/source/com.google.android.gms/play-services-basement/Additions/Additions.cs new file mode 100644 index 000000000..4dcb5ae57 --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/Additions/Additions.cs @@ -0,0 +1,7 @@ +using Android.OS; + +[assembly: Android.App.UsesLibrary("org.apache.http.legacy", Required=false)] + +namespace Android.Gms.Common +{ +} \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-basement/Additions/DataBufferAdditions.cs b/source/com.google.android.gms/play-services-basement/Additions/DataBufferAdditions.cs new file mode 100644 index 000000000..3f7eb7e4e --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/Additions/DataBufferAdditions.cs @@ -0,0 +1,8 @@ +using System; +using System.Linq; +using System.Collections.Generic; + +namespace Android.Gms.Common.Data +{ +} + diff --git a/source/com.google.android.gms/play-services-basement/Additions/IPendingResultExtensions.cs b/source/com.google.android.gms/play-services-basement/Additions/IPendingResultExtensions.cs new file mode 100644 index 000000000..664ed89eb --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/Additions/IPendingResultExtensions.cs @@ -0,0 +1,9 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Common.Apis; +using Android.Gms.Common; +using Android.Runtime; + +namespace Android.Gms.Common.Apis +{ +} diff --git a/source/com.google.android.gms/play-services-basement/Additions/ResultCallbackImpl.cs b/source/com.google.android.gms/play-services-basement/Additions/ResultCallbackImpl.cs new file mode 100644 index 000000000..e2f7bb16c --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/Additions/ResultCallbackImpl.cs @@ -0,0 +1,53 @@ +using System; +using Android.Runtime; +using Java.Util.Concurrent; +using Android.OS; +using System.Threading.Tasks; +using System.Runtime.CompilerServices; + +namespace Android.Gms.Common.Apis +{ + public class ResultCallback : Java.Lang.Object, IResultCallback where TResult : class, IResult + { + public ResultCallback (Action handler) + { + OnResultHandler = handler; + } + + public Action OnResultHandler { get; private set; } + + public void OnResult (Java.Lang.Object result) + { + var h = OnResultHandler; + if (h != null) + h(result.JavaCast ()); + } + } + + public class AwaitableResultCallback : Java.Lang.Object, IResultCallback where TResult : class, IResult + { + public AwaitableResultCallback () + { + taskCompletionSource = new TaskCompletionSource (); + } + + TaskCompletionSource taskCompletionSource; + + public void OnResult (Java.Lang.Object result) + { + var r = result.JavaCast (); + + taskCompletionSource.SetResult (r); + } + + public Task AwaitAsync () + { + return taskCompletionSource.Task; + } + + public TaskAwaiter GetAwaiter () + { + return taskCompletionSource.Task.GetAwaiter (); + } + } +} diff --git a/source/com.google.android.gms/play-services-basement/Additions/SocketFactoryCreator.cs b/source/com.google.android.gms/play-services-basement/Additions/SocketFactoryCreator.cs new file mode 100644 index 000000000..5a454d0ac --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/Additions/SocketFactoryCreator.cs @@ -0,0 +1,8 @@ +using System; +using System.Linq; +using System.Collections.Generic; +using Android.Runtime; + +namespace Android.Gms.Common.Net +{ +} diff --git a/source/com.google.android.gms/play-services-basement/Additions/UnsupportedApiCallException.cs b/source/com.google.android.gms/play-services-basement/Additions/UnsupportedApiCallException.cs new file mode 100644 index 000000000..fa68121e3 --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/Additions/UnsupportedApiCallException.cs @@ -0,0 +1,9 @@ +using System; +using System.Linq; +using System.Collections.Generic; +using Android.Runtime; + +namespace Android.Gms.Common.Apis +{ +} + diff --git a/source/com.google.android.gms/play-services-basement/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-basement/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-basement/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-basement/Transforms/EnumMethods.xml new file mode 100644 index 000000000..a5775f413 --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/Transforms/EnumMethods.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + diff --git a/source/com.google.android.gms/play-services-basement/Transforms/Metadata.Auth.xml b/source/com.google.android.gms/play-services-basement/Transforms/Metadata.Auth.xml new file mode 100644 index 000000000..ff5b0171f --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/Transforms/Metadata.Auth.xml @@ -0,0 +1,28 @@ + + + + Android.Gms.Auth.Api + Android.Gms.Auth.Api.Consent + Android.Gms.Auth.Api.Credentials + Android.Gms.Auth.Api.Credentials.Internal + Android.Gms.Auth.Api.Proxy + Android.Gms.Auth.Api.SignIn + Android.Gms.Auth.Api.SignIn.Internal + + + + + + + + + + + + + CREDENTIALS_API + PROXY_API + GOOGLE_SIGN_IN_API + + + diff --git a/source/com.google.android.gms/play-services-basement/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-basement/Transforms/Metadata.xml new file mode 100644 index 000000000..65753ef42 --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/Transforms/Metadata.xml @@ -0,0 +1,158 @@ + + + + Android.Gms.Actions + Android.Gms.Common + Android.Gms.Common.Annotations + Android.Gms.Common.Apis + Android.Gms.Common.Apis.Internal + Android.Gms.Common.Internal + Android.Gms.Common.Internal.SafeParcel + Android.Gms.Common.Stats + Android.Gms.Common.Util + Android.Gms.Dynamic + Android.Gms.Dynamite + Android.Gms.Dynamite.Descriptors.Flags + Android.Gms.Iid + Android.Gms.Security + Android.Gms.Ads.Identifier + Android.Gms.Location.Places + Firebase + Firebase.Iid + + + Android.Gms.Common.Net + Android.Gms.Common.Collect + Android.Gms.Common.Config + Android.Gms.Internal.Constants + Android.Gms.Common.Logging + Android.Gms.Common.Providers + Android.Gms.Common.SqlLite + Android.Gms.Common.Util.Concurrent + Android.Gms.Common.Util.Wrappers + + + + + Android.Gms.Flags.Impl + Android.Gms.Internal + + + + + + + + + + + + false + InternalObfuscatedBase1 + + + false + InternalObfuscatedBase2 + + + + + source + size + dest + flags + + + + Statuses + Java.Lang.Object + + + + false + false + false + false + false + false + false + + + + + + + + + + + + + + + + + + + Zzcold + + Zzc + + Zze + + + + + + + + + + + + + + + + + + Java.Lang.Object + + + + Android.Gms.Common.Stats.StatsEvent + + + Android.Gms.Common.Stats.StatsEvent + + + Android.Gms.Common.Stats.StatsEvent + + + Android.Gms.Common.Stats.StatsEvent + + + diff --git a/source/com.google.android.gms/play-services-basement/buildtasks.tests/Basement.BuildTasks.Tests.csproj b/source/com.google.android.gms/play-services-basement/buildtasks.tests/Basement.BuildTasks.Tests.csproj new file mode 100644 index 000000000..7c166c41f --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/buildtasks.tests/Basement.BuildTasks.Tests.csproj @@ -0,0 +1,59 @@ + + + + Debug + AnyCPU + 8.0.30703 + 2.0 + {76CDBE93-0177-4980-8514-C4D785E1DC78} + Library + buildtasks.tests + buildtasks.tests + v4.5 + + + true + full + false + bin\Debug + DEBUG; + prompt + 4 + false + + + true + bin\Release + prompt + 4 + false + + + + + + + + + + + + + + + + + {21D99A15-AB98-4691-A45B-D236B2A91DEB} + Basement-BuildTasks + + + + + + + + 3.8.1 + + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-basement/buildtasks.tests/BuildTaskTests.cs b/source/com.google.android.gms/play-services-basement/buildtasks.tests/BuildTaskTests.cs new file mode 100644 index 000000000..65395ed14 --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/buildtasks.tests/BuildTaskTests.cs @@ -0,0 +1,97 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using Microsoft.Build.Construction; +using Microsoft.Build.Evaluation; +using Microsoft.Build.Execution; +using NUnit.Framework; +using Xamarin.ContentPipeline.Tests; + +namespace buildtasks.tests +{ + class BuildTaskTests : TestsBase + { + public void AddCoreTargets(ProjectRootElement el) + { + //var props = Path.Combine( + // Path.GetDirectoryName(GetType().Assembly.Location), + // "..", "..", "..", "buildtasks", "bin", "Debug", "Xamarin.GooglePlayServices.Basement.props" + //); + //el.AddImport(props); + var targets = Path.Combine( + Path.GetDirectoryName(GetType().Assembly.Location), + "..", "..", "..", "buildtasks", "bin", "Debug", "Xamarin.GooglePlayServices.Basement.targets" + ); + el.AddImport(targets); + + } + + [Test] + public void Test_Skip_Due_To_Newer_Outputs_Than_Inputs() + { + var googleServicesJsonPath = Path.Combine(TestContext.CurrentContext.TestDirectory, "..", "..", "google-services.json"); + + var monoAndroidResDirIntermediate = Path.Combine(TempDir, "Debug"); + + Directory.CreateDirectory(monoAndroidResDirIntermediate); + + File.WriteAllText(Path.Combine(monoAndroidResDirIntermediate, "ProcessGoogleServicesJson.stamp"), "STAMPS"); + + + var engine = new ProjectCollection(); + var prel = ProjectRootElement.Create(Path.Combine(TempDir, "project.csproj"), engine); + + Console.WriteLine("TempDir: {0}", TempDir); + + prel.AddProperty("AndroidApplication", "True"); + prel.AddProperty("IntermediateOutputPath", monoAndroidResDirIntermediate); + prel.AddProperty("MonoAndroidResDirIntermediate", monoAndroidResDirIntermediate); + prel.AddProperty("_AndroidPackage", "com.xamarin.sample"); + + prel.AddItem("GoogleServicesJson", googleServicesJsonPath); + + AddCoreTargets(prel); + + var project = new ProjectInstance(prel); + var log = new MSBuildTestLogger(); + + var success = BuildProject(engine, project, "ProcessGoogleServicesJson", log); + + Assert.IsTrue(success); + Assert.IsTrue(log.Events.Any(e => e.Message.Contains("ProcessGoogleServicesJson") && e.Message.Contains("skipped"))); + } + + [Test] + public void Test_Inputs_Newer_Than_Outputs() + { + var googleServicesJsonPath = Path.Combine(TestContext.CurrentContext.TestDirectory, "..", "..", "google-services.json"); + + var monoAndroidResDirIntermediate = Path.Combine(TempDir, "Debug"); + + Directory.CreateDirectory(monoAndroidResDirIntermediate); + + var engine = new ProjectCollection(); + var prel = ProjectRootElement.Create(Path.Combine(TempDir, "project.csproj"), engine); + + Console.WriteLine("TempDir: {0}", TempDir); + + prel.AddProperty("AndroidApplication", "True"); + prel.AddProperty("IntermediateOutputPath", monoAndroidResDirIntermediate); + prel.AddProperty("MonoAndroidResDirIntermediate", monoAndroidResDirIntermediate); + prel.AddProperty("_AndroidPackage", "com.xamarin.sample"); + + prel.AddItem("GoogleServicesJson", googleServicesJsonPath); + + AddCoreTargets(prel); + + var project = new ProjectInstance(prel); + var log = new MSBuildTestLogger(); + + var success = BuildProject(engine, project, "ProcessGoogleServicesJson", log); + + Assert.IsTrue(success); + Assert.IsFalse(log.Events.Any(e => e.Message.Contains("ProcessGoogleServicesJson") && e.Message.Contains("skipped"))); + } + } +} diff --git a/source/com.google.android.gms/play-services-basement/buildtasks.tests/Helpers/MSBuildExtensions.cs b/source/com.google.android.gms/play-services-basement/buildtasks.tests/Helpers/MSBuildExtensions.cs new file mode 100644 index 000000000..d2c1dd0be --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/buildtasks.tests/Helpers/MSBuildExtensions.cs @@ -0,0 +1,50 @@ +// Copyright (c) 2015-2016 Xamarin Inc. + +using System.Linq; +using Microsoft.Build.Construction; + +namespace Xamarin.ContentPipeline.Tests +{ + //workaround for missing MSBuild API in Mono. Project.AddItem explodes, + //so we use ProjectRootElement, which doesn't have SetProperty/GetPropertyValue + static class MSBuildExtensions + { + public static void SetProperty(this ProjectRootElement prel, string name, string value) + { + var existing = prel.PropertyGroups.SelectMany(g => g.Properties).FirstOrDefault(p => p.Name == name); + if (existing != null) + existing.Value = value; + else + prel.AddProperty(name, value); + } + + public static string GetPropertyValue(this ProjectRootElement prel, string name) + { + var existing = prel.Properties.FirstOrDefault(p => p.Name == name); + if (existing != null) + return existing.Value; + return null; + } + + public static void RemoveItems(this ProjectRootElement prel, ProjectItemElement pel) + { + pel.Parent.RemoveChild(pel); + } + + public static void SetMetadataValue(this ProjectItemElement pel, string name, string value) + { + var existing = pel.Metadata.FirstOrDefault(p => p.Name == name); + if (existing != null) + existing.Value = value; + else + pel.AddMetadata(name, value); + } + + public static void RemoveMetadata(this ProjectItemElement pel, string name) + { + var existing = pel.Metadata.FirstOrDefault(p => p.Name == name); + if (existing != null) + pel.RemoveChild(existing); + } + } +} \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-basement/buildtasks.tests/Helpers/MSBuildTestLogger.cs b/source/com.google.android.gms/play-services-basement/buildtasks.tests/Helpers/MSBuildTestLogger.cs new file mode 100644 index 000000000..18c739a55 --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/buildtasks.tests/Helpers/MSBuildTestLogger.cs @@ -0,0 +1,53 @@ +// Copyright (c) 2015-2016 Xamarin Inc. + +using System.Collections.Generic; +using System.Linq; +using Microsoft.Build.Framework; + +namespace Xamarin.ContentPipeline.Tests +{ + class MSBuildTestLogger : ILogger + { + IEventSource eventSource; + + public void Initialize(IEventSource eventSource) + { + this.eventSource = eventSource; + Events = new List(); + eventSource.AnyEventRaised += EventRaised; + Verbosity = LoggerVerbosity.Normal; + } + + public void Shutdown() + { + eventSource.AnyEventRaised -= EventRaised; + } + + void EventRaised(object sender, BuildEventArgs e) + { + Events.Add(e); + System.Console.WriteLine(e.Message); + } + + public List Events { get; private set; } + + public IEnumerable Errors + { + get + { + return Events.OfType(); + } + } + + public IEnumerable Warnings + { + get + { + return Events.OfType(); + } + } + + public LoggerVerbosity Verbosity { get; set; } + public string Parameters { get; set; } + } +} \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-basement/buildtasks.tests/Helpers/TestsBase.cs b/source/com.google.android.gms/play-services-basement/buildtasks.tests/Helpers/TestsBase.cs new file mode 100644 index 000000000..2d6eec69b --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/buildtasks.tests/Helpers/TestsBase.cs @@ -0,0 +1,102 @@ +// Copyright (c) 2015-2016 Xamarin Inc. + +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Reflection; +using Microsoft.Build.Evaluation; +using Microsoft.Build.Execution; +using Microsoft.Build.Framework; +using Microsoft.Build.Logging; +using NUnit.Framework; + +namespace Xamarin.ContentPipeline.Tests +{ + class TestsBase + { + string originalWorkingDir; + string tempDir; + + [OneTimeSetUp] + public void SetUp() + { + originalWorkingDir = Environment.CurrentDirectory; + tempDir = Path.GetTempFileName(); + File.Delete(tempDir); + Directory.CreateDirectory(tempDir); + Environment.CurrentDirectory = tempDir; + } + + [OneTimeTearDown] + public void TearDown() + { + Environment.CurrentDirectory = originalWorkingDir; + Directory.Delete(tempDir, true); + + //HACK: touching BuildManager causes Mono to initialize its DefaultBuildManagerand never shut it down + StopMonoBuildManager(BuildManager.DefaultBuildManager); + } + + public string TempDir { get { return tempDir; } } + + protected string GetTempPath(params string[] components) + { + return Path.Combine(tempDir, Path.Combine(components)); + } + + protected static void AssertNoMessagesOrWarnings(MSBuildTestLogger logger) + { + BuildEventArgs err = logger.Errors.FirstOrDefault(); + if (err == null) + { + err = logger.Warnings.FirstOrDefault(); + if (err == null) + { + return; + } + } + Assert.Fail(err.Message); + } + + // work around Mono's ProjectInstance.Build using a separate BuildManager and not shutting it down + // Mono's BuildManager has a non-background worker thread and doesn't shut it down automatically + protected bool BuildProject( + ProjectCollection projects, ProjectInstance project, string[] targets, IEnumerable loggers, + IEnumerable remoteLoggers, out IDictionary targetOutputs) + { + var parameters = new BuildParameters(projects) + { + Loggers = loggers, + ForwardingLoggers = remoteLoggers, + DefaultToolsVersion = projects.DefaultToolsVersion, + }; + var data = new BuildRequestData(project, targets ?? project.DefaultTargets.ToArray()); + var result = BuildManager.DefaultBuildManager.Build(parameters, data); + targetOutputs = result.ResultsByTarget; + return result.OverallResult == BuildResultCode.Success; + } + + static void StopMonoBuildManager(BuildManager buildManager) + { + try + { + const BindingFlags instanceFlags = BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance; + PropertyInfo nodeManagerProp = typeof(BuildManager).GetProperty("BuildNodeManager", instanceFlags); + var nodeManager = nodeManagerProp.GetValue(buildManager); + var stopMeth = nodeManager.GetType().GetMethod("Stop", instanceFlags); + stopMeth.Invoke(nodeManager, new object[0]); + } + catch + { + } + } + + protected bool BuildProject( + ProjectCollection projects, ProjectInstance project, string target, ILogger logger) + { + IDictionary targetOutputs; + return BuildProject(projects, project, new[] { target }, new[] { logger }, new ForwardingLoggerRecord[0], out targetOutputs); + } + } +} \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-basement/buildtasks.tests/Test.cs b/source/com.google.android.gms/play-services-basement/buildtasks.tests/Test.cs new file mode 100644 index 000000000..8a2d8f2bb --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/buildtasks.tests/Test.cs @@ -0,0 +1,94 @@ +using NUnit.Framework; +using System; +using System.IO; +using Xamarin.GooglePlayServices.Tasks; +using System.Reflection; + +namespace buildtasks.tests +{ + [TestFixture ()] + public class GoogleServicesJsonTests + { + const string TestPkgName = "com.xamarin.sample"; + + static Stream OpenTestFile () + { + var path = Path.Combine (TestContext.CurrentContext.TestDirectory, "..", "..", "google-services.json"); + + return File.OpenRead (path); + } + + [Test] + public void GoogleApiKey_Should_Match_Test () + { + var g = GoogleServicesJsonProcessor.ProcessJson (TestPkgName, OpenTestFile ()); + var v = g.GetGoogleApiKey (TestPkgName); + + Assert.AreEqual ("EXAMPLE_KEY_HERE", v); + } + + [Test] + public void GoogleAppId_Should_Match_Test () + { + var g = GoogleServicesJsonProcessor.ProcessJson (TestPkgName, OpenTestFile ()); + var v = g.GetGoogleAppId (TestPkgName); + + Assert.AreEqual ("1:1041063143217:android:ffbe6976403db935", v); + } + + [Test] + public void CrashReportingApiKey_Should_Match_Test () + { + var g = GoogleServicesJsonProcessor.ProcessJson (TestPkgName, OpenTestFile ()); + var v = g.GetCrashReportingApiKey (TestPkgName); + + Assert.AreEqual ("EXAMPLE_KEY_HERE", v); + } + + [Test] + public void DefaultGcmSenderId_Should_Match_Test () + { + var g = GoogleServicesJsonProcessor.ProcessJson (TestPkgName, OpenTestFile ()); + var v = g.GetDefaultGcmSenderId (); + + Assert.AreEqual ("1041063143217", v); + } + + [Test] + public void DefaultWebClientId_Should_Match_Test () + { + var g = GoogleServicesJsonProcessor.ProcessJson (TestPkgName, OpenTestFile ()); + var v = g.GetDefaultWebClientId (TestPkgName); + + Assert.AreEqual ("1041063143217-hu5u4dnv8dkj19i4tpi6piv97kd2k9i0.apps.googleusercontent.com", v); + } + + [Test] + public void FirebaseDatabaseUrl_Should_Match_Test () + { + var g = GoogleServicesJsonProcessor.ProcessJson (TestPkgName, OpenTestFile ()); + var v = g.GetFirebaseDatabaseUrl (); + + Assert.AreEqual ("https://white-cedar-97320.firebaseio.com", v); + } + + [Test] + public void GATrackingId_Should_Match_Test () + { + var g = GoogleServicesJsonProcessor.ProcessJson (TestPkgName, OpenTestFile ()); + var v = g.GetGATrackingId (TestPkgName); + + Assert.AreEqual ("UA-6465612-26", v); + } + + [Test] + public void ProjectId_Should_Match_Test () + { + var g = GoogleServicesJsonProcessor.ProcessJson (TestPkgName, OpenTestFile ()); + var v = g.ProjectInfo.ProjectId; + + Assert.AreEqual ("white-cedar-97320", v); + } + } +} + diff --git a/source/com.google.android.gms/play-services-basement/buildtasks.tests/google-services.json b/source/com.google.android.gms/play-services-basement/buildtasks.tests/google-services.json new file mode 100644 index 000000000..c7b37ae41 --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/buildtasks.tests/google-services.json @@ -0,0 +1,69 @@ +{ + "project_info": { + "project_number": "1041063143217", + "firebase_url": "https://white-cedar-97320.firebaseio.com", + "project_id": "white-cedar-97320", + "storage_bucket": "white-cedar-97320.appspot.com" + }, + "client": [ + { + "client_info": { + "mobilesdk_app_id": "1:1041063143217:android:ffbe6976403db935", + "android_client_info": { + "package_name": "com.xamarin.sample" + } + }, + "oauth_client": [ + { + "client_id": "1041063143217-rve97omgqivvs3qcne1ljso137k3t6po.apps.googleusercontent.com", + "client_type": 1, + "android_info": { + "package_name": "com.xamarin.sample", + "certificate_hash": "84949BBD3F34C8290A55AC9B66AD0A701EBA67AC" + } + }, + { + "client_id": "1041063143217-hu5u4dnv8dkj19i4tpi6piv97kd2k9i0.apps.googleusercontent.com", + "client_type": 3 + }, + { + "client_id": "1041063143217-n82odtjjgs9g2qnh1t470mdhj086id9f.apps.googleusercontent.com", + "client_type": 3 + } + ], + "api_key": [ + { + "current_key": "EXAMPLE_KEY_HERE" + } + ], + "services": { + "analytics_service": { + "status": 2, + "analytics_property": { + "tracking_id": "UA-6465612-26" + } + }, + "appinvite_service": { + "status": 2, + "other_platform_oauth_client": [ + { + "client_id": "1041063143217-hu5u4dnv8dkj19i4tpi6piv97kd2k9i0.apps.googleusercontent.com", + "client_type": 3 + }, + { + "client_id": "1041063143217-rdc97s7jssl1k29c83b6oci04sihqkdi.apps.googleusercontent.com", + "client_type": 2, + "ios_info": { + "bundle_id": "com.xamarin.googleios.collectallthestars" + } + } + ] + }, + "ads_service": { + "status": 2 + } + } + } + ], + "configuration_version": "1" +} diff --git a/source/com.google.android.gms/play-services-basement/buildtasks/Basement-BuildTasks.csproj b/source/com.google.android.gms/play-services-basement/buildtasks/Basement-BuildTasks.csproj new file mode 100644 index 000000000..9fb8e50a6 --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/buildtasks/Basement-BuildTasks.csproj @@ -0,0 +1,26 @@ + + + + + netstandard2.0 + 8.0 + false + false + Xamarin.GooglePlayServices.Tasks + Xamarin.GooglePlayServices.Tasks + + + + + + + + + + Xamarin.GooglePlayServices.Basement.targets + Always + + + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-basement/buildtasks/GoogleServicesJsonProcessor.cs b/source/com.google.android.gms/play-services-basement/buildtasks/GoogleServicesJsonProcessor.cs new file mode 100644 index 000000000..c27568ff2 --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/buildtasks/GoogleServicesJsonProcessor.cs @@ -0,0 +1,25 @@ +using System; +using System.IO; +using System.Runtime.Serialization.Json; + +namespace Xamarin.GooglePlayServices.Tasks +{ + public class GoogleServicesJsonProcessor + { + public GoogleServicesJsonProcessor () + { + } + + public static GoogleServices ProcessJson (string packageName, Stream json) + { + GoogleServices googleServices; + + var serializer = new DataContractJsonSerializer (typeof (GoogleServices)); + googleServices = serializer.ReadObject (json) as GoogleServices; + if (googleServices == null) + throw new NullReferenceException (); + return googleServices; + } + } +} + diff --git a/source/com.google.android.gms/play-services-basement/buildtasks/Models.cs b/source/com.google.android.gms/play-services-basement/buildtasks/Models.cs new file mode 100644 index 000000000..42dc1af1a --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/buildtasks/Models.cs @@ -0,0 +1,340 @@ +using System; +using System.Collections.Generic; +using System.Runtime.Serialization; +using System.Linq; + +namespace Xamarin.GooglePlayServices.Tasks +{ + [DataContract] + [Serializable] + public class ProjectInfo + { + [DataMember (Name="project_id")] + public string ProjectId { get; set; } + [DataMember (Name="project_number")] + public string ProjectNumber { get; set; } + [DataMember (Name="name")] + public string Name { get; set; } + [DataMember (Name="firebase_url")] + public string FirebaseUrl { get; set; } + [DataMember (Name="storage_bucket")] + public string StorageBucket { get; set; } + } + + [DataContract] + [Serializable] + public class AndroidClientInfo + { + [DataMember (Name="package_name")] + public string PackageName { get; set; } + [DataMember (Name="certificate_hash")] + public List CertificateHash { get; set; } + } + + [DataContract] + [Serializable] + public class ClientInfo + { + [DataMember (Name="mobilesdk_app_id")] + public string MobileSdkAppId { get; set; } + [DataMember (Name="client_id")] + public string ClientId { get; set; } + [DataMember (Name="client_type")] + public int ClientType { get; set; } + [DataMember (Name="android_client_info")] + public AndroidClientInfo AndroidClientInfo { get; set; } + } + + [DataContract] + [Serializable] + public class AndroidInfo + { + [DataMember (Name="package_name")] + public string PackageName { get; set; } + [DataMember (Name="certificate_hash")] + public string CertificateHash { get; set; } + } + + [DataContract] + [Serializable] + public class OauthClient + { + [DataMember (Name="client_id")] + public string ClientId { get; set; } + [DataMember (Name="client_type")] + public int ClientType { get; set; } + [DataMember (Name="android_info")] + public AndroidInfo AndroidInfo { get; set; } + } + + [DataContract] + [Serializable] + public class AnalyticsProperty + { + [DataMember (Name="tracking_id")] + public string TrackingId { get; set; } + } + + [DataContract] + [Serializable] + public class AnalyticsService + { + [DataMember (Name="status")] + public int Status { get; set; } + [DataMember (Name="analytics_property")] + public AnalyticsProperty AnalyticsProperty { get; set; } + } + + [DataContract] + [Serializable] + public class CloudMessagingService + { + [DataMember (Name="status")] + public int Status { get; set; } + [DataMember (Name="apns_config")] + public List ApnsConfig { get; set; } + } + + [DataContract] + [Serializable] + public class IosInfo + { + [DataMember (Name="bundle_id")] + public string BundleId { get; set; } + [DataMember (Name="app_store_id")] + public string AppStoreId { get; set; } + } + + [DataContract] + [Serializable] + public class OtherPlatformOauthClient + { + [DataMember (Name="client_id")] + public string ClientId { get; set; } + [DataMember (Name="client_type")] + public int ClientType { get; set; } + [DataMember (Name="ios_info")] + public IosInfo IosInfo { get; set; } + } + + [DataContract] + [Serializable] + public class AppinviteService + { + [DataMember (Name="status")] + public int Status { get; set; } + [DataMember (Name="other_platform_oauth_client")] + public List OtherPlatformOauthClient { get; set; } + } + + [DataContract] + [Serializable] + public class GoogleSigninService + { + [DataMember (Name="status")] + public int Status { get; set; } + } + + [DataContract] + [Serializable] + public class AdsService + { + [DataMember (Name="status")] + public int Status { get; set; } + [DataMember (Name="test_banner_ad_unit_id")] + public string TestBannerAdUnitId { get; set; } + [DataMember (Name="test_interstitial_ad_unit_id")] + public string TestInterstitialAdUnitId { get; set; } + } + + [DataContract] + [Serializable] + public class Services + { + [DataMember (Name="analytics_service")] + public AnalyticsService AnalyticsService { get; set; } + [DataMember (Name="cloud_messaging_service")] + public CloudMessagingService CloudMessagingService { get; set; } + [DataMember (Name="appinvite_service")] + public AppinviteService AppInviteService { get; set; } + [DataMember (Name="google_signin_service")] + public GoogleSigninService GoogleSignInService { get; set; } + [DataMember (Name="ads_service")] + public AdsService AdsService { get; set; } + } + + [DataContract] + [Serializable] + public class Client + { + [DataMember (Name="client_info")] + public ClientInfo ClientInfo { get; set; } + [DataMember (Name="oauth_client")] + public List OauthClient { get; set; } + [DataMember (Name="api_key")] + public List ApiKey { get; set; } + [DataMember (Name="services")] + public Services Services { get; set; } + } + + [DataContract] + [Serializable] + public class ApiKey + { + [DataMember (Name = "current_key")] + public string CurrentKey { get; set; } + } + + [DataContract] + [Serializable] + public class GoogleServices + { + [DataMember (Name="project_info")] + public ProjectInfo ProjectInfo { get; set; } + [DataMember (Name="client")] + public List Client { get; set; } + [DataMember (Name="client_info")] + public List ClientInfo { get; set; } + [DataMember (Name="ARTIFACT_VERSION")] + public string ArtifactVersion { get; set; } + + public Client GetClient (string packageName) + { + if (Client == null || !Client.Any ()) + return null; + + return Client.FirstOrDefault (c => c.ClientInfo.AndroidClientInfo.PackageName == packageName); + } + + public string GetGATrackingId (string packageName) + { + //{YOUR_CLIENT}/services/analytics-service/analytics_property/tracking_id + var client = GetClient (packageName); + if (client == null) + return null; + + if (client.Services != null && client.Services.AnalyticsService != null && client.Services.AnalyticsService.AnalyticsProperty != null) + return client.Services.AnalyticsService.AnalyticsProperty.TrackingId; + + return null; + } + + public string GetDefaultGcmSenderId () + { + // project_info/project_number + if (ProjectInfo != null) + return ProjectInfo.ProjectNumber; + + return null; + } + + public string GetGoogleAppId (string packageName) + { + // {YOUR_CLIENT}/client_info/mobilesdk_app_id + var client = GetClient (packageName); + if (client == null) + return null; + + if (client.ClientInfo != null) + return client.ClientInfo.MobileSdkAppId; + + return null; + } + + public string GetTestBannerAdUnitId (string packageName) + { + //{YOUR_CLIENT}/services/ads_service/test_banner_ad_unit_id + var client = GetClient (packageName); + if (client == null) + return null; + + if (client.Services != null && client.Services.AdsService != null) + return client.Services.AdsService.TestBannerAdUnitId; + + return null; + } + + public string GetTestInterstitialAdUnitId (string packageName) + { + //{YOUR_CLIENT}/services/ads_service/test_interstitial_ad_unit_id + var client = GetClient (packageName); + if (client == null) + return null; + + if (client.Services != null && client.Services.AdsService != null) + return client.Services.AdsService.TestInterstitialAdUnitId; + + return null; + } + + public string GetDefaultWebClientId (string packageName) + { + // default_web_client_id: + // {YOUR_CLIENT}/oauth_client/client_id(client_type == 3) + + var client = GetClient (packageName); + if (client == null) + return null; + + if (client.OauthClient != null && client.OauthClient.Any ()) { + var oauthClient = client.OauthClient.FirstOrDefault (c => c.ClientType == 3); + if (oauthClient != null) + return oauthClient.ClientId; + } + + return null; + } + + public string GetGoogleApiKey (string packageName) + { + // google_api_key: + // {YOUR_CLIENT}/api_key/current_key + + var client = GetClient (packageName); + if (client == null) + return null; + + if (client.ApiKey != null && client.ApiKey.Any ()) + return client.ApiKey.FirstOrDefault ().CurrentKey; + + return null; + } + + public string GetFirebaseDatabaseUrl () + { + // firebase_database_url: + // project_info/firebase_url + + if (ProjectInfo != null) + return ProjectInfo.FirebaseUrl; + + return null; + } + + public string GetCrashReportingApiKey (string packageName) + { + // google_crash_reporting_api_key: + // {YOUR_CLIENT}/api_key/current_key + + var client = GetClient (packageName); + if (client == null) + return null; + + if (client.ApiKey != null && client.ApiKey.Any ()) + return client.ApiKey.FirstOrDefault ().CurrentKey; + + return null; + } + + public string GetStorageBucket (string packageName) + { + // google_storage_bucket: + // project_info/storage_bucket + if (ProjectInfo != null) + return ProjectInfo.StorageBucket; + + return null; + } + } +} + diff --git a/source/com.google.android.gms/play-services-basement/buildtasks/ProcessGoogleServicesJson.cs b/source/com.google.android.gms/play-services-basement/buildtasks/ProcessGoogleServicesJson.cs new file mode 100644 index 000000000..d508ceefa --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/buildtasks/ProcessGoogleServicesJson.cs @@ -0,0 +1,206 @@ +using System; +using Microsoft.Build.Framework; +using Microsoft.Build.Utilities; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Runtime.Serialization.Json; +using System.Xml; + +namespace Xamarin.GooglePlayServices.Tasks +{ + public class ProcessGoogleServicesJson : Task + { + [Required] + public ITaskItem ResStringsPath { get; set; } + + [Required] + public ITaskItem ResXmlPath { get; set; } + + [Required] + public ITaskItem StampPath { get; set; } + + [Required] + public string AndroidPackageName { get; set; } + + [Required] + public ITaskItem[] GoogleServicesJsons { get; set; } + + [Required] + public ITaskItem ResPath { get; set; } + + [Output] + public ITaskItem[] ResPathAbs { get; set; } + + public override bool Execute() + { + Log.LogMessage("Started ProcessGoogleServicesJson..."); + + var resPath = ResPath.GetMetadata("FullPath"); + var stampPath = StampPath.GetMetadata("FullPath"); + var resValuesPath = ResStringsPath.GetMetadata("FullPath"); + var resXmlPath = ResXmlPath.GetMetadata("FullPath"); + + Log.LogMessage("Android Package Name: {0}", AndroidPackageName); + Log.LogMessage("Resource Path: {0}", resPath); + Log.LogMessage("Resource Strings Path: {0}", resValuesPath); + Log.LogMessage("Resource Xml Path: {0}", resXmlPath); + Log.LogMessage("Stamp Path: {0}", stampPath); + + // Return out the absolute path of our resources dir + ResPathAbs = new ITaskItem[] { new TaskItem(resPath) }; + + if (GoogleServicesJsons == null || !GoogleServicesJsons.Any()) { + Log.LogMessage("No GoogleServicesJson Build Action items specified, skipping task."); + DeleteFiles(resValuesPath, resXmlPath); + return true; + } + + if (GoogleServicesJsons.Count() > 1) + Log.LogMessage("More than one GoogleServicesJson file specified for build configuration, using first one found."); + + var gsItem = GoogleServicesJsons.First(); + + var gsPath = CleanPath(gsItem.ItemSpec); + + GoogleServices googleServices; + + try { + using (var sr = File.OpenRead(gsPath)) + googleServices = GoogleServicesJsonProcessor.ProcessJson(AndroidPackageName, sr); + + if (googleServices == null) + throw new NullReferenceException(); + } catch (Exception ex) { + Log.LogError("Failed to Read or Deserialize GoogleServicesJson file: {0}{1}{2}", gsPath, Environment.NewLine, ex); + DeleteFiles(resValuesPath, resXmlPath); + return false; + } + + if (string.IsNullOrEmpty(AndroidPackageName)) { + Log.LogError("Android Package Name not specified for project"); + return false; + } + + var resolvedClientInfo = googleServices.GetClient(AndroidPackageName); + if (resolvedClientInfo == null) + Log.LogWarning("Failed to find client_info in google-services.json matching package name: {0}", AndroidPackageName); + + var valuesItems = new Dictionary { + { "ga_trackingId", googleServices.GetGATrackingId (AndroidPackageName) }, + { "gcm_defaultSenderId", googleServices.GetDefaultGcmSenderId () }, + { "google_app_id", googleServices.GetGoogleAppId (AndroidPackageName) }, + { "test_banner_ad_unit_id", googleServices.GetTestBannerAdUnitId (AndroidPackageName) }, + { "test_interstitial_ad_unit_id", googleServices.GetTestInterstitialAdUnitId (AndroidPackageName) }, + { "default_web_client_id", googleServices.GetDefaultWebClientId (AndroidPackageName) }, + { "firebase_database_url", googleServices.GetFirebaseDatabaseUrl () }, + { "google_api_key", googleServices.GetGoogleApiKey (AndroidPackageName) }, + { "google_crash_reporting_api_key", googleServices.GetCrashReportingApiKey (AndroidPackageName) }, + { "google_storage_bucket", googleServices.GetStorageBucket (AndroidPackageName) }, + { "project_id", googleServices.ProjectInfo.ProjectId } + }; + + // We only want to create the file if not all of these values are missing + if (valuesItems.Any(kvp => !string.IsNullOrEmpty(kvp.Value))) { + Log.LogMessage("Writing Resource File: {0}", resValuesPath); + WriteResourceDoc(resValuesPath, valuesItems); + Log.LogMessage("Wrote Resource File: {0}", resValuesPath); + } else { + if (File.Exists(resValuesPath)) { + Log.LogMessage("Deleting Resource File: {0}", resValuesPath); + try { + File.Delete(resValuesPath); + } catch (Exception ex) { + Log.LogWarning("Failed to delete Resource File: {0}{1}{2}", resValuesPath, Environment.NewLine, ex); + } + } + } + + var xmlItems = new Dictionary { + { "ga_trackingId", googleServices.GetGATrackingId (AndroidPackageName) } + }; + + // We only want to create the file if not all of these values are missing + if (xmlItems.Any(kvp => !string.IsNullOrEmpty(kvp.Value))) { + Log.LogMessage("Writing Resource File: {0}", resXmlPath); + WriteResourceDoc(resXmlPath, xmlItems); + Log.LogMessage("Wrote Resource File: {0}", resXmlPath); + } else { + // If no + if (File.Exists(resXmlPath)) { + Log.LogMessage("Deleting Resource File: {0}", resXmlPath); + try { + File.Delete(resXmlPath); + } catch (Exception ex) { + Log.LogWarning("Failed to delete Resource File: {0}{1}{2}", resXmlPath, Environment.NewLine, ex); + } + } + } + + var stampTxt = string.Empty; + if (File.Exists(resXmlPath)) + stampTxt += resXmlPath + Environment.NewLine; + if (File.Exists(resValuesPath)) + stampTxt += resValuesPath + Environment.NewLine; + + File.WriteAllText(stampPath, stampTxt); + + Log.LogMessage("Finished ProcessGoogleServicesJson..."); + return true; + } + + void WriteResourceDoc(string path, Dictionary resourceValues) + { + var pathInfo = new FileInfo(path); + + if (!pathInfo.Directory.Exists) + pathInfo.Directory.Create(); + + var xws = new XmlWriterSettings { + Indent = true + }; + using (var sw = File.Create(path)) + using (var xw = XmlTextWriter.Create(sw, xws)) { + xw.WriteStartDocument(); + xw.WriteStartElement("resources"); + + foreach (var kvp in resourceValues) { + if (!string.IsNullOrEmpty(kvp.Value)) { + xw.WriteStartElement("string"); + xw.WriteAttributeString("name", kvp.Key); + xw.WriteAttributeString("translatable", "false"); + xw.WriteString(kvp.Value); + xw.WriteEndElement(); + } + } + + xw.WriteEndElement(); + xw.WriteEndDocument(); + xw.Flush(); + xw.Close(); + } + } + + void DeleteFiles(params string[] paths) + { + if (paths == null || !paths.Any()) + return; + + foreach (var p in paths) { + if (!File.Exists(p)) + continue; + try { + File.Delete(p); + } catch (Exception ex) { + Log.LogWarning("Failed to delete file: {0}{1}{2}", p, Environment.NewLine, ex); + } + } + } + + static string CleanPath(params string[] paths) + { + var combined = Path.Combine(paths); + return combined.Replace('/', Path.DirectorySeparatorChar).Replace('\\', Path.DirectorySeparatorChar); + } + } +} diff --git a/source/com.google.android.gms/play-services-basement/buildtasks/Properties/AssemblyInfo.cs b/source/com.google.android.gms/play-services-basement/buildtasks/Properties/AssemblyInfo.cs new file mode 100644 index 000000000..b6e052397 --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/buildtasks/Properties/AssemblyInfo.cs @@ -0,0 +1,30 @@ +using System.Reflection; +using System.Runtime.CompilerServices; + +// Information about this assembly is defined by the following attributes. +// Change them to the values specific to your project. + +[assembly: AssemblyTitle ("Xamarin.GooglePlayServices.Tasks")] +[assembly: AssemblyDescription ("")] +[assembly: AssemblyConfiguration ("")] +[assembly: AssemblyCompany ("Microsoft Corporation")] +[assembly: AssemblyProduct ("")] +[assembly: AssemblyCopyright ("Copyright © Microsoft Corporation")] +[assembly: AssemblyTrademark ("")] +[assembly: AssemblyCulture ("")] + +// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}". +// The form "{Major}.{Minor}.*" will automatically update the build and revision, +// and "{Major}.{Minor}.{Build}.*" will update just the revision. + +[assembly: AssemblyVersion ("1.0.0")] + +// The following attributes are used to specify the signing key for the assembly, +// if desired. See the Mono documentation for more information about signing. + +//[assembly: AssemblyDelaySign(false)] +//[assembly: AssemblyKeyFile("")] + +[assembly: AssemblyMetadata ("BUILD_COMMIT", "{BUILD_COMMIT}")] +[assembly: AssemblyMetadata ("BUILD_NUMBER", "{BUILD_NUMBER}")] +[assembly: AssemblyMetadata ("BUILD_TIMESTAMP", "{BUILD_TIMESTAMP}")] diff --git a/source/com.google.android.gms/play-services-basement/merge.targets b/source/com.google.android.gms/play-services-basement/merge.targets new file mode 100644 index 000000000..09e6ea762 --- /dev/null +++ b/source/com.google.android.gms/play-services-basement/merge.targets @@ -0,0 +1,85 @@ + + + + + + + + + + + + + + + + + + $(MSBuildThisFileDirectory)Xamarin.GooglePlayServices.Tasks.dll + googsvcsjson + + $(IntermediateOutputPath)$(ProcessGoogleServicesJsonResDirName)\ + $(ProcessGoogleServicesJsonResDirPath)values\goog_svcs_json.xml + $(ProcessGoogleServicesJsonResDirPath)xml\global_tracker.xml + $(IntermediateOutputPath)googsvcsjson.stamp + + + + + $(CleanDependsOn); + _CleanProcessGoogleServicesJson; + + + + + + + + + + + + + + + + + + + + + + + + $(IntermediateOutputPath)googsvcsjson.stamp + + + + + + + + + + + diff --git a/source/com.google.android.gms/play-services-cast-framework/Additions/PendingResultExtensions.cs b/source/com.google.android.gms/play-services-cast-framework/Additions/PendingResultExtensions.cs new file mode 100644 index 000000000..eaa1daaeb --- /dev/null +++ b/source/com.google.android.gms/play-services-cast-framework/Additions/PendingResultExtensions.cs @@ -0,0 +1,186 @@ +using System; +using Java.Interop; +using System.Threading.Tasks; +using Android.Gms.Common.Apis; +using Android.Gms.Cast; + +namespace Android.Gms.Cast.Framework +{ + public partial class CastSession + { + public async Task SendMessageAsync (string @namespace, string message) + { + return (await SendMessage (@namespace, message)).JavaCast (); + } + } +} + +namespace Android.Gms.Cast.Framework.Media +{ + public partial class RemoteMediaClient + { + [Obsolete] + public async Task LoadAsync (MediaInfo mediaInfo) + { + return (await Load (mediaInfo)).JavaCast (); + } + [Obsolete] + public async Task LoadAsync (MediaInfo mediaInfo, bool autoplay) + { + return (await Load (mediaInfo, autoplay)).JavaCast (); + } + [Obsolete] + public async Task LoadAsync (MediaInfo mediaInfo, bool autoplay, long playPosition) + { + return (await Load (mediaInfo, autoplay, playPosition)).JavaCast (); + } + [Obsolete] + public async Task LoadAsync (MediaInfo mediaInfo, bool autoplay, long playPosition, Org.Json.JSONObject customData) + { + return (await Load (mediaInfo, autoplay, playPosition, customData)).JavaCast (); + } + [Obsolete] + public async Task LoadAsync (MediaInfo mediaInfo, bool autoplay, long playPosition, long [] activeTrackIds, Org.Json.JSONObject customData) + { + return (await Load (mediaInfo, autoplay, playPosition, activeTrackIds, customData)).JavaCast (); + } + public async Task LoadAsync (MediaInfo mediaInfo, MediaLoadOptions mediaLoadOptions) + { + return (await Load (mediaInfo, mediaLoadOptions)).JavaCast (); + } + public async Task PauseAsync () + { + return (await Pause ()).JavaCast (); + } + public async Task PauseAsync (Org.Json.JSONObject customData) + { + return (await Pause (customData)).JavaCast (); + } + public async Task PlayAsync () + { + return (await Play ()).JavaCast (); + } + public async Task PlayAsync (Org.Json.JSONObject customData) + { + return (await Play (customData)).JavaCast (); + } + public async Task QueueAppendItemAsync (MediaQueueItem item, Org.Json.JSONObject customData) + { + return (await QueueAppendItem (item, customData)).JavaCast (); + } + public async Task QueueInsertAndPlayItemAsync (MediaQueueItem item, int insertBeforeItemId, Org.Json.JSONObject customData) + { + return (await QueueInsertAndPlayItem (item, insertBeforeItemId, customData)).JavaCast (); + } + public async Task QueueInsertAndPlayItemAsync (MediaQueueItem item, int insertBeforeItemId, long playPosition, Org.Json.JSONObject customData) + { + return (await QueueInsertAndPlayItem (item, insertBeforeItemId, playPosition, customData)).JavaCast (); + } + public async Task QueueInsertItemsAsync (MediaQueueItem [] itemsToInsert, int insertBeforeItemId, Org.Json.JSONObject customData) + { + return (await QueueInsertItems (itemsToInsert, insertBeforeItemId, customData)).JavaCast (); + } + public async Task QueueJumpToItemAsync (int itemId, Org.Json.JSONObject customData) + { + return (await QueueJumpToItem (itemId, customData)).JavaCast (); + } + public async Task QueueJumpToItemAsync (int itemId, long playPosition, Org.Json.JSONObject customData) + { + return (await QueueJumpToItem (itemId, playPosition, customData)).JavaCast (); + } + public async Task QueueLoadAsync (MediaQueueItem [] items, int startIndex, int repeatMode, Org.Json.JSONObject customData) + { + return (await QueueLoad (items, startIndex, repeatMode, customData)).JavaCast (); + } + public async Task QueueLoadAsync (MediaQueueItem [] items, int startIndex, int repeatMode, long playPosition, Org.Json.JSONObject customData) + { + return (await QueueLoad (items, startIndex, repeatMode, playPosition, customData)).JavaCast (); + } + public async Task QueueMoveItemToNewIndexAsync (int itemId, int newIndex, Org.Json.JSONObject customData) + { + return (await QueueMoveItemToNewIndex (itemId, newIndex, customData)).JavaCast (); + } + public async Task QueueNextAsync (Org.Json.JSONObject customData) + { + return (await QueueNext (customData)).JavaCast (); + } + public async Task QueuePrevAsync (Org.Json.JSONObject customData) + { + return (await QueuePrev (customData)).JavaCast (); + } + public async Task QueueRemoveItemAsync (int itemId, Org.Json.JSONObject customData) + { + return (await QueueRemoveItem (itemId, customData)).JavaCast (); + } + public async Task QueueRemoveItemsAsync (int [] itemIdsToRemove, Org.Json.JSONObject customData) + { + return (await QueueRemoveItems (itemIdsToRemove, customData)).JavaCast (); + } + public async Task QueueReorderItemsAsync (int [] itemIdsToReorder, int insertBeforeItemId, Org.Json.JSONObject customData) + { + return (await QueueReorderItems (itemIdsToReorder, insertBeforeItemId, customData)).JavaCast (); + } + public async Task QueueSetRepeatModeAsync (int repeatMode, Org.Json.JSONObject customData) + { + return (await QueueSetRepeatMode (repeatMode, customData)).JavaCast (); + } + public async Task QueueUpdateItemsAsync (MediaQueueItem [] itemsToUpdate, Org.Json.JSONObject customData) + { + return (await QueueUpdateItems (itemsToUpdate, customData)).JavaCast (); + } + public async Task RequestStatusAsync () + { + return (await RequestStatus ()).JavaCast (); + } + public async Task SeekAsync (long position) + { + return (await Seek (position)).JavaCast (); + } + public async Task SeekAsync (long position, int resumeState) + { + return (await Seek (position, resumeState)).JavaCast (); + } + public async Task SeekAsync (long position, int resumeState, Org.Json.JSONObject customData) + { + return (await Seek (position, resumeState, customData)).JavaCast (); + } + public async Task SetActiveMediaTracksAsync (long [] trackIds) + { + return (await SetActiveMediaTracks (trackIds)).JavaCast (); + } + public async Task SetStreamMuteAsync (bool muted) + { + return (await SetStreamMute (muted)).JavaCast (); + } + public async Task SetStreamMuteAsync (bool muted, Org.Json.JSONObject customData) + { + return (await SetStreamMute (muted, customData)).JavaCast (); + } + public async Task SetStreamVolumeAsync (double volume) + { + return (await SetStreamVolume (volume)).JavaCast (); + } + public async Task SetStreamVolumeAsync (double volume, Org.Json.JSONObject customData) + { + return (await SetStreamVolume (volume, customData)).JavaCast (); + } + public async Task SetTextTrackStyleAsync (TextTrackStyle trackStyle) + { + return (await SetTextTrackStyle (trackStyle)).JavaCast (); + } + public async Task StopAsync () + { + return (await Stop ()).JavaCast (); + } + public async Task StopAsync (Org.Json.JSONObject customData) + { + return (await Stop (customData)).JavaCast (); + } + + public async Task SetPlaybackRateAsync (double rate) + { + return (await SetPlaybackRate (rate)).JavaCast (); + } + } +} + diff --git a/source/com.google.android.gms/play-services-cast-framework/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-cast-framework/Transforms/EnumFields.xml new file mode 100644 index 000000000..87cc5b8d5 --- /dev/null +++ b/source/com.google.android.gms/play-services-cast-framework/Transforms/EnumFields.xml @@ -0,0 +1,24 @@ + + + + + + + + + diff --git a/source/com.google.android.gms/play-services-cast-framework/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-cast-framework/Transforms/EnumMethods.xml new file mode 100644 index 000000000..bd92fa0b4 --- /dev/null +++ b/source/com.google.android.gms/play-services-cast-framework/Transforms/EnumMethods.xml @@ -0,0 +1,21 @@ + + + + + + diff --git a/source/com.google.android.gms/play-services-cast-framework/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-cast-framework/Transforms/Metadata.xml new file mode 100644 index 000000000..a75ef1a41 --- /dev/null +++ b/source/com.google.android.gms/play-services-cast-framework/Transforms/Metadata.xml @@ -0,0 +1,30 @@ + + + Android.Gms.Cast.Framework + Android.Gms.Cast.Framework.Internal.FeatureHighlight + Android.Gms.Cast.Framework.Media + Android.Gms.Cast.Framework.Media.UIController + Android.Gms.Cast.Framework.Media.Widget + + + + + + + + + + + + source + size + dest + flags + + + Android.Gms.Cast.Framework.Media.Internal + + diff --git a/source/com.google.android.gms/play-services-cast-tv/Additions/Additions.cs b/source/com.google.android.gms/play-services-cast-tv/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.gms/play-services-cast-tv/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.gms/play-services-cast-tv/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-cast-tv/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.gms/play-services-cast-tv/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-cast-tv/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-cast-tv/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.gms/play-services-cast-tv/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-cast-tv/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-cast-tv/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..02c59b4a7 --- /dev/null +++ b/source/com.google.android.gms/play-services-cast-tv/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,45 @@ + + + Android.Gms.Cast.TV + + + Android.Gms.Cast.TV.Auth + + + Android.Gms.Cast.TV.CAC + + + Android.Gms.Cast.TV.Internal + + + Android.Gms.Cast.TV.Media + + + Android.Gms.Dynamite.Descriptors.Gms.CastTVDynamite + + + Android.Gms.Internal.CastTV + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-cast-tv/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.gms/play-services-cast-tv/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.gms/play-services-cast-tv/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-cast-tv/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-cast-tv/Transforms/Metadata.xml new file mode 100644 index 000000000..e3a7ccfe0 --- /dev/null +++ b/source/com.google.android.gms/play-services-cast-tv/Transforms/Metadata.xml @@ -0,0 +1,8 @@ + + + DisconnectReasonCode + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-cast/Additions/Additions.cs b/source/com.google.android.gms/play-services-cast/Additions/Additions.cs new file mode 100644 index 000000000..e2b8e8bdf --- /dev/null +++ b/source/com.google.android.gms/play-services-cast/Additions/Additions.cs @@ -0,0 +1,13 @@ +using System; + +namespace Android.Gms.Cast +{ + public partial class CastClass + { + [Obsolete ("Use API instead")] + public static Android.Gms.Common.Apis.Api Api { + get { return Android.Gms.Cast.CastClass.API; } + } + } +} + diff --git a/source/com.google.android.gms/play-services-cast/Additions/IPendingResultExtensions.cs b/source/com.google.android.gms/play-services-cast/Additions/IPendingResultExtensions.cs new file mode 100644 index 000000000..70e4ff076 --- /dev/null +++ b/source/com.google.android.gms/play-services-cast/Additions/IPendingResultExtensions.cs @@ -0,0 +1,196 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Common.Apis; +using Android.Runtime; + +namespace Android.Gms.Cast +{ + public static partial class CastClassICastApiExtensions + { + public static async Task JoinApplicationAsync (this CastClass.ICastApi api, GoogleApiClient client) + { + return (await api.JoinApplication (client)).JavaCast (); + } + public static async Task JoinApplicationAsync (this CastClass.ICastApi api, GoogleApiClient client, string applicationId) + { + return (await api.JoinApplication (client, applicationId)).JavaCast (); + } + public static async Task JoinApplicationAsync (this CastClass.ICastApi api, GoogleApiClient client, string applicationId, string sessionId) + { + return (await api.JoinApplication (client, applicationId, sessionId)).JavaCast (); + } + public static async Task LaunchApplicationAsync (this CastClass.ICastApi api, GoogleApiClient client, string applicationId) + { + return (await api.LaunchApplication (client, applicationId)).JavaCast (); + } + public static async Task LaunchApplicationAsync (this CastClass.ICastApi api, GoogleApiClient client, string applicationId, LaunchOptions options) + { + return (await api.LaunchApplication (client, applicationId, options)).JavaCast (); + } + [Obsolete ("Use the override specifying LaunchOptions instead")] + public static async Task LaunchApplicationAsync (this CastClass.ICastApi api, GoogleApiClient client, string applicationId, bool relaunchIfRunning) + { + return (await api.LaunchApplication (client, applicationId, relaunchIfRunning)).JavaCast (); + } + public static async Task LeaveApplicationAsync (this CastClass.ICastApi api, GoogleApiClient client) + { + return (await api.LeaveApplication (client)).JavaCast (); + } + public static async Task SendMessageAsync (this CastClass.ICastApi api, GoogleApiClient client, string @namespace, string message) + { + return (await api.SendMessage (client, @namespace, message)).JavaCast (); + } + public static async Task StopApplicationAsync (this CastClass.ICastApi api, GoogleApiClient client) + { + return (await api.StopApplication (client)).JavaCast (); + } + public static async Task StopApplicationAsync (this CastClass.ICastApi api, GoogleApiClient client, string sessionId) + { + return (await api.StopApplication (client, sessionId)).JavaCast (); + } + } +} + +namespace Android.Gms.Cast +{ + public static partial class ICastRemoteDisplayApiExtensions + { + public static async Task StartRemoteDisplayAsync (this ICastRemoteDisplayApi api, GoogleApiClient apiClient, string appId) + { + return (await api.StartRemoteDisplay (apiClient, appId)).JavaCast (); + } + public static async Task StopRemoteDisplayAsync (this ICastRemoteDisplayApi api, GoogleApiClient apiClient) + { + return (await api.StopRemoteDisplay (apiClient)).JavaCast (); + } + } +} + +namespace Android.Gms.Cast +{ + public partial class RemoteMediaPlayer + { + public async Task LoadAsync (GoogleApiClient apiClient, MediaInfo mediaInfo) + { + return (await Load (apiClient, mediaInfo)).JavaCast (); + } + public async Task LoadAsync (GoogleApiClient apiClient, MediaInfo mediaInfo, bool autoplay) + { + return (await Load (apiClient, mediaInfo, autoplay)).JavaCast (); + } + public async Task LoadAsync (GoogleApiClient apiClient, MediaInfo mediaInfo, bool autoplay, long playPosition) + { + return (await Load (apiClient, mediaInfo, autoplay, playPosition)).JavaCast (); + } + public async Task LoadAsync (GoogleApiClient apiClient, Android.Gms.Cast.MediaInfo mediaInfo, bool autoplay, long playPosition, Org.Json.JSONObject customData) { + return (await Load (apiClient, mediaInfo, autoplay, playPosition, customData)).JavaCast (); + } + public async Task LoadAsync (GoogleApiClient apiClient, Android.Gms.Cast.MediaInfo mediaInfo, bool autoplay, long playPosition, long[] activeTrackIds, Org.Json.JSONObject customData) { + return (await Load (apiClient, mediaInfo, autoplay, playPosition, activeTrackIds, customData)).JavaCast (); + } + public async Task PauseAsync (GoogleApiClient apiClient) { + return (await Pause (apiClient)).JavaCast (); + } + public async Task PauseAsync (GoogleApiClient apiClient, Org.Json.JSONObject customData) { + return (await Pause (apiClient, customData)).JavaCast (); + } + public async Task PlayAsync (GoogleApiClient apiClient) { + return (await Play (apiClient)).JavaCast (); + } + public async Task PlayAsync (GoogleApiClient apiClient, Org.Json.JSONObject customData) { + return (await Play (apiClient, customData)).JavaCast (); + } + public async Task QueueAppendItemAsync (GoogleApiClient apiClient, Android.Gms.Cast.MediaQueueItem item, Org.Json.JSONObject customData) { + return (await QueueAppendItem (apiClient, item, customData)).JavaCast (); + } + public async Task QueueInsertAndPlayItemAsync (GoogleApiClient apiClient, Android.Gms.Cast.MediaQueueItem item, int insertBeforeItemId, long playPosition, Org.Json.JSONObject customData) + { + return (await QueueInsertAndPlayItem (apiClient, item, insertBeforeItemId, playPosition, customData)).JavaCast (); + } + public async Task QueueInsertAndPlayItemAsync (GoogleApiClient apiClient, Android.Gms.Cast.MediaQueueItem item, int insertBeforeItemId, Org.Json.JSONObject customData) + { + return (await QueueInsertAndPlayItem (apiClient, item, insertBeforeItemId, customData)).JavaCast (); + } + public async Task QueueInsertItemsAsync (GoogleApiClient apiClient, Android.Gms.Cast.MediaQueueItem[] itemsToInsert, int insertBeforeItemId, Org.Json.JSONObject customData) { + return (await QueueInsertItems (apiClient, itemsToInsert, insertBeforeItemId, customData)).JavaCast (); + } + public async Task QueueJumpToItemAsync (GoogleApiClient apiClient, int itemId, long playPosition, Org.Json.JSONObject customData) + { + return (await QueueJumpToItem (apiClient, itemId, playPosition, customData)).JavaCast (); + } + public async Task QueueJumpToItemAsync (GoogleApiClient apiClient, int itemId, Org.Json.JSONObject customData) { + return (await QueueJumpToItem (apiClient, itemId, customData)).JavaCast (); + } + public async Task QueueLoadAsync (GoogleApiClient apiClient, Android.Gms.Cast.MediaQueueItem[] items, int startIndex, int repeatMode, long playPosition, Org.Json.JSONObject customData) + { + return (await QueueLoad (apiClient, items, startIndex, repeatMode, playPosition, customData)).JavaCast (); + } + public async Task QueueLoadAsync (GoogleApiClient apiClient, Android.Gms.Cast.MediaQueueItem[] items, int startIndex, int repeatMode, Org.Json.JSONObject customData) { + return (await QueueLoad (apiClient, items, startIndex, repeatMode, customData)).JavaCast (); + } + public async Task QueueMoveItemToNewIndexAsync (GoogleApiClient apiClient, int itemId, int newIndex, Org.Json.JSONObject customData) { + return (await QueueMoveItemToNewIndex (apiClient, itemId, newIndex, customData)).JavaCast (); + } + public async Task QueueNextAsync (GoogleApiClient apiClient, Org.Json.JSONObject customData) { + return (await QueueNext (apiClient, customData)).JavaCast (); + } + public async Task QueuePrevAsync (GoogleApiClient apiClient, Org.Json.JSONObject customData) { + return (await QueuePrev (apiClient, customData)).JavaCast (); + } + public async Task QueueRemoveItemAsync (GoogleApiClient apiClient, int itemId, Org.Json.JSONObject customData) { + return (await QueueRemoveItem (apiClient, itemId, customData)).JavaCast (); + } + public async Task QueueRemoveItemsAsync (GoogleApiClient apiClient, int[] itemIdsToRemove, Org.Json.JSONObject customData) { + return (await QueueRemoveItems (apiClient, itemIdsToRemove, customData)).JavaCast (); + } + public async Task QueueReorderItemsAsync (GoogleApiClient apiClient, int[] itemIdsToReorder, int insertBeforeItemId, Org.Json.JSONObject customData) { + return (await QueueReorderItems (apiClient, itemIdsToReorder, insertBeforeItemId, customData)).JavaCast (); + } + public async Task QueueSetRepeatModeAsync (GoogleApiClient apiClient, int repeatMode, Org.Json.JSONObject customData) { + return (await QueueSetRepeatMode (apiClient, repeatMode, customData)).JavaCast (); + } + public async Task QueueUpdateItemsAsync (GoogleApiClient apiClient, Android.Gms.Cast.MediaQueueItem[] itemsToUpdate, Org.Json.JSONObject customData) { + return (await QueueUpdateItems (apiClient, itemsToUpdate, customData)).JavaCast (); + } + public async Task RequestStatusAsync (GoogleApiClient apiClient) { + return (await RequestStatus (apiClient)).JavaCast (); + } + public async Task SeekAsync (GoogleApiClient apiClient, long position) { + return (await Seek (apiClient, position)).JavaCast (); + } + public async Task SeekAsync (GoogleApiClient apiClient, long position, int resumeState) { + return (await Seek (apiClient, position, resumeState)).JavaCast (); + } + public async Task SeekAsync (GoogleApiClient apiClient, long position, int resumeState, Org.Json.JSONObject customData) { + return (await Seek (apiClient, position, resumeState, customData)).JavaCast (); + } + public async Task SetActiveMediaTracksAsync (GoogleApiClient apiClient, long[] trackIds) { + return (await SetActiveMediaTracks (apiClient, trackIds)).JavaCast (); + } + public async Task SetStreamMuteAsync (GoogleApiClient apiClient, bool muteState) { + return (await SetStreamMute (apiClient, muteState)).JavaCast (); + } + public async Task SetStreamMuteAsync (GoogleApiClient apiClient, bool muteState, Org.Json.JSONObject customData) { + return (await SetStreamMute (apiClient, muteState, customData)).JavaCast (); + } + public async Task SetStreamVolumeAsync (GoogleApiClient apiClient, Double volume) { + return (await SetStreamVolume (apiClient, volume)).JavaCast (); + } + public async Task SetStreamVolumeAsync (GoogleApiClient apiClient, Double volume, Org.Json.JSONObject customData) { + return (await SetStreamVolume (apiClient, volume, customData)).JavaCast (); + } + public async Task SetTextTrackStyleAsync (GoogleApiClient apiClient, Android.Gms.Cast.TextTrackStyle trackStyle) { + return (await SetTextTrackStyle (apiClient, trackStyle)).JavaCast (); + } + public async Task StopAsync (GoogleApiClient apiClient) { + return (await Stop (apiClient)).JavaCast (); + } + public async Task StopAsync (GoogleApiClient apiClient, Org.Json.JSONObject customData) { + return (await Stop (apiClient, customData)).JavaCast (); + } + } +} + +namespace Android.Gms.Cast.Games +{ +} diff --git a/source/com.google.android.gms/play-services-cast/Additions/TaskExtensions.cs b/source/com.google.android.gms/play-services-cast/Additions/TaskExtensions.cs new file mode 100644 index 000000000..da3a8eccd --- /dev/null +++ b/source/com.google.android.gms/play-services-cast/Additions/TaskExtensions.cs @@ -0,0 +1,19 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Extensions; + +namespace Android.Gms.Cast +{ + public partial class CastRemoteDisplayClient + { + public Task StartRemoteDisplayAsync(CastDevice castDevice, string applicationId, int configPreset, Android.App.PendingIntent sessionEndedPendingIntent) + { + return StartRemoteDisplay(castDevice, applicationId, configPreset, sessionEndedPendingIntent).AsAsync(); + } + + public Task StopRemoteDisplayAsync() + { + return StopRemoteDisplay().AsAsync(); + } + } +} diff --git a/source/com.google.android.gms/play-services-cast/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-cast/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-cast/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-cast/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-cast/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-cast/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-cast/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-cast/Transforms/Metadata.xml new file mode 100644 index 000000000..d400aade5 --- /dev/null +++ b/source/com.google.android.gms/play-services-cast/Transforms/Metadata.xml @@ -0,0 +1,44 @@ + + + Android.Gms.Cast + Android.Gms.Cast.Games + + CastClass + CastClass.CastOptions + CastClass.CastOptions.Builder + + + + + + + + + + + + + source + size + dest + flags + + + + + API + API + + + java.lang.Object + java.lang.Object + + + + DetailedErrorCodeData + + + diff --git a/source/com.google.android.gms/play-services-clearcut/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-clearcut/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-clearcut/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-clearcut/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-clearcut/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-clearcut/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-clearcut/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-clearcut/Transforms/Metadata.xml new file mode 100644 index 000000000..c8f3fefb7 --- /dev/null +++ b/source/com.google.android.gms/play-services-clearcut/Transforms/Metadata.xml @@ -0,0 +1,26 @@ + + + Android.Gms.Clearcut + Android.Gms.Clearcut.Internal + + + + + + + + + + + + source + size + dest + flags + + + java.lang.Object + java.lang.Object + + + diff --git a/source/com.google.android.gms/play-services-cloud-messaging/Additions/Additions.cs b/source/com.google.android.gms/play-services-cloud-messaging/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.gms/play-services-cloud-messaging/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.gms/play-services-cloud-messaging/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-cloud-messaging/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.gms/play-services-cloud-messaging/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-cloud-messaging/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-cloud-messaging/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.gms/play-services-cloud-messaging/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-cloud-messaging/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-cloud-messaging/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..6c968bd73 --- /dev/null +++ b/source/com.google.android.gms/play-services-cloud-messaging/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,3 @@ + + Android.Gms.CloudMessaging + diff --git a/source/com.google.android.gms/play-services-cloud-messaging/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.gms/play-services-cloud-messaging/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.gms/play-services-cloud-messaging/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-cloud-messaging/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-cloud-messaging/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.gms/play-services-cloud-messaging/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-code-scanner/Additions/Additions.cs b/source/com.google.android.gms/play-services-code-scanner/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.gms/play-services-code-scanner/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.gms/play-services-code-scanner/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-code-scanner/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..07bb59cd1 --- /dev/null +++ b/source/com.google.android.gms/play-services-code-scanner/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,21 @@ + + + Android.Gms.Internal.MLKit.MLKitCodeScanner + + + Xamarin.Google.MLKit.Vision.CodeScanner + + + Xamarin.Google.MLKit.Vision.CodeScanner.Internal + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-code-scanner/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-code-scanner/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.gms/play-services-code-scanner/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-cronet/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-cronet/Transforms/EnumFields.xml new file mode 100644 index 000000000..87cc5b8d5 --- /dev/null +++ b/source/com.google.android.gms/play-services-cronet/Transforms/EnumFields.xml @@ -0,0 +1,24 @@ + + + + + + + + + diff --git a/source/com.google.android.gms/play-services-cronet/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-cronet/Transforms/EnumMethods.xml new file mode 100644 index 000000000..9f82e2a77 --- /dev/null +++ b/source/com.google.android.gms/play-services-cronet/Transforms/EnumMethods.xml @@ -0,0 +1,21 @@ + + + + + + diff --git a/source/com.google.android.gms/play-services-cronet/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-cronet/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..a9533dc3f --- /dev/null +++ b/source/com.google.android.gms/play-services-cronet/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,19 @@ + + + Android.Gms.Net + + + Android.Gms.Dynamite.Cronet + + + + + + + diff --git a/source/com.google.android.gms/play-services-cronet/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-cronet/Transforms/Metadata.xml new file mode 100644 index 000000000..a6fd73ea5 --- /dev/null +++ b/source/com.google.android.gms/play-services-cronet/Transforms/Metadata.xml @@ -0,0 +1,16 @@ + + + + Android.Gms.Dynamite.Descriptors.Cronet + + + Android.Gms.Net + + + diff --git a/source/com.google.android.gms/play-services-deviceperformance/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-deviceperformance/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..d46cab481 --- /dev/null +++ b/source/com.google.android.gms/play-services-deviceperformance/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,24 @@ + + + Android.Gms.DevicePerformance.Internal + + + + Android.Gms.DevicePerformance + + + Android.Gms.Internal.DevicePerformance + + + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-deviceperformance/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-deviceperformance/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.gms/play-services-deviceperformance/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-drive/Additions/Additions.cs b/source/com.google.android.gms/play-services-drive/Additions/Additions.cs new file mode 100644 index 000000000..285005424 --- /dev/null +++ b/source/com.google.android.gms/play-services-drive/Additions/Additions.cs @@ -0,0 +1,13 @@ +using System; + +namespace Android.Gms.Drive +{ + public partial class DriveClass + { + [Obsolete ("Use API Instead")] + public static Android.Gms.Common.Apis.Api Api { + get { return Android.Gms.Drive.DriveClass.API; } + } + } +} + diff --git a/source/com.google.android.gms/play-services-drive/Additions/DataBufferAdditions.cs b/source/com.google.android.gms/play-services-drive/Additions/DataBufferAdditions.cs new file mode 100644 index 000000000..9cc609090 --- /dev/null +++ b/source/com.google.android.gms/play-services-drive/Additions/DataBufferAdditions.cs @@ -0,0 +1,20 @@ +using System; +using System.Linq; +using System.Collections.Generic; + +namespace Android.Gms.Drive +{ + public partial class MetadataBuffer : IEnumerable + { + public IEnumerator GetEnumerator() + { + return this.ToEnumerable ().GetEnumerator(); + } + + System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() + { + return this.GetEnumerator(); + } + } +} + diff --git a/source/com.google.android.gms/play-services-drive/Additions/IPendingResultExtensions.cs b/source/com.google.android.gms/play-services-drive/Additions/IPendingResultExtensions.cs new file mode 100644 index 000000000..daa03dd0d --- /dev/null +++ b/source/com.google.android.gms/play-services-drive/Additions/IPendingResultExtensions.cs @@ -0,0 +1,174 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Common.Apis; +using Android.Runtime; +using System.Collections.Generic; + +namespace Android.Gms.Drive +{ + public static partial class IDriveApiExtensions + { + //[Obsolete] + //public static async Task CancelPendingActionsAsync (this IDriveApi api, GoogleApiClient apiClient, IList trackingTags) + //{ + // return (await api.CancelPendingActions (apiClient, trackingTags)).JavaCast (); + //} + [Obsolete] + public static async Task FetchDriveIdAsync (this IDriveApi api, GoogleApiClient apiClient, string resourceId) + { + return (await api.FetchDriveId (apiClient, resourceId)).JavaCast (); + } + //[Obsolete] + //public static async Task IsAutobackupEnabledAsync (this IDriveApi api, GoogleApiClient apiClient) + //{ + // return (await api.IsAutobackupEnabled (apiClient)).JavaCast (); + //} + [Obsolete] + public static async Task NewDriveContentsAsync (this IDriveApi api, GoogleApiClient apiClient) + { + return (await api.NewDriveContents (apiClient)).JavaCast (); + } + [Obsolete] + public static async Task QueryAsync (this IDriveApi api, GoogleApiClient apiClient, Android.Gms.Drive.Query.QueryClass query) + { + return (await api.Query (apiClient, query)).JavaCast (); + } + [Obsolete] + public static async Task RequestSyncAsync (this IDriveApi api, GoogleApiClient apiClient) + { + return (await api.RequestSync (apiClient)).JavaCast (); + } + } + + public static partial class IDriveContentsExtensions + { + [Obsolete] + public static async Task CommitAsync (this IDriveContents api, GoogleApiClient apiClient, Android.Gms.Drive.MetadataChangeSet changeSet) + { + return (await api.Commit (apiClient, changeSet)).JavaCast (); + } + [Obsolete] + public static async Task CommitAsync (this IDriveContents api, GoogleApiClient apiClient, Android.Gms.Drive.MetadataChangeSet changeSet, Android.Gms.Drive.ExecutionOptions executionOptions) + { + return (await api.Commit (apiClient, changeSet, executionOptions)).JavaCast (); + } + [Obsolete] + public static async Task ReopenForWriteAsync (this IDriveContents api, GoogleApiClient apiClient) + { + return (await api.ReopenForWrite (apiClient)).JavaCast (); + } + } + + public static partial class IDriveFileExtensions + { + [Obsolete] + public static async Task OpenAsync (this IDriveFile api, GoogleApiClient apiClient, int mode, IDriveFileDownloadProgressListener listener) + { + return (await api.Open (apiClient, mode, listener)).JavaCast (); + } + } + + public static partial class IDriveFolderExtensions + { + [Obsolete] + public static async Task CreateFileAsync (this IDriveFolder api, GoogleApiClient apiClient, MetadataChangeSet changeSet, IDriveContents driveContents) + { + return (await api.CreateFile (apiClient, changeSet, driveContents)).JavaCast (); + } + [Obsolete] + public static async Task CreateFileAsync (this IDriveFolder api, GoogleApiClient apiClient, MetadataChangeSet changeSet, IDriveContents driveContents, ExecutionOptions executionOptions) + { + return (await api.CreateFile (apiClient, changeSet, driveContents, executionOptions)).JavaCast (); + } + [Obsolete] + public static async Task CreateFolderAsync (this IDriveFolder api, GoogleApiClient apiClient, MetadataChangeSet changeSet) + { + return (await api.CreateFolder (apiClient, changeSet)).JavaCast (); + } + [Obsolete] + public static async Task ListChildrenAsync (this IDriveFolder api, GoogleApiClient apiClient) + { + return (await api.ListChildren (apiClient)).JavaCast (); + } + [Obsolete] + public static async Task QueryChildrenAsync (this IDriveFolder api, GoogleApiClient apiClient, Query.QueryClass query) + { + return (await api.QueryChildren (apiClient, query)).JavaCast (); + } + } + + public static partial class IDrivePreferencesApiExtensions + { + [Obsolete] + public static async Task GetFileUploadPreferencesAsync (this IDrivePreferencesApi api, GoogleApiClient apiClient) + { + return (await api.GetFileUploadPreferences (apiClient)).JavaCast (); + } + [Obsolete] + public static async Task SetFileUploadPreferencesAsync (this IDrivePreferencesApi api, GoogleApiClient apiClient, IFileUploadPreferences fileUploadPreferences) + { + return (await api.SetFileUploadPreferences (apiClient, fileUploadPreferences)).JavaCast (); + } + } + + public static partial class IDriveResourceExtensions + { + [Obsolete] + public static async Task AddChangeListenerAsync (this IDriveResource api, GoogleApiClient apiClient, Android.Gms.Drive.Events.IChangeListener listener) + { + return (await api.AddChangeListener (apiClient, listener)).JavaCast (); + } + [Obsolete] + public static async Task AddChangeSubscriptionAsync (this IDriveResource api, GoogleApiClient apiClient) + { + return (await api.AddChangeSubscription (apiClient)).JavaCast (); + } + [Obsolete] + public static async Task DeleteAsync (this IDriveResource api, GoogleApiClient apiClient) + { + return (await api.Delete (apiClient)).JavaCast (); + } + [Obsolete] + public static async Task GetMetadataAsync (this IDriveResource api, GoogleApiClient apiClient) + { + return (await api.GetMetadata (apiClient)).JavaCast (); + } + [Obsolete] + public static async Task ListParentsAsync (this IDriveResource api, GoogleApiClient apiClient) + { + return (await api.ListParents (apiClient)).JavaCast (); + } + [Obsolete] + public static async Task RemoveChangeListenerAsync (this IDriveResource api, GoogleApiClient apiClient, Events.IChangeListener listener) + { + return (await api.RemoveChangeListener (apiClient, listener)).JavaCast (); + } + [Obsolete] + public static async Task RemoveChangeSubscriptionAsync (this IDriveResource api, GoogleApiClient apiClient) + { + return (await api.RemoveChangeSubscription (apiClient)).JavaCast (); + } + [Obsolete] + public static async Task SetParentsAsync (this IDriveResource api, GoogleApiClient apiClient, ICollection parentIds) + { + return (await api.SetParents (apiClient, parentIds)).JavaCast (); + } + [Obsolete] + public static async Task TrashAsync (this IDriveResource api, GoogleApiClient apiClient) + { + return (await api.Trash (apiClient)).JavaCast (); + } + [Obsolete] + public static async Task UntrashAsync (this IDriveResource api, GoogleApiClient apiClient) + { + return (await api.Untrash (apiClient)).JavaCast (); + } + [Obsolete] + public static async Task UpdateMetadataAsync (this IDriveResource api, GoogleApiClient apiClient, Android.Gms.Drive.MetadataChangeSet changeSet) + { + return (await api.UpdateMetadata (apiClient, changeSet)).JavaCast (); + } + } +} + + diff --git a/source/com.google.android.gms/play-services-drive/Additions/TaskExtensions.cs b/source/com.google.android.gms/play-services-drive/Additions/TaskExtensions.cs new file mode 100644 index 000000000..eb8f4044a --- /dev/null +++ b/source/com.google.android.gms/play-services-drive/Additions/TaskExtensions.cs @@ -0,0 +1,179 @@ +using System; +using System.Threading.Tasks; +using Android.Content; +using Android.Gms.Drive.Events; +using Android.Gms.Extensions; + +namespace Android.Gms.Drive +{ + public partial class DriveClient + { + public Task GetDriveIdAsync (String s) + { + return GetDriveId (s).AsAsync (); + } + + public Task GetUploadPreferencesAsync () + { + return GetUploadPreferences ().AsAsync (); + } + + //public Task NewCreateFileActivityIntentSenderAsync (CreateFileActivityOptions options) + //{ + // return NewCreateFileActivityIntentSender (options).AsAsync (); + //} + + public Task NewOpenFileActivityIntentSenderAsync (OpenFileActivityOptions options) + { + return NewOpenFileActivityIntentSender (options).AsAsync (); + } + + public Task RequestSyncAsync () + { + return RequestSync ().AsAsync (); + } + + public Task SetUploadPreferencesAsync (ITransferPreferences transferPrefs) + { + return SetUploadPreferences (transferPrefs).AsAsync (); + } + } + + public partial class DriveResourceClient + { + public Task AddChangeListenerAsync (IDriveResource driveResource, IOnChangeListener changeListener) + { + return AddChangeListener (driveResource, changeListener).AsAsync (); + } + + public Task AddChangeSubscriptionAsync (IDriveResource driveResource) + { + return AddChangeSubscription (driveResource).AsAsync (); + } + + public Task CancelOpenFileCallbackAsync (IListenerToken listenerToken) + { + return CancelOpenFileCallback (listenerToken).AsAsync (); + } + + public Task CommitContentsAsync (IDriveContents driveContents, MetadataChangeSet metadataChangeSet) + { + return CommitContents (driveContents, metadataChangeSet).AsAsync (); + } + + public Task CommitContentsAsync (IDriveContents driveContents, MetadataChangeSet metadataChangeSet, ExecutionOptions executionOptions) + { + return CommitContents (driveContents, metadataChangeSet, executionOptions).AsAsync (); + } + + public Task CreateContentsAsync () + { + return CreateContents ().AsAsync (); + } + + public Task CreateFileAsync (IDriveFolder driveFolder, MetadataChangeSet metadataChangeSet, IDriveContents driveContents) + { + return CreateFile (driveFolder, metadataChangeSet, driveContents).AsAsync (); + } + + public Task CreateFileAsync (IDriveFolder driveFolder, MetadataChangeSet metadataChangeSet, IDriveContents driveContents, ExecutionOptions executionOptions) + { + return CreateFile (driveFolder, metadataChangeSet, driveContents, executionOptions).AsAsync (); + } + + public Task CreateFolderAsync (IDriveFolder driveFolder, MetadataChangeSet metadataChangeSet) + { + return CreateFolder (driveFolder, metadataChangeSet).AsAsync (); + } + + public Task DeleteAsync (IDriveResource driveResource) + { + return Delete (driveResource).AsAsync (); + } + + public Task DiscardContentsAsync (IDriveContents driveResource) + { + return DiscardContents (driveResource).AsAsync (); + } + + public Task GetAppFolderAsync () + { + return GetAppFolder ().AsAsync (); + } + + public Task GetMetadataAsync (IDriveResource driveResource) + { + return GetMetadata (driveResource).AsAsync (); + } + + public Task GetRootFolderAsync () + { + return GetRootFolder ().AsAsync (); + } + + public Task ListChildrenAsync (IDriveFolder driveFolder) + { + return ListChildren (driveFolder).AsAsync (); + } + + public Task ListParentsAsync (IDriveResource driveResource) + { + return ListParents (driveResource).AsAsync (); + } + + public Task OpenFileAsync (IDriveFile file, int i) + { + return OpenFile (file, i).AsAsync (); + } + + public Task OpenFileAsync (IDriveFile file, int i, OpenFileCallback callback) + { + return OpenFile (file, i, callback).AsAsync (); + } + + public Task QueryAsync (Query.QueryClass query) + { + return Query (query).AsAsync (); + } + + public Task QueryChildrenAsync (IDriveFolder folder, Query.QueryClass query) + { + return QueryChildren (folder, query).AsAsync (); + } + + public Task RemoveChangeListenerAsync (IListenerToken listenerToken) + { + return RemoveChangeListener (listenerToken).AsAsync (); + } + + public Task RemoveChangeSubscriptionAsync (IDriveResource driveResource) + { + return RemoveChangeSubscription (driveResource).AsAsync (); + } + + public Task ReopenContentsForWriteAsync (IDriveContents contents) + { + return ReopenContentsForWrite (contents).AsAsync (); + } + + public Task SetParentsAsync (IDriveResource driveResource, System.Collections.Generic.ICollection ids) + { + return SetParents (driveResource, ids).AsAsync (); + } + + public Task TrashAsync (IDriveResource driveResource) + { + return Trash (driveResource).AsAsync (); + } + + public Task UntrashAsync (IDriveResource driveResource) + { + return Untrash (driveResource).AsAsync (); + } + + public Task UpdateMetadataAsync (IDriveResource driveResource, MetadataChangeSet metadataChangeSet) + { + return UpdateMetadata (driveResource, metadataChangeSet).AsAsync (); + } + } +} diff --git a/source/com.google.android.gms/play-services-drive/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-drive/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-drive/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-drive/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-drive/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-drive/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-drive/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-drive/Transforms/Metadata.xml new file mode 100644 index 000000000..c783b9eb4 --- /dev/null +++ b/source/com.google.android.gms/play-services-drive/Transforms/Metadata.xml @@ -0,0 +1,81 @@ + + + + + Android.Gms.Drive + Android.Gms.Drive.Events + Android.Gms.Drive.MetadataTypes + Android.Gms.Drive.Query + Android.Gms.Drive.Widget + + DriveClass + QueryClass + + + API + + + ChangeEventEventArgs + + OnChangeEventEventArgs + + + + + + + + + + + + + + + + + + + source + size + dest + flags + + + + + + public + Java.Lang.Object + + + + + + java.lang.Object + java.lang.Object + + + + + + java.lang.Thread + java.lang.Thread + java.lang.Thread + java.lang.Thread + + + java.lang.Object + java.lang.Object + + java.lang.Object + + SomeOtherTypeEventArgs + + SomeTypeEventArgs + + + FileBuilder + + + diff --git a/source/com.google.android.gms/play-services-fido/Additions/TaskExtensions.cs b/source/com.google.android.gms/play-services-fido/Additions/TaskExtensions.cs new file mode 100644 index 000000000..032968fb2 --- /dev/null +++ b/source/com.google.android.gms/play-services-fido/Additions/TaskExtensions.cs @@ -0,0 +1,19 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Extensions; + +namespace Android.Gms.Fido.U2F +{ + public partial class U2fApiClient + { + public Task GetRegisterIntentAsync(Android.Gms.Fido.U2F.Api.Common.RegisterRequestParams requestParams) + { + return GetRegisterIntent(requestParams).AsAsync(); + } + + public Task GetSignIntentAsync(Android.Gms.Fido.U2F.Api.Common.SignRequestParams requestParams) + { + return GetSignIntent(requestParams).AsAsync(); + } + } +} diff --git a/source/com.google.android.gms/play-services-fido/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-fido/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-fido/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-fido/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-fido/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-fido/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-fido/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-fido/Transforms/Metadata.xml new file mode 100644 index 000000000..90e157e06 --- /dev/null +++ b/source/com.google.android.gms/play-services-fido/Transforms/Metadata.xml @@ -0,0 +1,20 @@ + + + Android.Gms.Fido + Android.Gms.Fido.Common + Android.Gms.Fido.U2F + Android.Gms.Fido.U2F.Api.Common + Android.Gms.Fido.U2F.MessageBased + + Android.Gms.Fido.Fido2 + Android.Gms.Fido.Fido2.Api.Common + Android.Gms.Internal.Fido + + + Android.Gms.Fido.SourceDevice + + + diff --git a/source/com.google.android.gms/play-services-fitness/Additions/Additions.cs b/source/com.google.android.gms/play-services-fitness/Additions/Additions.cs new file mode 100644 index 000000000..1ea2d4e4e --- /dev/null +++ b/source/com.google.android.gms/play-services-fitness/Additions/Additions.cs @@ -0,0 +1,13 @@ +using System; + +namespace Android.Gms.Fitness +{ + public partial class FitnessClass + { + [Obsolete ("Use API instead")] + public static Java.Lang.Object Api { + get { return Android.Gms.Fitness.FitnessClass.API; } + } + } +} + diff --git a/source/com.google.android.gms/play-services-fitness/Additions/IPendingResultExtensions.cs b/source/com.google.android.gms/play-services-fitness/Additions/IPendingResultExtensions.cs new file mode 100644 index 000000000..b4b22f074 --- /dev/null +++ b/source/com.google.android.gms/play-services-fitness/Additions/IPendingResultExtensions.cs @@ -0,0 +1,185 @@ +using System; +using System.Collections.Generic; +using System.Threading.Tasks; +using Android.Gms.Common.Apis; +using Android.Runtime; + +namespace Android.Gms.Fitness +{ + public static partial class IBleApiExtensions + { + public static async Task ClaimBleDeviceAsync (this IBleApi api, GoogleApiClient client, Data.BleDevice bleDevice) + { + return (await api.ClaimBleDevice (client, bleDevice)).JavaCast (); + } + public static async Task ClaimBleDeviceAsync (this IBleApi api, GoogleApiClient client, string deviceAddress) + { + return (await api.ClaimBleDevice (client, deviceAddress)).JavaCast (); + } + public static async Task ListClaimedBleDevicesAsync (this IBleApi api, GoogleApiClient client) + { + return (await api.ListClaimedBleDevices (client)).JavaCast (); + } + public static async Task StartBleScanAsync (this IBleApi api, GoogleApiClient client, Request.StartBleScanRequest request) + { + return (await api.StartBleScan (client, request)).JavaCast (); + } + public static async Task StopBleScanAsync (this IBleApi api, GoogleApiClient client, Request.BleScanCallback requestCallback) + { + return (await api.StopBleScan (client, requestCallback)).JavaCast (); + } + public static async Task UnclaimBleDeviceAsync (this IBleApi api, GoogleApiClient client, Data.BleDevice bleDevice) + { + return (await api.UnclaimBleDevice (client, bleDevice)).JavaCast (); + } + public static async Task UnclaimBleDeviceAsync (this IBleApi api, GoogleApiClient client, string deviceAddress) + { + return (await api.UnclaimBleDevice (client, deviceAddress)).JavaCast (); + } + } + + public static partial class IConfigApiExtensions + { + public static async Task CreateCustomDataTypeAsync (this IConfigApi api, GoogleApiClient client, Request.DataTypeCreateRequest request) + { + return (await api.CreateCustomDataType (client, request)).JavaCast (); + } + public static async Task DisableFitAsync (this IConfigApi api, GoogleApiClient client) + { + return (await api.DisableFit (client)).JavaCast (); + } + public static async Task ReadDataTypeAsync (this IConfigApi api, GoogleApiClient client, string dataTypeName) + { + return (await api.ReadDataType (client, dataTypeName)).JavaCast (); + } + } + + public static partial class IHistoryApiExtensions + { + public static async Task DeleteDataAsync (this IHistoryApi api, GoogleApiClient client, Request.DataDeleteRequest request) + { + return (await api.DeleteData (client, request)).JavaCast (); + } + public static async Task InsertDataAsync (this IHistoryApi api, GoogleApiClient client, Data.DataSet dataSet) + { + return (await api.InsertData (client, dataSet)).JavaCast (); + } + public static async Task ReadDailyTotalAsync (this IHistoryApi api, GoogleApiClient client, Data.DataType dataType) + { + return (await api.ReadDailyTotal (client, dataType)).JavaCast (); + } + public static async Task ReadDataAsync (this IHistoryApi api, GoogleApiClient client, Request.DataReadRequest request) + { + return (await api.ReadData (client, request)).JavaCast (); + } + public static async Task UpdateDataAsync (this IHistoryApi api, GoogleApiClient client, Request.DataUpdateRequest request) + { + return (await api.UpdateData (client, request)).JavaCast (); + } + public static async Task ReadDailyTotalFromLocalDeviceAsync (this IHistoryApi api, GoogleApiClient client, Data.DataType dataType) + { + return (await api.ReadDailyTotalFromLocalDevice (client, dataType)).JavaCast (); + } + public static async Task RegisterDataUpdateListenerAsync (this IHistoryApi api, GoogleApiClient client, Request.DataUpdateListenerRegistrationRequest request) + { + return (await api.RegisterDataUpdateListener (client, request)).JavaCast (); + } + public static async Task UnregisterDataUpdateListenerAsync (this IHistoryApi api, GoogleApiClient client, Android.App.PendingIntent pendingIntent) + { + return (await api.UnregisterDataUpdateListener (client, pendingIntent)).JavaCast (); + } + } + + public static partial class IRecordingApiExtensions + { + public static async Task ListSubscriptionsAsync (this IRecordingApi api, GoogleApiClient client) + { + return (await api.ListSubscriptions (client)).JavaCast (); + } + public static async Task ListSubscriptionsAsync (this IRecordingApi api, GoogleApiClient client, Data.DataType dataType) + { + return (await api.ListSubscriptions (client, dataType)).JavaCast (); + } + public static async Task SubscribeAsync (this IRecordingApi api, GoogleApiClient client, Data.DataSource dataSource) + { + return (await api.Subscribe (client, dataSource)).JavaCast (); + } + public static async Task SubscribeAsync (this IRecordingApi api, GoogleApiClient client, Data.DataType dataType) + { + return (await api.Subscribe (client, dataType)).JavaCast (); + } + public static async Task UnsubscribeAsync (this IRecordingApi api, GoogleApiClient client, Data.DataSource dataSource) + { + return (await api.Unsubscribe (client, dataSource)).JavaCast (); + } + public static async Task UnsubscribeAsync (this IRecordingApi api, GoogleApiClient client, Data.DataType dataType) + { + return (await api.Unsubscribe (client, dataType)).JavaCast (); + } + public static async Task UnsubscribeAsync (this IRecordingApi api, GoogleApiClient client, Data.Subscription subscription) + { + return (await api.Unsubscribe (client, subscription)).JavaCast (); + } + } + + public static partial class ISensorsApiExtensions + { + public static async Task AddAsync (this ISensorsApi api, GoogleApiClient client, Request.SensorRequest request, Android.App.PendingIntent intent) + { + return (await api.Add (client, request, intent)).JavaCast (); + } + public static async Task AddAsync (this ISensorsApi api, GoogleApiClient client, Request.SensorRequest request, Request.IOnDataPointListener listener) + { + return (await api.Add (client, request, listener)).JavaCast (); + } + public static async Task FindDataSourcesAsync (this ISensorsApi api, GoogleApiClient client, Request.DataSourcesRequest request) + { + return (await api.FindDataSources (client, request)).JavaCast (); + } + public static async Task RemoveAsync (this ISensorsApi api, GoogleApiClient client, Android.App.PendingIntent pendingIntent) + { + return (await api.Remove (client, pendingIntent)).JavaCast (); + } + public static async Task RemoveAsync (this ISensorsApi api, GoogleApiClient client, Request.IOnDataPointListener listener) + { + return (await api.Remove (client, listener)).JavaCast (); + } + } + + public static partial class ISessionsApiExtensions + { + public static async Task InsertSessionAsync (this ISessionsApi api, GoogleApiClient client, Request.SessionInsertRequest request) + { + return (await api.InsertSession (client, request)).JavaCast (); + } + public static async Task ReadSessionAsync (this ISessionsApi api, GoogleApiClient client, Request.SessionReadRequest request) + { + return (await api.ReadSession (client, request)).JavaCast (); + } + public static async Task RegisterForSessionsAsync (this ISessionsApi api, GoogleApiClient client, Android.App.PendingIntent intent) + { + return (await api.RegisterForSessions (client, intent)).JavaCast (); + } + public static async Task StartSessionAsync (this ISessionsApi api, GoogleApiClient client, Data.Session session) + { + return (await api.StartSession (client, session)).JavaCast (); + } + public static async Task StopSessionAsync (this ISessionsApi api, GoogleApiClient client, string identifier) + { + return (await api.StopSession (client, identifier)).JavaCast (); + } + public static async Task UnregisterForSessionsAsync (this ISessionsApi api, GoogleApiClient client, Android.App.PendingIntent intent) + { + return (await api.UnregisterForSessions (client, intent)).JavaCast (); + } + } + + public static partial class IGoalsApiExtensions + { + public static async Task ReadCurrentGoals(this IGoalsApi api, Android.Gms.Common.Apis.GoogleApiClient client, Request.GoalsReadRequest request) + { + return (await api.ReadCurrentGoals(client, request)).JavaCast (); + } + } +} + diff --git a/source/com.google.android.gms/play-services-fitness/Additions/TaskExtensions.cs b/source/com.google.android.gms/play-services-fitness/Additions/TaskExtensions.cs new file mode 100644 index 000000000..d22021826 --- /dev/null +++ b/source/com.google.android.gms/play-services-fitness/Additions/TaskExtensions.cs @@ -0,0 +1,219 @@ +using System; +using System.Threading.Tasks; +using Android.App; +using Android.Gms.Fitness.Data; +using Android.Gms.Fitness.Result; +using Android.Gms.Fitness.Request; +using Java.Util; +using Android.Gms.Extensions; +using Android.Runtime; + +namespace Android.Gms.Fitness +{ + public partial class BleClient + { + public Task ClaimBleDeviceAsync (BleDevice p0) + { + return ClaimBleDevice (p0).AsAsync (); + } + + public Task ClaimBleDeviceAsync (String p0) + { + return ClaimBleDevice (p0).AsAsync (); + } + + public Task> ListClaimedBleDevicesAsync () + { + return ListClaimedBleDevices ().AsAsync> (); + } + + public Task StartBleScanAsync (JavaList p0, int p1, BleScanCallback p2) + { + return StartBleScan (p0, p1, p2).AsAsync (); + } + + public Task StopBleScanAsync (BleScanCallback p0) + { + return StopBleScan (p0).AsAsync (); + } + + public Task UnclaimBleDeviceAsync (BleDevice p0) + { + return UnclaimBleDevice (p0).AsAsync (); + } + + public Task UnclaimBleDeviceAsync (String p0) + { + return UnclaimBleDevice (p0).AsAsync (); + } + } + + public partial class ConfigClient + { + public Task CreateCustomDataTypeAsync (DataTypeCreateRequest p0) + { + return CreateCustomDataType (p0).AsAsync (); + } + + public Task DisableFitAsync () + { + return DisableFit ().AsAsync (); + } + + public Task ReadDataTypeAsync (String p0) + { + return ReadDataType (p0).AsAsync (); + } + + } + + public partial class GoalsClient + { + public Task> ReadCurrentGoalsAsync (GoalsReadRequest p0) + { + return ReadCurrentGoals (p0).AsAsync> (); + } + } + + public partial class HistoryClient + { + public Task DeleteDataAsync (DataDeleteRequest p0) + { + return DeleteData (p0).AsAsync (); + } + + public Task InsertDataAsync (DataSet p0) + { + return InsertData (p0).AsAsync (); + } + + public Task ReadDailyTotalAsync (DataType p0) + { + return ReadDailyTotal (p0).AsAsync (); + } + + public Task ReadDailyTotalFromLocalDeviceAsync (DataType p0) + { + return ReadDailyTotalFromLocalDevice (p0).AsAsync (); + } + + public Task ReadDataAsync (DataReadRequest p0) + { + return ReadData (p0).AsAsync (); + } + + public Task RegisterDataUpdateListenerAsync (DataUpdateListenerRegistrationRequest p0) + { + return RegisterDataUpdateListener (p0).AsAsync (); + } + + public Task UnregisterDataUpdateListenerAsync (PendingIntent p0) + { + return UnregisterDataUpdateListener (p0).AsAsync (); + } + + public Task UpdateDataAsync (DataUpdateRequest p0) + { + return UpdateData (p0).AsAsync (); + } + } + + public partial class RecordingClient + { + public Task> ListSubscriptionsAsync () + { + return ListSubscriptions ().AsAsync> (); + } + + public Task> ListSubscriptionsAsync (DataType p0) + { + return ListSubscriptions (p0).AsAsync> (); + } + + public Task SubscribeAsync (DataSource p0) + { + return Subscribe (p0).AsAsync (); + } + + public Task SubscribeAsync (DataType p0) + { + return Subscribe (p0).AsAsync (); + } + + public Task UnsubscribeAsync (DataSource p0) + { + return Unsubscribe (p0).AsAsync (); + } + + public Task UnsubscribeAsync (DataType p0) + { + return Unsubscribe (p0).AsAsync (); + } + + public Task UnsubscribeAsync (Subscription p0) + { + return Unsubscribe (p0).AsAsync (); + } + } + + public partial class SensorsClient + { + public Task AddAsync (SensorRequest p0, PendingIntent p1) + { + return Add (p0, p1).AsAsync (); + } + + public Task AddAsync (SensorRequest p0, IOnDataPointListener p1) + { + return Add (p0, p1).AsAsync (); + } + + public Task> FindDataSourcesAsync (DataSourcesRequest p0) + { + return FindDataSources (p0).AsAsync> (); + } + + public Task RemoveAsync (PendingIntent p0) + { + return Remove (p0).AsAsync (); + } + + public Task RemoveAsync (IOnDataPointListener p0) + { + return Remove (p0).AsAsync (); + } + } + + public partial class SessionsClient + { + public Task InsertSessionAsync (SessionInsertRequest p0) + { + return InsertSession (p0).AsAsync (); + } + + public Task ReadSessionAsync (SessionReadRequest p0) + { + return ReadSession (p0).AsAsync (); + } + + public Task RegisterForSessionsAsync (PendingIntent p0) + { + return RegisterForSessions (p0).AsAsync (); + } + + public Task StartSessionAsync (Session p0) + { + return StartSession (p0).AsAsync (); + } + + public Task> StopSessionAsync (String p0) + { + return StopSession (p0).AsAsync> (); + } + + public Task UnregisterForSessionsAsync (PendingIntent p0) + { + return UnregisterForSessions (p0).AsAsync (); + } + } +} diff --git a/source/com.google.android.gms/play-services-fitness/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-fitness/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-fitness/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-fitness/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-fitness/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-fitness/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-fitness/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-fitness/Transforms/Metadata.xml new file mode 100644 index 000000000..5999e5b62 --- /dev/null +++ b/source/com.google.android.gms/play-services-fitness/Transforms/Metadata.xml @@ -0,0 +1,74 @@ + + + + Android.Gms.Fitness + Android.Gms.Fitness.Data + Android.Gms.Fitness.Request + Android.Gms.Fitness.Result + Android.Gms.Fitness.Service + + FitnessClass + + dataPoint + + + + + + + + + + + + + + source + size + dest + flags + + + + API + BLE_API + CONFIG_API + HISTORY_API + RECORDING_API + SENSORS_API + SESSIONS_API + RECORDING_API + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/com.google.android.gms/play-services-flags/Additions/Additions.cs b/source/com.google.android.gms/play-services-flags/Additions/Additions.cs new file mode 100644 index 000000000..c93843061 --- /dev/null +++ b/source/com.google.android.gms/play-services-flags/Additions/Additions.cs @@ -0,0 +1,35 @@ +using System; +using Android.Runtime; +using Java.Interop; + +namespace Android.Gms.Flags +{ + public partial class Flag + { + public partial class BooleanFlag + { + } + + public partial class IntegerFlag + { + } + + public partial class StringFlag + { + } + + public partial class LongFlag + { + } + } +} + +namespace Android.Gms.Flags.Impl +{ + public partial class DataUtils + { + public partial class StringUtils + { + } + } +} \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-flags/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-flags/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-flags/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-flags/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-flags/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-flags/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-flags/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-flags/Transforms/Metadata.xml new file mode 100644 index 000000000..1aec1f7b5 --- /dev/null +++ b/source/com.google.android.gms/play-services-flags/Transforms/Metadata.xml @@ -0,0 +1,48 @@ + + Android.Gms.Flags + Android.Gms.Flags.Impl + Android.Gms.Dynamite.Descriptors.Flags + Anroid.Gms.Flags.Impl.Util + + + + + + + + + + + + source + size + dest + flags + + + java.lang.Object + java.lang.Object + + + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + + + + + + + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + + + + + + + diff --git a/source/com.google.android.gms/play-services-games-v2/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-games-v2/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.gms/play-services-games-v2/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-games-v2/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-games-v2/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.gms/play-services-games-v2/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-games-v2/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-games-v2/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..09f9cfbe2 --- /dev/null +++ b/source/com.google.android.gms/play-services-games-v2/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,112 @@ + + + Android.Gms.Games + + + Android.Gms.Games.Achievement + + + Android.Gms.Games.Event + + + Android.Gms.Games.Internal + + + Android.Gms.Games.Internal.Experience + + + Android.Gms.Games.Internal.Game + + + Android.Gms.Games.Internal.Player + + + Android.Gms.Games.Internal.V2.Resolution + + + Android.Gms.Games.Leaderboard + + + Android.Gms.Games.MultiPlayer + + + Android.Gms.Games.MultiPlayer.RealTime + + + Android.Gms.Games.Provider + + + Android.Gms.Games.Snapshot + + + Android.Gms.Games.Stats + + + Android.Gms.Games.Video + + + Android.Gms.Internal.Games.V2 + + + Android.Gms.Internal.Games.V2 + + + Android.Gms.Games.Internal.V2.AppShortcuts + + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-games-v2/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.gms/play-services-games-v2/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.gms/play-services-games-v2/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-games-v2/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-games-v2/Transforms/Metadata.xml new file mode 100644 index 000000000..f05fb52d0 --- /dev/null +++ b/source/com.google.android.gms/play-services-games-v2/Transforms/Metadata.xml @@ -0,0 +1,219 @@ + + + + + + + + + + + + + + + + + + + + + + Java.Lang.Object + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Java.Lang.Object + + + Java.Lang.Object + + + + + + + + + + + + + + + + + + + + + + + + Java.Lang.Object + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-games/Additions/Android.Gms.Games.GamesClass.cs b/source/com.google.android.gms/play-services-games/Additions/Android.Gms.Games.GamesClass.cs new file mode 100644 index 000000000..af6cb1d11 --- /dev/null +++ b/source/com.google.android.gms/play-services-games/Additions/Android.Gms.Games.GamesClass.cs @@ -0,0 +1,32 @@ +using System; +using System.Collections.Generic; +using Android.Runtime; +using Java.Interop; + +namespace Android.Gms.Games { + + // Metadata.xml XPath class reference: path="/api/package[@name='com.google.android.gms.games']/class[@name='Games']" + // [global::Android.Runtime.Register ("com/google/android/gms/games/Games", DoNotGenerateAcw=true)] + public sealed partial class GamesClass // : global::Java.Lang.Object + { + public sealed partial class GamesOptions // : global::Java.Lang.Object, global::Android.Gms.Auth.Api.SignIn.IGoogleSignInOptionsExtension, global::Android.Gms.Common.Apis.Api.IApiOptionsHasGoogleSignInAccountOptions, global::Android.Gms.Common.Apis.Api.IApiOptionsOptional + { + public unsafe global::System.Collections.Generic.IList ImpliedScopes + { + // Metadata.xml XPath method reference: path="/api/package[@name='com.google.android.gms.games']/class[@name='Games.GamesOptions']/method[@name='getImpliedScopes' and count(parameter)=0]" + [Register ("getImpliedScopes", "()Ljava/util/List;", "")] + get + { + const string __id = "getImpliedScopes.()Ljava/util/List;"; + try { + var __rm = _members.InstanceMethods.InvokeNonvirtualObjectMethod (__id, this, null); + return + (global::System.Collections.Generic.IList ) + global::Android.Runtime.JavaList.FromJniHandle (__rm.Handle, JniHandleOwnership.TransferLocalRef); + } finally { + } + } + } + } + } +} diff --git a/source/com.google.android.gms/play-services-games/Additions/BugWorkarounds.cs b/source/com.google.android.gms/play-services-games/Additions/BugWorkarounds.cs new file mode 100644 index 000000000..f2dd7bdb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-games/Additions/BugWorkarounds.cs @@ -0,0 +1,244 @@ +using System; +using Android.Runtime; + +namespace Android.Gms.Games.Achievement +{ + internal static class FreezeMethodImplementor + { + internal static Java.Lang.Object Freeze(ref IntPtr id_freeze, IntPtr class_ref, IntPtr Handle) + { + if (id_freeze == IntPtr.Zero) + id_freeze = JNIEnv.GetMethodID(class_ref, "freeze", "()Ljava/lang/Object;"); + return (Java.Lang.Object)global::Java.Lang.Object.GetObject(JNIEnv.CallObjectMethod(Handle, id_freeze), JniHandleOwnership.TransferLocalRef); + } + } + + public partial class AchievementRef + { + IntPtr id_freeze; + public Java.Lang.Object Freeze() + { + return FreezeMethodImplementor.Freeze(ref id_freeze, class_ref, Handle); + } + } +} + + +namespace Android.Gms.Games.Event +{ + internal static class FreezeMethodImplementor + { + internal static Java.Lang.Object Freeze(ref IntPtr id_freeze, IntPtr class_ref, IntPtr Handle) + { + if (id_freeze == IntPtr.Zero) + id_freeze = JNIEnv.GetMethodID(class_ref, "freeze", "()Ljava/lang/Object;"); + return (Java.Lang.Object)global::Java.Lang.Object.GetObject(JNIEnv.CallObjectMethod(Handle, id_freeze), JniHandleOwnership.TransferLocalRef); + } + } + + public partial class EventRef + { + IntPtr id_freeze; + public Java.Lang.Object Freeze() + { + return FreezeMethodImplementor.Freeze(ref id_freeze, class_ref, Handle); + } + } +} + +namespace Android.Gms.Games +{ + internal static class FreezeMethodImplementor + { + internal static Java.Lang.Object Freeze (ref IntPtr id_freeze, IntPtr class_ref, IntPtr Handle) + { + if (id_freeze == IntPtr.Zero) + id_freeze = JNIEnv.GetMethodID (class_ref, "freeze", "()Ljava/lang/Object;"); + return (Java.Lang.Object) global::Java.Lang.Object.GetObject (JNIEnv.CallObjectMethod (Handle, id_freeze), JniHandleOwnership.TransferLocalRef); + } + } + + +} + +namespace Android.Gms.Games.MultiPlayer +{ + public partial interface IMultiplayer : Android.Runtime.IJavaObject + { + + } + + internal static class FreezeMethodImplementor + { + internal static Java.Lang.Object Freeze(ref IntPtr id_freeze, IntPtr class_ref, IntPtr Handle) + { + if (id_freeze == IntPtr.Zero) + id_freeze = JNIEnv.GetMethodID(class_ref, "freeze", "()Ljava/lang/Object;"); + return (Java.Lang.Object)global::Java.Lang.Object.GetObject(JNIEnv.CallObjectMethod(Handle, id_freeze), JniHandleOwnership.TransferLocalRef); + } + } + +} + + +namespace Android.Gms.Games.LeaderBoard +{ + internal static class FreezeMethodImplementor + { + internal static Java.Lang.Object Freeze (ref IntPtr id_freeze, IntPtr class_ref, IntPtr Handle) + { + if (id_freeze == IntPtr.Zero) + id_freeze = JNIEnv.GetMethodID (class_ref, "freeze", "()Ljava/lang/Object;"); + return (Java.Lang.Object) global::Java.Lang.Object.GetObject (JNIEnv.CallObjectMethod (Handle, id_freeze), JniHandleOwnership.TransferLocalRef); + } + } + + public partial class LeaderboardScoreEntity + { + IntPtr id_freeze; + public Java.Lang.Object Freeze () + { + return FreezeMethodImplementor.Freeze (ref id_freeze, class_ref, Handle); + } + } + + public partial class LeaderboardScoreRef + { + IntPtr id_freeze; + public Java.Lang.Object Freeze () + { + return FreezeMethodImplementor.Freeze (ref id_freeze, class_ref, Handle); + } + } + + public partial class LeaderboardEntity + { + IntPtr id_freeze; + public Java.Lang.Object Freeze () + { + return FreezeMethodImplementor.Freeze (ref id_freeze, class_ref, Handle); + } + } + + public partial class LeaderboardRef + { + IntPtr id_freeze; + public Java.Lang.Object Freeze () + { + return FreezeMethodImplementor.Freeze (ref id_freeze, class_ref, Handle); + } + } + +} + +namespace Android.Gms.Games.Quest +{ + internal static class FreezeMethodImplementor + { + internal static Java.Lang.Object Freeze(ref IntPtr id_freeze, IntPtr class_ref, IntPtr Handle) + { + if (id_freeze == IntPtr.Zero) + id_freeze = JNIEnv.GetMethodID(class_ref, "freeze", "()Ljava/lang/Object;"); + return (Java.Lang.Object)global::Java.Lang.Object.GetObject(JNIEnv.CallObjectMethod(Handle, id_freeze), JniHandleOwnership.TransferLocalRef); + } + } +} + + +namespace Android.Gms.Games.Snapshot +{ + internal static class FreezeMethodImplementor + { + internal static Java.Lang.Object Freeze(ref IntPtr id_freeze, IntPtr class_ref, IntPtr Handle) + { + if (id_freeze == IntPtr.Zero) + id_freeze = JNIEnv.GetMethodID(class_ref, "freeze", "()Ljava/lang/Object;"); + return (Java.Lang.Object)global::Java.Lang.Object.GetObject(JNIEnv.CallObjectMethod(Handle, id_freeze), JniHandleOwnership.TransferLocalRef); + } + } + + public partial class SnapshotMetadataRef + { + IntPtr id_freeze; + public Java.Lang.Object Freeze() + { + return FreezeMethodImplementor.Freeze(ref id_freeze, class_ref, Handle); + } + } +} + + +namespace Android.Gms.Games.Stats +{ + internal static class FreezeMethodImplementor + { + internal static Java.Lang.Object Freeze (ref IntPtr id_freeze, IntPtr class_ref, IntPtr Handle) + { + if (id_freeze == IntPtr.Zero) + id_freeze = JNIEnv.GetMethodID (class_ref, "freeze", "()Ljava/lang/Object;"); + return (Java.Lang.Object) global::Java.Lang.Object.GetObject (JNIEnv.CallObjectMethod (Handle, id_freeze), JniHandleOwnership.TransferLocalRef); + } + } + + //public partial class PlayerStatsEntity + //{ + // IntPtr id_freeze; + // public Java.Lang.Object Freeze () + // { + // return FreezeMethodImplementor.Freeze (ref id_freeze, class_ref, Handle); + // } + //} + + //public partial class PlayerStatsRef + //{ + // IntPtr id_freeze; + // public Java.Lang.Object Freeze () + // { + // return FreezeMethodImplementor.Freeze (ref id_freeze, class_ref, Handle); + // } + //} +} + +namespace Android.Gms.Games.Request +{ + // public sealed partial class GameRequestSummaryBuffer + // { + // IntPtr id_get; + + // internal static IntPtr this_java_class_handle; + // internal static IntPtr this_class_ref { + // get { + // return JNIEnv.FindClass ("com/google/android/gms/games/request/GameRequestSummaryBuffer", ref this_java_class_handle); + // } + // } + + // public override Java.Lang.Object Get (int position) + // { + // if (id_get == IntPtr.Zero) + // id_get = JNIEnv.GetMethodID (this_class_ref, "get", "(I)Ljava/lang/Object;"); + // return (Java.Lang.Object) global::Java.Lang.Object.GetObject (JNIEnv.CallObjectMethod (Handle, id_get, new JValue (position)), JniHandleOwnership.TransferLocalRef); + // } + // } +} + +namespace Android.Gms.Games.Stats +{ + public sealed partial class PlayerStatsBuffer + { + IntPtr id_get; + + internal static IntPtr this_java_class_handle; + internal static IntPtr this_class_ref { + get { + return JNIEnv.FindClass ("com/google/android/gms/games/stats/PlayerStatsBuffer", ref this_java_class_handle); + } + } + + public override Java.Lang.Object Get (int position) + { + if (id_get == IntPtr.Zero) + id_get = JNIEnv.GetMethodID (this_class_ref, "get", "(I)Ljava/lang/Object;"); + return (Java.Lang.Object) global::Java.Lang.Object.GetObject (JNIEnv.CallObjectMethod (Handle, id_get, new JValue (position)), JniHandleOwnership.TransferLocalRef); + } + } +} diff --git a/source/com.google.android.gms/play-services-games/Additions/DataBufferAdditions.cs b/source/com.google.android.gms/play-services-games/Additions/DataBufferAdditions.cs new file mode 100644 index 000000000..0aa66db0d --- /dev/null +++ b/source/com.google.android.gms/play-services-games/Additions/DataBufferAdditions.cs @@ -0,0 +1,126 @@ +using System; +using System.Linq; +using System.Collections.Generic; +using Java.Util; + +namespace Android.Gms.Games +{ + public partial class GameBuffer : IEnumerable + { + public IEnumerator GetEnumerator() + { + return this.ToEnumerable ().GetEnumerator(); + } + + System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() + { + return this.GetEnumerator(); + } + } + + public partial class PlayerBuffer : IEnumerable + { + public IEnumerator GetEnumerator() + { + return this.ToEnumerable ().GetEnumerator(); + } + + System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() + { + return this.GetEnumerator(); + } + } +} + +namespace Android.Gms.Games.Achievement +{ + public partial class AchievementBuffer : IEnumerable + { + public IEnumerator GetEnumerator() + { + return this.ToEnumerable ().GetEnumerator(); + } + + System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() + { + return this.GetEnumerator(); + } + } +} + +namespace Android.Gms.Games.Event +{ + public partial class EventBuffer : IEnumerable + { + public IEnumerator GetEnumerator() + { + return this.ToEnumerable ().GetEnumerator(); + } + + System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() + { + return this.GetEnumerator(); + } + } +} + +namespace Android.Gms.Games.LeaderBoard +{ + public partial class LeaderboardBuffer : IEnumerable + { + public IEnumerator GetEnumerator() + { + return this.ToEnumerable ().GetEnumerator(); + } + + System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() + { + return this.GetEnumerator(); + } + } + + public partial class LeaderboardScoreBuffer : IEnumerable + { + public IEnumerator GetEnumerator() + { + return this.ToEnumerable ().GetEnumerator(); + } + + System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() + { + return this.GetEnumerator(); + } + } +} + +namespace Android.Gms.Games.Snapshot +{ + public partial class SnapshotMetadataBuffer : IEnumerable + { + public IEnumerator GetEnumerator() + { + return this.ToEnumerable ().GetEnumerator(); + } + + System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() + { + return this.GetEnumerator(); + } + } +} + +namespace Android.Gms.Games.Stats +{ + public partial class PlayerStatsBuffer : IEnumerable + { + public IEnumerator GetEnumerator() + { + return this.ToEnumerable ().GetEnumerator(); + } + + System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() + { + return this.GetEnumerator(); + } + } +} diff --git a/source/com.google.android.gms/play-services-games/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-games/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-games/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-games/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-games/Transforms/EnumMethods.xml new file mode 100644 index 000000000..d2a09c62c --- /dev/null +++ b/source/com.google.android.gms/play-services-games/Transforms/EnumMethods.xml @@ -0,0 +1,24 @@ + + + + + + + + + diff --git a/source/com.google.android.gms/play-services-games/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-games/Transforms/Metadata.xml new file mode 100644 index 000000000..33a027eb9 --- /dev/null +++ b/source/com.google.android.gms/play-services-games/Transforms/Metadata.xml @@ -0,0 +1,534 @@ + + + Android.Gms.Games + Android.Gms.Games.Achievement + Android.Gms.Games.AppContent + Android.Gms.Games.Event + Android.Gms.Games.LeaderBoard + Android.Gms.Games.MultiPlayer + Android.Gms.Games.MultiPlayer.RealTime + Android.Gms.Games.MultiPlayer.TurnBased + Android.Gms.Games.Quest + Android.Gms.Games.Request + Android.Gms.Games.Snapshot + Android.Gms.Games.Social + Android.Gms.Games.Stats + Android.Gms.Games.Video + Android.Gms.Games.Internal + Android.Gms.Games.Internal.Constants + Android.Gms.Games.Internal.Experience + Android.Gms.Games.Internal.Game + Android.Gms.Games.Internal.Notification + Android.Gms.Games.Internal.Player + Android.Gms.Games.Internal.Api + Android.Gms.Games.Internal.Data + Android.Gms.Games.Internal.Events + Android.Gms.Games.Internal.Request + + GamesClass + GamesClass.BaseGamesApiMethodImpl + GamesClass.GamesOptions + GamesClass.SignOutImpl + + internal + + +invitation +invitationId +message +room +room +room +participantIds +room +participantIds +room +participantIds +room +participantIds +room +room +room +participantIds +room +participantIds +participantId +participantId +statusCode +room +statusCode +room +statusCode +roomId +statusCode +room +match +matchId +quest +request +requestId + + + API + + + + + + + + + + + + + + + + + + + + + + source + size + dest + flags + + + + public + Java.Lang.Object + public + Java.Lang.Object + + public + Java.Lang.Object + + public + Java.Lang.Object + + public + Java.Lang.Object + + public + Java.Lang.Object + + public + Java.Lang.Object + + public + Java.Lang.Object + + public + Java.Lang.Object + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + + Java.Lang.Object + + + + + + + + + + private + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + java.lang.Object + java.lang.Object + + + + + + + + java.lang.Object + java.lang.Object + + + + + + + java.lang.Object + java.lang.Object + + + + + + + + + public + + + public + + + false + + + > + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + false + false + false + false + false + false + + + + + + Java.Lang.Object + + + + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/com.google.android.gms/play-services-gass/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-gass/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-gass/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-gass/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-gass/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-gass/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-gass/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-gass/Transforms/Metadata.xml new file mode 100644 index 000000000..03056a4fc --- /dev/null +++ b/source/com.google.android.gms/play-services-gass/Transforms/Metadata.xml @@ -0,0 +1,31 @@ + + + Android.Gms.Gass.Internal + + + + + + + + + + + + source + size + dest + flags + + + java.lang.Object + java.lang.Object + + + + Android.Gms.Gass + + diff --git a/source/com.google.android.gms/play-services-gcm/Additions/Additions.cs b/source/com.google.android.gms/play-services-gcm/Additions/Additions.cs new file mode 100644 index 000000000..9c5ee256b --- /dev/null +++ b/source/com.google.android.gms/play-services-gcm/Additions/Additions.cs @@ -0,0 +1,11 @@ +using System; +using System.Threading.Tasks; +using Android.OS; + +namespace Android.Gms.Gcm +{ + public partial class GoogleCloudMessaging + { + public const string IntentFilterActionReceive = "com.google.android.c2dm.intent.RECEIVE"; + } +} diff --git a/source/com.google.android.gms/play-services-gcm/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-gcm/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-gcm/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-gcm/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-gcm/Transforms/EnumMethods.xml new file mode 100644 index 000000000..4a8f904a6 --- /dev/null +++ b/source/com.google.android.gms/play-services-gcm/Transforms/EnumMethods.xml @@ -0,0 +1,21 @@ + + + + + + diff --git a/source/com.google.android.gms/play-services-gcm/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-gcm/Transforms/Metadata.xml new file mode 100644 index 000000000..2d36e15f9 --- /dev/null +++ b/source/com.google.android.gms/play-services-gcm/Transforms/Metadata.xml @@ -0,0 +1,36 @@ + + + Android.Gms.Gcm + Android.Gms.Gcm.Iid + + + + + + + + source + size + dest + flags + + Android.Gms.Gcm.Task + Android.Gms.Gcm.Task.Builder + Android.Gms.Gcm.Task.Builder + Android.Gms.Gcm.Task.Builder + Android.Gms.Gcm.Task.Builder + Android.Gms.Gcm.Task.Builder + Android.Gms.Gcm.Task.Builder + Android.Gms.Gcm.Task.Builder + + Android.Gms.Gcm.Task + Android.Gms.Gcm.Task.Builder + Android.Gms.Gcm.Task.Builder + Android.Gms.Gcm.Task.Builder + Android.Gms.Gcm.Task.Builder + Android.Gms.Gcm.Task.Builder + Android.Gms.Gcm.Task.Builder + Android.Gms.Gcm.Task.Builder + + + diff --git a/source/com.google.android.gms/play-services-home/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-home/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..3fe4cfe36 --- /dev/null +++ b/source/com.google.android.gms/play-services-home/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,50 @@ + + + Android.Gms.Home + + + Android.Gms.Home.Matter + + + Android.Gms.Home.Matter.Commissioning + + + Android.Gms.Home.Matter.Commissioning.Internal + + + Android.Gms.Home.Matter.Common + + + Android.Gms.Home.Matter.Discovery + + + Android.Gms.Home.Matter.Settings + + + Android.Gms.Internal.Home + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-home/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-home/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.gms/play-services-home/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-identity/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-identity/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-identity/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-identity/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-identity/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-identity/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-identity/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-identity/Transforms/Metadata.xml new file mode 100644 index 000000000..392a5ee8a --- /dev/null +++ b/source/com.google.android.gms/play-services-identity/Transforms/Metadata.xml @@ -0,0 +1,22 @@ + + + + Android.Gms.Identity.Intents + Android.Gms.Identity.Intents.Model + + + + + + + + + + + + source + size + dest + flags + + diff --git a/source/com.google.android.gms/play-services-iid/Additions/Additions.cs b/source/com.google.android.gms/play-services-iid/Additions/Additions.cs new file mode 100644 index 000000000..19bfbaafe --- /dev/null +++ b/source/com.google.android.gms/play-services-iid/Additions/Additions.cs @@ -0,0 +1,38 @@ +using System; +using System.Threading.Tasks; +using Android.OS; + +namespace Android.Gms.Iid +{ + public partial class InstanceID + { + public const string IntentFilterAction = "com.google.android.gms.iid.InstanceID"; + + public async Task GetTokenAsync (string authorizedEntity, string scope) + { + var taskCompletionSource = new TaskCompletionSource (); + + Task.Run (() => { + var token = this.GetToken (authorizedEntity, scope); + taskCompletionSource.SetResult (token); + }).ContinueWith (t => { + taskCompletionSource.SetException (t.Exception); + }, TaskContinuationOptions.OnlyOnFaulted); + return await taskCompletionSource.Task; + } + + public async Task GetTokenAsync (string authorizedEntity, string scope, Bundle extras) + { + var taskCompletionSource = new TaskCompletionSource (); + + Task.Run (() => { + var token = this.GetToken (authorizedEntity, scope, extras); + taskCompletionSource.SetResult (token); + }).ContinueWith (t => { + taskCompletionSource.SetException (t.Exception); + }, TaskContinuationOptions.OnlyOnFaulted); + + return await taskCompletionSource.Task; + } + } +} diff --git a/source/com.google.android.gms/play-services-iid/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-iid/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-iid/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-iid/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-iid/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-iid/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-iid/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-iid/Transforms/Metadata.xml new file mode 100644 index 000000000..81e323ee2 --- /dev/null +++ b/source/com.google.android.gms/play-services-iid/Transforms/Metadata.xml @@ -0,0 +1,41 @@ + + + + Android.Gms.Iid + + + + + + + + + false + + + + + Zzb + + + source + size + dest + flags + mono.android.Service + + + + + + + + + + + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-instantapps/Additions/TaskExtensions.cs b/source/com.google.android.gms/play-services-instantapps/Additions/TaskExtensions.cs new file mode 100644 index 000000000..d1e9bc4cc --- /dev/null +++ b/source/com.google.android.gms/play-services-instantapps/Additions/TaskExtensions.cs @@ -0,0 +1,16 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Extensions; + +namespace Android.Gms.InstantApp +{ + public partial class InstantAppsClient + { + [Obsolete] + public Android.Gms.Tasks.Task InstantAppDate { get { return GetInstantAppData (); } } + public Task GetInstantAppDataAsync () + { + return GetInstantAppData().AsAsync(); + } + } +} diff --git a/source/com.google.android.gms/play-services-instantapps/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-instantapps/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-instantapps/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-instantapps/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-instantapps/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-instantapps/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-instantapps/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-instantapps/Transforms/Metadata.xml new file mode 100644 index 000000000..a8108bdf3 --- /dev/null +++ b/source/com.google.android.gms/play-services-instantapps/Transforms/Metadata.xml @@ -0,0 +1,41 @@ + + + + Android.Gms.InstantApp + Android.Gms.Internal + + API + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/com.google.android.gms/play-services-location/Additions/Additions.cs b/source/com.google.android.gms/play-services-location/Additions/Additions.cs new file mode 100644 index 000000000..488e8557a --- /dev/null +++ b/source/com.google.android.gms/play-services-location/Additions/Additions.cs @@ -0,0 +1,80 @@ +using System; +using Android.Gms.Common.Apis; + +namespace Android.Gms.Location +{ + public partial class ActivityRecognition + { + [Obsolete ("Use API instead")] + public static Android.Gms.Common.Apis.Api Api { + get { return ActivityRecognition.API; } + } + } + + public partial class LocationServices + { + [Obsolete ("Use API instead")] + public static Android.Gms.Common.Apis.Api Api { + get { return LocationServices.API; } + } + } + + + public static class IFusedLocationApiProviderExtensions + { + public static PendingResult RequestLocationUpdates (this IFusedLocationProviderApi p, GoogleApiClient googleApiClient, LocationRequest locationRequest, LocationListener listener) + { + return p.RequestLocationUpdates (googleApiClient, locationRequest, listener); + } + } + + public class LocationListener : Java.Lang.Object, ILocationListener + { + public delegate void LocationChangedDelegate (Android.Locations.Location location); + public event LocationChangedDelegate LocationChanged; + + public void OnLocationChanged (Android.Locations.Location location) + { + var evt = LocationChanged; + if (evt != null) + evt (location); + } + } + + public class LocationCallbackResultEventArgs : EventArgs + { + public LocationCallbackResultEventArgs (LocationResult result) + { + Result = result; + } + public LocationResult Result { get; private set; } + } + + public class LocationCallbackAvailabilityEventArgs : EventArgs + { + public LocationCallbackAvailabilityEventArgs(LocationAvailability availability) + { + Availability = availability; + } + public LocationAvailability Availability { get; private set; } + } + + public class LocationCallback : LocationCallbackBase + { + public event EventHandler LocationResult; + public event EventHandler LocationAvailability; + + public override void OnLocationResult(LocationResult result) + { + base.OnLocationResult(result); + LocationResult?.Invoke(this, new LocationCallbackResultEventArgs(result)); + } + + public override void OnLocationAvailability (LocationAvailability locationAvailability) + { + base.OnLocationAvailability(locationAvailability); + LocationAvailability?.Invoke(this, new LocationCallbackAvailabilityEventArgs(locationAvailability)); + } + } +} + diff --git a/source/com.google.android.gms/play-services-location/Additions/BugWorkarounds.cs b/source/com.google.android.gms/play-services-location/Additions/BugWorkarounds.cs new file mode 100644 index 000000000..5f282702b --- /dev/null +++ b/source/com.google.android.gms/play-services-location/Additions/BugWorkarounds.cs @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-location/Additions/IPendingResultExtensions.cs b/source/com.google.android.gms/play-services-location/Additions/IPendingResultExtensions.cs new file mode 100644 index 000000000..c31ac31f5 --- /dev/null +++ b/source/com.google.android.gms/play-services-location/Additions/IPendingResultExtensions.cs @@ -0,0 +1,101 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Common.Apis; +using System.Collections.Generic; +using Android.Runtime; + +namespace Android.Gms.Location +{ + public static partial class IActivityRecognitionApiExtensions + { + public static async Task RemoveActivityUpdatesAsync (this IActivityRecognitionApi api, GoogleApiClient client, Android.App.PendingIntent callbackIntent) + { + return (await api.RemoveActivityUpdates (client, callbackIntent)).JavaCast (); + } + + public static async Task RequestActivityUpdatesAsync (this IActivityRecognitionApi api, GoogleApiClient client, long detectionIntervalMillis, Android.App.PendingIntent callbackIntent) + { + return (await api.RequestActivityUpdates (client, detectionIntervalMillis, callbackIntent)).JavaCast (); + } + } + + public static partial class IFusedLocationProviderApiExtensions + { + public static async Task RemoveLocationUpdatesAsync (this IFusedLocationProviderApi api, GoogleApiClient client, Android.App.PendingIntent callbackIntent) + { + return (await api.RemoveLocationUpdates (client, callbackIntent)).JavaCast (); + } + + public static async Task RemoveLocationUpdatesAsync (this IFusedLocationProviderApi api, GoogleApiClient client, LocationCallbackBase callback) + { + return (await api.RemoveLocationUpdates (client, callback)).JavaCast (); + } + + public static async Task RemoveLocationUpdatesAsync (this IFusedLocationProviderApi api, GoogleApiClient client, ILocationListener listener) + { + return (await api.RemoveLocationUpdates (client, listener)).JavaCast (); + } + + public static async Task RequestLocationUpdatesAsync (this IFusedLocationProviderApi api, GoogleApiClient client, LocationRequest request, Android.App.PendingIntent callbackIntent) + { + return (await api.RequestLocationUpdates (client, request, callbackIntent)).JavaCast (); + } + + public static async Task RequestLocationUpdatesAsync (this IFusedLocationProviderApi api, GoogleApiClient client, LocationRequest request, LocationCallbackBase callback, Android.OS.Looper looper) + { + return (await api.RequestLocationUpdates (client, request, callback, looper)).JavaCast (); + } + + public static async Task RequestLocationUpdatesAsync (this IFusedLocationProviderApi api, GoogleApiClient client, LocationRequest request, ILocationListener listener) + { + return (await api.RequestLocationUpdates (client, request, listener)).JavaCast (); + } + + public static async Task RequestLocationUpdatesAsync (this IFusedLocationProviderApi api, GoogleApiClient client, LocationRequest request, ILocationListener listener, Android.OS.Looper looper) + { + return (await api.RequestLocationUpdates (client, request, listener, looper)).JavaCast (); + } + + public static async Task SetMockLocationAsync (this IFusedLocationProviderApi api, GoogleApiClient client, global::Android.Locations.Location mockLocation) + { + return (await api.SetMockLocation (client, mockLocation)).JavaCast (); + } + + public static async Task SetMockModeAsync (this IFusedLocationProviderApi api, GoogleApiClient client, bool isMockMode) + { + return (await api.SetMockMode (client, isMockMode)).JavaCast (); + } + } + + public static partial class IGeofencingApiExtensions + { + public static async Task AddGeofencesAsync (this IGeofencingApi api, GoogleApiClient client, GeofencingRequest geofencingRequest, Android.App.PendingIntent pendingIntent) + { + return (await api.AddGeofences (client, geofencingRequest, pendingIntent)).JavaCast (); + } + + [Obsolete ("Use overload with GeofencingRequest parameter instead")] + public static async Task AddGeofencesAsync (this IGeofencingApi api, GoogleApiClient client, IList geofences, Android.App.PendingIntent pendingIntent) + { + return (await api.AddGeofences (client, geofences, pendingIntent)).JavaCast (); + } + + public static async Task RemoveGeofencesAsync (this IGeofencingApi api, GoogleApiClient client, Android.App.PendingIntent pendingIntent) + { + return (await api.RemoveGeofences (client, pendingIntent)).JavaCast (); + } + + public static async Task RemoveGeofencesAsync (this IGeofencingApi api, GoogleApiClient client, IList geofenceRequestIds) + { + return (await api.RemoveGeofences (client, geofenceRequestIds)).JavaCast (); + } + } + + public static partial class ISettingsApiExtensions + { + public static async Task CheckLocationSettingsAsync (this ISettingsApi api, GoogleApiClient client, LocationSettingsRequest request) + { + return (await api.CheckLocationSettings (client, request)).JavaCast (); + } + } +} diff --git a/source/com.google.android.gms/play-services-location/Additions/TaskExtensions.cs b/source/com.google.android.gms/play-services-location/Additions/TaskExtensions.cs new file mode 100644 index 000000000..c5c961dd7 --- /dev/null +++ b/source/com.google.android.gms/play-services-location/Additions/TaskExtensions.cs @@ -0,0 +1,97 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Extensions; + +namespace Android.Gms.Location +{ + public partial interface IFusedLocationProviderClient + { + [Obsolete] + public Android.Gms.Tasks.Task LastLocation { get { return GetLastLocation (); } } + public Task GetLastLocationAsync () + { + return GetLastLocation().AsAsync(); + } + + [Obsolete] + public Android.Gms.Tasks.Task LocationAvailability { get { return GetLocationAvailability (); } } + public Task GetLocationAvailabilityAsync() + { + return GetLocationAvailability().AsAsync(); + } + + public Task FlushLocationsAsync () + { + return FlushLocations().AsAsync(); + } + + public Task RemoveLocationUpdatesAsync (LocationCallback callback) + { + return RemoveLocationUpdates(callback).AsAsync(); + } + + public Task RemoveLocationUpdatesAsync(Android.App.PendingIntent pendingIntent) + { + return RemoveLocationUpdates(pendingIntent).AsAsync(); + } + + public Task RequestLocationUpdatesAsync (LocationRequest locationRequest, LocationCallback callback, Android.OS.Looper looper = null) + { + return RequestLocationUpdates(locationRequest, callback, looper).AsAsync(); ; + } + + public Task RequestLocationUpdatesAsync(LocationRequest locationRequest, Android.App.PendingIntent pendingIntent) + { + return RequestLocationUpdates(locationRequest, pendingIntent).AsAsync(); ; + } + + public Task SetMockLocationAsync (Android.Locations.Location location) + { + return SetMockLocation(location).AsAsync(); + } + + public Task SetMockModeAsync(bool mock) + { + return SetMockMode(mock).AsAsync(); + } + } + + public partial interface IGeofencingClient + { + public Task AddGeofencesAsync (GeofencingRequest geofenceRequest, Android.App.PendingIntent pendingIntent) + { + return AddGeofences(geofenceRequest, pendingIntent).AsAsync(); + } + + public Task RemoveGeofencesAsync(Android.App.PendingIntent pendingIntent) + { + return RemoveGeofences(pendingIntent).AsAsync(); + } + + public Task RemoveGeofencesAsync(System.Collections.Generic.IList geofenceRequestIds) + { + return RemoveGeofences(geofenceRequestIds).AsAsync(); + } + } + + public partial interface ISettingsClient + { + public Task CheckLocationSettingsAsync (LocationSettingsRequest locationSettings) + { + return CheckLocationSettings(locationSettings).AsAsync(); + } + } + + public partial interface IActivityRecognitionClient + { + public Task RemoveActivityUpdatesAsync(Android.App.PendingIntent callbackIntent) + { + return RemoveActivityUpdates(callbackIntent).AsAsync(); + } + + public Task RequestActivityUpdatesAsync(long detectionIntervalMillis, Android.App.PendingIntent callbackIntent) + { + return RequestActivityUpdates(detectionIntervalMillis, callbackIntent).AsAsync(); + } + } +} diff --git a/source/com.google.android.gms/play-services-location/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-location/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-location/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-location/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-location/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-location/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-location/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-location/Transforms/Metadata.xml new file mode 100644 index 000000000..7a241d392 --- /dev/null +++ b/source/com.google.android.gms/play-services-location/Transforms/Metadata.xml @@ -0,0 +1,83 @@ + + + Android.Gms.Location + Android.Gms.Location.Internal + + + + PlacesClass + + + + + + + + + + + + + + + + + source + size + dest + flags + + + + + + + + location + + + public + public + Zza.ZzaInner + + + API + GEO_DATA_API + PLACE_DETECTION_API + API + + + + Java.Lang.Object + + + + + + + + + + + + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + + + + + + + + java.lang.Object + java.lang.Object + + + + LocationCallbackBase + + diff --git a/source/com.google.android.gms/play-services-maps/Additions/Additions.cs b/source/com.google.android.gms/play-services-maps/Additions/Additions.cs new file mode 100644 index 000000000..a1019c978 --- /dev/null +++ b/source/com.google.android.gms/play-services-maps/Additions/Additions.cs @@ -0,0 +1,27 @@ +using System; +using Android.Runtime; + +namespace Android.Gms.Maps.Model +{ + + public partial class Polygon + { + static IntPtr id_setHoles_Ljava_util_List_; + // Metadata.xml XPath method reference: path="/api/package[@name='com.google.android.gms.maps.model']/class[@name='Polygon']/method[@name='setHoles' and count(parameter)=1 and parameter[1][@type='java.util.List<>']]" + [Register ("setHoles", "(Ljava/util/List;)V", "")] + public unsafe void SetHoles (global::System.Collections.Generic.IList> holes) + { + if (id_setHoles_Ljava_util_List_ == IntPtr.Zero) + id_setHoles_Ljava_util_List_ = JNIEnv.GetMethodID (class_ref, "setHoles", "(Ljava/util/List;)V"); + IntPtr native_holes = global::Android.Runtime.JavaList>.ToLocalJniHandle (holes); + try { + JValue* __args = stackalloc JValue [1]; + __args [0] = new JValue (native_holes); + JNIEnv.CallVoidMethod (Handle, id_setHoles_Ljava_util_List_, __args); + } finally { + JNIEnv.DeleteLocalRef (native_holes); + } + } + } +} + diff --git a/source/com.google.android.gms/play-services-maps/Additions/BugWorkarounds.cs b/source/com.google.android.gms/play-services-maps/Additions/BugWorkarounds.cs new file mode 100644 index 000000000..0f7063af3 --- /dev/null +++ b/source/com.google.android.gms/play-services-maps/Additions/BugWorkarounds.cs @@ -0,0 +1,26 @@ +using System; + +namespace Android.Gms.Maps.Model +{ + public partial class MarkerOptions + { + [Obsolete ("Use SetAlpha instead")] + public MarkerOptions InvokeAlpha (float alpha) + { + return SetAlpha (alpha); + } + + [Obsolete ("Use SetRotation instead")] + public MarkerOptions InvokeRotation (float rotation) + { + return SetRotation (rotation); + } + + [Obsolete ("Use SetIcon instead")] + public MarkerOptions InvokeIcon (BitmapDescriptor icon) + { + return SetIcon (icon); + } + } +} + diff --git a/source/com.google.android.gms/play-services-maps/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-maps/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-maps/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-maps/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-maps/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-maps/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-maps/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-maps/Transforms/Metadata.xml new file mode 100644 index 000000000..8ec881665 --- /dev/null +++ b/source/com.google.android.gms/play-services-maps/Transforms/Metadata.xml @@ -0,0 +1,101 @@ + + Android.Gms.Maps + Android.Gms.Maps.Model + + + + SetPosition + SetSnippet + SetTitle + SetAlpha + SetIcon + SetRotation + + + marker + position + building + point + point + marker + marker + marker + location + + + + + + + + + + + + + + + + source + size + dest + flags + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + location + + + + + + ICollisionBehaviorContract + + diff --git a/source/com.google.android.gms/play-services-measurement-api/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-measurement-api/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-measurement-api/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-measurement-api/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-measurement-api/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-measurement-api/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-measurement-api/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-measurement-api/Transforms/Metadata.xml new file mode 100644 index 000000000..a32a2d035 --- /dev/null +++ b/source/com.google.android.gms/play-services-measurement-api/Transforms/Metadata.xml @@ -0,0 +1,67 @@ + + + + + + + + Android.Gms.Measurement + + + Android.Gms.Measurement.Api + + + Firebase.Analytics + + + Firebase.Analytics.Connector + + + Firebase.Analytics.Connector.Internal + + + + Android.Gms.Measurement + + + Firebase.Analytics.Ktx + + + Firebase.Analytics.Ktx.KtxTesting + + + Firebase.Analytics.KtxTesting + + + diff --git a/source/com.google.android.gms/play-services-measurement-base/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-measurement-base/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-measurement-base/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-measurement-base/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-measurement-base/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-measurement-base/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-measurement-base/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-measurement-base/Transforms/Metadata.xml new file mode 100644 index 000000000..9d99809f7 --- /dev/null +++ b/source/com.google.android.gms/play-services-measurement-base/Transforms/Metadata.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + source + size + dest + flags + + + + diff --git a/source/com.google.android.gms/play-services-measurement-impl/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-measurement-impl/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-measurement-impl/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-measurement-impl/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-measurement-impl/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-measurement-impl/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-measurement-impl/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-measurement-impl/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..737e88e80 --- /dev/null +++ b/source/com.google.android.gms/play-services-measurement-impl/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,24 @@ + + + + + + + + Android.Gms.Measurement.Api + + + Firebase.Analytics + + + diff --git a/source/com.google.android.gms/play-services-measurement-impl/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-measurement-impl/Transforms/Metadata.xml new file mode 100644 index 000000000..017f31e6a --- /dev/null +++ b/source/com.google.android.gms/play-services-measurement-impl/Transforms/Metadata.xml @@ -0,0 +1,35 @@ + + + + + + + + Android.Gms.Measurement + + + Android.Gms.Internal.Measurement + + + Android.Gms.Measurement.Internal + + + Android.Gms.Measurement.Module + + diff --git a/source/com.google.android.gms/play-services-measurement-sdk-api/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-measurement-sdk-api/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-measurement-sdk-api/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-measurement-sdk-api/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-measurement-sdk-api/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-measurement-sdk-api/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-measurement-sdk-api/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-measurement-sdk-api/Transforms/Metadata.xml new file mode 100644 index 000000000..aace3403a --- /dev/null +++ b/source/com.google.android.gms/play-services-measurement-sdk-api/Transforms/Metadata.xml @@ -0,0 +1,23 @@ + + + + + + + + Android.Gms.Measurement.Api + + + + + + diff --git a/source/com.google.android.gms/play-services-measurement-sdk/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-measurement-sdk/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-measurement-sdk/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-measurement-sdk/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-measurement-sdk/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-measurement-sdk/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-measurement-sdk/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-measurement-sdk/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..737e88e80 --- /dev/null +++ b/source/com.google.android.gms/play-services-measurement-sdk/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,24 @@ + + + + + + + + Android.Gms.Measurement.Api + + + Firebase.Analytics + + + diff --git a/source/com.google.android.gms/play-services-measurement-sdk/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-measurement-sdk/Transforms/Metadata.xml new file mode 100644 index 000000000..0a233648f --- /dev/null +++ b/source/com.google.android.gms/play-services-measurement-sdk/Transforms/Metadata.xml @@ -0,0 +1,26 @@ + + + + + + + + Android.Gms.Measurement.Dynamite + + + Android.Gms.Measurement.Internal + + + + + diff --git a/source/com.google.android.gms/play-services-measurement/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-measurement/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-measurement/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-measurement/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-measurement/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-measurement/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-measurement/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-measurement/Transforms/Metadata.xml new file mode 100644 index 000000000..bebb22c89 --- /dev/null +++ b/source/com.google.android.gms/play-services-measurement/Transforms/Metadata.xml @@ -0,0 +1,30 @@ + + + + + + + + Android.Gms.Measurement + + + Android.Gms.Internal.Measurement + + + Android.Gms.Measurement.Internal + + + diff --git a/source/com.google.android.gms/play-services-mlkit-barcode-scanning/Additions/Additions.cs b/source/com.google.android.gms/play-services-mlkit-barcode-scanning/Additions/Additions.cs new file mode 100644 index 000000000..850f73e1a --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-barcode-scanning/Additions/Additions.cs @@ -0,0 +1,27 @@ +using System; +using System.Collections.Generic; +using Android.Runtime; +using Java.Interop; + +namespace Xamarin.Google.MLKit.Vision.BarCode.Internal +{ + + // Metadata.xml XPath class reference: path="/api/package[@name='com.google.mlkit.vision.barcode.internal']/class[@name='BarcodeRegistrar']" + // [global::Android.Runtime.Register ("com/google/mlkit/vision/barcode/internal/BarcodeRegistrar", DoNotGenerateAcw=true)] + public partial class BarcodeRegistrar //: global::Java.Lang.Object, global::Firebase.Components.IComponentRegistrar + { + public unsafe System.Collections.Generic.IList Components + { + // Metadata.xml XPath method reference: path="/api/package[@name='com.google.mlkit.vision.barcode.internal']/class[@name='BarcodeRegistrar']/method[@name='getComponents' and count(parameter)=0]" + [Register ("getComponents", "()Ljava/util/List;", "")] + get { + const string __id = "getComponents.()Ljava/util/List;"; + try { + var __rm = _members.InstanceMethods.InvokeNonvirtualObjectMethod (__id, this, null); + return (System.Collections.Generic.IList) global::Android.Runtime.JavaList.FromJniHandle (__rm.Handle, JniHandleOwnership.TransferLocalRef); + } finally { + } + } + } + } +} diff --git a/source/com.google.android.gms/play-services-mlkit-barcode-scanning/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-mlkit-barcode-scanning/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-barcode-scanning/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-barcode-scanning/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-mlkit-barcode-scanning/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-barcode-scanning/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-barcode-scanning/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-mlkit-barcode-scanning/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..90e8a953d --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-barcode-scanning/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,33 @@ + + + + Android.Gms.Internal.MLKitVisionBarCode + + + Xamarin.Google.MLKit.Vision.BarCode + + + Xamarin.Google.MLKit.Vision.BarCode.Internal + + + + + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-barcode-scanning/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.gms/play-services-mlkit-barcode-scanning/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-barcode-scanning/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-barcode-scanning/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-mlkit-barcode-scanning/Transforms/Metadata.xml new file mode 100644 index 000000000..5b7c201cf --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-barcode-scanning/Transforms/Metadata.xml @@ -0,0 +1,15 @@ + + + + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-face-detection/Additions/Additions.cs b/source/com.google.android.gms/play-services-mlkit-face-detection/Additions/Additions.cs new file mode 100644 index 000000000..26375c851 --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-face-detection/Additions/Additions.cs @@ -0,0 +1,5 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; + diff --git a/source/com.google.android.gms/play-services-mlkit-face-detection/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-mlkit-face-detection/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-face-detection/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-face-detection/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-mlkit-face-detection/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-face-detection/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-face-detection/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-mlkit-face-detection/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..4180e3cc8 --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-face-detection/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,28 @@ + + + + Android.Gms.Internal.MLKitVisionFace + + + Xamarin.Google.MLKit.Vision.Face + + + Xamarin.Google.MLKit.Vision.Face.Internal + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-face-detection/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.gms/play-services-mlkit-face-detection/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-face-detection/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-face-detection/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-mlkit-face-detection/Transforms/Metadata.xml new file mode 100644 index 000000000..9472b3146 --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-face-detection/Transforms/Metadata.xml @@ -0,0 +1,5 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-image-labeling/Additions/Additions.cs b/source/com.google.android.gms/play-services-mlkit-image-labeling/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-image-labeling/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.gms/play-services-mlkit-image-labeling/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-mlkit-image-labeling/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-image-labeling/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-image-labeling/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-mlkit-image-labeling/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-image-labeling/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-image-labeling/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-mlkit-image-labeling/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..8339f29c5 --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-image-labeling/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,9 @@ + + + Xamarin.Google.MLKit.Vision.Label.Defaults.Thin + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-image-labeling/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.gms/play-services-mlkit-image-labeling/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-image-labeling/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-image-labeling/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-mlkit-image-labeling/Transforms/Metadata.xml new file mode 100644 index 000000000..06937a9a3 --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-image-labeling/Transforms/Metadata.xml @@ -0,0 +1,5 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-language-id/Additions/Additions.cs b/source/com.google.android.gms/play-services-mlkit-language-id/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-language-id/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.gms/play-services-mlkit-language-id/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-mlkit-language-id/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-language-id/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-language-id/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-mlkit-language-id/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-language-id/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-language-id/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-mlkit-language-id/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..a1cc1c929 --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-language-id/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,33 @@ + + + Xamarin.Google.MLKit.NL.LanguageId + + + Xamarin.Google.MLKit.ML.LanguageId.Internal + + + Xamarin.Google.MLKit.Vision.Barcode.Common.Internal + + + Xamarin.Google.MLKit.NL.LanguageId.Internal + + + Xamarin.Google.MLKit.NL.LanguageId.Thin.Internal + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-language-id/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.gms/play-services-mlkit-language-id/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-language-id/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-language-id/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-mlkit-language-id/Transforms/Metadata.xml new file mode 100644 index 000000000..f8e944073 --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-language-id/Transforms/Metadata.xml @@ -0,0 +1,19 @@ + + + + + + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-text-recognition-chinese/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-mlkit-text-recognition-chinese/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..4ea4167aa --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-text-recognition-chinese/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Xamarin.Google.MLKit.Vision.Text.Chinese + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-text-recognition-chinese/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-mlkit-text-recognition-chinese/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-text-recognition-chinese/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-text-recognition-common/Additions/Additions.cs b/source/com.google.android.gms/play-services-mlkit-text-recognition-common/Additions/Additions.cs new file mode 100644 index 000000000..4abc76cec --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-text-recognition-common/Additions/Additions.cs @@ -0,0 +1,28 @@ +using System; +using System.Collections.Generic; +using Android.Runtime; +using Java.Interop; + +namespace Xamarin.Google.MLKit.Vision.Text.Internal +{ + + // Metadata.xml XPath class reference: path="/api/package[@name='com.google.mlkit.vision.text.internal']/class[@name='TextRegistrar']" + // [global::Android.Runtime.Register ("com/google/mlkit/vision/text/internal/TextRegistrar", DoNotGenerateAcw=true)] + public partial class TextRegistrar //: global::Java.Lang.Object, global::Firebase.Components.IComponentRegistrar + { + public unsafe global::System.Collections.Generic.IList Components + { + // Metadata.xml XPath method reference: path="/api/package[@name='com.google.mlkit.vision.text.internal']/class[@name='TextRegistrar']/method[@name='getComponents' and count(parameter)=0]" + [Register ("getComponents", "()Ljava/util/List;", "")] + get { + const string __id = "getComponents.()Ljava/util/List;"; + try { + var __rm = _members.InstanceMethods.InvokeNonvirtualObjectMethod (__id, this, null); + return (System.Collections.Generic.IList) global::Android.Runtime.JavaList.FromJniHandle (__rm.Handle, JniHandleOwnership.TransferLocalRef); + } finally { + } + } + } + + } +} diff --git a/source/com.google.android.gms/play-services-mlkit-text-recognition-common/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-mlkit-text-recognition-common/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-text-recognition-common/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-text-recognition-common/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-mlkit-text-recognition-common/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-text-recognition-common/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-text-recognition-common/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-mlkit-text-recognition-common/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..bff20b857 --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-text-recognition-common/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,29 @@ + + + + Android.Gms.Internal.MLKitVisionTextCommon + + + Xamarin.Google.MLKit.Vision.Text + + + Xamarin.Google.MLKit.Vision.Text.Internal + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-text-recognition-common/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.gms/play-services-mlkit-text-recognition-common/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-text-recognition-common/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-text-recognition-common/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-mlkit-text-recognition-common/Transforms/Metadata.xml new file mode 100644 index 000000000..13f56a51f --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-text-recognition-common/Transforms/Metadata.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-text-recognition-devanagari/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-mlkit-text-recognition-devanagari/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..e89ec590d --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-text-recognition-devanagari/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Xamarin.Google.MLKit.Vision.Text.Devanagari + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-text-recognition-devanagari/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-mlkit-text-recognition-devanagari/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-text-recognition-devanagari/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-text-recognition-japanese/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-mlkit-text-recognition-japanese/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..7356af509 --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-text-recognition-japanese/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Xamarin.Google.MLKit.Vision.Text.Japanese + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-text-recognition-japanese/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-mlkit-text-recognition-japanese/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-text-recognition-japanese/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-text-recognition-korean/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-mlkit-text-recognition-korean/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..d380f25bd --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-text-recognition-korean/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Xamarin.Google.MLKit.Vision.Text.Korean + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-text-recognition-korean/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-mlkit-text-recognition-korean/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-text-recognition-korean/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-text-recognition/Additions/Additions.cs b/source/com.google.android.gms/play-services-mlkit-text-recognition/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-text-recognition/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.gms/play-services-mlkit-text-recognition/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-mlkit-text-recognition/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-text-recognition/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-text-recognition/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-mlkit-text-recognition/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-text-recognition/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-text-recognition/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-mlkit-text-recognition/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..8d2afe0e6 --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-text-recognition/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,26 @@ + + + Android.Gms.Internal.MLKitVisionText + + + Xamarin.Google.MLKit.Vision.Text + + + Xamarin.Google.MLKit.Vision.Text.Internal + + + Xamarin.Google.MLKit.Vision.Text.Latin + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-text-recognition/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.gms/play-services-mlkit-text-recognition/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-text-recognition/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-mlkit-text-recognition/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-mlkit-text-recognition/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.gms/play-services-mlkit-text-recognition/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-nearby/Additions/IPendingResultExtensions.cs b/source/com.google.android.gms/play-services-nearby/Additions/IPendingResultExtensions.cs new file mode 100644 index 000000000..4cf6b56b4 --- /dev/null +++ b/source/com.google.android.gms/play-services-nearby/Additions/IPendingResultExtensions.cs @@ -0,0 +1,134 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Common.Apis; +using Android.Runtime; + +namespace Android.Gms.Nearby.Connection +{ + public static partial class IConnectionsExtensions + { + public static async Task AcceptConnectionAsync(this IConnections api, GoogleApiClient apiClient, string endpointId, PayloadCallback payloadCallback) + { + return (await api.AcceptConnection(apiClient, endpointId, payloadCallback)).JavaCast(); + } + + public static async Task RejectConnectionAsync(this IConnections api, GoogleApiClient apiClient, string endpointId) + { + return (await api.RejectConnection(apiClient, endpointId)).JavaCast(); + } + + public static async Task RequestConnectionAsync(this IConnections api, GoogleApiClient apiClient, string name, string endpointId, ConnectionLifecycleCallback connectionLifecycleCallback) + { + return (await api.RequestConnection(apiClient, name, endpointId, connectionLifecycleCallback)).JavaCast(); + } + + public static async Task SendPayloadAsync(this IConnections api, GoogleApiClient apiClient, System.Collections.Generic.IList endpointIds, Payload payload) + { + return (await api.SendPayload(apiClient, endpointIds, payload)).JavaCast(); + } + + public static async Task SendPayloadAsync(this IConnections api, GoogleApiClient apiClient, string endpointId, Payload payload) + { + return (await api.SendPayload(apiClient, endpointId, payload)).JavaCast(); + } + + public static async Task StartAdvertisingAsync (this IConnections api, GoogleApiClient apiClient, string name, string serviceId, ConnectionLifecycleCallback connectionLifecycleCallback, AdvertisingOptions options) + { + return (await api.StartAdvertising(apiClient, name, serviceId, connectionLifecycleCallback, options)).JavaCast(); + } + + public static async Task StartDiscoveryAsync(this IConnections api, GoogleApiClient apiClient, string serviceId, EndpointDiscoveryCallback endpointDiscoveryCallback, DiscoveryOptions options) + { + return (await api.StartDiscovery(apiClient, serviceId, endpointDiscoveryCallback, options)).JavaCast(); + } + + [Obsolete] + public static async Task AcceptConnectionRequestAsync (this IConnections api, GoogleApiClient apiClient, string remoteEndpointId, byte[] payload, IConnectionsMessageListener messageListener) + { + return (await api.AcceptConnectionRequest (apiClient, remoteEndpointId, payload, messageListener)).JavaCast (); + } + [Obsolete] + public static async Task RejectConnectionRequestAsync (this IConnections api, GoogleApiClient apiClient, string remoteEndpointId) + { + return (await api.RejectConnectionRequest (apiClient, remoteEndpointId)).JavaCast (); + } + [Obsolete] + public static async Task SendConnectionRequestAsync (this IConnections api, GoogleApiClient apiClient, string name, string remoteEndpointId, byte[] payload, IConnectionsConnectionResponseCallback connectionResponseCallback, IConnectionsMessageListener messageListener) + { + return (await api.SendConnectionRequest (apiClient, name, remoteEndpointId, payload, connectionResponseCallback, messageListener)).JavaCast (); + } + [Obsolete] + public static async Task StartAdvertisingAsync (this IConnections api, GoogleApiClient apiClient, string name, Android.Gms.Nearby.Connection.AppMetadata appMetadata, long durationMillis, ConnectionsConnectionRequestListener connectionRequestListener) + { + return (await api.StartAdvertising (apiClient, name, appMetadata, durationMillis, connectionRequestListener)).JavaCast (); + } + [Obsolete] + public static async Task StartDiscoveryAsync (this IConnections api, GoogleApiClient apiClient, string serviceId, long durationMillis, ConnectionsEndpointDiscoveryListener listener) + { + return (await api.StartDiscovery (apiClient, serviceId, durationMillis, listener)).JavaCast (); + } + + public static async Task CancelPayloadAsync (this IConnections api, GoogleApiClient apiClient, long l) + { + return (await api.CancelPayload (apiClient, l)).JavaCast (); + } + } +} + +namespace Android.Gms.Nearby.Messages +{ + public static partial class IMessagesExtensions + { + [Obsolete] + public static async Task GetPermissionStatusAsync (this IMessages api, GoogleApiClient client) + { + return (await api.GetPermissionStatus (client)).JavaCast (); + } + public static async Task PublishAsync (this IMessages api, GoogleApiClient client, Android.Gms.Nearby.Messages.Message message) + { + return (await api.Publish (client, message)).JavaCast (); + } + public static async Task PublishAsync (this IMessages api, GoogleApiClient client, Android.Gms.Nearby.Messages.Message message, Android.Gms.Nearby.Messages.PublishOptions options) + { + return (await api.Publish (client, message, options)).JavaCast (); + } + public static async Task RegisterStatusCallbackAsync (this IMessages api, GoogleApiClient client, Android.Gms.Nearby.Messages.StatusCallback statusCallback) + { + return (await api.RegisterStatusCallback (client, statusCallback)).JavaCast (); + } + public static async Task SubscribeAsync (this IMessages api, GoogleApiClient client, Android.Gms.Nearby.Messages.MessageListener listener) + { + return (await api.Subscribe (client, listener)).JavaCast (); + } + public static async Task SubscribeAsync (this IMessages api, GoogleApiClient client, Android.Gms.Nearby.Messages.MessageListener listener, Android.Gms.Nearby.Messages.SubscribeOptions options) + { + return (await api.Subscribe (client, listener, options)).JavaCast (); + } + public static async Task UnpublishAsync (this IMessages api, GoogleApiClient client, Android.Gms.Nearby.Messages.Message message) + { + return (await api.Unpublish (client, message)).JavaCast (); + } + public static async Task UnregisterStatusCallbackAsync (this IMessages api, GoogleApiClient client, Android.Gms.Nearby.Messages.StatusCallback statusCallback) + { + return (await api.UnregisterStatusCallback (client, statusCallback)).JavaCast (); + } + public static async Task UnsubscribeAsync (this IMessages api, GoogleApiClient client, Android.Gms.Nearby.Messages.MessageListener listener) + { + return (await api.Unsubscribe (client, listener)).JavaCast (); + } + public static async Task SubscribeAsync (this IMessages api, GoogleApiClient client, Android.App.PendingIntent pendingIntent) + { + return (await api.Subscribe (client, pendingIntent)).JavaCast (); + } + public static async Task SubscribeAsync (this IMessages api, GoogleApiClient client, Android.App.PendingIntent pendingIntent, SubscribeOptions options) + { + return (await api.Subscribe (client, pendingIntent, options)).JavaCast (); + } + public static async Task UnsubscribeAsync (this IMessages api, GoogleApiClient client, Android.App.PendingIntent pendingIntent) + { + return (await api.Unsubscribe (client, pendingIntent)).JavaCast (); + } + } +} + + diff --git a/source/com.google.android.gms/play-services-nearby/Additions/TaskAdditions.cs b/source/com.google.android.gms/play-services-nearby/Additions/TaskAdditions.cs new file mode 100644 index 000000000..63df4444b --- /dev/null +++ b/source/com.google.android.gms/play-services-nearby/Additions/TaskAdditions.cs @@ -0,0 +1,113 @@ +using System; +using System.Collections.Generic; +using System.Threading.Tasks; +using Android.App; +using Android.Gms.Extensions; + +namespace Android.Gms.Nearby.Connection +{ + public static partial class ConnectionsClientExtensions + { + public static Task AcceptConnectionAsync (this IConnectionsClient self, String p0, PayloadCallback p1) + { + return self.AcceptConnection (p0, p1).AsAsync (); + } + + public static Task CancelPayloadAsync (this IConnectionsClient self, long p0) + { + return self.CancelPayload (p0).AsAsync (); + } + + public static Task RejectConnectionAsync (this IConnectionsClient self, String p0) + { + return self.RejectConnection (p0).AsAsync (); + } + + public static Task RequestConnectionAsync (this IConnectionsClient self, String p0, String p1, ConnectionLifecycleCallback p2) + { + return self.RequestConnection (p0, p1, p2).AsAsync (); + } + + public static Task SendPayloadAsync (this IConnectionsClient self, String p0, Payload p1) + { + return self.SendPayload (p0, p1).AsAsync (); + } + + public static Task SendPayloadAsync (this IConnectionsClient self, IList p0, Payload p1) + { + return self.SendPayload (p0, p1).AsAsync (); + } + + public static Task StartAdvertisingAsync (this IConnectionsClient self, String p0, String p1, ConnectionLifecycleCallback p2, AdvertisingOptions p3) + { + return self.StartAdvertising (p0, p1, p2, p3).AsAsync (); + } + + public static Task StartDiscoveryAsync (this IConnectionsClient self, String p0, EndpointDiscoveryCallback p1, DiscoveryOptions p2) + { + return self.StartDiscovery (p0, p1, p2).AsAsync (); + } + } +} + +namespace Android.Gms.Nearby.Messages +{ + public static partial class MessagesClientExtensions + { + public static Task PublishAsync (this IMessagesClient self, Message p0) + { + return self.Publish (p0).AsAsync (); + } + + public static Task PublishAsync (this IMessagesClient self, Message p0, PublishOptions p1) + { + return self.Publish (p0, p1).AsAsync (); + } + + public static Task RegisterStatusCallbackAsync (this IMessagesClient self, StatusCallback p0) + { + return self.RegisterStatusCallback (p0).AsAsync (); + } + + public static Task SubscribeAsync (this IMessagesClient self, PendingIntent p0) + { + return self.Subscribe (p0).AsAsync (); + } + + public static Task SubscribeAsync (this IMessagesClient self, PendingIntent p0, SubscribeOptions p1) + { + return self.Subscribe (p0, p1).AsAsync (); + } + + public static Task SubscribeAsync (this IMessagesClient self, MessageListener p0) + { + return self.Subscribe (p0).AsAsync (); + } + + public static Task SubscribeAsync (this IMessagesClient self, MessageListener p0, SubscribeOptions p1) + { + return self.Subscribe (p0, p1).AsAsync (); + } + + public static Task UnpublishAsync (this IMessagesClient self, Message p0) + { + return self.Unpublish (p0).AsAsync (); + } + + public static Task UnregisterStatusCallbackAsync (this IMessagesClient self, StatusCallback p0) + { + return self.UnregisterStatusCallback (p0).AsAsync (); + } + + public static Task UnsubscribeAsync (this IMessagesClient self, PendingIntent p0) + { + return self.Unsubscribe (p0).AsAsync (); + } + + public static Task UnsubscribeAsync (this IMessagesClient self, MessageListener p0) + { + return self.Unsubscribe (p0).AsAsync (); + } + } + +} diff --git a/source/com.google.android.gms/play-services-nearby/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-nearby/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-nearby/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-nearby/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-nearby/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-nearby/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-nearby/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-nearby/Transforms/Metadata.xml new file mode 100644 index 000000000..a99343e62 --- /dev/null +++ b/source/com.google.android.gms/play-services-nearby/Transforms/Metadata.xml @@ -0,0 +1,130 @@ + + Android.Gms.Nearby + Android.Gms.Nearby.Bootstrap + Android.Gms.Nearby.Bootstrap.Request + Android.Gms.Nearby.Connection + Android.Gms.Nearby.Connection.Dev + Android.Gms.Nearby.Internal.Connection + Android.Gms.Nearby.Internal.Connection.Dev + Android.Gms.Nearby.Messages + Android.Gms.Nearby.Messages.Audio + Android.Gms.Nearby.Messages.Devices + Android.Gms.Nearby.Sharing + + NearbyClass + + + CONNECTIONS_API + + + + + + + + + + + + + + + source + size + dest + flags + + + + + + + + + + + + + + + + + + + + + + + + + + + java.lang.Object + java.lang.Object + + + PayloadType + TransferStatus + + + Android.Gms.Nearby.ExposureNotification + + + Android.Gms.Nearby.Uwb + + + RangingUpdateRateData + + + UwbConfigIdData + + + + + + Android.Gms.Nearby.Presence + + + Android.Gms.Nearby.Presence.Log + + + DtdiSourceData + + + ISlotDurationContract + + + Android.Gms.Nearby.FastPair + + + diff --git a/source/com.google.android.gms/play-services-oss-licenses/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-oss-licenses/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-oss-licenses/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-oss-licenses/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-oss-licenses/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-oss-licenses/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-oss-licenses/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-oss-licenses/Transforms/Metadata.xml new file mode 100644 index 000000000..e22df3dff --- /dev/null +++ b/source/com.google.android.gms/play-services-oss-licenses/Transforms/Metadata.xml @@ -0,0 +1,28 @@ + + + Android.Gms.Oss.Licenses + + + + + + + + + + + + source + size + dest + flags + + + + + + java.lang.Object + java.lang.Object + + + diff --git a/source/com.google.android.gms/play-services-pal/Additions/Additions.cs b/source/com.google.android.gms/play-services-pal/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.gms/play-services-pal/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.gms/play-services-pal/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-pal/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.gms/play-services-pal/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-pal/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-pal/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.gms/play-services-pal/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-pal/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-pal/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..ce3d12b29 --- /dev/null +++ b/source/com.google.android.gms/play-services-pal/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,23 @@ + + + Google.Ads.InteractiveMedia.PAL + + + Android.Gms.Internal.PAL + + + + Google.Ads.InteractiveMedia.PAL.Utils + + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-pal/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.gms/play-services-pal/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.gms/play-services-pal/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-pal/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-pal/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.gms/play-services-pal/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-panorama/Additions/Additions.cs b/source/com.google.android.gms/play-services-panorama/Additions/Additions.cs new file mode 100644 index 000000000..1798574a0 --- /dev/null +++ b/source/com.google.android.gms/play-services-panorama/Additions/Additions.cs @@ -0,0 +1,15 @@ +using System; + +namespace Android.Gms.Panorama +{ + public partial class PanoramaClass + { + [Obsolete ("Use API instead")] + public static Android.Gms.Common.Apis.Api Api { + get { + return PanoramaClass.API; + } + } + } +} + diff --git a/source/com.google.android.gms/play-services-panorama/Additions/IPendingResultExtensions.cs b/source/com.google.android.gms/play-services-panorama/Additions/IPendingResultExtensions.cs new file mode 100644 index 000000000..ec73cece8 --- /dev/null +++ b/source/com.google.android.gms/play-services-panorama/Additions/IPendingResultExtensions.cs @@ -0,0 +1,19 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Common.Apis; +using Android.Runtime; + +namespace Android.Gms.Panorama +{ + public static partial class IPanoramaApiExtensions + { + public static async Task LoadPanoramaInfoAsync (this IPanoramaApi api, GoogleApiClient client, Android.Net.Uri uri) + { + return (await api.LoadPanoramaInfo (client, uri)).JavaCast (); + } + public static async Task LoadPanoramaInfoAndGrantAccessAsync (this IPanoramaApi api, GoogleApiClient client, Android.Net.Uri uri) + { + return (await api.LoadPanoramaInfoAndGrantAccess (client, uri)).JavaCast (); + } + } +} diff --git a/source/com.google.android.gms/play-services-panorama/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-panorama/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-panorama/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-panorama/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-panorama/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-panorama/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-panorama/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-panorama/Transforms/Metadata.xml new file mode 100644 index 000000000..604c83dda --- /dev/null +++ b/source/com.google.android.gms/play-services-panorama/Transforms/Metadata.xml @@ -0,0 +1,24 @@ + + + Android.Gms.Panorama + + PanoramaClass + + API + + + + + + + + + + + + source + size + dest + flags + + diff --git a/source/com.google.android.gms/play-services-password-complexity/Additions/Additions.cs b/source/com.google.android.gms/play-services-password-complexity/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.gms/play-services-password-complexity/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.gms/play-services-password-complexity/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-password-complexity/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.gms/play-services-password-complexity/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-password-complexity/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-password-complexity/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.gms/play-services-password-complexity/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-password-complexity/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-password-complexity/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..e720e0b96 --- /dev/null +++ b/source/com.google.android.gms/play-services-password-complexity/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,9 @@ + + + Android.Gms.Auth.Managed.Password + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-password-complexity/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.gms/play-services-password-complexity/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.gms/play-services-password-complexity/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-password-complexity/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-password-complexity/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.gms/play-services-password-complexity/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-pay/Additions/Additions.cs b/source/com.google.android.gms/play-services-pay/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.gms/play-services-pay/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.gms/play-services-pay/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-pay/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.gms/play-services-pay/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-pay/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-pay/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.gms/play-services-pay/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-pay/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-pay/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..cf4142070 --- /dev/null +++ b/source/com.google.android.gms/play-services-pay/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,16 @@ + + + + Android.Gms.Pay + + + Android.Gms.Internal.Pay + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-pay/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.gms/play-services-pay/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.gms/play-services-pay/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-pay/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-pay/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.gms/play-services-pay/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-phenotype/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-phenotype/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-phenotype/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-phenotype/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-phenotype/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-phenotype/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-phenotype/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-phenotype/Transforms/Metadata.xml new file mode 100644 index 000000000..1a278ff9e --- /dev/null +++ b/source/com.google.android.gms/play-services-phenotype/Transforms/Metadata.xml @@ -0,0 +1,25 @@ + + Android.Gms.Phenotype + + + + + + + + + + + + source + size + dest + flags + + + + + + + + diff --git a/source/com.google.android.gms/play-services-places-placereport/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-places-placereport/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-places-placereport/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-places-placereport/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-places-placereport/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-places-placereport/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-places-placereport/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-places-placereport/Transforms/Metadata.xml new file mode 100644 index 000000000..a0035129c --- /dev/null +++ b/source/com.google.android.gms/play-services-places-placereport/Transforms/Metadata.xml @@ -0,0 +1,5 @@ + + + Android.Gms.Location.Places + + diff --git a/source/com.google.android.gms/play-services-places/Additions/DataBufferAdditions.cs b/source/com.google.android.gms/play-services-places/Additions/DataBufferAdditions.cs new file mode 100644 index 000000000..45702f1be --- /dev/null +++ b/source/com.google.android.gms/play-services-places/Additions/DataBufferAdditions.cs @@ -0,0 +1,60 @@ +using System; +using System.Linq; +using System.Collections; +using System.Collections.Generic; + +namespace Android.Gms.Location.Places +{ + public partial class AutocompletePredictionBuffer : IEnumerable + { + public IEnumerator GetEnumerator() + { + return this.ToEnumerable ().GetEnumerator(); + } + + System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() + { + return this.GetEnumerator(); + } + } + + public partial class PlaceBuffer : IEnumerable + { + public IEnumerator GetEnumerator() + { + return this.ToEnumerable ().GetEnumerator(); + } + + System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() + { + return this.GetEnumerator(); + } + } + + public partial class PlaceLikelihoodBuffer : IEnumerable + { + public IEnumerator GetEnumerator() + { + return this.ToEnumerable ().GetEnumerator(); + } + + System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() + { + return this.GetEnumerator(); + } + } + + public partial class PlacePhotoMetadataBuffer : IEnumerable + { + public IEnumerator GetEnumerator() + { + return this.ToEnumerable ().GetEnumerator(); + } + + System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() + { + return this.GetEnumerator(); + } + } +} + diff --git a/source/com.google.android.gms/play-services-places/Additions/IPendingResultExtensions.cs b/source/com.google.android.gms/play-services-places/Additions/IPendingResultExtensions.cs new file mode 100644 index 000000000..34595228e --- /dev/null +++ b/source/com.google.android.gms/play-services-places/Additions/IPendingResultExtensions.cs @@ -0,0 +1,57 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Common.Apis; +using System.Collections.Generic; +using Android.Runtime; + +namespace Android.Gms.Location.Places +{ + public static partial class IGeoDataApiExtensions + { + public static async Task AddPlaceAsync (this IGeoDataApi api, GoogleApiClient client, AddPlaceRequest addPlaceRequest) + { + return (await api.AddPlace (client, addPlaceRequest)).JavaCast (); + } + + public static async Task GetAutocompletePredictionsAsync (this IGeoDataApi api, GoogleApiClient client, string query, Android.Gms.Maps.Model.LatLngBounds bounds, AutocompleteFilter filter) + { + return (await api.GetAutocompletePredictions (client, query, bounds, filter)).JavaCast (); + } + + public static async Task GetPlaceByIdAsync (this IGeoDataApi api, GoogleApiClient client, params string [] placeIds) + { + return (await api.GetPlaceById (client, placeIds)).JavaCast (); + } + + public static async Task GetPlacePhotosAsync (this IGeoDataApi api, GoogleApiClient client, string placeId) + { + return (await api.GetPlacePhotos (client, placeId)).JavaCast (); + } + } + + public static partial class IPlaceDetectionApiExtensions + { + public static async Task GetCurrentPlaceAsync (this IPlaceDetectionApi api, GoogleApiClient client, PlaceFilter filter) + { + return (await api.GetCurrentPlace (client, filter)).JavaCast (); + } + + public static async Task ReportDeviceAtPlaceAsync (this IPlaceDetectionApi api, GoogleApiClient client, PlaceReport report) + { + return (await api.ReportDeviceAtPlace (client, report)).JavaCast (); + } + } + + public static partial class IPlacePhotoMetadataExtensions + { + public static async Task GetPhotoAsync (this IPlacePhotoMetadata api, GoogleApiClient client) + { + return (await api.GetPhoto (client)).JavaCast (); + } + + public static async Task GetScaledPhotoAsync (this IPlacePhotoMetadata api, GoogleApiClient client, int width, int height) + { + return (await api.GetScaledPhoto (client, width, height)).JavaCast (); + } + } +} diff --git a/source/com.google.android.gms/play-services-places/Additions/TaskExtensions.cs b/source/com.google.android.gms/play-services-places/Additions/TaskExtensions.cs new file mode 100644 index 000000000..9df4202e5 --- /dev/null +++ b/source/com.google.android.gms/play-services-places/Additions/TaskExtensions.cs @@ -0,0 +1,47 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Extensions; + +namespace Android.Gms.Location.Places +{ + public partial class GeoDataClient + { + public virtual Task GetPhotoAsync (IPlacePhotoMetadata photoMetadata) + { + return GetPhoto (photoMetadata).AsAsync (); + } + + public virtual Task GetPlacePhotosAsync (string placeId) + { + return GetPlacePhotos (placeId).AsAsync (); + } + + public virtual Task GetScaledPhotoAsync (IPlacePhotoMetadata photoMetadata, int width, int height) + { + return GetScaledPhoto (photoMetadata, width, height).AsAsync (); + } + + public Task GetAutocompletePredictionsAsync (String query, Maps.Model.LatLngBounds bounds, AutocompleteFilter filter) + { + return GetAutocompletePredictions (query, bounds, filter).AsAsync (); + } + + public Task GetPlaceByIdAsync (params string[] placeIds) + { + return GetPlaceById (placeIds).AsAsync (); + } + } + + public partial class PlaceDetectionClient + { + public Task ReportDeviceAtPlaceAsync (PlaceReport report) + { + return ReportDeviceAtPlace (report).AsAsync (); + } + + public Task GetCurrentPlaceAsync (PlaceFilter placeFilter) + { + return GetCurrentPlace (placeFilter).AsAsync (); + } + } +} \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-places/Additions/TypeForwards.cs b/source/com.google.android.gms/play-services-places/Additions/TypeForwards.cs new file mode 100644 index 000000000..cfe01ea69 --- /dev/null +++ b/source/com.google.android.gms/play-services-places/Additions/TypeForwards.cs @@ -0,0 +1,4 @@ +using System; +using System.Runtime.CompilerServices; + +[assembly:TypeForwardedTo(typeof(Android.Gms.Location.Places.PlaceReport))] \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-places/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-places/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-places/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-places/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-places/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-places/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-places/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-places/Transforms/Metadata.xml new file mode 100644 index 000000000..bf9bff4f5 --- /dev/null +++ b/source/com.google.android.gms/play-services-places/Transforms/Metadata.xml @@ -0,0 +1,65 @@ + + + Android.Gms.Location.Places + Android.Gms.Location.Places.Personalized + Android.Gms.Location.Places.UI + Android.Gms.Location.Places.Internal + + + + + + + + + + + + + source + size + dest + flags + + + + + + + + false + false + + + Zza + Zza + + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + Java.Lang.Object + + + PlacesClass + + + + + + public + public + + + API + GEO_DATA_API + PLACE_DETECTION_API + API + + + com.google.android.gms.common.api.Response + + java.lang.Object + java.lang.Object + diff --git a/source/com.google.android.gms/play-services-plus/Additions/Additions.cs b/source/com.google.android.gms/play-services-plus/Additions/Additions.cs new file mode 100644 index 000000000..9d82766cd --- /dev/null +++ b/source/com.google.android.gms/play-services-plus/Additions/Additions.cs @@ -0,0 +1,13 @@ +using System; + +namespace Android.Gms.Plus +{ + public partial class PlusClass + { + [Obsolete ("Use API instead")] + public Android.Gms.Common.Apis.Api Api { + get { return PlusClass.API; } + } + } +} + diff --git a/source/com.google.android.gms/play-services-plus/Additions/DataBufferAdditions.cs b/source/com.google.android.gms/play-services-plus/Additions/DataBufferAdditions.cs new file mode 100644 index 000000000..e8d63e35e --- /dev/null +++ b/source/com.google.android.gms/play-services-plus/Additions/DataBufferAdditions.cs @@ -0,0 +1,21 @@ +using System; +using System.Linq; +using System.Collections.Generic; + + +namespace Android.Gms.Plus.Model.People +{ + public partial class PersonBuffer : IEnumerable + { + public IEnumerator GetEnumerator() + { + return this.ToEnumerable ().GetEnumerator(); + } + + System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() + { + return this.GetEnumerator(); + } + } +} + diff --git a/source/com.google.android.gms/play-services-plus/Additions/IPendingResultExtensions.cs b/source/com.google.android.gms/play-services-plus/Additions/IPendingResultExtensions.cs new file mode 100644 index 000000000..2cd48b1aa --- /dev/null +++ b/source/com.google.android.gms/play-services-plus/Additions/IPendingResultExtensions.cs @@ -0,0 +1,47 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Common.Apis; +using Android.Runtime; +using System.Collections.Generic; + +namespace Android.Gms.Plus +{ + public static partial class IAccountExtensions + { + [Obsolete ("deprecated")] + public static async Task RevokeAccessAndDisconnectAsync (this IAccount api, GoogleApiClient googleApiClient) + { + return (await api.RevokeAccessAndDisconnect (googleApiClient)).JavaCast (); + } + } + + + public static partial class IPeopleExtensions + { + [Obsolete ("deprecated")] + public static async Task LoadAsync (this IPeople api, GoogleApiClient googleApiClient, ICollection personIds) + { + return (await api.Load (googleApiClient, personIds)).JavaCast (); + } + [Obsolete ("deprecated")] + public static async Task LoadAsync (this IPeople api, GoogleApiClient googleApiClient, params string[] personIds) + { + return (await api.Load (googleApiClient, personIds)).JavaCast (); + } + [Obsolete ("deprecated")] + public static async Task LoadConnectedAsync (this IPeople api, GoogleApiClient googleApiClient) + { + return (await api.LoadConnected (googleApiClient)).JavaCast (); + } + [Obsolete ("deprecated")] + public static async Task LoadVisibleAsync (this IPeople api, GoogleApiClient googleApiClient, int orderBy, string pageToken) + { + return (await api.LoadVisible (googleApiClient, orderBy, pageToken)).JavaCast (); + } + [Obsolete ("deprecated")] + public static async Task LoadVisibleAsync (this IPeople api, GoogleApiClient googleApiClient, string pageToken) + { + return (await api.LoadVisible (googleApiClient, pageToken)).JavaCast (); + } + } +} diff --git a/source/com.google.android.gms/play-services-plus/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-plus/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-plus/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-plus/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-plus/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-plus/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-plus/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-plus/Transforms/Metadata.xml new file mode 100644 index 000000000..d4f4ca327 --- /dev/null +++ b/source/com.google.android.gms/play-services-plus/Transforms/Metadata.xml @@ -0,0 +1,39 @@ + + Android.Gms.Plus + Android.Gms.Plus.Model.Moments + Android.Gms.Plus.Model.People + + + PlusClass + PlusClass.PlusOptions + PlusClass.PlusOptions.Builder + + + API + + TagField + + + + + + + + + + + + + source + size + dest + flags + + + public + Java.Lang.Object + + public override + Java.Lang.Object + + diff --git a/source/com.google.android.gms/play-services-recaptcha/Additions/Additions.cs b/source/com.google.android.gms/play-services-recaptcha/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.gms/play-services-recaptcha/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.gms/play-services-recaptcha/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-recaptcha/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.gms/play-services-recaptcha/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-recaptcha/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-recaptcha/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.gms/play-services-recaptcha/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-recaptcha/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-recaptcha/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..d2b06c3ca --- /dev/null +++ b/source/com.google.android.gms/play-services-recaptcha/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,15 @@ + + + Android.Gms.Recaptcha + + + Android.Gms.Internal.Recaptcha + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-recaptcha/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.gms/play-services-recaptcha/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.gms/play-services-recaptcha/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-recaptcha/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-recaptcha/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.gms/play-services-recaptcha/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-safetynet/Additions/Additions.cs b/source/com.google.android.gms/play-services-safetynet/Additions/Additions.cs new file mode 100644 index 000000000..e0b68ca30 --- /dev/null +++ b/source/com.google.android.gms/play-services-safetynet/Additions/Additions.cs @@ -0,0 +1,57 @@ +using System; +using System.Security.Cryptography.X509Certificates; +using System.Collections.Generic; +using System.Security.Cryptography; +using System.Text; +using System.Text.Json; +using System.Threading.Tasks; +using System.Net.Http; + +namespace Android.Gms.SafetyNet +{ + public static class SafetyNetApiAttestationResponseExtensions + { + public static string DecodeJwsResult (this SafetyNetApiAttestationResponse result, byte[] originalNonce) + { + return JWT.JsonWebToken.Decode (result.JwsResult, originalNonce); + } + + public static async Task ValidateWithGoogle (this SafetyNetApiAttestationResponse result, string validationApiKey) + { + const string url = "https://www.googleapis.com/androidcheck/v1/attestations/verify?key="; + + var http = new HttpClient (); + var jsonReq = "{ \"signedAttestation\": \"" + result.JwsResult + "\" }"; + var content = new StringContent (jsonReq, Encoding.Default, "application/json"); + + var response = await http.PostAsync (url + validationApiKey, content); + response.EnsureSuccessStatusCode (); + + using var stream = await response.Content.ReadAsStreamAsync(); + JsonDocument doc = await JsonDocument.ParseAsync(stream); + JsonElement root = doc.RootElement; + + if (root.TryGetProperty ("isValidSignature", out var signature)) { + return signature.GetBoolean (); + } else { + return false; + } + } + } + + public static class Nonce + { + static readonly RNGCryptoServiceProvider rnd = new RNGCryptoServiceProvider (); + + public static byte[] Generate (int size = 16) + { + var buffer = new byte[size]; + rnd.GetNonZeroBytes (buffer); + return buffer; + } + } + + +} + + diff --git a/source/com.google.android.gms/play-services-safetynet/Additions/IPendingResultExtensions.cs b/source/com.google.android.gms/play-services-safetynet/Additions/IPendingResultExtensions.cs new file mode 100644 index 000000000..31782352a --- /dev/null +++ b/source/com.google.android.gms/play-services-safetynet/Additions/IPendingResultExtensions.cs @@ -0,0 +1,51 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Common.Apis; +using Android.Runtime; +using System.Collections.Generic; + +namespace Android.Gms.SafetyNet +{ + public static partial class ISafetyNetApiExtensions + { + [Obsolete] + public static async Task AttestAsync(this ISafetyNetApi api, GoogleApiClient googleApiClient, byte[] nonce) + { + return (await api.Attest(googleApiClient, nonce)).JavaCast(); + } + public static async Task LookupUriAsync(this ISafetyNetApi api, GoogleApiClient googleApiClient, IList threatTypes, string uri) + { + return (await api.LookupUri(googleApiClient, threatTypes, uri)).JavaCast(); + } + + [Obsolete] + public static async Task LookupUriAsync(this ISafetyNetApi api, GoogleApiClient client, string str1, string str2, params int[] threatTypes) + { + return (await api.LookupUri(client, str1, str2, threatTypes)).JavaCast(); + } + + [Obsolete] + public static async Task VerifyWithRecaptchaAsync(this ISafetyNetApi api, GoogleApiClient client, string recaptcha) + { + return (await api.VerifyWithRecaptcha(client, recaptcha)).JavaCast(); + } + + [Obsolete] + public static async Task IsVerifyAppsEnabledAsync(this ISafetyNetApi api, GoogleApiClient client) + { + return (await api.IsVerifyAppsEnabled(client)).JavaCast(); + } + + [Obsolete] + public static async Task EnableVerifyAppsAsync(this ISafetyNetApi api, GoogleApiClient client) + { + return (await api.EnableVerifyApps(client)).JavaCast(); + } + + [Obsolete] + public static async Task ListHarmfulAppsAsync(this ISafetyNetApi api, GoogleApiClient client) + { + return (await api.ListHarmfulApps(client)).JavaCast(); + } + } +} diff --git a/source/com.google.android.gms/play-services-safetynet/Additions/JWT.cs b/source/com.google.android.gms/play-services-safetynet/Additions/JWT.cs new file mode 100644 index 000000000..cf7ba9ee2 --- /dev/null +++ b/source/com.google.android.gms/play-services-safetynet/Additions/JWT.cs @@ -0,0 +1,97 @@ +using System; +using System.Collections.Generic; +using System.Security.Cryptography; +using System.Text; + +namespace JWT +{ + public enum JwtHashAlgorithm + { + HS256, + HS384, + HS512 + } + + /// + /// Provides methods for encoding and decoding JSON Web Tokens. + /// + public static class JsonWebToken + { + //private static readonly IDictionary> HashAlgorithms; + + //private static readonly DateTime UnixEpoch = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc); + +// static JsonWebToken() +// { +// HashAlgorithms = new Dictionary> +// { +// { JwtHashAlgorithm.HS256, (key, value) => { using (var sha = new HMACSHA256(key)) { return sha.ComputeHash(value); } } }, +// { JwtHashAlgorithm.HS384, (key, value) => { using (var sha = new HMACSHA384(key)) { return sha.ComputeHash(value); } } }, +// { JwtHashAlgorithm.HS512, (key, value) => { using (var sha = new HMACSHA512(key)) { return sha.ComputeHash(value); } } } +// }; +// } + + /// + /// Given a JWT, decode it and return the JSON payload. + /// + /// The JWT. + /// The key bytes that were used to sign the JWT. + /// Whether to verify the signature (default is true). + /// A string containing the JSON payload. + /// Thrown if the verify parameter was true and the signature was NOT valid or if the JWT was signed with an unsupported algorithm. + public static string Decode(string token, byte[] key) + { + var parts = token.Split('.'); + if (parts.Length != 3) + { + throw new ArgumentException("Token must consist from 3 delimited by dot parts"); + } + //var header = parts[0]; + var payload = parts[1]; + //var crypto = Base64UrlDecode(parts[2]); + + //var headerJson = Encoding.UTF8.GetString(Base64UrlDecode(header)); + var payloadJson = Encoding.UTF8.GetString(Base64UrlDecode(payload)); + + return payloadJson; + } + + private static JwtHashAlgorithm GetHashAlgorithm(string algorithm) + { + switch (algorithm) + { + case "HS256": return JwtHashAlgorithm.HS256; + case "HS384": return JwtHashAlgorithm.HS384; + case "HS512": return JwtHashAlgorithm.HS512; + default: throw new InvalidCastException("Algorithm not supported."); + } + } + + // from JWT spec + public static string Base64UrlEncode(byte[] input) + { + var output = Convert.ToBase64String(input); + output = output.Split('=')[0]; // Remove any trailing '='s + output = output.Replace('+', '-'); // 62nd char of encoding + output = output.Replace('/', '_'); // 63rd char of encoding + return output; + } + + // from JWT spec + public static byte[] Base64UrlDecode(string input) + { + var output = input; + output = output.Replace('-', '+'); // 62nd char of encoding + output = output.Replace('_', '/'); // 63rd char of encoding + switch (output.Length % 4) // Pad with trailing '='s + { + case 0: break; // No pad chars in this case + case 2: output += "=="; break; // Two pad chars + case 3: output += "="; break; // One pad char + default: throw new Exception("Illegal base64url string!"); + } + var converted = Convert.FromBase64String(output); // Standard base64 decoder + return converted; + } + } +} \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-safetynet/Additions/TaskExtensions.cs b/source/com.google.android.gms/play-services-safetynet/Additions/TaskExtensions.cs new file mode 100644 index 000000000..870fcbe09 --- /dev/null +++ b/source/com.google.android.gms/play-services-safetynet/Additions/TaskExtensions.cs @@ -0,0 +1,49 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Extensions; + +namespace Android.Gms.SafetyNet +{ + public partial class SafetyNetClient + { + public Task AttestAsync (byte[] nonce, string apiKey) + { + return Attest(nonce, apiKey).AsAsync(); + } + + public Task EnableVerifyAppsAsync () + { + return EnableVerifyApps().AsAsync(); + } + + public Task InitSafeBrowsingAsync () + { + return InitSafeBrowsing().AsAsync(); + } + + public Task IsVerifyAppsEnabledAsync () + { + return IsVerifyAppsEnabled().AsAsync(); + } + + public Task ListHarmfulAppsAsync () + { + return ListHarmfulApps().AsAsync(); + } + + public Task LookupUriAsync (string uri, string apiKey, int[] threatTypes) + { + return LookupUri(uri, apiKey, threatTypes).AsAsync(); + } + + public Task ShutdownSafeBrowsingAsync () + { + return ShutdownSafeBrowsing().AsAsync(); + } + + public Task VerifyWithRecaptchaAsync (string siteKey) + { + return VerifyWithRecaptcha(siteKey).AsAsync(); + } + } +} diff --git a/source/com.google.android.gms/play-services-safetynet/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-safetynet/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-safetynet/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-safetynet/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-safetynet/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-safetynet/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-safetynet/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-safetynet/Transforms/Metadata.xml new file mode 100644 index 000000000..318a62f66 --- /dev/null +++ b/source/com.google.android.gms/play-services-safetynet/Transforms/Metadata.xml @@ -0,0 +1,27 @@ + + + Android.Gms.SafetyNet + + + API + + SafetyNetClass + + Java.Lang.Object + + + + + + + + + + + + source + size + dest + flags + + diff --git a/source/com.google.android.gms/play-services-stats/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-stats/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-stats/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-stats/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-stats/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-stats/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-stats/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-stats/Transforms/Metadata.xml new file mode 100644 index 000000000..06793a41b --- /dev/null +++ b/source/com.google.android.gms/play-services-stats/Transforms/Metadata.xml @@ -0,0 +1,7 @@ + + + Android.Gms.Stats + Android.Gms.Stats.Internal + Android.Gms.Stats.NetStats + + diff --git a/source/com.google.android.gms/play-services-streamprotect/Additions/Additions.cs b/source/com.google.android.gms/play-services-streamprotect/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.gms/play-services-streamprotect/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.gms/play-services-streamprotect/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-streamprotect/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.gms/play-services-streamprotect/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-streamprotect/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-streamprotect/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.gms/play-services-streamprotect/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-streamprotect/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-streamprotect/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..4bc71c3f5 --- /dev/null +++ b/source/com.google.android.gms/play-services-streamprotect/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,10 @@ + + + + Android.Gms.StreamProtect + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-streamprotect/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.gms/play-services-streamprotect/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.gms/play-services-streamprotect/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-streamprotect/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-streamprotect/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.gms/play-services-streamprotect/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-tagmanager-api/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-tagmanager-api/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-tagmanager-api/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-tagmanager-api/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-tagmanager-api/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-tagmanager-api/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-tagmanager-api/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-tagmanager-api/Transforms/Metadata.xml new file mode 100644 index 000000000..58fc1ec82 --- /dev/null +++ b/source/com.google.android.gms/play-services-tagmanager-api/Transforms/Metadata.xml @@ -0,0 +1,20 @@ + + + Android.Gms.TagManager + + + + + + + + + + + + source + size + dest + flags + + diff --git a/source/com.google.android.gms/play-services-tagmanager-v4-impl/Additions/IPendingResultExtensions.cs b/source/com.google.android.gms/play-services-tagmanager-v4-impl/Additions/IPendingResultExtensions.cs new file mode 100644 index 000000000..eb186f0c7 --- /dev/null +++ b/source/com.google.android.gms/play-services-tagmanager-v4-impl/Additions/IPendingResultExtensions.cs @@ -0,0 +1,40 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Common.Apis; +using Android.Runtime; + +namespace Android.Gms.Tagmanager +{ + public partial class TagManagerClass + { + public async Task LoadContainerDefaultOnlyAsync(string containerId, int defaultContainerResourceId) + { + return (await LoadContainerDefaultOnly(containerId, defaultContainerResourceId)).JavaCast(); + } + + public async Task LoadContainerDefaultOnlyAsync(string containerId, int defaultContainerResourceId, Android.OS.Handler handler) + { + return (await LoadContainerDefaultOnly(containerId, defaultContainerResourceId, handler)).JavaCast(); + } + + public async Task LoadContainerPreferFreshAsync(string containerId, int defaultContainerResourceId) + { + return (await LoadContainerPreferFresh(containerId, defaultContainerResourceId)).JavaCast(); + } + + public async Task LoadContainerPreferFreshAsync(string containerId, int defaultContainerResourceId, Android.OS.Handler handler) + { + return (await LoadContainerPreferFresh(containerId, defaultContainerResourceId, handler)).JavaCast(); + } + + public async Task LoadContainerPreferNonDefaultAsync(string containerId, int defaultContainerResourceId) + { + return (await LoadContainerPreferNonDefault(containerId, defaultContainerResourceId)).JavaCast(); + } + + public async Task LoadContainerPreferNonDefaultAsync(string containerId, int defaultContainerResourceId, Android.OS.Handler handler) + { + return (await LoadContainerPreferNonDefault(containerId, defaultContainerResourceId, handler)).JavaCast(); + } + } +} \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-tagmanager-v4-impl/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-tagmanager-v4-impl/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-tagmanager-v4-impl/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-tagmanager-v4-impl/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-tagmanager-v4-impl/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-tagmanager-v4-impl/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-tagmanager-v4-impl/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-tagmanager-v4-impl/Transforms/Metadata.xml new file mode 100644 index 000000000..3bcdcfa18 --- /dev/null +++ b/source/com.google.android.gms/play-services-tagmanager-v4-impl/Transforms/Metadata.xml @@ -0,0 +1,27 @@ + + + Android.Gms.Tagmanager + + + + + + + + + + + + source + size + dest + flags + + TagManagerClass + + + + + diff --git a/source/com.google.android.gms/play-services-tagmanager/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-tagmanager/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-tagmanager/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-tagmanager/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-tagmanager/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-tagmanager/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-tagmanager/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-tagmanager/Transforms/Metadata.xml new file mode 100644 index 000000000..1855db8de --- /dev/null +++ b/source/com.google.android.gms/play-services-tagmanager/Transforms/Metadata.xml @@ -0,0 +1,20 @@ + + + Android.Gms.TagManager + Android.Gms.Dynamite.Descriptors.TagManager + + + + + + + + + + + source + size + dest + flags + + diff --git a/source/com.google.android.gms/play-services-tasks/Additions/Task.cs b/source/com.google.android.gms/play-services-tasks/Additions/Task.cs new file mode 100644 index 000000000..0778c3c24 --- /dev/null +++ b/source/com.google.android.gms/play-services-tasks/Additions/Task.cs @@ -0,0 +1,103 @@ +using System; +using Android.Runtime; +using Android.Gms.Tasks; +using System.Runtime.CompilerServices; +using Android.Gms.Extensions; + +namespace Android.Gms.Extensions +{ + public static class TasksExtensions + { + + public static System.Threading.Tasks.Task AsAsync (this Task task) where TResult : class, IJavaObject + { + var c = new AwaitableTaskCompleteListener (); + + // The Java Task returned from this call is the same task + // so we do not have to await it + task.AddOnCompleteListener (c); + + return c.AwaitAsync (); + } + + public static System.Threading.Tasks.Task AsAsync (this Task task) + { + var c = new AwaitableTaskCompleteListener (); + + task.AddOnCompleteListener (c); + + return c.AwaitAsync (); + } + + public static TaskAwaiter GetAwaiter (this Task task) where TResult : class, IJavaObject + { + var c = new AwaitableTaskCompleteListener (); + + task.AddOnCompleteListener (c); + + return c.GetAwaiter (); + } + + public static TaskAwaiter GetAwaiter (this Task task) + { + var c = new AwaitableTaskCompleteListener (); + + task.AddOnCompleteListener (c); + + return c.GetAwaiter (); + } + } + + [Android.Runtime.Preserve] + class AwaitableTaskCompleteListener : Java.Lang.Object, IOnCompleteListener where TResult : class, IJavaObject + { + System.Threading.Tasks.TaskCompletionSource taskCompletionSource; + + [Android.Runtime.Preserve] + public AwaitableTaskCompleteListener () + { + taskCompletionSource = new System.Threading.Tasks.TaskCompletionSource (); + } + + [Android.Runtime.Preserve] + public void OnComplete (Task task) + { + if (task.IsSuccessful) { + taskCompletionSource.SetResult (task?.Result?.JavaCast ()); + } else { + taskCompletionSource.SetException (task.Exception); + } + } + + [Android.Runtime.Preserve] + public System.Threading.Tasks.Task AwaitAsync () + { + return taskCompletionSource.Task; + } + + [Android.Runtime.Preserve] + public TaskAwaiter GetAwaiter () + { + return taskCompletionSource.Task.GetAwaiter (); + } + } +} + +namespace Android.Gms.Tasks +{ + [Android.Runtime.Preserve] + public partial class Task + { + [Android.Runtime.Preserve] + public virtual Java.Lang.Object Result { + get { return RawResult; } + } + } + + [Android.Runtime.Preserve] + public partial class TaskCompletionSource + { + [Android.Runtime.Preserve] + public virtual Task Task { get { return GetTask (); } } + } +} diff --git a/source/com.google.android.gms/play-services-tasks/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-tasks/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-tasks/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-tasks/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-tasks/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-tasks/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-tasks/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-tasks/Transforms/Metadata.xml new file mode 100644 index 000000000..f7dd4a824 --- /dev/null +++ b/source/com.google.android.gms/play-services-tasks/Transforms/Metadata.xml @@ -0,0 +1,22 @@ + + + + Android.Gms.Tasks + TasksClass + + Firebase.Iid + Android.Gms.Iid + + + + + + false + + + + + + diff --git a/source/com.google.android.gms/play-services-tflite-gpu/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-tflite-gpu/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..5ad7d6721 --- /dev/null +++ b/source/com.google.android.gms/play-services-tflite-gpu/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,21 @@ + + + Android.Gms.TfLite.Internal.TfLiteGpu + + + Android.Gms.TfLite.Gpu + + + Android.Gms.TfLite.Gpu.Support + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-tflite-impl/Additions/Additions.cs b/source/com.google.android.gms/play-services-tflite-impl/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.gms/play-services-tflite-impl/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.gms/play-services-tflite-impl/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-tflite-impl/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.gms/play-services-tflite-impl/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-tflite-impl/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-tflite-impl/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.gms/play-services-tflite-impl/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-tflite-impl/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-tflite-impl/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..16bb5382b --- /dev/null +++ b/source/com.google.android.gms/play-services-tflite-impl/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,33 @@ + + + Android.Gms.Internal.TfLite + + + Android.Gms.TfLite.Client + + + Android.Gms.TfLite.Dynamite + + + Android.Gms.TfLite.Dynamite.Acceleration + + + Android.Gms.TfLite.Dynamite.Internal + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-tflite-impl/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.gms/play-services-tflite-impl/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.gms/play-services-tflite-impl/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-tflite-impl/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-tflite-impl/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.gms/play-services-tflite-impl/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-tflite-java/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-tflite-java/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..a757a8761 --- /dev/null +++ b/source/com.google.android.gms/play-services-tflite-java/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,37 @@ + + + Android.Gms.Internal.TfLiteJava + + + Android.Gms.TfLite + + + Android.Gms.TfLite.Internal + + + Android.Gms.TfLite.Java + + + Android.Gms.TfLite.NnApi + + + + + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-tflite-support/Additions/Additions.cs b/source/com.google.android.gms/play-services-tflite-support/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.gms/play-services-tflite-support/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.gms/play-services-tflite-support/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-tflite-support/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..e3bd934af --- /dev/null +++ b/source/com.google.android.gms/play-services-tflite-support/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Android.Gms.TfLite.Support + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-threadnetwork/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-threadnetwork/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..97e3ca8ba --- /dev/null +++ b/source/com.google.android.gms/play-services-threadnetwork/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,15 @@ + + + Android.Gms.Internal.ThreadNetwork + + + + Android.Gms.ThreadNetwork + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-threadnetwork/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-threadnetwork/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.gms/play-services-threadnetwork/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-vision-common/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-vision-common/Transforms/EnumFields.xml new file mode 100644 index 000000000..04411753e --- /dev/null +++ b/source/com.google.android.gms/play-services-vision-common/Transforms/EnumFields.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/source/com.google.android.gms/play-services-vision-common/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-vision-common/Transforms/EnumMethods.xml new file mode 100644 index 000000000..db33107bb --- /dev/null +++ b/source/com.google.android.gms/play-services-vision-common/Transforms/EnumMethods.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/source/com.google.android.gms/play-services-vision-common/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-vision-common/Transforms/Metadata.xml new file mode 100644 index 000000000..02b84f864 --- /dev/null +++ b/source/com.google.android.gms/play-services-vision-common/Transforms/Metadata.xml @@ -0,0 +1,65 @@ + + + Android.Gms.Vision + Android.Gms.Vision.Internal.Client + Android.Gms.Vision.Barcodes + Android.Gms.Vision.Barcodes.Internal.Client + Android.Gms.Vision.Faces + Android.Gms.Vision.Faces.Internal.Client + Android.Gms.Vision.Texts + Android.Gms.Vision.Texts.Internal.Client + + + Face + Barcode + + + + + + + + + + + + source + size + dest + flags + + + _Format + internal + _ValueFormat + internal + + CalendarEventValue + ContactInfoValue + DriverLicenseValue + EmailValue + GeoPointValue + PhoneValue + SmsValue + + + java.lang.Object + java.lang.Object + + + + + + Android.Gms.Vision.Internal + + + Android.Gms.Vision.Clearcut + + + diff --git a/source/com.google.android.gms/play-services-vision-face-contour-internal/Additions/Additions.cs b/source/com.google.android.gms/play-services-vision-face-contour-internal/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.gms/play-services-vision-face-contour-internal/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.gms/play-services-vision-face-contour-internal/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-vision-face-contour-internal/Transforms/EnumFields.xml new file mode 100644 index 000000000..04411753e --- /dev/null +++ b/source/com.google.android.gms/play-services-vision-face-contour-internal/Transforms/EnumFields.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/source/com.google.android.gms/play-services-vision-face-contour-internal/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-vision-face-contour-internal/Transforms/EnumMethods.xml new file mode 100644 index 000000000..db33107bb --- /dev/null +++ b/source/com.google.android.gms/play-services-vision-face-contour-internal/Transforms/EnumMethods.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/source/com.google.android.gms/play-services-vision-face-contour-internal/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-vision-face-contour-internal/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..91bdb34be --- /dev/null +++ b/source/com.google.android.gms/play-services-vision-face-contour-internal/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,21 @@ + + + Android.Gms.Vision.Face + + + Android.Gms.Dynamite.Descriptors.Vision.Face + + + Android.Gms.Internal.Vision + + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-vision-face-contour-internal/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.gms/play-services-vision-face-contour-internal/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.gms/play-services-vision-face-contour-internal/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-vision-face-contour-internal/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-vision-face-contour-internal/Transforms/Metadata.xml new file mode 100644 index 000000000..32b5b050f --- /dev/null +++ b/source/com.google.android.gms/play-services-vision-face-contour-internal/Transforms/Metadata.xml @@ -0,0 +1,34 @@ + + + + Android.Gms.Vision + + + Android.Gms.Vision.Face + + + Android.Gms.Vision.Face + + + Android.Gms.Dynamite.Descriptors.Vision.Face + + + Android.Gms.Internal.Vision + + + diff --git a/source/com.google.android.gms/play-services-vision-image-label/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-vision-image-label/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-vision-image-label/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-vision-image-label/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-vision-image-label/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-vision-image-label/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-vision-image-label/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-vision-image-label/Transforms/Metadata.xml new file mode 100644 index 000000000..f7d98299d --- /dev/null +++ b/source/com.google.android.gms/play-services-vision-image-label/Transforms/Metadata.xml @@ -0,0 +1,25 @@ + + + Android.Gms.Vision.Label + Android.Gms.Vision.Label.Internal.Client + + false + false + + + + + + Android.Gms.Vision.ImageLabel + + + diff --git a/source/com.google.android.gms/play-services-vision-image-labeling-internal/Additions/Additions.cs b/source/com.google.android.gms/play-services-vision-image-labeling-internal/Additions/Additions.cs new file mode 100644 index 000000000..26375c851 --- /dev/null +++ b/source/com.google.android.gms/play-services-vision-image-labeling-internal/Additions/Additions.cs @@ -0,0 +1,5 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; + diff --git a/source/com.google.android.gms/play-services-vision-image-labeling-internal/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-vision-image-labeling-internal/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-vision-image-labeling-internal/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-vision-image-labeling-internal/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-vision-image-labeling-internal/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-vision-image-labeling-internal/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-vision-image-labeling-internal/Transforms/Metadata.Namespaces.xml b/source/com.google.android.gms/play-services-vision-image-labeling-internal/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..081ecbef3 --- /dev/null +++ b/source/com.google.android.gms/play-services-vision-image-labeling-internal/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,10 @@ + + + + Android.Gms.Dynamite.Descriptors.Vision.Ica + + + diff --git a/source/com.google.android.gms/play-services-vision-image-labeling-internal/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.gms/play-services-vision-image-labeling-internal/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.gms/play-services-vision-image-labeling-internal/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.gms/play-services-vision-image-labeling-internal/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-vision-image-labeling-internal/Transforms/Metadata.xml new file mode 100644 index 000000000..0c6aad77e --- /dev/null +++ b/source/com.google.android.gms/play-services-vision-image-labeling-internal/Transforms/Metadata.xml @@ -0,0 +1,17 @@ + + + Android.Gms.Vision.Label + Android.Gms.Vision.Label.Internal.Client + + false + false + + + + diff --git a/source/com.google.android.gms/play-services-vision/Additions/Additions.cs b/source/com.google.android.gms/play-services-vision/Additions/Additions.cs new file mode 100644 index 000000000..f3c75f5ba --- /dev/null +++ b/source/com.google.android.gms/play-services-vision/Additions/Additions.cs @@ -0,0 +1,46 @@ +using System; +using Android.Runtime; + +namespace Android.Gms.Vision.Barcodes +{ + public partial class Barcode + { + public BarcodeFormat Format { + get { + return (BarcodeFormat)_Format; + } + } + + public BarcodeValueFormat ValueFormat { + get { + return (BarcodeValueFormat)_ValueFormat; + } + } + } +} + +namespace Android.Gms.Vision.Faces +{ + public partial class FaceDetector + { + static IntPtr id_finalize; + // Metadata.xml XPath method reference: path="/api/package[@name='com.google.android.gms.vision.face']/class[@name='FaceDetector']/method[@name='finalize' and count(parameter)=0]" + [Register("finalize", "()V", "")] + protected new unsafe void Dispose() + { + if (id_finalize == IntPtr.Zero) + id_finalize = JNIEnv.GetMethodID(class_ref, "finalize", "()V"); + try + { + JNIEnv.CallVoidMethod(((global::Java.Lang.Object)this).Handle, id_finalize); + } + finally + { + } + + base.Dispose(); + } + + } +} + diff --git a/source/com.google.android.gms/play-services-vision/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-vision/Transforms/EnumFields.xml new file mode 100644 index 000000000..aed7ab480 --- /dev/null +++ b/source/com.google.android.gms/play-services-vision/Transforms/EnumFields.xml @@ -0,0 +1,108 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/com.google.android.gms/play-services-vision/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-vision/Transforms/EnumMethods.xml new file mode 100644 index 000000000..ff5f6063c --- /dev/null +++ b/source/com.google.android.gms/play-services-vision/Transforms/EnumMethods.xml @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/com.google.android.gms/play-services-vision/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-vision/Transforms/Metadata.xml new file mode 100644 index 000000000..8ccaec724 --- /dev/null +++ b/source/com.google.android.gms/play-services-vision/Transforms/Metadata.xml @@ -0,0 +1,52 @@ + + + Android.Gms.Vision + Android.Gms.Vision.Internal.Client + Android.Gms.Vision.Barcodes + Android.Gms.Vision.Barcodes.Internal.Client + Android.Gms.Vision.Faces + Android.Gms.Vision.Faces.Internal.Client + Android.Gms.Vision.Texts + Android.Gms.Vision.Texts.Internal.Client + + + Face + Barcode + + + + + + + + + + + + source + size + dest + flags + + + _Format + internal + _ValueFormat + internal + + CalendarEventValue + ContactInfoValue + DriverLicenseValue + EmailValue + GeoPointValue + PhoneValue + SmsValue + + + java.lang.Object + java.lang.Object + + + + + diff --git a/source/com.google.android.gms/play-services-wallet/Additions/Additions.cs b/source/com.google.android.gms/play-services-wallet/Additions/Additions.cs new file mode 100644 index 000000000..f546bafda --- /dev/null +++ b/source/com.google.android.gms/play-services-wallet/Additions/Additions.cs @@ -0,0 +1,13 @@ +using System; + +namespace Android.Gms.Wallet +{ + public partial class WalletClass + { + [Obsolete ("Use API instead")] + public static Android.Gms.Common.Apis.Api Api { + get { return null; } // Android.Gms.Wallet.WalletClass.API; } + } + } +} + diff --git a/source/com.google.android.gms/play-services-wallet/Additions/IPendingResultExtensions.cs b/source/com.google.android.gms/play-services-wallet/Additions/IPendingResultExtensions.cs new file mode 100644 index 000000000..5a3b79d67 --- /dev/null +++ b/source/com.google.android.gms/play-services-wallet/Additions/IPendingResultExtensions.cs @@ -0,0 +1,8 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Common.Apis; +using Android.Runtime; + +namespace Android.Gms.Wallet +{ +} diff --git a/source/com.google.android.gms/play-services-wallet/Additions/TaskExtensions.cs b/source/com.google.android.gms/play-services-wallet/Additions/TaskExtensions.cs new file mode 100644 index 000000000..c987012ab --- /dev/null +++ b/source/com.google.android.gms/play-services-wallet/Additions/TaskExtensions.cs @@ -0,0 +1,27 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Extensions; + +namespace Android.Gms.Wallet +{ + public partial class PaymentsClient + { + public Task IsReadyToPayAsync(IsReadyToPayRequest isReadyToPayRequest) + { + return IsReadyToPay(isReadyToPayRequest).AsAsync(); + } + + public Task LoadPaymentDataAsync(PaymentDataRequest paymentDataRequest) + { + return LoadPaymentData(paymentDataRequest).AsAsync(); + } + } + + public partial class WalletObjectsClient + { + public Task CreateWalletObjectsAsync(CreateWalletObjectsRequest request) + { + return CreateWalletObjects(request).AsAsync(); + } + } +} diff --git a/source/com.google.android.gms/play-services-wallet/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-wallet/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-wallet/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-wallet/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-wallet/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-wallet/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-wallet/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-wallet/Transforms/Metadata.xml new file mode 100644 index 000000000..cb1ad5421 --- /dev/null +++ b/source/com.google.android.gms/play-services-wallet/Transforms/Metadata.xml @@ -0,0 +1,76 @@ + + Android.Gms.Wallet + Android.Gms.Wallet.Fragment + Android.Gms.Wallet.Wobs + Android.Gms.Wallet.FirstParty + Android.Gms.Wallet.Callback + + WalletClass + WalletClass.WalletOptions + WalletClass.WalletOptions.Builder + + + API + + + + + + + + + + + + source + size + dest + flags + + TransactionStatus + LineItemRole + + LoyaltyPointsBalanceType + + + Android.Gms.Wallet.Button + + + Android.Gms.Wallet.Contract + + + + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + + diff --git a/source/com.google.android.gms/play-services-wearable/Additions/Additions.cs b/source/com.google.android.gms/play-services-wearable/Additions/Additions.cs new file mode 100644 index 000000000..36e04d25e --- /dev/null +++ b/source/com.google.android.gms/play-services-wearable/Additions/Additions.cs @@ -0,0 +1,15 @@ +using System; + +namespace Android.Gms.Wearable +{ + + public partial class WearableClass + { + [Obsolete ("Use API instead")] + public static Android.Gms.Common.Apis.Api Api { + get { return WearableClass.API; } + } + } + +} + diff --git a/source/com.google.android.gms/play-services-wearable/Additions/DataBufferAdditions.cs b/source/com.google.android.gms/play-services-wearable/Additions/DataBufferAdditions.cs new file mode 100644 index 000000000..7c8bdf4e3 --- /dev/null +++ b/source/com.google.android.gms/play-services-wearable/Additions/DataBufferAdditions.cs @@ -0,0 +1,33 @@ +using System; +using System.Linq; +using System.Collections.Generic; + +namespace Android.Gms.Wearable +{ + public partial class DataEventBuffer : IEnumerable + { + public IEnumerator GetEnumerator() + { + return this.ToEnumerable ().GetEnumerator(); + } + + System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() + { + return this.GetEnumerator(); + } + } + + public partial class DataItemBuffer : IEnumerable + { + public IEnumerator GetEnumerator() + { + return this.ToEnumerable ().GetEnumerator(); + } + + System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() + { + return this.GetEnumerator(); + } + } +} + diff --git a/source/com.google.android.gms/play-services-wearable/Additions/IPendingResultExtensions.cs b/source/com.google.android.gms/play-services-wearable/Additions/IPendingResultExtensions.cs new file mode 100644 index 000000000..1d0243291 --- /dev/null +++ b/source/com.google.android.gms/play-services-wearable/Additions/IPendingResultExtensions.cs @@ -0,0 +1,166 @@ +using System; +using System.Threading.Tasks; +using System.Collections.Generic; +using Android.Gms.Common.Apis; +using Android.Runtime; + +namespace Android.Gms.Wearable +{ + public static partial class ICapabilityApiExtensions + { + public static async Task AddCapabilityListenerAsync (this ICapabilityApi api, GoogleApiClient client, ICapabilityApiCapabilityListener listener, string capability) + { + return (await api.AddCapabilityListener (client, listener, capability)).JavaCast (); + } + public static async Task AddLocalCapabilityAsync (this ICapabilityApi api, GoogleApiClient client, string capability) + { + return (await api.AddLocalCapability (client, capability)).JavaCast (); + } + public static async Task GetAllCapabilitiesAsync (this ICapabilityApi api, GoogleApiClient client, int filter) + { + return (await api.GetAllCapabilities (client, filter)).JavaCast (); + } + public static async Task GetCapabilityAsync (this ICapabilityApi api, GoogleApiClient client, string capability, int filter) + { + return (await api.GetCapability (client, capability, filter)).JavaCast (); + } + public static async Task RemoveCapabilityListenerAsync (this ICapabilityApi api, GoogleApiClient client, ICapabilityApiCapabilityListener listener, string capability) + { + return (await api.RemoveCapabilityListener (client, listener, capability)).JavaCast (); + } + public static async Task RemoveLocalCapabilityAsync (this ICapabilityApi api, GoogleApiClient client, string capability) + { + return (await api.RemoveLocalCapability (client, capability)).JavaCast (); + } + } + + public static partial class IChannelExtensions + { + public static async Task AddListenerAsync (this IChannel api, GoogleApiClient client, IChannelApiChannelListener listener) + { + return (await api.AddListener (client, listener)).JavaCast (); + } + public static async Task CloseAsync (this IChannel api, GoogleApiClient client) + { + return (await api.Close (client)).JavaCast (); + } + public static async Task CloseAsync (this IChannel api, GoogleApiClient client, int errorCode) + { + return (await api.Close (client, errorCode)).JavaCast (); + } + public static async Task GetInputStreamAsync (this IChannel api, GoogleApiClient client) + { + return (await api.GetInputStream (client)).JavaCast (); + } + public static async Task GetOutputStreamAsync (this IChannel api, GoogleApiClient client) + { + return (await api.GetOutputStream (client)).JavaCast (); + } + public static async Task ReceiveFileAsync (this IChannel api, GoogleApiClient client, Android.Net.Uri uri, bool append) + { + return (await api.ReceiveFile (client, uri, append)).JavaCast (); + } + public static async Task RemoveListenerAsync (this IChannel api, GoogleApiClient client, IChannelApiChannelListener listener) + { + return (await api.RemoveListener (client, listener)).JavaCast (); + } + public static async Task SendFileAsync (this IChannel api, GoogleApiClient client, Android.Net.Uri uri) + { + return (await api.SendFile (client, uri)).JavaCast (); + } + public static async Task SendFileAsync (this IChannel api, GoogleApiClient client, Android.Net.Uri uri, long startOffset, long length) + { + return (await api.SendFile (client, uri, startOffset, length)).JavaCast (); + } + public static async Task AddListenerAsync (this IChannelApi api, GoogleApiClient client, IChannelApiChannelListener listener) + { + return (await api.AddListener (client, listener)).JavaCast (); + } + public static async Task OpenChannelAsync (this IChannelApi api, GoogleApiClient client, string nodeId, string path) + { + return (await api.OpenChannel (client, nodeId, path)).JavaCast (); + } + public static async Task RemoveListenerAsync (this IChannelApi api, GoogleApiClient client, IChannelApiChannelListener listener) + { + return (await api.RemoveListener (client, listener)).JavaCast (); + } + } + + public static partial class IDataApiExtensions + { + public static async Task AddListenerAsync (this IDataApi api, GoogleApiClient client, IDataApiDataListener listener) + { + return (await api.AddListener (client, listener)).JavaCast (); + } + public static async Task DeleteDataItemsAsync (this IDataApi api, GoogleApiClient client, Android.Net.Uri uri) + { + return (await api.DeleteDataItems (client, uri)).JavaCast (); + } + public static async Task DeleteDataItemsAsync (this IDataApi api, GoogleApiClient client, Android.Net.Uri uri, int filterType) + { + return (await api.DeleteDataItems (client, uri, filterType)).JavaCast (); + } + public static async Task GetDataItemAsync (this IDataApi api, GoogleApiClient client, Android.Net.Uri uri) + { + return (await api.GetDataItem (client, uri)).JavaCast (); + } + public static async Task GetDataItemsAsync (this IDataApi api, GoogleApiClient client) + { + return (await api.GetDataItems (client)).JavaCast (); + } + public static async Task GetDataItemsAsync (this IDataApi api, GoogleApiClient client, Android.Net.Uri uri) + { + return (await api.GetDataItems (client, uri)).JavaCast (); + } + public static async Task GetDataItemsAsync (this IDataApi api, GoogleApiClient client, Android.Net.Uri uri, int filterType) + { + return (await api.GetDataItems (client, uri, filterType)).JavaCast (); + } + public static async Task GetFdForAssetAsync (this IDataApi api, GoogleApiClient client, Asset asset) + { + return (await api.GetFdForAsset (client, asset)).JavaCast (); + } + public static async Task GetFdForAssetAsync (this IDataApi api, GoogleApiClient client, IDataItemAsset asset) + { + return (await api.GetFdForAsset (client, asset)).JavaCast (); + } + public static async Task PutDataItemAsync (this IDataApi api, GoogleApiClient client, PutDataRequest request) + { + return (await api.PutDataItem (client, request)).JavaCast (); + } + public static async Task RemoveListenerAsync (this IDataApi api, GoogleApiClient client, IDataApiDataListener listener) + { + return (await api.RemoveListener (client, listener)).JavaCast (); + } + } + + public static partial class IMessageApiExtensions + { + public static async Task AddListenerAsync (this IMessageApi api, GoogleApiClient client, IMessageApiMessageListener listener) + { + return (await api.AddListener (client, listener)).JavaCast (); + } + public static async Task RemoveListenerAsync (this IMessageApi api, GoogleApiClient client, IMessageApiMessageListener listener) + { + return (await api.RemoveListener (client, listener)).JavaCast (); + } + public static async Task SendMessageAsync (this IMessageApi api, GoogleApiClient client, string nodeId, string action, Byte[] data) + { + return (await api.SendMessage (client, nodeId, action, data)).JavaCast (); + } + } + + public static partial class INodeApiExtensions + { + public static async Task GetConnectedNodesAsync (this INodeApi api, GoogleApiClient client) + { + return (await api.GetConnectedNodes (client)).JavaCast (); + } + public static async Task GetLocalNodeAsync (this INodeApi api, GoogleApiClient client) + { + return (await api.GetLocalNode (client)).JavaCast (); + } + } +} + + diff --git a/source/com.google.android.gms/play-services-wearable/Additions/TaskExtensions.cs b/source/com.google.android.gms/play-services-wearable/Additions/TaskExtensions.cs new file mode 100644 index 000000000..924f416f5 --- /dev/null +++ b/source/com.google.android.gms/play-services-wearable/Additions/TaskExtensions.cs @@ -0,0 +1,214 @@ +using System; +using System.Collections.Generic; +using System.Threading.Tasks; +using Android.Runtime; +using Java.IO; +using Android.Gms.Extensions; + +namespace Android.Gms.Wearable +{ + public partial class CapabilityClient + { + public Task AddListenerAsync (IOnCapabilityChangedListener p0, Android.Net.Uri p1, int p2) + { + return AddListener (p0, p1, p2).AsAsync (); + } + + public Task AddListenerAsync (IOnCapabilityChangedListener p0, String p1) + { + return AddListener (p0, p1).AsAsync (); + } + + public Task AddLocalCapabilityAsync (String p0) + { + return AddLocalCapability (p0).AsAsync (); + } + + public Task> GetAllCapabilitiesAsync (int p0) + { + return GetAllCapabilities (p0).AsAsync> (); + } + + public Task GetCapabilityAsync (String p0, int p1) + { + return GetCapability (p0, p1).AsAsync (); + } + + public Task RemoveListenerAsync (IOnCapabilityChangedListener p0) + { + return RemoveListener (p0).AsAsync (); + } + + public Task RemoveListenerAsync (IOnCapabilityChangedListener p0, String p1) + { + return RemoveListener (p0, p1).AsAsync (); + } + + public Task RemoveLocalCapabilityAsync (String p0) + { + return RemoveLocalCapability (p0).AsAsync (); + } + } + + public partial class ChannelClient + { + public Task CloseAsync (IChannel p0) + { + return Close (p0).AsAsync (); + } + + public Task CloseAsync (IChannel p0, int p1) + { + return Close (p0, p1).AsAsync (); + } + + public Task GetInputStreamAsync (IChannel p0) + { + return GetInputStream (p0).AsAsync (); + } + + public Task GetOutputStreamAsync (IChannel p0) + { + return GetOutputStream (p0).AsAsync (); + } + + public Task OpenChannelAsync (String p0, String p1) + { + return OpenChannel (p0, p1).AsAsync (); + } + + public Task ReceiveFileAsync (IChannel p0, Android.Net.Uri p1, bool p2) + { + return ReceiveFile (p0, p1, p2).AsAsync (); + } + + public Task RegisterChannelCallbackAsync (IChannel p0, ChannelCallback p1) + { + return RegisterChannelCallback (p0, p1).AsAsync (); + } + + public Task RegisterChannelCallbackAsync (ChannelCallback p0) + { + return RegisterChannelCallback (p0).AsAsync (); + } + + public Task SendFileAsync (IChannel p0, Android.Net.Uri p1) + { + return SendFile (p0, p1).AsAsync (); + } + + public Task SendFileAsync (IChannel p0, Android.Net.Uri p1, long p2, long p3) + { + return SendFile (p0, p1, p2, p3).AsAsync (); + } + + public Task UnregisterChannelCallbackAsync (IChannel p0, ChannelCallback p1) + { + return UnregisterChannelCallback (p0, p1).AsAsync (); + } + + public Task UnregisterChannelCallbackAsync (ChannelCallback p0) + { + return UnregisterChannelCallback (p0).AsAsync (); + } + } + + public partial class DataClient + { + public Task AddListenerAsync (IOnDataChangedListener p0) + { + return AddListener (p0).AsAsync (); + } + + public Task AddListenerAsync (IOnDataChangedListener p0, Android.Net.Uri p1, int p2) + { + return AddListener (p0, p1, p2).AsAsync (); + } + + public Task DeleteDataItemsAsync (Android.Net.Uri p0) + { + return DeleteDataItems (p0).AsAsync (); + } + + public Task DeleteDataItemsAsync (Android.Net.Uri p0, int p1) + { + return DeleteDataItems (p0, p1).AsAsync (); + } + + public Task GetDataItemAsync (Android.Net.Uri p0) + { + return GetDataItem (p0).AsAsync (); + } + + public Task GetDataItemsAsync () + { + return GetDataItems ().AsAsync (); + } + + public Task GetDataItemsAsync (Android.Net.Uri p0) + { + return GetDataItems (p0).AsAsync (); + } + + public Task GetDataItemsAsync (Android.Net.Uri p0, int p1) + { + return GetDataItems (p0, p1).AsAsync (); + } + + //public Task GetFdForAssetAsync (Asset p0) + //{ + // return GetFdForAsset (p0).AsAsync (); + //} + + //public Task GetFdForAssetAsync (IDataItemAsset p0) + //{ + // return GetFdForAsset (p0).AsAsync (); + //} + + public Task PutDataItemAsync (PutDataRequest p0) + { + return PutDataItem (p0).AsAsync (); + } + + public Task RemoveListenerAsync (IOnDataChangedListener p0) + { + return RemoveListener (p0).AsAsync (); + } + } + + public partial class MessageClient + { + public Task AddListenerAsync (IOnMessageReceivedListener p0) + { + return AddListener (p0).AsAsync (); + } + + public Task AddListenerAsync (IOnMessageReceivedListener p0, Android.Net.Uri p1, int p2) + { + return AddListener (p0, p1, p2).AsAsync (); + } + + public Task RemoveListenerAsync (IOnMessageReceivedListener p0) + { + return RemoveListener (p0).AsAsync (); + } + + public Task SendMessageAsync (String p0, String p1, byte[] p2) + { + return SendMessage (p0, p1, p2).AsAsync (); + } + } + + public partial class NodeClient + { + public Task> GetConnectedNodesAsync () + { + return GetConnectedNodes ().AsAsync> (); + } + + public Task GetLocalNodeAsync () + { + return GetLocalNode ().AsAsync (); + } + } +} diff --git a/source/com.google.android.gms/play-services-wearable/Transforms/EnumFields.xml b/source/com.google.android.gms/play-services-wearable/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.android.gms/play-services-wearable/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-wearable/Transforms/EnumMethods.xml b/source/com.google.android.gms/play-services-wearable/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.android.gms/play-services-wearable/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.android.gms/play-services-wearable/Transforms/Metadata.xml b/source/com.google.android.gms/play-services-wearable/Transforms/Metadata.xml new file mode 100644 index 000000000..49e689156 --- /dev/null +++ b/source/com.google.android.gms/play-services-wearable/Transforms/Metadata.xml @@ -0,0 +1,73 @@ + + Android.Gms.Wearable + + WearableClass + WearableClass.WearableOptions + WearableClass.WearableOptions.Builder + + + API + + + + + + + + + + + + + source + size + dest + flags + + + + + + + + + + + + + + + + + + + + + + + + PeerConnectedEventArgs + + + PeerDisconnectedEventArgs + + + diff --git a/source/com.google.android.libraries.identity.googleid/googleid/Transforms/Metadata.Namespaces.xml b/source/com.google.android.libraries.identity.googleid/googleid/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..da0b35faf --- /dev/null +++ b/source/com.google.android.libraries.identity.googleid/googleid/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,10 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.libraries.identity.googleid/googleid/Transforms/Metadata.xml b/source/com.google.android.libraries.identity.googleid/googleid/Transforms/Metadata.xml new file mode 100644 index 000000000..a39a076d4 --- /dev/null +++ b/source/com.google.android.libraries.identity.googleid/googleid/Transforms/Metadata.xml @@ -0,0 +1,8 @@ + + + Xamarin.GoogleAndroid.Libraries.Identity.GoogleId + + \ No newline at end of file diff --git a/source/com.google.android.libraries.places/places-compat/Additions/Additions.cs b/source/com.google.android.libraries.places/places-compat/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.libraries.places/places-compat/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.libraries.places/places-compat/Transforms/EnumFields.xml b/source/com.google.android.libraries.places/places-compat/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.libraries.places/places-compat/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.libraries.places/places-compat/Transforms/EnumMethods.xml b/source/com.google.android.libraries.places/places-compat/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.libraries.places/places-compat/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.libraries.places/places-compat/Transforms/Metadata.Namespaces.xml b/source/com.google.android.libraries.places/places-compat/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..fa3d7760f --- /dev/null +++ b/source/com.google.android.libraries.places/places-compat/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,40 @@ + + + + Xamarin.GoogleAndroid.Libraries.Places.Compat + + + Xamarin.GoogleAndroid.Libraries.Places.Compat.Internal + + + Xamarin.GoogleAndroid.Libraries.Places.Compat.UI + + + Xamarin.GoogleAndroid.Libraries.Places.Widget + + + Xamarin.GoogleAndroid.Libraries.Places.Widget.Internal + + + Xamarin.GoogleAndroid.Libraries.Places.Widget.Internal.UI + + + \ No newline at end of file diff --git a/source/com.google.android.libraries.places/places-compat/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.libraries.places/places-compat/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.libraries.places/places-compat/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.libraries.places/places-compat/Transforms/Metadata.xml b/source/com.google.android.libraries.places/places-compat/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.libraries.places/places-compat/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.libraries.places/places/Additions/Additions.cs b/source/com.google.android.libraries.places/places/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.libraries.places/places/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.libraries.places/places/Transforms/EnumFields.xml b/source/com.google.android.libraries.places/places/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.libraries.places/places/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.libraries.places/places/Transforms/EnumMethods.xml b/source/com.google.android.libraries.places/places/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.libraries.places/places/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.libraries.places/places/Transforms/Metadata.Namespaces.xml b/source/com.google.android.libraries.places/places/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..27f20b4c9 --- /dev/null +++ b/source/com.google.android.libraries.places/places/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,56 @@ + + + Xamarin.GoogleAndroid.Libraries.Places.Api + + + Xamarin.GoogleAndroid.Libraries.Places.Api.Model + + + Xamarin.GoogleAndroid.Libraries.Places.Api.Net + + + Xamarin.GoogleAndroid.Libraries.Places.Internal + + + Xamarin.GoogleAndroid.Libraries.Places.Widget + + + Xamarin.GoogleAndroid.Libraries.Places.Widget.Listener + + + Xamarin.GoogleAndroid.Libraries.Places.Widget.Model + + + Xamarin.GoogleAndroid.Libraries.Places.Widget.Internal + + + Xamarin.GoogleAndroid.Libraries.Places.Widget.Internal.UI + + \ No newline at end of file diff --git a/source/com.google.android.libraries.places/places/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.libraries.places/places/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.libraries.places/places/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.libraries.places/places/Transforms/Metadata.xml b/source/com.google.android.libraries.places/places/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.libraries.places/places/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.material/material.extensions/gradlew.bat b/source/com.google.android.material/material.extensions/gradlew.bat index 9109989e3..7062d1685 100644 --- a/source/com.google.android.material/material.extensions/gradlew.bat +++ b/source/com.google.android.material/material.extensions/gradlew.bat @@ -85,6 +85,15 @@ set CMD_LINE_ARGS=%* set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar @rem Execute Gradle +echo About to run gradle: +echo JAVA_EXE - "%JAVA_EXE%" +echo DEFAULT_JVM_OPTS - %DEFAULT_JVM_OPTS% +echo JAVA_OPTS - %JAVA_OPTS% +echo GRADLE_OPTS - %GRADLE_OPTS% +echo APP_BASE_NAME - %APP_BASE_NAME% +echo CLASSPATH - %CLASSPATH% +echo CMD_LINE_ARGS - %CMD_LINE_ARGS% + "%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% :end diff --git a/source/com.google.android.odml/image/Additions/Additions.cs b/source/com.google.android.odml/image/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.odml/image/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.odml/image/Transforms/EnumFields.xml b/source/com.google.android.odml/image/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.odml/image/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.odml/image/Transforms/EnumMethods.xml b/source/com.google.android.odml/image/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.odml/image/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.odml/image/Transforms/Metadata.Namespaces.xml b/source/com.google.android.odml/image/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..21cfca205 --- /dev/null +++ b/source/com.google.android.odml/image/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,10 @@ + + + Xamarin.Google.Android.Odml.Image + + + \ No newline at end of file diff --git a/source/com.google.android.odml/image/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.odml/image/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.odml/image/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.odml/image/Transforms/Metadata.xml b/source/com.google.android.odml/image/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.odml/image/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.play/app-update-ktx/Transforms/Metadata.Namespaces.xml b/source/com.google.android.play/app-update-ktx/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..353ba744d --- /dev/null +++ b/source/com.google.android.play/app-update-ktx/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Xamarin.Google.Android.Play.Core.Ktx + + \ No newline at end of file diff --git a/source/com.google.android.play/app-update-ktx/Transforms/Metadata.xml b/source/com.google.android.play/app-update-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.play/app-update-ktx/Transforms/Metadata.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.play/app-update/Transforms/Metadata.Namespaces.xml b/source/com.google.android.play/app-update/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..9236be54d --- /dev/null +++ b/source/com.google.android.play/app-update/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,33 @@ + + + Xamarin.Google.Android.Play.Core.AppUpdate + + + Xamarin.Google.Android.Play.Core.AppUpdate.Internal + + + Xamarin.Google.Android.Play.Core.AppUpdate.Testing + + + Xamarin.Google.Android.Play.Core.AppUpdate.Install + + + Xamarin.Google.Android.Play.Core.AppUpdate.Install.Model + + + \ No newline at end of file diff --git a/source/com.google.android.play/app-update/Transforms/Metadata.xml b/source/com.google.android.play/app-update/Transforms/Metadata.xml new file mode 100644 index 000000000..5f179c8e7 --- /dev/null +++ b/source/com.google.android.play/app-update/Transforms/Metadata.xml @@ -0,0 +1,25 @@ + + + + + + + + + \ No newline at end of file diff --git a/source/com.google.android.play/asset-delivery-ktx/Transforms/Metadata.Namespaces.xml b/source/com.google.android.play/asset-delivery-ktx/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..aa29ba694 --- /dev/null +++ b/source/com.google.android.play/asset-delivery-ktx/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Xamarin.Google.Android.Play.Core.Ktx + + \ No newline at end of file diff --git a/source/com.google.android.play/asset-delivery-ktx/Transforms/Metadata.xml b/source/com.google.android.play/asset-delivery-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.play/asset-delivery-ktx/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.play/asset-delivery/Transforms/Metadata.Namespaces.xml b/source/com.google.android.play/asset-delivery/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..0a29f14ef --- /dev/null +++ b/source/com.google.android.play/asset-delivery/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,26 @@ + + + Xamarin.Google.Android.Play.Core.AssetPacks + + + Xamarin.Google.Android.Play.Core.AssetPacks.Internal + + + Xamarin.Google.Android.Play.Core.AssetPacks.Model + + + Xamarin.Google.Android.Play.Core.AssetPacks + + + \ No newline at end of file diff --git a/source/com.google.android.play/asset-delivery/Transforms/Metadata.xml b/source/com.google.android.play/asset-delivery/Transforms/Metadata.xml new file mode 100644 index 000000000..5fb752735 --- /dev/null +++ b/source/com.google.android.play/asset-delivery/Transforms/Metadata.xml @@ -0,0 +1,20 @@ + + + Java.Lang.Object + + + Java.Lang.Object + + + state + + \ No newline at end of file diff --git a/source/com.google.android.play/asset.delivery.extensions/.gitignore b/source/com.google.android.play/asset.delivery.extensions/.gitignore new file mode 100644 index 000000000..42afabfd2 --- /dev/null +++ b/source/com.google.android.play/asset.delivery.extensions/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/source/com.google.android.play/asset.delivery.extensions/app/.classpath b/source/com.google.android.play/asset.delivery.extensions/app/.classpath new file mode 100644 index 000000000..4a04201ca --- /dev/null +++ b/source/com.google.android.play/asset.delivery.extensions/app/.classpath @@ -0,0 +1,6 @@ + + + + + + diff --git a/source/com.google.android.play/asset.delivery.extensions/app/.gitignore b/source/com.google.android.play/asset.delivery.extensions/app/.gitignore new file mode 100644 index 000000000..42afabfd2 --- /dev/null +++ b/source/com.google.android.play/asset.delivery.extensions/app/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/source/com.google.android.play/asset.delivery.extensions/app/.project b/source/com.google.android.play/asset.delivery.extensions/app/.project new file mode 100644 index 000000000..863eb2e67 --- /dev/null +++ b/source/com.google.android.play/asset.delivery.extensions/app/.project @@ -0,0 +1,34 @@ + + + app + Project app created by Buildship. + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.buildship.core.gradleprojectbuilder + + + + + + org.eclipse.jdt.core.javanature + org.eclipse.buildship.core.gradleprojectnature + + + + 1667565327392 + + 30 + + org.eclipse.core.resources.regexFilterMatcher + node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__ + + + + diff --git a/source/com.google.android.play/asset.delivery.extensions/app/.settings/org.eclipse.buildship.core.prefs b/source/com.google.android.play/asset.delivery.extensions/app/.settings/org.eclipse.buildship.core.prefs new file mode 100644 index 000000000..b1886adb4 --- /dev/null +++ b/source/com.google.android.play/asset.delivery.extensions/app/.settings/org.eclipse.buildship.core.prefs @@ -0,0 +1,2 @@ +connection.project.dir=.. +eclipse.preferences.version=1 diff --git a/source/com.google.android.play/asset.delivery.extensions/build.gradle b/source/com.google.android.play/asset.delivery.extensions/build.gradle new file mode 100644 index 000000000..3f802e378 --- /dev/null +++ b/source/com.google.android.play/asset.delivery.extensions/build.gradle @@ -0,0 +1,24 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. +buildscript { + repositories { + google() + jcenter() + } + dependencies { + classpath "com.android.tools.build:gradle:3.6.2" + + // NOTE: Do not place your application dependencies here; they belong + // in the individual module build.gradle files + } +} + +allprojects { + repositories { + google() + jcenter() + } +} + +task clean(type: Delete) { + delete rootProject.buildDir +} \ No newline at end of file diff --git a/source/com.google.android.play/asset.delivery.extensions/extensions-aar/.classpath b/source/com.google.android.play/asset.delivery.extensions/extensions-aar/.classpath new file mode 100644 index 000000000..4a04201ca --- /dev/null +++ b/source/com.google.android.play/asset.delivery.extensions/extensions-aar/.classpath @@ -0,0 +1,6 @@ + + + + + + diff --git a/source/com.google.android.play/asset.delivery.extensions/extensions-aar/.gitignore b/source/com.google.android.play/asset.delivery.extensions/extensions-aar/.gitignore new file mode 100644 index 000000000..42afabfd2 --- /dev/null +++ b/source/com.google.android.play/asset.delivery.extensions/extensions-aar/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/source/com.google.android.play/asset.delivery.extensions/extensions-aar/.project b/source/com.google.android.play/asset.delivery.extensions/extensions-aar/.project new file mode 100644 index 000000000..71af495ef --- /dev/null +++ b/source/com.google.android.play/asset.delivery.extensions/extensions-aar/.project @@ -0,0 +1,34 @@ + + + extensions-aar + Project playcorehelper created by Buildship. + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.buildship.core.gradleprojectbuilder + + + + + + org.eclipse.jdt.core.javanature + org.eclipse.buildship.core.gradleprojectnature + + + + 1667565327400 + + 30 + + org.eclipse.core.resources.regexFilterMatcher + node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__ + + + + diff --git a/source/com.google.android.play/asset.delivery.extensions/extensions-aar/.settings/org.eclipse.buildship.core.prefs b/source/com.google.android.play/asset.delivery.extensions/extensions-aar/.settings/org.eclipse.buildship.core.prefs new file mode 100644 index 000000000..b1886adb4 --- /dev/null +++ b/source/com.google.android.play/asset.delivery.extensions/extensions-aar/.settings/org.eclipse.buildship.core.prefs @@ -0,0 +1,2 @@ +connection.project.dir=.. +eclipse.preferences.version=1 diff --git a/source/com.google.android.play/asset.delivery.extensions/extensions-aar/build.gradle b/source/com.google.android.play/asset.delivery.extensions/extensions-aar/build.gradle new file mode 100644 index 000000000..2b280fdb3 --- /dev/null +++ b/source/com.google.android.play/asset.delivery.extensions/extensions-aar/build.gradle @@ -0,0 +1,37 @@ +apply plugin: 'com.android.library' + +android { + compileSdkVersion 29 + buildToolsVersion "30.0.2" + + defaultConfig { + minSdkVersion 21 + targetSdkVersion 29 + versionCode 1 + versionName "1.0" + + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + consumerProguardFiles "consumer-rules.pro" + } + + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' + } + } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } +} + +dependencies { + implementation fileTree(dir: "libs", include: ["*.jar"]) + implementation 'androidx.appcompat:appcompat:1.2.0' + implementation 'com.google.android.play:asset-delivery:2.2.0' + testImplementation 'junit:junit:4.12' + androidTestImplementation 'androidx.test.ext:junit:1.1.2' + androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0' + +} \ No newline at end of file diff --git a/source/com.google.android.play/asset.delivery.extensions/extensions-aar/consumer-rules.pro b/source/com.google.android.play/asset.delivery.extensions/extensions-aar/consumer-rules.pro new file mode 100644 index 000000000..e69de29bb diff --git a/source/com.google.android.play/asset.delivery.extensions/extensions-aar/proguard-rules.pro b/source/com.google.android.play/asset.delivery.extensions/extensions-aar/proguard-rules.pro new file mode 100644 index 000000000..481bb4348 --- /dev/null +++ b/source/com.google.android.play/asset.delivery.extensions/extensions-aar/proguard-rules.pro @@ -0,0 +1,21 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/source/com.google.android.play/asset.delivery.extensions/extensions-aar/src/main/AndroidManifest.xml b/source/com.google.android.play/asset.delivery.extensions/extensions-aar/src/main/AndroidManifest.xml new file mode 100644 index 000000000..55c74d424 --- /dev/null +++ b/source/com.google.android.play/asset.delivery.extensions/extensions-aar/src/main/AndroidManifest.xml @@ -0,0 +1,5 @@ + + + / + \ No newline at end of file diff --git a/source/com.google.android.play/asset.delivery.extensions/extensions-aar/src/main/java/xamarin/google/android/play/core/assetpacks/AssetPackStateUpdateListenerWrapper.java b/source/com.google.android.play/asset.delivery.extensions/extensions-aar/src/main/java/xamarin/google/android/play/core/assetpacks/AssetPackStateUpdateListenerWrapper.java new file mode 100644 index 000000000..198549974 --- /dev/null +++ b/source/com.google.android.play/asset.delivery.extensions/extensions-aar/src/main/java/xamarin/google/android/play/core/assetpacks/AssetPackStateUpdateListenerWrapper.java @@ -0,0 +1,37 @@ +package xamarin.google.android.play.core.assetpacks; + +import com.google.android.play.core.assetpacks.AssetPackState; +import com.google.android.play.core.assetpacks.AssetPackStateUpdateListener; + +public class AssetPackStateUpdateListenerWrapper { + private AssetPackStateUpdateListener assetPackStateUpdatedListener = state -> { + onStateUpdate (state); + }; + + void onStateUpdate(AssetPackState state) + { + if (stateUpdateListener != null) + stateUpdateListener.OnStateUpdate(state); + } + + public AssetPackStateUpdateListener GetListener() + { + return assetPackStateUpdatedListener; + } + + public interface AssetPackStateListener { + /** + * Called when an the State is Updated + * + * @param state The Install Session State. + */ + abstract void OnStateUpdate (AssetPackState state); + } + + private AssetPackStateListener stateUpdateListener = null; + + public void setStateUpdateListener (AssetPackStateListener listener) + { + stateUpdateListener = listener; + } +} diff --git a/source/com.google.android.play/asset.delivery.extensions/gradle.properties b/source/com.google.android.play/asset.delivery.extensions/gradle.properties new file mode 100644 index 000000000..c52ac9b79 --- /dev/null +++ b/source/com.google.android.play/asset.delivery.extensions/gradle.properties @@ -0,0 +1,19 @@ +# Project-wide Gradle settings. +# IDE (e.g. Android Studio) users: +# Gradle settings configured through the IDE *will override* +# any settings specified in this file. +# For more details on how to configure your build environment visit +# http://www.gradle.org/docs/current/userguide/build_environment.html +# Specifies the JVM arguments used for the daemon process. +# The setting is particularly useful for tweaking memory settings. +org.gradle.jvmargs=-Xmx2048m +# When configured, Gradle will run in incubating parallel mode. +# This option should only be used with decoupled projects. More details, visit +# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects +# org.gradle.parallel=true +# AndroidX package structure to make it clearer which packages are bundled with the +# Android operating system, and which are packaged with your app"s APK +# https://developer.android.com/topic/libraries/support-library/androidx-rn +android.useAndroidX=true +# Automatically convert third-party libraries to use AndroidX +android.enableJetifier=true \ No newline at end of file diff --git a/source/com.google.android.play/asset.delivery.extensions/gradle/wrapper/gradle-wrapper.jar b/source/com.google.android.play/asset.delivery.extensions/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 000000000..490fda857 Binary files /dev/null and b/source/com.google.android.play/asset.delivery.extensions/gradle/wrapper/gradle-wrapper.jar differ diff --git a/source/com.google.android.play/asset.delivery.extensions/gradle/wrapper/gradle-wrapper.properties b/source/com.google.android.play/asset.delivery.extensions/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 000000000..a4b442974 --- /dev/null +++ b/source/com.google.android.play/asset.delivery.extensions/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-6.3-bin.zip +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/source/com.google.android.play/asset.delivery.extensions/gradlew b/source/com.google.android.play/asset.delivery.extensions/gradlew new file mode 100644 index 000000000..2fe81a7d9 --- /dev/null +++ b/source/com.google.android.play/asset.delivery.extensions/gradlew @@ -0,0 +1,183 @@ +#!/usr/bin/env sh + +# +# Copyright 2015 the original author or authors. +# +# 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 +# +# https://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. +# + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# 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 +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$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" + +warn () { + echo "$*" +} + +die () { + echo + echo "$*" + echo + exit 1 +} + +# 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 + ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +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" + else + 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" + 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" ;; + 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, 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" + +exec "$JAVACMD" "$@" diff --git a/source/com.google.android.play/asset.delivery.extensions/gradlew.bat b/source/com.google.android.play/asset.delivery.extensions/gradlew.bat new file mode 100644 index 000000000..9697dcc1a --- /dev/null +++ b/source/com.google.android.play/asset.delivery.extensions/gradlew.bat @@ -0,0 +1,112 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windows variants + +if not "%OS%" == "Windows_NT" goto win9xME_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +echo About to run gradle: +echo JAVA_EXE - "%JAVA_EXE%" +echo DEFAULT_JVM_OPTS - %DEFAULT_JVM_OPTS% +echo JAVA_OPTS - %JAVA_OPTS% +echo GRADLE_OPTS - %GRADLE_OPTS% +echo APP_BASE_NAME - %APP_BASE_NAME% +echo CLASSPATH - %CLASSPATH% +echo CMD_LINE_ARGS - %CMD_LINE_ARGS% + +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/source/com.google.android.play/asset.delivery.extensions/settings.gradle b/source/com.google.android.play/asset.delivery.extensions/settings.gradle new file mode 100644 index 000000000..008cc861d --- /dev/null +++ b/source/com.google.android.play/asset.delivery.extensions/settings.gradle @@ -0,0 +1,3 @@ +include ':extensions-aar' +include ':app' +rootProject.name = "PlayCore" \ No newline at end of file diff --git a/source/com.google.android.play/core-common/Transforms/Metadata.Namespaces.xml b/source/com.google.android.play/core-common/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..6fd4e5efa --- /dev/null +++ b/source/com.google.android.play/core-common/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,14 @@ + + + Xamarin.Google.Android.Play.Core.Common + + + Xamarin.Google.Android.Play.Core.Listener + + \ No newline at end of file diff --git a/source/com.google.android.play/core-common/Transforms/Metadata.xml b/source/com.google.android.play/core-common/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.play/core-common/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.play/core-ktx/Transforms/Metadata.Namespaces.xml b/source/com.google.android.play/core-ktx/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..aa29ba694 --- /dev/null +++ b/source/com.google.android.play/core-ktx/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Xamarin.Google.Android.Play.Core.Ktx + + \ No newline at end of file diff --git a/source/com.google.android.play/core-ktx/Transforms/Metadata.xml b/source/com.google.android.play/core-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.play/core-ktx/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.play/core.extensions/.gitignore b/source/com.google.android.play/core.extensions/.gitignore new file mode 100644 index 000000000..42afabfd2 --- /dev/null +++ b/source/com.google.android.play/core.extensions/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/source/com.google.android.play/core.extensions/app/.classpath b/source/com.google.android.play/core.extensions/app/.classpath new file mode 100644 index 000000000..4a04201ca --- /dev/null +++ b/source/com.google.android.play/core.extensions/app/.classpath @@ -0,0 +1,6 @@ + + + + + + diff --git a/source/com.google.android.play/core.extensions/app/.gitignore b/source/com.google.android.play/core.extensions/app/.gitignore new file mode 100644 index 000000000..42afabfd2 --- /dev/null +++ b/source/com.google.android.play/core.extensions/app/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/source/com.google.android.play/core.extensions/app/.project b/source/com.google.android.play/core.extensions/app/.project new file mode 100644 index 000000000..bc2509de2 --- /dev/null +++ b/source/com.google.android.play/core.extensions/app/.project @@ -0,0 +1,34 @@ + + + app + Project app created by Buildship. + + + + + org.eclipse.buildship.core.gradleprojectbuilder + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + org.eclipse.buildship.core.gradleprojectnature + + + + 1667565327392 + + 30 + + org.eclipse.core.resources.regexFilterMatcher + node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__ + + + + diff --git a/source/com.google.android.play/core.extensions/app/.settings/org.eclipse.buildship.core.prefs b/source/com.google.android.play/core.extensions/app/.settings/org.eclipse.buildship.core.prefs new file mode 100644 index 000000000..b1886adb4 --- /dev/null +++ b/source/com.google.android.play/core.extensions/app/.settings/org.eclipse.buildship.core.prefs @@ -0,0 +1,2 @@ +connection.project.dir=.. +eclipse.preferences.version=1 diff --git a/source/com.google.android.play/core.extensions/build.gradle b/source/com.google.android.play/core.extensions/build.gradle new file mode 100644 index 000000000..3f802e378 --- /dev/null +++ b/source/com.google.android.play/core.extensions/build.gradle @@ -0,0 +1,24 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. +buildscript { + repositories { + google() + jcenter() + } + dependencies { + classpath "com.android.tools.build:gradle:3.6.2" + + // NOTE: Do not place your application dependencies here; they belong + // in the individual module build.gradle files + } +} + +allprojects { + repositories { + google() + jcenter() + } +} + +task clean(type: Delete) { + delete rootProject.buildDir +} \ No newline at end of file diff --git a/source/com.google.android.play/core.extensions/extensions-aar/.classpath b/source/com.google.android.play/core.extensions/extensions-aar/.classpath new file mode 100644 index 000000000..4a04201ca --- /dev/null +++ b/source/com.google.android.play/core.extensions/extensions-aar/.classpath @@ -0,0 +1,6 @@ + + + + + + diff --git a/source/com.google.android.play/core.extensions/extensions-aar/.gitignore b/source/com.google.android.play/core.extensions/extensions-aar/.gitignore new file mode 100644 index 000000000..42afabfd2 --- /dev/null +++ b/source/com.google.android.play/core.extensions/extensions-aar/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/source/com.google.android.play/core.extensions/extensions-aar/.project b/source/com.google.android.play/core.extensions/extensions-aar/.project new file mode 100644 index 000000000..71af495ef --- /dev/null +++ b/source/com.google.android.play/core.extensions/extensions-aar/.project @@ -0,0 +1,34 @@ + + + extensions-aar + Project playcorehelper created by Buildship. + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.buildship.core.gradleprojectbuilder + + + + + + org.eclipse.jdt.core.javanature + org.eclipse.buildship.core.gradleprojectnature + + + + 1667565327400 + + 30 + + org.eclipse.core.resources.regexFilterMatcher + node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__ + + + + diff --git a/source/com.google.android.play/core.extensions/extensions-aar/.settings/org.eclipse.buildship.core.prefs b/source/com.google.android.play/core.extensions/extensions-aar/.settings/org.eclipse.buildship.core.prefs new file mode 100644 index 000000000..b1886adb4 --- /dev/null +++ b/source/com.google.android.play/core.extensions/extensions-aar/.settings/org.eclipse.buildship.core.prefs @@ -0,0 +1,2 @@ +connection.project.dir=.. +eclipse.preferences.version=1 diff --git a/source/com.google.android.play/core.extensions/extensions-aar/build.gradle b/source/com.google.android.play/core.extensions/extensions-aar/build.gradle new file mode 100644 index 000000000..0e76ab673 --- /dev/null +++ b/source/com.google.android.play/core.extensions/extensions-aar/build.gradle @@ -0,0 +1,37 @@ +apply plugin: 'com.android.library' + +android { + compileSdkVersion 29 + buildToolsVersion "30.0.2" + + defaultConfig { + minSdkVersion 21 + targetSdkVersion 29 + versionCode 1 + versionName "1.0" + + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + consumerProguardFiles "consumer-rules.pro" + } + + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' + } + } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } +} + +dependencies { + implementation fileTree(dir: "libs", include: ["*.jar"]) + implementation 'androidx.appcompat:appcompat:1.2.0' + implementation 'com.google.android.play:core:1.10.2' + testImplementation 'junit:junit:4.12' + androidTestImplementation 'androidx.test.ext:junit:1.1.2' + androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0' + +} \ No newline at end of file diff --git a/source/com.google.android.play/core.extensions/extensions-aar/consumer-rules.pro b/source/com.google.android.play/core.extensions/extensions-aar/consumer-rules.pro new file mode 100644 index 000000000..e69de29bb diff --git a/source/com.google.android.play/core.extensions/extensions-aar/proguard-rules.pro b/source/com.google.android.play/core.extensions/extensions-aar/proguard-rules.pro new file mode 100644 index 000000000..481bb4348 --- /dev/null +++ b/source/com.google.android.play/core.extensions/extensions-aar/proguard-rules.pro @@ -0,0 +1,21 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/source/com.google.android.play/core.extensions/extensions-aar/src/main/AndroidManifest.xml b/source/com.google.android.play/core.extensions/extensions-aar/src/main/AndroidManifest.xml new file mode 100644 index 000000000..ed53fece9 --- /dev/null +++ b/source/com.google.android.play/core.extensions/extensions-aar/src/main/AndroidManifest.xml @@ -0,0 +1,5 @@ + + + / + \ No newline at end of file diff --git a/source/com.google.android.play/core.extensions/extensions-aar/src/main/java/xamarin/google/android/play/core/assetpacks/AssetPackStateUpdateListenerWrapper.java b/source/com.google.android.play/core.extensions/extensions-aar/src/main/java/xamarin/google/android/play/core/assetpacks/AssetPackStateUpdateListenerWrapper.java new file mode 100644 index 000000000..198549974 --- /dev/null +++ b/source/com.google.android.play/core.extensions/extensions-aar/src/main/java/xamarin/google/android/play/core/assetpacks/AssetPackStateUpdateListenerWrapper.java @@ -0,0 +1,37 @@ +package xamarin.google.android.play.core.assetpacks; + +import com.google.android.play.core.assetpacks.AssetPackState; +import com.google.android.play.core.assetpacks.AssetPackStateUpdateListener; + +public class AssetPackStateUpdateListenerWrapper { + private AssetPackStateUpdateListener assetPackStateUpdatedListener = state -> { + onStateUpdate (state); + }; + + void onStateUpdate(AssetPackState state) + { + if (stateUpdateListener != null) + stateUpdateListener.OnStateUpdate(state); + } + + public AssetPackStateUpdateListener GetListener() + { + return assetPackStateUpdatedListener; + } + + public interface AssetPackStateListener { + /** + * Called when an the State is Updated + * + * @param state The Install Session State. + */ + abstract void OnStateUpdate (AssetPackState state); + } + + private AssetPackStateListener stateUpdateListener = null; + + public void setStateUpdateListener (AssetPackStateListener listener) + { + stateUpdateListener = listener; + } +} diff --git a/source/com.google.android.play/core.extensions/extensions-aar/src/main/java/xamarin/google/android/play/core/splitinstall/SplitInstallStateUpdatedListenerWrapper.java b/source/com.google.android.play/core.extensions/extensions-aar/src/main/java/xamarin/google/android/play/core/splitinstall/SplitInstallStateUpdatedListenerWrapper.java new file mode 100644 index 000000000..6103d8e3a --- /dev/null +++ b/source/com.google.android.play/core.extensions/extensions-aar/src/main/java/xamarin/google/android/play/core/splitinstall/SplitInstallStateUpdatedListenerWrapper.java @@ -0,0 +1,40 @@ +package xamarin.google.android.play.core.splitinstall; + +import com.google.android.play.core.splitinstall.SplitInstallManager; +import com.google.android.play.core.splitinstall.SplitInstallManagerFactory; +import com.google.android.play.core.splitinstall.SplitInstallRequest; +import com.google.android.play.core.splitinstall.SplitInstallSessionState; +import com.google.android.play.core.splitinstall.SplitInstallStateUpdatedListener; + +public class SplitInstallStateUpdatedListenerWrapper { + private SplitInstallStateUpdatedListener splitInstallStateUpdatedListener = state -> { + onStateUpdate (state); + }; + + void onStateUpdate(SplitInstallSessionState state) + { + if (stateUpdateListener != null) + stateUpdateListener.OnStateUpdate(state); + } + + public SplitInstallStateUpdatedListener GetListener() + { + return splitInstallStateUpdatedListener; + } + + public interface StateUpdateListener { + /** + * Called when an the State is Updated + * + * @param state The Install Session State. + */ + abstract void OnStateUpdate (SplitInstallSessionState state); + } + + private StateUpdateListener stateUpdateListener = null; + + public void setStateUpdateListener (StateUpdateListener listener) + { + stateUpdateListener = listener; + } +} diff --git a/source/com.google.android.play/core.extensions/gradle.properties b/source/com.google.android.play/core.extensions/gradle.properties new file mode 100644 index 000000000..c52ac9b79 --- /dev/null +++ b/source/com.google.android.play/core.extensions/gradle.properties @@ -0,0 +1,19 @@ +# Project-wide Gradle settings. +# IDE (e.g. Android Studio) users: +# Gradle settings configured through the IDE *will override* +# any settings specified in this file. +# For more details on how to configure your build environment visit +# http://www.gradle.org/docs/current/userguide/build_environment.html +# Specifies the JVM arguments used for the daemon process. +# The setting is particularly useful for tweaking memory settings. +org.gradle.jvmargs=-Xmx2048m +# When configured, Gradle will run in incubating parallel mode. +# This option should only be used with decoupled projects. More details, visit +# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects +# org.gradle.parallel=true +# AndroidX package structure to make it clearer which packages are bundled with the +# Android operating system, and which are packaged with your app"s APK +# https://developer.android.com/topic/libraries/support-library/androidx-rn +android.useAndroidX=true +# Automatically convert third-party libraries to use AndroidX +android.enableJetifier=true \ No newline at end of file diff --git a/source/com.google.android.play/core.extensions/gradle/wrapper/gradle-wrapper.jar b/source/com.google.android.play/core.extensions/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 000000000..490fda857 Binary files /dev/null and b/source/com.google.android.play/core.extensions/gradle/wrapper/gradle-wrapper.jar differ diff --git a/source/com.google.android.play/core.extensions/gradle/wrapper/gradle-wrapper.properties b/source/com.google.android.play/core.extensions/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 000000000..a4b442974 --- /dev/null +++ b/source/com.google.android.play/core.extensions/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-6.3-bin.zip +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/source/com.google.android.play/core.extensions/gradlew b/source/com.google.android.play/core.extensions/gradlew new file mode 100644 index 000000000..2fe81a7d9 --- /dev/null +++ b/source/com.google.android.play/core.extensions/gradlew @@ -0,0 +1,183 @@ +#!/usr/bin/env sh + +# +# Copyright 2015 the original author or authors. +# +# 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 +# +# https://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. +# + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# 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 +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$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" + +warn () { + echo "$*" +} + +die () { + echo + echo "$*" + echo + exit 1 +} + +# 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 + ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +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" + else + 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" + 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" ;; + 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, 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" + +exec "$JAVACMD" "$@" diff --git a/source/com.google.android.play/core.extensions/gradlew.bat b/source/com.google.android.play/core.extensions/gradlew.bat new file mode 100644 index 000000000..9697dcc1a --- /dev/null +++ b/source/com.google.android.play/core.extensions/gradlew.bat @@ -0,0 +1,112 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windows variants + +if not "%OS%" == "Windows_NT" goto win9xME_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +echo About to run gradle: +echo JAVA_EXE - "%JAVA_EXE%" +echo DEFAULT_JVM_OPTS - %DEFAULT_JVM_OPTS% +echo JAVA_OPTS - %JAVA_OPTS% +echo GRADLE_OPTS - %GRADLE_OPTS% +echo APP_BASE_NAME - %APP_BASE_NAME% +echo CLASSPATH - %CLASSPATH% +echo CMD_LINE_ARGS - %CMD_LINE_ARGS% + +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/source/com.google.android.play/core.extensions/settings.gradle b/source/com.google.android.play/core.extensions/settings.gradle new file mode 100644 index 000000000..008cc861d --- /dev/null +++ b/source/com.google.android.play/core.extensions/settings.gradle @@ -0,0 +1,3 @@ +include ':extensions-aar' +include ':app' +rootProject.name = "PlayCore" \ No newline at end of file diff --git a/source/com.google.android.play/core/Transforms/Metadata.Namespaces.xml b/source/com.google.android.play/core/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..bf15f035a --- /dev/null +++ b/source/com.google.android.play/core/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,131 @@ + + + + + Xamarin.Google.Android.Play.Core.AppUpdate + + + Xamarin.Google.Android.Play.Core.AppUpdate.Testing + + + Xamarin.Google.Android.Play.Core.Install + + + Xamarin.Google.Android.Play.Core.Install.Model + + + Xamarin.Google.Android.Play.Core.Internal + + + Xamarin.Google.Android.Play.Core.Listener + + + Xamarin.Google.Android.Play.Core.SplitCompat + + + Xamarin.Google.Android.Play.Core.SplitInstall + + + Xamarin.Google.Android.Play.Core.SplitInstall + + + Xamarin.Google.Android.Play.Core.SplitInstall.Model + + + Xamarin.Google.Android.Play.Core.Tasks + + + + Xamarin.Google.Android.Play.Core.Common + + + + Xamarin.Google.Android.Play.Core.MissingSplits + + + + Xamarin.Google.Android.Play.Core.SplitInstall.Testing + + + + Xamarin.Google.Android.Play.Core.AssetPacks + + + Xamarin.Google.Android.Play.Core.AssetPacks + + + Xamarin.Google.Android.Play.Core.AssetPacks.Model + + + + Xamarin.Google.Android.Play.Core.Review + + + Xamarin.Google.Android.Play.Core.Review.Testing + + + Xamarin.Google.Android.Play.Core.Review.Model + + + + diff --git a/source/com.google.android.play/core/Transforms/Metadata.xml b/source/com.google.android.play/core/Transforms/Metadata.xml new file mode 100644 index 000000000..7f9d79c78 --- /dev/null +++ b/source/com.google.android.play/core/Transforms/Metadata.xml @@ -0,0 +1,59 @@ + + + + + + + Tasks + + + + Java.Lang.Object + + + + state + + + state + + + + + + + + + + + diff --git a/source/com.google.android.play/feature-delivery-ktx/Transforms/Metadata.Namespaces.xml b/source/com.google.android.play/feature-delivery-ktx/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..aa29ba694 --- /dev/null +++ b/source/com.google.android.play/feature-delivery-ktx/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Xamarin.Google.Android.Play.Core.Ktx + + \ No newline at end of file diff --git a/source/com.google.android.play/feature-delivery-ktx/Transforms/Metadata.xml b/source/com.google.android.play/feature-delivery-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.play/feature-delivery-ktx/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.play/feature-delivery/Additions/Additions.cs b/source/com.google.android.play/feature-delivery/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.play/feature-delivery/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.play/feature-delivery/Transforms/EnumFields.xml b/source/com.google.android.play/feature-delivery/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.play/feature-delivery/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.play/feature-delivery/Transforms/EnumMethods.xml b/source/com.google.android.play/feature-delivery/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.play/feature-delivery/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.play/feature-delivery/Transforms/Metadata.Namespaces.xml b/source/com.google.android.play/feature-delivery/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..3d4d0f018 --- /dev/null +++ b/source/com.google.android.play/feature-delivery/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,39 @@ + + + Xamarin.Google.Android.Play.Core.SplitCompat + + + Xamarin.Google.Android.Play.Core.SplitInstall + + + Xamarin.Google.Android.Play.Core.SplitInstall + + + Xamarin.Google.Android.Play.Core.SplitInstall.Internal + + + Xamarin.Google.Android.Play.Core.SplitInstall.Model + + + Xamarin.Google.Android.Play.Core.SplitInstall.Testing + + + \ No newline at end of file diff --git a/source/com.google.android.play/feature-delivery/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.play/feature-delivery/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.play/feature-delivery/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.play/feature-delivery/Transforms/Metadata.xml b/source/com.google.android.play/feature-delivery/Transforms/Metadata.xml new file mode 100644 index 000000000..b240f5680 --- /dev/null +++ b/source/com.google.android.play/feature-delivery/Transforms/Metadata.xml @@ -0,0 +1,8 @@ + + + state + + \ No newline at end of file diff --git a/source/com.google.android.play/feature.delivery.extensions/.gitignore b/source/com.google.android.play/feature.delivery.extensions/.gitignore new file mode 100644 index 000000000..42afabfd2 --- /dev/null +++ b/source/com.google.android.play/feature.delivery.extensions/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/source/com.google.android.play/feature.delivery.extensions/app/.classpath b/source/com.google.android.play/feature.delivery.extensions/app/.classpath new file mode 100644 index 000000000..4a04201ca --- /dev/null +++ b/source/com.google.android.play/feature.delivery.extensions/app/.classpath @@ -0,0 +1,6 @@ + + + + + + diff --git a/source/com.google.android.play/feature.delivery.extensions/app/.gitignore b/source/com.google.android.play/feature.delivery.extensions/app/.gitignore new file mode 100644 index 000000000..42afabfd2 --- /dev/null +++ b/source/com.google.android.play/feature.delivery.extensions/app/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/source/com.google.android.play/feature.delivery.extensions/app/.project b/source/com.google.android.play/feature.delivery.extensions/app/.project new file mode 100644 index 000000000..863eb2e67 --- /dev/null +++ b/source/com.google.android.play/feature.delivery.extensions/app/.project @@ -0,0 +1,34 @@ + + + app + Project app created by Buildship. + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.buildship.core.gradleprojectbuilder + + + + + + org.eclipse.jdt.core.javanature + org.eclipse.buildship.core.gradleprojectnature + + + + 1667565327392 + + 30 + + org.eclipse.core.resources.regexFilterMatcher + node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__ + + + + diff --git a/source/com.google.android.play/feature.delivery.extensions/app/.settings/org.eclipse.buildship.core.prefs b/source/com.google.android.play/feature.delivery.extensions/app/.settings/org.eclipse.buildship.core.prefs new file mode 100644 index 000000000..b1886adb4 --- /dev/null +++ b/source/com.google.android.play/feature.delivery.extensions/app/.settings/org.eclipse.buildship.core.prefs @@ -0,0 +1,2 @@ +connection.project.dir=.. +eclipse.preferences.version=1 diff --git a/source/com.google.android.play/feature.delivery.extensions/build.gradle b/source/com.google.android.play/feature.delivery.extensions/build.gradle new file mode 100644 index 000000000..3f802e378 --- /dev/null +++ b/source/com.google.android.play/feature.delivery.extensions/build.gradle @@ -0,0 +1,24 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. +buildscript { + repositories { + google() + jcenter() + } + dependencies { + classpath "com.android.tools.build:gradle:3.6.2" + + // NOTE: Do not place your application dependencies here; they belong + // in the individual module build.gradle files + } +} + +allprojects { + repositories { + google() + jcenter() + } +} + +task clean(type: Delete) { + delete rootProject.buildDir +} \ No newline at end of file diff --git a/source/com.google.android.play/feature.delivery.extensions/extensions-aar/.classpath b/source/com.google.android.play/feature.delivery.extensions/extensions-aar/.classpath new file mode 100644 index 000000000..4a04201ca --- /dev/null +++ b/source/com.google.android.play/feature.delivery.extensions/extensions-aar/.classpath @@ -0,0 +1,6 @@ + + + + + + diff --git a/source/com.google.android.play/feature.delivery.extensions/extensions-aar/.gitignore b/source/com.google.android.play/feature.delivery.extensions/extensions-aar/.gitignore new file mode 100644 index 000000000..42afabfd2 --- /dev/null +++ b/source/com.google.android.play/feature.delivery.extensions/extensions-aar/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/source/com.google.android.play/feature.delivery.extensions/extensions-aar/.project b/source/com.google.android.play/feature.delivery.extensions/extensions-aar/.project new file mode 100644 index 000000000..71af495ef --- /dev/null +++ b/source/com.google.android.play/feature.delivery.extensions/extensions-aar/.project @@ -0,0 +1,34 @@ + + + extensions-aar + Project playcorehelper created by Buildship. + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.buildship.core.gradleprojectbuilder + + + + + + org.eclipse.jdt.core.javanature + org.eclipse.buildship.core.gradleprojectnature + + + + 1667565327400 + + 30 + + org.eclipse.core.resources.regexFilterMatcher + node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__ + + + + diff --git a/source/com.google.android.play/feature.delivery.extensions/extensions-aar/.settings/org.eclipse.buildship.core.prefs b/source/com.google.android.play/feature.delivery.extensions/extensions-aar/.settings/org.eclipse.buildship.core.prefs new file mode 100644 index 000000000..b1886adb4 --- /dev/null +++ b/source/com.google.android.play/feature.delivery.extensions/extensions-aar/.settings/org.eclipse.buildship.core.prefs @@ -0,0 +1,2 @@ +connection.project.dir=.. +eclipse.preferences.version=1 diff --git a/source/com.google.android.play/feature.delivery.extensions/extensions-aar/build.gradle b/source/com.google.android.play/feature.delivery.extensions/extensions-aar/build.gradle new file mode 100644 index 000000000..ac5748c66 --- /dev/null +++ b/source/com.google.android.play/feature.delivery.extensions/extensions-aar/build.gradle @@ -0,0 +1,37 @@ +apply plugin: 'com.android.library' + +android { + compileSdkVersion 29 + buildToolsVersion "30.0.2" + + defaultConfig { + minSdkVersion 21 + targetSdkVersion 29 + versionCode 1 + versionName "1.0" + + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + consumerProguardFiles "consumer-rules.pro" + } + + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' + } + } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } +} + +dependencies { + implementation fileTree(dir: "libs", include: ["*.jar"]) + implementation 'androidx.appcompat:appcompat:1.2.0' + implementation 'com.google.android.play:feature-delivery:2.1.0' + testImplementation 'junit:junit:4.12' + androidTestImplementation 'androidx.test.ext:junit:1.1.2' + androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0' + +} \ No newline at end of file diff --git a/source/com.google.android.play/feature.delivery.extensions/extensions-aar/consumer-rules.pro b/source/com.google.android.play/feature.delivery.extensions/extensions-aar/consumer-rules.pro new file mode 100644 index 000000000..e69de29bb diff --git a/source/com.google.android.play/feature.delivery.extensions/extensions-aar/proguard-rules.pro b/source/com.google.android.play/feature.delivery.extensions/extensions-aar/proguard-rules.pro new file mode 100644 index 000000000..481bb4348 --- /dev/null +++ b/source/com.google.android.play/feature.delivery.extensions/extensions-aar/proguard-rules.pro @@ -0,0 +1,21 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/source/com.google.android.play/feature.delivery.extensions/extensions-aar/src/main/AndroidManifest.xml b/source/com.google.android.play/feature.delivery.extensions/extensions-aar/src/main/AndroidManifest.xml new file mode 100644 index 000000000..cc0e0d592 --- /dev/null +++ b/source/com.google.android.play/feature.delivery.extensions/extensions-aar/src/main/AndroidManifest.xml @@ -0,0 +1,5 @@ + + + / + \ No newline at end of file diff --git a/source/com.google.android.play/feature.delivery.extensions/extensions-aar/src/main/java/xamarin/google/android/play/core/splitInstall/SplitInstallStateUpdatedListenerWrapper.java b/source/com.google.android.play/feature.delivery.extensions/extensions-aar/src/main/java/xamarin/google/android/play/core/splitInstall/SplitInstallStateUpdatedListenerWrapper.java new file mode 100644 index 000000000..6103d8e3a --- /dev/null +++ b/source/com.google.android.play/feature.delivery.extensions/extensions-aar/src/main/java/xamarin/google/android/play/core/splitInstall/SplitInstallStateUpdatedListenerWrapper.java @@ -0,0 +1,40 @@ +package xamarin.google.android.play.core.splitinstall; + +import com.google.android.play.core.splitinstall.SplitInstallManager; +import com.google.android.play.core.splitinstall.SplitInstallManagerFactory; +import com.google.android.play.core.splitinstall.SplitInstallRequest; +import com.google.android.play.core.splitinstall.SplitInstallSessionState; +import com.google.android.play.core.splitinstall.SplitInstallStateUpdatedListener; + +public class SplitInstallStateUpdatedListenerWrapper { + private SplitInstallStateUpdatedListener splitInstallStateUpdatedListener = state -> { + onStateUpdate (state); + }; + + void onStateUpdate(SplitInstallSessionState state) + { + if (stateUpdateListener != null) + stateUpdateListener.OnStateUpdate(state); + } + + public SplitInstallStateUpdatedListener GetListener() + { + return splitInstallStateUpdatedListener; + } + + public interface StateUpdateListener { + /** + * Called when an the State is Updated + * + * @param state The Install Session State. + */ + abstract void OnStateUpdate (SplitInstallSessionState state); + } + + private StateUpdateListener stateUpdateListener = null; + + public void setStateUpdateListener (StateUpdateListener listener) + { + stateUpdateListener = listener; + } +} diff --git a/source/com.google.android.play/feature.delivery.extensions/gradle.properties b/source/com.google.android.play/feature.delivery.extensions/gradle.properties new file mode 100644 index 000000000..c52ac9b79 --- /dev/null +++ b/source/com.google.android.play/feature.delivery.extensions/gradle.properties @@ -0,0 +1,19 @@ +# Project-wide Gradle settings. +# IDE (e.g. Android Studio) users: +# Gradle settings configured through the IDE *will override* +# any settings specified in this file. +# For more details on how to configure your build environment visit +# http://www.gradle.org/docs/current/userguide/build_environment.html +# Specifies the JVM arguments used for the daemon process. +# The setting is particularly useful for tweaking memory settings. +org.gradle.jvmargs=-Xmx2048m +# When configured, Gradle will run in incubating parallel mode. +# This option should only be used with decoupled projects. More details, visit +# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects +# org.gradle.parallel=true +# AndroidX package structure to make it clearer which packages are bundled with the +# Android operating system, and which are packaged with your app"s APK +# https://developer.android.com/topic/libraries/support-library/androidx-rn +android.useAndroidX=true +# Automatically convert third-party libraries to use AndroidX +android.enableJetifier=true \ No newline at end of file diff --git a/source/com.google.android.play/feature.delivery.extensions/gradle/wrapper/gradle-wrapper.jar b/source/com.google.android.play/feature.delivery.extensions/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 000000000..490fda857 Binary files /dev/null and b/source/com.google.android.play/feature.delivery.extensions/gradle/wrapper/gradle-wrapper.jar differ diff --git a/source/com.google.android.play/feature.delivery.extensions/gradle/wrapper/gradle-wrapper.properties b/source/com.google.android.play/feature.delivery.extensions/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 000000000..a4b442974 --- /dev/null +++ b/source/com.google.android.play/feature.delivery.extensions/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-6.3-bin.zip +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/source/com.google.android.play/feature.delivery.extensions/gradlew b/source/com.google.android.play/feature.delivery.extensions/gradlew new file mode 100644 index 000000000..2fe81a7d9 --- /dev/null +++ b/source/com.google.android.play/feature.delivery.extensions/gradlew @@ -0,0 +1,183 @@ +#!/usr/bin/env sh + +# +# Copyright 2015 the original author or authors. +# +# 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 +# +# https://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. +# + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# 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 +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$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" + +warn () { + echo "$*" +} + +die () { + echo + echo "$*" + echo + exit 1 +} + +# 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 + ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + +# Determine the Java command to use to start the JVM. +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" + else + 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" + 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" ;; + 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, 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" + +exec "$JAVACMD" "$@" diff --git a/source/com.google.android.play/feature.delivery.extensions/gradlew.bat b/source/com.google.android.play/feature.delivery.extensions/gradlew.bat new file mode 100644 index 000000000..9697dcc1a --- /dev/null +++ b/source/com.google.android.play/feature.delivery.extensions/gradlew.bat @@ -0,0 +1,112 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto init + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto init + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:init +@rem Get command-line arguments, handling Windows variants + +if not "%OS%" == "Windows_NT" goto win9xME_args + +:win9xME_args +@rem Slurp the command line arguments. +set CMD_LINE_ARGS= +set _SKIP=2 + +:win9xME_args_slurp +if "x%~1" == "x" goto execute + +set CMD_LINE_ARGS=%* + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + +@rem Execute Gradle +echo About to run gradle: +echo JAVA_EXE - "%JAVA_EXE%" +echo DEFAULT_JVM_OPTS - %DEFAULT_JVM_OPTS% +echo JAVA_OPTS - %JAVA_OPTS% +echo GRADLE_OPTS - %GRADLE_OPTS% +echo APP_BASE_NAME - %APP_BASE_NAME% +echo CLASSPATH - %CLASSPATH% +echo CMD_LINE_ARGS - %CMD_LINE_ARGS% + +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/source/com.google.android.play/feature.delivery.extensions/settings.gradle b/source/com.google.android.play/feature.delivery.extensions/settings.gradle new file mode 100644 index 000000000..008cc861d --- /dev/null +++ b/source/com.google.android.play/feature.delivery.extensions/settings.gradle @@ -0,0 +1,3 @@ +include ':extensions-aar' +include ':app' +rootProject.name = "PlayCore" \ No newline at end of file diff --git a/source/com.google.android.play/integrity/Additions/Additions.cs b/source/com.google.android.play/integrity/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.play/integrity/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.play/integrity/Transforms/EnumFields.xml b/source/com.google.android.play/integrity/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.play/integrity/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.play/integrity/Transforms/EnumMethods.xml b/source/com.google.android.play/integrity/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.play/integrity/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.play/integrity/Transforms/Metadata.Namespaces.xml b/source/com.google.android.play/integrity/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..33b6aaf4b --- /dev/null +++ b/source/com.google.android.play/integrity/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,22 @@ + + + Xamarin.Google.Android.Play.Core.Integrity + + + Xamarin.Google.Android.Play.Core.Integrity.Model + + + Xamarin.Google.Android.Play.Integrity.Internal + + + + \ No newline at end of file diff --git a/source/com.google.android.play/integrity/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.play/integrity/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.play/integrity/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.play/integrity/Transforms/Metadata.xml b/source/com.google.android.play/integrity/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.play/integrity/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.play/review-ktx/Transforms/Metadata.Namespaces.xml b/source/com.google.android.play/review-ktx/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..aa29ba694 --- /dev/null +++ b/source/com.google.android.play/review-ktx/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Xamarin.Google.Android.Play.Core.Ktx + + \ No newline at end of file diff --git a/source/com.google.android.play/review-ktx/Transforms/Metadata.xml b/source/com.google.android.play/review-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.play/review-ktx/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.play/review/Transforms/Metadata.Namespaces.xml b/source/com.google.android.play/review/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..80fdb3096 --- /dev/null +++ b/source/com.google.android.play/review/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,26 @@ + + + Xamarin.Google.Android.Play.Core.Review + + + Xamarin.Google.Android.Play.Core.Review.Internal + + + Xamarin.Google.Android.Play.Core.Review.Model + + + Xamarin.Google.Android.Play.Core.Review.Testing + + \ No newline at end of file diff --git a/source/com.google.android.play/review/Transforms/Metadata.xml b/source/com.google.android.play/review/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.play/review/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.recaptcha/recaptcha/Additions/Additions.cs b/source/com.google.android.recaptcha/recaptcha/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.recaptcha/recaptcha/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.recaptcha/recaptcha/Transforms/Metadata.Namespaces.xml b/source/com.google.android.recaptcha/recaptcha/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..732acb552 --- /dev/null +++ b/source/com.google.android.recaptcha/recaptcha/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,9 @@ + + + Xamarin.Google.Android.Recaptcha + + + \ No newline at end of file diff --git a/source/com.google.android.recaptcha/recaptcha/Transforms/Metadata.xml b/source/com.google.android.recaptcha/recaptcha/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.recaptcha/recaptcha/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.android.tv/tv-ads/Additions/Additions.cs b/source/com.google.android.tv/tv-ads/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.android.tv/tv-ads/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.android.tv/tv-ads/Transforms/EnumFields.xml b/source/com.google.android.tv/tv-ads/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.android.tv/tv-ads/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.tv/tv-ads/Transforms/EnumMethods.xml b/source/com.google.android.tv/tv-ads/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.android.tv/tv-ads/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.tv/tv-ads/Transforms/Metadata.Namespaces.xml b/source/com.google.android.tv/tv-ads/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..67da9605d --- /dev/null +++ b/source/com.google.android.tv/tv-ads/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,14 @@ + + + Xamarin.GoogleAndroid.TV.Ads + + + Xamarin.GoogleAndroid.TV.Ads.Controls + + \ No newline at end of file diff --git a/source/com.google.android.tv/tv-ads/Transforms/Metadata.ParameterNames.xml b/source/com.google.android.tv/tv-ads/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.android.tv/tv-ads/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.android.tv/tv-ads/Transforms/Metadata.xml b/source/com.google.android.tv/tv-ads/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.android.tv/tv-ads/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-abt/Additions/AboutAdditions.txt b/source/com.google.firebase/firebase-abt/Additions/AboutAdditions.txt new file mode 100644 index 000000000..c511f1d4e --- /dev/null +++ b/source/com.google.firebase/firebase-abt/Additions/AboutAdditions.txt @@ -0,0 +1,48 @@ +Additions allow you to add arbitrary C# to the generated classes +before they are compiled. This can be helpful for providing convenience +methods or adding pure C# classes. + +== Adding Methods to Generated Classes == + +Let's say the library being bound has a Rectangle class with a constructor +that takes an x and y position, and a width and length size. It will look like +this: + +public partial class Rectangle +{ + public Rectangle (int x, int y, int width, int height) + { + // JNI bindings + } +} + +Imagine we want to add a constructor to this class that takes a Point and +Size structure instead of 4 ints. We can add a new file called Rectangle.cs +with a partial class containing our new method: + +public partial class Rectangle +{ + public Rectangle (Point location, Size size) : + this (location.X, location.Y, size.Width, size.Height) + { + } +} + +At compile time, the additions class will be added to the generated class +and the final assembly will a Rectangle class with both constructors. + + +== Adding C# Classes == + +Another thing that can be done is adding fully C# managed classes to the +generated library. In the above example, let's assume that there isn't a +Point class available in Java or our library. The one we create doesn't need +to interact with Java, so we'll create it like a normal class in C#. + +By adding a Point.cs file with this class, it will end up in the binding library: + +public class Point +{ + public int X { get; set; } + public int Y { get; set; } +} diff --git a/source/com.google.firebase/firebase-abt/Additions/TaskExtensions.cs b/source/com.google.firebase/firebase-abt/Additions/TaskExtensions.cs new file mode 100644 index 000000000..53e936415 --- /dev/null +++ b/source/com.google.firebase/firebase-abt/Additions/TaskExtensions.cs @@ -0,0 +1,7 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Extensions; + +namespace Firebase +{ +} diff --git a/source/com.google.firebase/firebase-abt/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-abt/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-abt/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-abt/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-abt/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-abt/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-abt/Transforms/Metadata.xml b/source/com.google.firebase/firebase-abt/Transforms/Metadata.xml new file mode 100644 index 000000000..48461941d --- /dev/null +++ b/source/com.google.firebase/firebase-abt/Transforms/Metadata.xml @@ -0,0 +1,36 @@ + + + + Firebase + Firebase.Abt + + + + + + + + + source + size + dest + flags + + + + + + Firebase.Abt.Component + + + Developers.Mobile.Abt + + + + diff --git a/source/com.google.firebase/firebase-ads-lite/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-ads-lite/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-ads-lite/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ads-lite/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-ads-lite/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-ads-lite/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ads-lite/Transforms/Metadata.xml b/source/com.google.firebase/firebase-ads-lite/Transforms/Metadata.xml new file mode 100644 index 000000000..7a11c149b --- /dev/null +++ b/source/com.google.firebase/firebase-ads-lite/Transforms/Metadata.xml @@ -0,0 +1,19 @@ + + + Firebase + Firebase.DynamicLinks + + + + + + + + + source + size + dest + flags + + + diff --git a/source/com.google.firebase/firebase-ads/Additions/Additions.cs b/source/com.google.firebase/firebase-ads/Additions/Additions.cs new file mode 100644 index 000000000..26375c851 --- /dev/null +++ b/source/com.google.firebase/firebase-ads/Additions/Additions.cs @@ -0,0 +1,5 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; + diff --git a/source/com.google.firebase/firebase-ads/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-ads/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-ads/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ads/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-ads/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-ads/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ads/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-ads/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..f6fbf3dac --- /dev/null +++ b/source/com.google.firebase/firebase-ads/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,21 @@ + + + Firebase.Encoders + + + Firebase.Encoders.Config + + + Firebase.Encoders.Json + + + diff --git a/source/com.google.firebase/firebase-ads/Transforms/Metadata.xml b/source/com.google.firebase/firebase-ads/Transforms/Metadata.xml new file mode 100644 index 000000000..1acbd8ff0 --- /dev/null +++ b/source/com.google.firebase/firebase-ads/Transforms/Metadata.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/source/com.google.firebase/firebase-analytics-impl/Additions/AboutAdditions.txt b/source/com.google.firebase/firebase-analytics-impl/Additions/AboutAdditions.txt new file mode 100644 index 000000000..c511f1d4e --- /dev/null +++ b/source/com.google.firebase/firebase-analytics-impl/Additions/AboutAdditions.txt @@ -0,0 +1,48 @@ +Additions allow you to add arbitrary C# to the generated classes +before they are compiled. This can be helpful for providing convenience +methods or adding pure C# classes. + +== Adding Methods to Generated Classes == + +Let's say the library being bound has a Rectangle class with a constructor +that takes an x and y position, and a width and length size. It will look like +this: + +public partial class Rectangle +{ + public Rectangle (int x, int y, int width, int height) + { + // JNI bindings + } +} + +Imagine we want to add a constructor to this class that takes a Point and +Size structure instead of 4 ints. We can add a new file called Rectangle.cs +with a partial class containing our new method: + +public partial class Rectangle +{ + public Rectangle (Point location, Size size) : + this (location.X, location.Y, size.Width, size.Height) + { + } +} + +At compile time, the additions class will be added to the generated class +and the final assembly will a Rectangle class with both constructors. + + +== Adding C# Classes == + +Another thing that can be done is adding fully C# managed classes to the +generated library. In the above example, let's assume that there isn't a +Point class available in Java or our library. The one we create doesn't need +to interact with Java, so we'll create it like a normal class in C#. + +By adding a Point.cs file with this class, it will end up in the binding library: + +public class Point +{ + public int X { get; set; } + public int Y { get; set; } +} diff --git a/source/com.google.firebase/firebase-analytics-impl/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-analytics-impl/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-analytics-impl/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-analytics-impl/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-analytics-impl/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-analytics-impl/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-analytics-impl/Transforms/Metadata.xml b/source/com.google.firebase/firebase-analytics-impl/Transforms/Metadata.xml new file mode 100644 index 000000000..bd7794e24 --- /dev/null +++ b/source/com.google.firebase/firebase-analytics-impl/Transforms/Metadata.xml @@ -0,0 +1,27 @@ + + + + Firebase + Firebase.Analytics + + Android.Gms.Measurement + Android.Gms.Measurement.Internal + + + + + + + + + source + size + dest + flags + + + + + diff --git a/source/com.google.firebase/firebase-analytics-ktx/Additions/Additions.cs b/source/com.google.firebase/firebase-analytics-ktx/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.firebase/firebase-analytics-ktx/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.firebase/firebase-analytics-ktx/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-analytics-ktx/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.firebase/firebase-analytics-ktx/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-analytics-ktx/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-analytics-ktx/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.firebase/firebase-analytics-ktx/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-analytics-ktx/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-analytics-ktx/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..f65f688ea --- /dev/null +++ b/source/com.google.firebase/firebase-analytics-ktx/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,9 @@ + + + Firebase.Analytics.Ktx + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-analytics-ktx/Transforms/Metadata.ParameterNames.xml b/source/com.google.firebase/firebase-analytics-ktx/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.firebase/firebase-analytics-ktx/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-analytics-ktx/Transforms/Metadata.xml b/source/com.google.firebase/firebase-analytics-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-analytics-ktx/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-analytics/Additions/AboutAdditions.txt b/source/com.google.firebase/firebase-analytics/Additions/AboutAdditions.txt new file mode 100644 index 000000000..c511f1d4e --- /dev/null +++ b/source/com.google.firebase/firebase-analytics/Additions/AboutAdditions.txt @@ -0,0 +1,48 @@ +Additions allow you to add arbitrary C# to the generated classes +before they are compiled. This can be helpful for providing convenience +methods or adding pure C# classes. + +== Adding Methods to Generated Classes == + +Let's say the library being bound has a Rectangle class with a constructor +that takes an x and y position, and a width and length size. It will look like +this: + +public partial class Rectangle +{ + public Rectangle (int x, int y, int width, int height) + { + // JNI bindings + } +} + +Imagine we want to add a constructor to this class that takes a Point and +Size structure instead of 4 ints. We can add a new file called Rectangle.cs +with a partial class containing our new method: + +public partial class Rectangle +{ + public Rectangle (Point location, Size size) : + this (location.X, location.Y, size.Width, size.Height) + { + } +} + +At compile time, the additions class will be added to the generated class +and the final assembly will a Rectangle class with both constructors. + + +== Adding C# Classes == + +Another thing that can be done is adding fully C# managed classes to the +generated library. In the above example, let's assume that there isn't a +Point class available in Java or our library. The one we create doesn't need +to interact with Java, so we'll create it like a normal class in C#. + +By adding a Point.cs file with this class, it will end up in the binding library: + +public class Point +{ + public int X { get; set; } + public int Y { get; set; } +} diff --git a/source/com.google.firebase/firebase-analytics/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-analytics/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-analytics/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-analytics/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-analytics/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-analytics/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-analytics/Transforms/Metadata.xml b/source/com.google.firebase/firebase-analytics/Transforms/Metadata.xml new file mode 100644 index 000000000..3a022cfc6 --- /dev/null +++ b/source/com.google.firebase/firebase-analytics/Transforms/Metadata.xml @@ -0,0 +1,18 @@ + + + + Android.Gms.Measurement + + + + + + + + + source + size + dest + flags + + diff --git a/source/com.google.firebase/firebase-annotations/Additions/Additions.cs b/source/com.google.firebase/firebase-annotations/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.firebase/firebase-annotations/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.firebase/firebase-annotations/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-annotations/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.firebase/firebase-annotations/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-annotations/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-annotations/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.firebase/firebase-annotations/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-annotations/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-annotations/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..1dc9f79d9 --- /dev/null +++ b/source/com.google.firebase/firebase-annotations/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,11 @@ + + Firebase.Annotations + + + Firebase.Annotations.Concurrent + + + diff --git a/source/com.google.firebase/firebase-annotations/Transforms/Metadata.ParameterNames.xml b/source/com.google.firebase/firebase-annotations/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.firebase/firebase-annotations/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-annotations/Transforms/Metadata.xml b/source/com.google.firebase/firebase-annotations/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-annotations/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-appcheck-debug/Additions/Additions.cs b/source/com.google.firebase/firebase-appcheck-debug/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.firebase/firebase-appcheck-debug/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.firebase/firebase-appcheck-debug/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-appcheck-debug/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..e743f6c7d --- /dev/null +++ b/source/com.google.firebase/firebase-appcheck-debug/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,15 @@ + + + Firebase.AppCheck.Debug + + + Firebase.AppCheck.Debug.Internal + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-appcheck-debug/Transforms/Metadata.xml b/source/com.google.firebase/firebase-appcheck-debug/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-appcheck-debug/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-appcheck-interop/Additions/Additions.cs b/source/com.google.firebase/firebase-appcheck-interop/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.firebase/firebase-appcheck-interop/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.firebase/firebase-appcheck-interop/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-appcheck-interop/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.firebase/firebase-appcheck-interop/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-appcheck-interop/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-appcheck-interop/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.firebase/firebase-appcheck-interop/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-appcheck-interop/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-appcheck-interop/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..4b07b848b --- /dev/null +++ b/source/com.google.firebase/firebase-appcheck-interop/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,14 @@ + + + Firebase.AppCheck + + + Firebase.AppCheck.Interop + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-appcheck-interop/Transforms/Metadata.ParameterNames.xml b/source/com.google.firebase/firebase-appcheck-interop/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.firebase/firebase-appcheck-interop/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-appcheck-interop/Transforms/Metadata.xml b/source/com.google.firebase/firebase-appcheck-interop/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-appcheck-interop/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-appcheck-ktx/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-appcheck-ktx/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..5172d75ec --- /dev/null +++ b/source/com.google.firebase/firebase-appcheck-ktx/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,9 @@ + + + Firebase.AppCheck.Ktx + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-appcheck-ktx/Transforms/Metadata.xml b/source/com.google.firebase/firebase-appcheck-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-appcheck-ktx/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-appcheck-playintegrity/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-appcheck-playintegrity/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..882523b2e --- /dev/null +++ b/source/com.google.firebase/firebase-appcheck-playintegrity/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,14 @@ + + + Firebase.AppCheck.PlayIntegrity + + + Firebase.AppCheck.PlayIntegrity.Internal + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-appcheck-playintegrity/Transforms/Metadata.xml b/source/com.google.firebase/firebase-appcheck-playintegrity/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-appcheck-playintegrity/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-appcheck-safetynet/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-appcheck-safetynet/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..35bb72f87 --- /dev/null +++ b/source/com.google.firebase/firebase-appcheck-safetynet/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,14 @@ + + + Firebase.AppCheck.SafetyNet + + + Firebase.AppCheck.SafetyNet.Internal + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-appcheck-safetynet/Transforms/Metadata.xml b/source/com.google.firebase/firebase-appcheck-safetynet/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-appcheck-safetynet/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-appcheck/Additions/Firebase.AppCheck.FirebaseAppCheck.cs b/source/com.google.firebase/firebase-appcheck/Additions/Firebase.AppCheck.FirebaseAppCheck.cs new file mode 100644 index 000000000..b0bcebcf4 --- /dev/null +++ b/source/com.google.firebase/firebase-appcheck/Additions/Firebase.AppCheck.FirebaseAppCheck.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections.Generic; +using Android.Runtime; +using Java.Interop; + +namespace Firebase.AppCheck +{ + + // Metadata.xml XPath class reference: path="/api/package[@name='com.google.firebase.appcheck']/class[@name='FirebaseAppCheck']" + // [global::Android.Runtime.Register ("com/google/firebase/appcheck/FirebaseAppCheck", DoNotGenerateAcw=true)] + public abstract partial class FirebaseAppCheck // : global::Java.Lang.Object, global::Firebase.AppCheck.Interop.IInteropAppCheckTokenProvider + { + public global::Android.Gms.Tasks.Task GetLimitedUseToken() + { + return this.LimitedUseToken; + } + } +} \ No newline at end of file diff --git a/source/com.google.firebase/firebase-appcheck/Additions/Firebase.AppCheck.Internal.DefaultFirebaseAppCheck.cs b/source/com.google.firebase/firebase-appcheck/Additions/Firebase.AppCheck.Internal.DefaultFirebaseAppCheck.cs new file mode 100644 index 000000000..29acc5cd6 --- /dev/null +++ b/source/com.google.firebase/firebase-appcheck/Additions/Firebase.AppCheck.Internal.DefaultFirebaseAppCheck.cs @@ -0,0 +1,21 @@ +using System; +using System.Collections.Generic; +using Android.Runtime; +using Java.Interop; + +namespace Firebase.AppCheck.Internal +{ + // Metadata.xml XPath class reference: path="/api/package[@name='com.google.firebase.appcheck.internal']/class[@name='DefaultFirebaseAppCheck']" + // [global::Android.Runtime.Register ("com/google/firebase/appcheck/internal/DefaultFirebaseAppCheck", DoNotGenerateAcw=true)] + public partial class DefaultFirebaseAppCheck // : global::Firebase.AppCheck.FirebaseAppCheck + { + public override global::Android.Gms.Tasks.Task LimitedUseToken + { + get + { + return GetLimitedUseToken(); + } + } + + } +} \ No newline at end of file diff --git a/source/com.google.firebase/firebase-appcheck/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-appcheck/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..a2b86a1da --- /dev/null +++ b/source/com.google.firebase/firebase-appcheck/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,28 @@ + + + Firebase.AppCheck + + + Firebase.AppCheck.Internal + + + Firebase.AppCheck.Internal.Util + + + Firebase.AppCheck.Ktx + + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-appcheck/Transforms/Metadata.xml b/source/com.google.firebase/firebase-appcheck/Transforms/Metadata.xml new file mode 100644 index 000000000..6c55ec367 --- /dev/null +++ b/source/com.google.firebase/firebase-appcheck/Transforms/Metadata.xml @@ -0,0 +1,26 @@ + + + + + + virtual + + + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-appindexing/Additions/AboutAdditions.txt b/source/com.google.firebase/firebase-appindexing/Additions/AboutAdditions.txt new file mode 100644 index 000000000..c511f1d4e --- /dev/null +++ b/source/com.google.firebase/firebase-appindexing/Additions/AboutAdditions.txt @@ -0,0 +1,48 @@ +Additions allow you to add arbitrary C# to the generated classes +before they are compiled. This can be helpful for providing convenience +methods or adding pure C# classes. + +== Adding Methods to Generated Classes == + +Let's say the library being bound has a Rectangle class with a constructor +that takes an x and y position, and a width and length size. It will look like +this: + +public partial class Rectangle +{ + public Rectangle (int x, int y, int width, int height) + { + // JNI bindings + } +} + +Imagine we want to add a constructor to this class that takes a Point and +Size structure instead of 4 ints. We can add a new file called Rectangle.cs +with a partial class containing our new method: + +public partial class Rectangle +{ + public Rectangle (Point location, Size size) : + this (location.X, location.Y, size.Width, size.Height) + { + } +} + +At compile time, the additions class will be added to the generated class +and the final assembly will a Rectangle class with both constructors. + + +== Adding C# Classes == + +Another thing that can be done is adding fully C# managed classes to the +generated library. In the above example, let's assume that there isn't a +Point class available in Java or our library. The one we create doesn't need +to interact with Java, so we'll create it like a normal class in C#. + +By adding a Point.cs file with this class, it will end up in the binding library: + +public class Point +{ + public int X { get; set; } + public int Y { get; set; } +} diff --git a/source/com.google.firebase/firebase-appindexing/Additions/Additions.cs b/source/com.google.firebase/firebase-appindexing/Additions/Additions.cs new file mode 100644 index 000000000..ff0ceed32 --- /dev/null +++ b/source/com.google.firebase/firebase-appindexing/Additions/Additions.cs @@ -0,0 +1,100 @@ +using System; +using Java.Interop; +using Android.Runtime; + +namespace Android.Gms.AppIndexing +{ + public partial class AppIndex + { + [Obsolete ("Use APP_INDEX_API instead")] + public static Android.Gms.Common.Apis.Api AppIndexApiField { + get { return AppIndex.APP_INDEX_API; } + } + + [Obsolete ("Use API instead")] + public static Android.Gms.Common.Apis.Api Api { + get { return AppIndex.API; } + } + } +} + +// needed in 16.9, but not in 16.10 +namespace Firebase.AppIndexing +{ + public partial interface IIndexable : IJavaObject, IDisposable + { + } + + /* + //[Register("com/google/firebase/appindexing/Indexable", DoNotGenerateAcw = true)] + internal partial class IIndexableInvoker : Java.Lang.Object, IIndexable, IJavaObject, IDisposable + { + // + // Static Fields + // + private static IntPtr java_class_ref = JNIEnv.FindClass("com/google/firebase/appindexing/Indexable"); + + private IntPtr class_ref; + + + // + // Properties + // + protected override IntPtr ThresholdClass + { + get + { + return this.class_ref; + } + } + + protected override Type ThresholdType + { + get + { + return typeof(IIndexableInvoker); + } + } + + // + // Constructors + // + public IIndexableInvoker(IntPtr handle, JniHandleOwnership transfer) : base(IIndexableInvoker.Validate(handle), transfer) + { + IntPtr objectClass = JNIEnv.GetObjectClass(base.Handle); + this.class_ref = JNIEnv.NewGlobalRef(objectClass); + JNIEnv.DeleteLocalRef(objectClass); + } + + // + // Static Methods + // + public static IIndexable GetObject(IntPtr handle, JniHandleOwnership transfer) + { + return Java.Lang.Object.GetObject(handle, transfer); + } + + private static IntPtr Validate(IntPtr handle) + { + if (!JNIEnv.IsInstanceOf(handle, IIndexableInvoker.java_class_ref)) + { + throw new InvalidCastException(string.Format("Unable to convert instance of type '{0}' to type '{1}'.", JNIEnv.GetClassNameFromInstance(handle), "com.google.firebase.IIndexable")); + } + return handle; + } + + // + // Methods + // + protected override void Dispose(bool disposing) + { + if (this.class_ref != IntPtr.Zero) + { + JNIEnv.DeleteGlobalRef(this.class_ref); + } + this.class_ref = IntPtr.Zero; + base.Dispose(disposing); + } + } + */ +} diff --git a/source/com.google.firebase/firebase-appindexing/Additions/IPendingResultExtensions.cs b/source/com.google.firebase/firebase-appindexing/Additions/IPendingResultExtensions.cs new file mode 100644 index 000000000..d93f56ef1 --- /dev/null +++ b/source/com.google.firebase/firebase-appindexing/Additions/IPendingResultExtensions.cs @@ -0,0 +1,55 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Common.Apis; +using Android.Runtime; +using System.Collections.Generic; + +namespace Android.Gms.AppIndexing +{ + public static partial class IAppIndexApiExtensions + { + public static async Task EndAsync (this IAppIndexApi api, GoogleApiClient apiClient, global::Android.Gms.AppIndexing.Action action) + { + return (await api.End (apiClient, action)).JavaCast (); + } + public static async Task StartAsync (this IAppIndexApi api, GoogleApiClient apiClient, global::Android.Gms.AppIndexing.Action action) { + return (await api.Start (apiClient, action)).JavaCast (); + } + [Obsolete] + public static async Task ViewAsync (this IAppIndexApi api, GoogleApiClient apiClient, Android.App.Activity activity, Android.Content.Intent viewIntent, string title, Android.Net.Uri webUrl, IList outLinks) { + return (await api.View (apiClient, activity, viewIntent, title, webUrl, outLinks)).JavaCast (); + } + [Obsolete] + public static async Task ViewAsync (this IAppIndexApi api, GoogleApiClient apiClient, Android.App.Activity activity, Android.Net.Uri appIndexingUrl, string title, Android.Net.Uri webUrl, IList outLinks) { + return (await api.View (apiClient, activity, appIndexingUrl, title, webUrl, outLinks)).JavaCast (); + } + [Obsolete] + public static async Task ViewEndAsync (this IAppIndexApi api, GoogleApiClient apiClient, Android.App.Activity activity, Android.Content.Intent viewIntent) { + return (await api.ViewEnd (apiClient, activity, viewIntent)).JavaCast (); + } + [Obsolete] + public static async Task ViewEndAsync (this IAppIndexApi api, GoogleApiClient apiClient, Android.App.Activity activity, Android.Net.Uri appUri) { + return (await api.ViewEnd (apiClient, activity, appUri)).JavaCast (); + } + } + + public static partial class IAppIndexApiActionResultExtensions { + [Obsolete] + public static async Task EndAsync (this IAppIndexApiActionResult api, GoogleApiClient apiClient) { + return (await api.End (apiClient)).JavaCast (); + } + } +} + +namespace Android.Gms.Search { + public static partial class ISearchAuthApiExtensions { + public static async Task ClearTokenAsync (this ISearchAuthApi api, GoogleApiClient client, string accessToken) { + return (await api.ClearToken (client, accessToken)).JavaCast (); + } + + public static async Task GetGoogleNowAuthAsync (this ISearchAuthApi api, GoogleApiClient client, string webAppClientId) { + return (await api.GetGoogleNowAuth (client, webAppClientId)).JavaCast (); + } + } +} + diff --git a/source/com.google.firebase/firebase-appindexing/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-appindexing/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-appindexing/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-appindexing/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-appindexing/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-appindexing/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-appindexing/Transforms/Metadata.xml b/source/com.google.firebase/firebase-appindexing/Transforms/Metadata.xml new file mode 100644 index 000000000..ab8e9f57f --- /dev/null +++ b/source/com.google.firebase/firebase-appindexing/Transforms/Metadata.xml @@ -0,0 +1,57 @@ + + + Android.Gms.AppIndexing + Android.Gms.AppDataSearch + Android.Gms.Search + Firebase.AppIndexing + Firebase.AppIndexing.Builders + Firebase.AppIndexing.Internal + + + + + + + + + + + + + source + size + dest + flags + + + + APP_INDEX_API + API + API + + + Android.Gms.Internal.Icing + + + Android.Gms.Libs.Punchlock.Threads + + + Android.Gms.Search + + + Android.Gms.Internal.Icing + + + diff --git a/source/com.google.firebase/firebase-auth-interop/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-auth-interop/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-auth-interop/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-auth-interop/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-auth-interop/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-auth-interop/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-auth-interop/Transforms/Metadata.xml b/source/com.google.firebase/firebase-auth-interop/Transforms/Metadata.xml new file mode 100644 index 000000000..6583162af --- /dev/null +++ b/source/com.google.firebase/firebase-auth-interop/Transforms/Metadata.xml @@ -0,0 +1,37 @@ + + + Firebase + Firebase.Auth.Internal + + + Firebase.Internal + + + Firebase.Internal + + + Firebase.Auth + + + Firebase.Auth.Internal + + + Firebase.Internal.Api + + + diff --git a/source/com.google.firebase/firebase-auth-ktx/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-auth-ktx/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..3c8e6978f --- /dev/null +++ b/source/com.google.firebase/firebase-auth-ktx/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,9 @@ + + + Firebase.Auth.Ktx + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-auth-ktx/Transforms/Metadata.xml b/source/com.google.firebase/firebase-auth-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-auth-ktx/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-auth/Additions/AboutAdditions.txt b/source/com.google.firebase/firebase-auth/Additions/AboutAdditions.txt new file mode 100644 index 000000000..c511f1d4e --- /dev/null +++ b/source/com.google.firebase/firebase-auth/Additions/AboutAdditions.txt @@ -0,0 +1,48 @@ +Additions allow you to add arbitrary C# to the generated classes +before they are compiled. This can be helpful for providing convenience +methods or adding pure C# classes. + +== Adding Methods to Generated Classes == + +Let's say the library being bound has a Rectangle class with a constructor +that takes an x and y position, and a width and length size. It will look like +this: + +public partial class Rectangle +{ + public Rectangle (int x, int y, int width, int height) + { + // JNI bindings + } +} + +Imagine we want to add a constructor to this class that takes a Point and +Size structure instead of 4 ints. We can add a new file called Rectangle.cs +with a partial class containing our new method: + +public partial class Rectangle +{ + public Rectangle (Point location, Size size) : + this (location.X, location.Y, size.Width, size.Height) + { + } +} + +At compile time, the additions class will be added to the generated class +and the final assembly will a Rectangle class with both constructors. + + +== Adding C# Classes == + +Another thing that can be done is adding fully C# managed classes to the +generated library. In the above example, let's assume that there isn't a +Point class available in Java or our library. The one we create doesn't need +to interact with Java, so we'll create it like a normal class in C#. + +By adding a Point.cs file with this class, it will end up in the binding library: + +public class Point +{ + public int X { get; set; } + public int Y { get; set; } +} diff --git a/source/com.google.firebase/firebase-auth/Additions/Additions.cs b/source/com.google.firebase/firebase-auth/Additions/Additions.cs new file mode 100644 index 000000000..5a5491412 --- /dev/null +++ b/source/com.google.firebase/firebase-auth/Additions/Additions.cs @@ -0,0 +1,141 @@ +using System; +using Android.Gms.Extensions; + +namespace Firebase.Auth +{ + public partial class FirebaseAuth + { + public System.Threading.Tasks.Task SignInAnonymouslyAsync () + { + return SignInAnonymously ().AsAsync (); + } + + public System.Threading.Tasks.Task SignInWithCustomTokenAsync (string customToken) + { + return SignInWithCustomToken (customToken).AsAsync (); + } + + public System.Threading.Tasks.Task CreateUserWithEmailAndPasswordAsync (string email, string password) + { + return CreateUserWithEmailAndPassword (email, password).AsAsync (); + } + + public System.Threading.Tasks.Task SignInWithCredentialAsync (AuthCredential authCredential) + { + return SignInWithCredential (authCredential).AsAsync (); + } + + public System.Threading.Tasks.Task SignInWithEmailAndPasswordAsync (string email, string password) + { + return SignInWithEmailAndPassword (email, password).AsAsync (); + } + + //public System.Threading.Tasks.Task FetchProvidersForEmailAsync (string email) + //{ + // return FetchProvidersForEmail (email).AsAsync (); + //} + + public System.Threading.Tasks.Task SendPasswordResetEmailAsync (string email) + { + return SendPasswordResetEmail (email).AsAsync (); + } + + public System.Threading.Tasks.Task SendPasswordResetEmailAsync (string email, ActionCodeSettings settings) + { + return SendPasswordResetEmail(email, settings).AsAsync(); + } + + public System.Threading.Tasks.Task ApplyActionCodeAsync(string code) + { + return ApplyActionCode(code).AsAsync(); + } + + public System.Threading.Tasks.Task CheckActionCodeAsync(string code) + { + return CheckActionCode(code).AsAsync(); + } + + public System.Threading.Tasks.Task ConfirmPasswordResetAsync(string code, string newPassword) + { + return ConfirmPasswordReset(code, newPassword).AsAsync(); + } + + public System.Threading.Tasks.Task VerifyPasswordResetCodeAsync(string code) + { + return VerifyPasswordResetCode(code).AsAsync(); + } + } +} + +namespace Firebase.Auth +{ + public partial class FirebaseUser + { + public System.Threading.Tasks.Task LinkWithCredentialAsync (AuthCredential credential) + { + return LinkWithCredential (credential).AsAsync (); + } + + public System.Threading.Tasks.Task DeleteAsync () + { + return Delete ().AsAsync (); + } + + //[Obsolete] + //public System.Threading.Tasks.Task GetTokenAsync (bool forceRefresh) + //{ + // return GetToken (forceRefresh).AsAsync (); + //} + + //public System.Threading.Tasks.Task GetIdTokenAsync(bool forceRefresh) + //{ + // return GetIdToken(forceRefresh).AsAsync(); + //} + + public System.Threading.Tasks.Task ReauthenticateAsync (AuthCredential credential) + { + return Reauthenticate (credential).AsAsync (); + } + + public System.Threading.Tasks.Task ReauthenticateAndRetrieveDataAsync(AuthCredential credential) + { + return ReauthenticateAndRetrieveData(credential).AsAsync(); + } + + public System.Threading.Tasks.Task ReloadAsync () + { + return Reload ().AsAsync (); + } + + public System.Threading.Tasks.Task UnlinkAsync (string value) + { + return Unlink (value).AsAsync (); + } + + public System.Threading.Tasks.Task UpdateEmailAsync (string email) + { + return UpdateEmail (email).AsAsync (); + } + + public System.Threading.Tasks.Task UpdatePhoneNumberAsync(PhoneAuthCredential phoneAuthCredential) + { + return UpdatePhoneNumber(phoneAuthCredential).AsAsync(); + } + + public System.Threading.Tasks.Task UpdatePasswordAsync (string password) + { + return UpdatePassword (password).AsAsync (); + } + + public System.Threading.Tasks.Task UpdateProfileAsync (UserProfileChangeRequest userProfileChangeRequest) + { + return UpdateProfile (userProfileChangeRequest).AsAsync (); + } + + public System.Threading.Tasks.Task SendEmailVerificationAsync(ActionCodeSettings settings) + { + return SendEmailVerification(settings).AsAsync(); + } + } +} + diff --git a/source/com.google.firebase/firebase-auth/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-auth/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-auth/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-auth/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-auth/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-auth/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-auth/Transforms/Metadata.xml b/source/com.google.firebase/firebase-auth/Transforms/Metadata.xml new file mode 100644 index 000000000..746c52fe5 --- /dev/null +++ b/source/com.google.firebase/firebase-auth/Transforms/Metadata.xml @@ -0,0 +1,61 @@ + + + + Firebase.Auth + Firebase.Auth.Api.Model + Firebase.Auth.Internal + Android.Gms.Dynamite.Descriptors.Firebase.Auth + Firebase.Auth.Api.Fallback.Service + Firebase.Auth.Api.Internal + Firebase.Auth.Api.Model.Json + + + + + + + source + size + dest + flags + + + + false + public + + internal + internal + internal + + + auth + + + + + + + Firebase.Auth.Ktx + + + diff --git a/source/com.google.firebase/firebase-common-ktx/Additions/Additions.cs b/source/com.google.firebase/firebase-common-ktx/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.firebase/firebase-common-ktx/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.firebase/firebase-common-ktx/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-common-ktx/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.firebase/firebase-common-ktx/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-common-ktx/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-common-ktx/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.firebase/firebase-common-ktx/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-common-ktx/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-common-ktx/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..35868c946 --- /dev/null +++ b/source/com.google.firebase/firebase-common-ktx/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Firebase.Ktx + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-common-ktx/Transforms/Metadata.ParameterNames.xml b/source/com.google.firebase/firebase-common-ktx/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.firebase/firebase-common-ktx/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-common-ktx/Transforms/Metadata.xml b/source/com.google.firebase/firebase-common-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-common-ktx/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-common/Additions/AboutAdditions.txt b/source/com.google.firebase/firebase-common/Additions/AboutAdditions.txt new file mode 100644 index 000000000..c511f1d4e --- /dev/null +++ b/source/com.google.firebase/firebase-common/Additions/AboutAdditions.txt @@ -0,0 +1,48 @@ +Additions allow you to add arbitrary C# to the generated classes +before they are compiled. This can be helpful for providing convenience +methods or adding pure C# classes. + +== Adding Methods to Generated Classes == + +Let's say the library being bound has a Rectangle class with a constructor +that takes an x and y position, and a width and length size. It will look like +this: + +public partial class Rectangle +{ + public Rectangle (int x, int y, int width, int height) + { + // JNI bindings + } +} + +Imagine we want to add a constructor to this class that takes a Point and +Size structure instead of 4 ints. We can add a new file called Rectangle.cs +with a partial class containing our new method: + +public partial class Rectangle +{ + public Rectangle (Point location, Size size) : + this (location.X, location.Y, size.Width, size.Height) + { + } +} + +At compile time, the additions class will be added to the generated class +and the final assembly will a Rectangle class with both constructors. + + +== Adding C# Classes == + +Another thing that can be done is adding fully C# managed classes to the +generated library. In the above example, let's assume that there isn't a +Point class available in Java or our library. The one we create doesn't need +to interact with Java, so we'll create it like a normal class in C#. + +By adding a Point.cs file with this class, it will end up in the binding library: + +public class Point +{ + public int X { get; set; } + public int Y { get; set; } +} diff --git a/source/com.google.firebase/firebase-common/Additions/TaskExtensions.cs b/source/com.google.firebase/firebase-common/Additions/TaskExtensions.cs new file mode 100644 index 000000000..b55452e34 --- /dev/null +++ b/source/com.google.firebase/firebase-common/Additions/TaskExtensions.cs @@ -0,0 +1,14 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Extensions; + +namespace Firebase +{ + public partial class FirebaseApp + { + //public Task GetTokenAsync(bool flag) + //{ + // return GetToken(flag).AsAsync(); + //} + } +} diff --git a/source/com.google.firebase/firebase-common/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-common/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-common/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-common/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-common/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-common/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-common/Transforms/Metadata.xml b/source/com.google.firebase/firebase-common/Transforms/Metadata.xml new file mode 100644 index 000000000..6cc68aac9 --- /dev/null +++ b/source/com.google.firebase/firebase-common/Transforms/Metadata.xml @@ -0,0 +1,111 @@ + + + + Firebase + Firebase.Auth + Firebase.Events + Firebase.Provider + Firebase.Components + Firebase.Inject + Firebase.Internal + Firebase.Internal.Api + Firebase.Emulators + + + + + + + + + source + size + dest + flags + + + + + Firebase.Annotations + + + Firebase.PlatformInfo + + + + + + + + + Firebase.HeartBeatInfo + + + + Firebase.HeartBeatInfo + + + Firebase.Tracing + + + Firebase.Concurrent + + + + + + Firebase.Ktx + + + + Java.Lang.Object + + + Firebase.Util + + + Firebase.Logger + + + + diff --git a/source/com.google.firebase/firebase-components/Additions/Additions.cs b/source/com.google.firebase/firebase-components/Additions/Additions.cs new file mode 100644 index 000000000..26375c851 --- /dev/null +++ b/source/com.google.firebase/firebase-components/Additions/Additions.cs @@ -0,0 +1,5 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; + diff --git a/source/com.google.firebase/firebase-components/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-components/Transforms/EnumFields.xml new file mode 100644 index 000000000..48b8feb1e --- /dev/null +++ b/source/com.google.firebase/firebase-components/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-components/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-components/Transforms/EnumMethods.xml new file mode 100644 index 000000000..ed82d6139 --- /dev/null +++ b/source/com.google.firebase/firebase-components/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-components/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-components/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..de2b32e25 --- /dev/null +++ b/source/com.google.firebase/firebase-components/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,35 @@ + + + + + Firebase + + + Firebase.Components + + + Firebase.DynamicLoading + + + Firebase.Events + + + Firebase.Inject + + + diff --git a/source/com.google.firebase/firebase-components/Transforms/Metadata.xml b/source/com.google.firebase/firebase-components/Transforms/Metadata.xml new file mode 100644 index 000000000..2079626b6 --- /dev/null +++ b/source/com.google.firebase/firebase-components/Transforms/Metadata.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + diff --git a/source/com.google.firebase/firebase-config-interop/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-config-interop/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..376d1d43e --- /dev/null +++ b/source/com.google.firebase/firebase-config-interop/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,33 @@ + + + Firebase.RemoteConfig.InterOp + + + Firebase.RemoteConfigInterOp + + + Firebase.RemoteConfig.InterOp.Rollouts + + + Firebase.RemoteConfig.Internal + + + Firebase.RemoteConfig.Internal.Rollouts + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-config-interop/Transforms/Metadata.xml b/source/com.google.firebase/firebase-config-interop/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-config-interop/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-config-ktx/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-config-ktx/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..8fe087657 --- /dev/null +++ b/source/com.google.firebase/firebase-config-ktx/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Firebase.RemoteConfig.Ktx + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-config-ktx/Transforms/Metadata.xml b/source/com.google.firebase/firebase-config-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-config-ktx/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-config/Additions/AboutAdditions.txt b/source/com.google.firebase/firebase-config/Additions/AboutAdditions.txt new file mode 100644 index 000000000..c511f1d4e --- /dev/null +++ b/source/com.google.firebase/firebase-config/Additions/AboutAdditions.txt @@ -0,0 +1,48 @@ +Additions allow you to add arbitrary C# to the generated classes +before they are compiled. This can be helpful for providing convenience +methods or adding pure C# classes. + +== Adding Methods to Generated Classes == + +Let's say the library being bound has a Rectangle class with a constructor +that takes an x and y position, and a width and length size. It will look like +this: + +public partial class Rectangle +{ + public Rectangle (int x, int y, int width, int height) + { + // JNI bindings + } +} + +Imagine we want to add a constructor to this class that takes a Point and +Size structure instead of 4 ints. We can add a new file called Rectangle.cs +with a partial class containing our new method: + +public partial class Rectangle +{ + public Rectangle (Point location, Size size) : + this (location.X, location.Y, size.Width, size.Height) + { + } +} + +At compile time, the additions class will be added to the generated class +and the final assembly will a Rectangle class with both constructors. + + +== Adding C# Classes == + +Another thing that can be done is adding fully C# managed classes to the +generated library. In the above example, let's assume that there isn't a +Point class available in Java or our library. The one we create doesn't need +to interact with Java, so we'll create it like a normal class in C#. + +By adding a Point.cs file with this class, it will end up in the binding library: + +public class Point +{ + public int X { get; set; } + public int Y { get; set; } +} diff --git a/source/com.google.firebase/firebase-config/Additions/Additions.cs b/source/com.google.firebase/firebase-config/Additions/Additions.cs new file mode 100644 index 000000000..600be6d3e --- /dev/null +++ b/source/com.google.firebase/firebase-config/Additions/Additions.cs @@ -0,0 +1,19 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Extensions; + +namespace Firebase.RemoteConfig +{ + public partial class FirebaseRemoteConfig + { + public Task FetchAsync () + { + return Fetch ().AsAsync (); + } + + public Task FetchAsync (long timeout) + { + return Fetch (timeout).AsAsync (); + } + } +} diff --git a/source/com.google.firebase/firebase-config/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-config/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-config/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-config/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-config/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-config/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-config/Transforms/Metadata.xml b/source/com.google.firebase/firebase-config/Transforms/Metadata.xml new file mode 100644 index 000000000..2b81cf10d --- /dev/null +++ b/source/com.google.firebase/firebase-config/Transforms/Metadata.xml @@ -0,0 +1,76 @@ + + + + Android.Gms.Config.Internal + Firebase.RemoteConfig + + + + + + + + + source + size + dest + flags + + + + + Android.Gms.Config.Proto + + + Firebase.RemoteConfig.Internal + + + Firebase.RemoteConfig.Proto + + + Firebase.RemoteConfig.Ktx + + + Firebase.RemoteConfig.InterOp + + + Firebase.RemoteConfigInterOp + + + Firebase.RemoteConfig.InterOp.Rollouts + + + Firebase.RemoteConfig.Internal + + + Firebase.RemoteConfig.Internal.Rollouts + + + diff --git a/source/com.google.firebase/firebase-core/Additions/Additions.cs b/source/com.google.firebase/firebase-core/Additions/Additions.cs new file mode 100644 index 000000000..26375c851 --- /dev/null +++ b/source/com.google.firebase/firebase-core/Additions/Additions.cs @@ -0,0 +1,5 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; + diff --git a/source/com.google.firebase/firebase-core/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-core/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-core/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-core/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-core/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-core/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-core/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-core/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..f6fbf3dac --- /dev/null +++ b/source/com.google.firebase/firebase-core/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,21 @@ + + + Firebase.Encoders + + + Firebase.Encoders.Config + + + Firebase.Encoders.Json + + + diff --git a/source/com.google.firebase/firebase-core/Transforms/Metadata.xml b/source/com.google.firebase/firebase-core/Transforms/Metadata.xml new file mode 100644 index 000000000..1acbd8ff0 --- /dev/null +++ b/source/com.google.firebase/firebase-core/Transforms/Metadata.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/source/com.google.firebase/firebase-crash/Additions/AboutAdditions.txt b/source/com.google.firebase/firebase-crash/Additions/AboutAdditions.txt new file mode 100644 index 000000000..c511f1d4e --- /dev/null +++ b/source/com.google.firebase/firebase-crash/Additions/AboutAdditions.txt @@ -0,0 +1,48 @@ +Additions allow you to add arbitrary C# to the generated classes +before they are compiled. This can be helpful for providing convenience +methods or adding pure C# classes. + +== Adding Methods to Generated Classes == + +Let's say the library being bound has a Rectangle class with a constructor +that takes an x and y position, and a width and length size. It will look like +this: + +public partial class Rectangle +{ + public Rectangle (int x, int y, int width, int height) + { + // JNI bindings + } +} + +Imagine we want to add a constructor to this class that takes a Point and +Size structure instead of 4 ints. We can add a new file called Rectangle.cs +with a partial class containing our new method: + +public partial class Rectangle +{ + public Rectangle (Point location, Size size) : + this (location.X, location.Y, size.Width, size.Height) + { + } +} + +At compile time, the additions class will be added to the generated class +and the final assembly will a Rectangle class with both constructors. + + +== Adding C# Classes == + +Another thing that can be done is adding fully C# managed classes to the +generated library. In the above example, let's assume that there isn't a +Point class available in Java or our library. The one we create doesn't need +to interact with Java, so we'll create it like a normal class in C#. + +By adding a Point.cs file with this class, it will end up in the binding library: + +public class Point +{ + public int X { get; set; } + public int Y { get; set; } +} diff --git a/source/com.google.firebase/firebase-crash/Additions/Additions.cs b/source/com.google.firebase/firebase-crash/Additions/Additions.cs new file mode 100644 index 000000000..51eb9b89d --- /dev/null +++ b/source/com.google.firebase/firebase-crash/Additions/Additions.cs @@ -0,0 +1,23 @@ +using System; + +namespace Firebase.Crash +{ + public partial class FirebaseCrash + { + public static void Logcat (Android.Util.LogPriority logPriority, string tag, string message) + { + Logcat ((int)logPriority, tag, message); + } + + public static void Logcat (Android.Util.LogPriority logPriority, string tag, string format, params object[] args) + { + Logcat ((int)logPriority, tag, string.Format (format, args)); + } + + public static void Report (System.Exception exception) + { + Report (Java.Lang.Throwable.FromException (exception)); + } + } +} + diff --git a/source/com.google.firebase/firebase-crash/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-crash/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-crash/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-crash/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-crash/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-crash/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-crash/Transforms/Metadata.xml b/source/com.google.firebase/firebase-crash/Transforms/Metadata.xml new file mode 100644 index 000000000..51e6ee11a --- /dev/null +++ b/source/com.google.firebase/firebase-crash/Transforms/Metadata.xml @@ -0,0 +1,32 @@ + + + + Firebase.Crash + Firebase.Crash.Internal + Firebase.Crash.Internal.Config.Flag + Firebase.Crash.Internal.Service + + + + + + + + + source + size + dest + flags + + mono.android.app.IntentService + + + + + + Firebase.Crash.Component + + diff --git a/source/com.google.firebase/firebase-crashlytics-ktx/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-crashlytics-ktx/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..9a1d3f449 --- /dev/null +++ b/source/com.google.firebase/firebase-crashlytics-ktx/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,9 @@ + + + Firebase.Crashlytics.Ktx + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-crashlytics-ktx/Transforms/Metadata.xml b/source/com.google.firebase/firebase-crashlytics-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-crashlytics-ktx/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-crashlytics-ndk/Additions/Additions.cs b/source/com.google.firebase/firebase-crashlytics-ndk/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.firebase/firebase-crashlytics-ndk/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.firebase/firebase-crashlytics-ndk/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-crashlytics-ndk/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-crashlytics-ndk/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-crashlytics-ndk/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-crashlytics-ndk/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-crashlytics-ndk/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-crashlytics-ndk/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-crashlytics-ndk/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..78a209b37 --- /dev/null +++ b/source/com.google.firebase/firebase-crashlytics-ndk/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,15 @@ + + + Firebase.Crashlytics.NDK + + + Firebase + + + diff --git a/source/com.google.firebase/firebase-crashlytics-ndk/Transforms/Metadata.ParameterNames.xml b/source/com.google.firebase/firebase-crashlytics-ndk/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.firebase/firebase-crashlytics-ndk/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-crashlytics-ndk/Transforms/Metadata.xml b/source/com.google.firebase/firebase-crashlytics-ndk/Transforms/Metadata.xml new file mode 100644 index 000000000..6b010cc4c --- /dev/null +++ b/source/com.google.firebase/firebase-crashlytics-ndk/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + diff --git a/source/com.google.firebase/firebase-crashlytics/Additions/Additions.cs b/source/com.google.firebase/firebase-crashlytics/Additions/Additions.cs new file mode 100644 index 000000000..26375c851 --- /dev/null +++ b/source/com.google.firebase/firebase-crashlytics/Additions/Additions.cs @@ -0,0 +1,5 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; + diff --git a/source/com.google.firebase/firebase-crashlytics/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-crashlytics/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-crashlytics/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-crashlytics/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-crashlytics/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-crashlytics/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-crashlytics/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-crashlytics/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..ef164ee53 --- /dev/null +++ b/source/com.google.firebase/firebase-crashlytics/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,157 @@ + + + + + Firebase.Crashlytics + + + Firebase.Crashlytics.Internal + + + Firebase.Crashlytics.Internal.Analytics + + + Firebase.Crashlytics.Internal.Analytics + + + Firebase.Crashlytics.Internal.Common + + + Firebase.Crashlytics.Internal.Log + + + Firebase.Crashlytics.Internal.Model + + + Firebase.Crashlytics.Internal.Model.Serialization + + + Firebase.Crashlytics.Internal.NDK + + + Firebase.Crashlytics.Internal.Network + + + Firebase.Crashlytics.Internal.Persistence + + + Firebase.Crashlytics.Internal.Proto + + + Firebase.Crashlytics.Internal.Report + + + Firebase.Crashlytics.Internal.Report.Model + + + Firebase.Crashlytics.Internal.Report.Network + + + Firebase.Crashlytics.Internal.Send + + + Firebase.Crashlytics.Internal.Settings + + + Firebase.Crashlytics.Internal.Settings.Model + + + Firebase.Crashlytics.Internal.Settings.Network + + + Firebase.Crashlytics.Internal.Stacktrace + + + Firebase.Crashlytics.Internal.Unity + + + + Firebase.Crashlytics.NDK + + + Firebase.Crashlytics.Internal.Breadcrumbs + + + + Firebase.Crashlytics.Internal.Metadata + + + Firebase.Crashlytics.Ktx + + + diff --git a/source/com.google.firebase/firebase-crashlytics/Transforms/Metadata.ParameterNames.xml b/source/com.google.firebase/firebase-crashlytics/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.firebase/firebase-crashlytics/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-crashlytics/Transforms/Metadata.xml b/source/com.google.firebase/firebase-crashlytics/Transforms/Metadata.xml new file mode 100644 index 000000000..5d8c9288e --- /dev/null +++ b/source/com.google.firebase/firebase-crashlytics/Transforms/Metadata.xml @@ -0,0 +1,17 @@ + + + + + + + + + + diff --git a/source/com.google.firebase/firebase-database-collection/Additions/ImmutableSortedMapIterator.cs b/source/com.google.firebase/firebase-database-collection/Additions/ImmutableSortedMapIterator.cs new file mode 100644 index 000000000..587678c18 --- /dev/null +++ b/source/com.google.firebase/firebase-database-collection/Additions/ImmutableSortedMapIterator.cs @@ -0,0 +1,15 @@ +using System; +using Java.Util; + +namespace Firebase.Database.Collection +{ + // Metadata.xml XPath class reference: path="/api/package[@name='com.google.firebase.database.collection']/class[@name='ImmutableSortedMapIterator']" + public partial class ImmutableSortedMapIterator + { + Java.Lang.Object IIterator.Next() + { + throw new NotImplementedException(); + } + + } +} diff --git a/source/com.google.firebase/firebase-database-collection/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-database-collection/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-database-collection/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-database-collection/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-database-collection/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-database-collection/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-database-collection/Transforms/Metadata.xml b/source/com.google.firebase/firebase-database-collection/Transforms/Metadata.xml new file mode 100644 index 000000000..af68ba30b --- /dev/null +++ b/source/com.google.firebase/firebase-database-collection/Transforms/Metadata.xml @@ -0,0 +1,22 @@ + + + Firebase + Firebase.Database.Collection + + + + + + + + + + diff --git a/source/com.google.firebase/firebase-database-connection/Additions/AboutAdditions.txt b/source/com.google.firebase/firebase-database-connection/Additions/AboutAdditions.txt new file mode 100644 index 000000000..c511f1d4e --- /dev/null +++ b/source/com.google.firebase/firebase-database-connection/Additions/AboutAdditions.txt @@ -0,0 +1,48 @@ +Additions allow you to add arbitrary C# to the generated classes +before they are compiled. This can be helpful for providing convenience +methods or adding pure C# classes. + +== Adding Methods to Generated Classes == + +Let's say the library being bound has a Rectangle class with a constructor +that takes an x and y position, and a width and length size. It will look like +this: + +public partial class Rectangle +{ + public Rectangle (int x, int y, int width, int height) + { + // JNI bindings + } +} + +Imagine we want to add a constructor to this class that takes a Point and +Size structure instead of 4 ints. We can add a new file called Rectangle.cs +with a partial class containing our new method: + +public partial class Rectangle +{ + public Rectangle (Point location, Size size) : + this (location.X, location.Y, size.Width, size.Height) + { + } +} + +At compile time, the additions class will be added to the generated class +and the final assembly will a Rectangle class with both constructors. + + +== Adding C# Classes == + +Another thing that can be done is adding fully C# managed classes to the +generated library. In the above example, let's assume that there isn't a +Point class available in Java or our library. The one we create doesn't need +to interact with Java, so we'll create it like a normal class in C#. + +By adding a Point.cs file with this class, it will end up in the binding library: + +public class Point +{ + public int X { get; set; } + public int Y { get; set; } +} diff --git a/source/com.google.firebase/firebase-database-connection/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-database-connection/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-database-connection/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-database-connection/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-database-connection/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-database-connection/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-database-connection/Transforms/Metadata.xml b/source/com.google.firebase/firebase-database-connection/Transforms/Metadata.xml new file mode 100644 index 000000000..40520127d --- /dev/null +++ b/source/com.google.firebase/firebase-database-connection/Transforms/Metadata.xml @@ -0,0 +1,21 @@ + + + + Firebase.Database.Connection.Idl + + + + + + + + + + + source + size + dest + flags + + + diff --git a/source/com.google.firebase/firebase-database-ktx/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-database-ktx/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..da6dbaced --- /dev/null +++ b/source/com.google.firebase/firebase-database-ktx/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,9 @@ + + + Firebase.Database.Ktx + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-database-ktx/Transforms/Metadata.xml b/source/com.google.firebase/firebase-database-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-database-ktx/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-database/Additions/AboutAdditions.txt b/source/com.google.firebase/firebase-database/Additions/AboutAdditions.txt new file mode 100644 index 000000000..c511f1d4e --- /dev/null +++ b/source/com.google.firebase/firebase-database/Additions/AboutAdditions.txt @@ -0,0 +1,48 @@ +Additions allow you to add arbitrary C# to the generated classes +before they are compiled. This can be helpful for providing convenience +methods or adding pure C# classes. + +== Adding Methods to Generated Classes == + +Let's say the library being bound has a Rectangle class with a constructor +that takes an x and y position, and a width and length size. It will look like +this: + +public partial class Rectangle +{ + public Rectangle (int x, int y, int width, int height) + { + // JNI bindings + } +} + +Imagine we want to add a constructor to this class that takes a Point and +Size structure instead of 4 ints. We can add a new file called Rectangle.cs +with a partial class containing our new method: + +public partial class Rectangle +{ + public Rectangle (Point location, Size size) : + this (location.X, location.Y, size.Width, size.Height) + { + } +} + +At compile time, the additions class will be added to the generated class +and the final assembly will a Rectangle class with both constructors. + + +== Adding C# Classes == + +Another thing that can be done is adding fully C# managed classes to the +generated library. In the above example, let's assume that there isn't a +Point class available in Java or our library. The one we create doesn't need +to interact with Java, so we'll create it like a normal class in C#. + +By adding a Point.cs file with this class, it will end up in the binding library: + +public class Point +{ + public int X { get; set; } + public int Y { get; set; } +} diff --git a/source/com.google.firebase/firebase-database/Additions/Additions.cs b/source/com.google.firebase/firebase-database/Additions/Additions.cs new file mode 100644 index 000000000..a57c62c14 --- /dev/null +++ b/source/com.google.firebase/firebase-database/Additions/Additions.cs @@ -0,0 +1,67 @@ +using System; +using System.Threading.Tasks; +using Android.Gms.Extensions; + +namespace Firebase.Database +{ + public partial class DatabaseReference + { + public Task RemoveValueAsync () + { + return RemoveValue ().AsAsync (); + } + + public Task SetPriorityAsync (Java.Lang.Object obj) + { + return SetPriority (obj).AsAsync (); + } + + public Task SetValueAsync (Java.Lang.Object obj) + { + return SetValue (obj).AsAsync (); + } + + public Task SetValueAsync (Java.Lang.Object obj1, Java.Lang.Object obj2) + { + return SetValue (obj1, obj2).AsAsync (); + } + + public Task UpdateChildrenAsync (System.Collections.Generic.IDictionary map) + { + return UpdateChildren (map).AsAsync (); + } + } + + public partial class OnDisconnect + { + public Task CancelAsync () + { + return Cancel ().AsAsync (); + } + + public Task RemoveValueAsync () + { + return RemoveValue ().AsAsync (); + } + + public Task SetValueAsync (Java.Lang.Object obj) + { + return SetValue (obj).AsAsync (); + } + + public Task SetValueAsync (Java.Lang.Object obj, string key) + { + return SetValue (obj, key).AsAsync (); + } + + public Task SetValueAsync (Java.Lang.Object obj, double val) + { + return SetValue (obj, val).AsAsync (); + } + + public Task UpdateChildrenAsync (System.Collections.Generic.IDictionary map) + { + return UpdateChildren (map).AsAsync (); + } + } +} diff --git a/source/com.google.firebase/firebase-database/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-database/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-database/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-database/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-database/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-database/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-database/Transforms/Metadata.xml b/source/com.google.firebase/firebase-database/Transforms/Metadata.xml new file mode 100644 index 000000000..d65c9d854 --- /dev/null +++ b/source/com.google.firebase/firebase-database/Transforms/Metadata.xml @@ -0,0 +1,306 @@ + + + + Firebase.Database + + + + + + + + + source + size + dest + flags + + ValueEventArgs + ChildEventArgs + + snapshot + previousChildName + + snapshot + previousChildName + + error + + snapshot + previousChildName + + snapshot + + error + + snapshot + + error + @ref + + + + Firebase.Database.Android + + + Firebase.Database.Annotations + + + Firebase.Database.Connection + + + Firebase.Database.Connection.Util + + + Firebase.Database.Logging + + + Firebase.Database.Snapshot + + + Firebase.Database.Core + + + Firebase.Database.Core.Operation + + + Firebase.Database.Core.Persistence + + + Firebase.Database.Core.Utilities + + + Firebase.Database.Core.Utilities.Encoding + + + Firebase.Database.Core.Utilities.Tuple + + + Firebase.Database.Core.View + + + Firebase.Database.Core.View.Filter + + + Firebase.Database.Tubesock + + + Firebase.Database.Util + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + OnNamedTokenChange + + + + error + + + reference + + + + + OnTokenChangeString + + + + Firebase.Database.Ktx + + + diff --git a/source/com.google.firebase/firebase-datatransport/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-datatransport/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-datatransport/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-datatransport/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-datatransport/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-datatransport/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-datatransport/Transforms/Metadata.xml b/source/com.google.firebase/firebase-datatransport/Transforms/Metadata.xml new file mode 100644 index 000000000..b64670a5c --- /dev/null +++ b/source/com.google.firebase/firebase-datatransport/Transforms/Metadata.xml @@ -0,0 +1,16 @@ + + + + Firebase.DataTransport + + + Firebase.DataTransport + + + diff --git a/source/com.google.firebase/firebase-dynamic-links-ktx/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-dynamic-links-ktx/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..a4b8fecf0 --- /dev/null +++ b/source/com.google.firebase/firebase-dynamic-links-ktx/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Firebase.DynamicLinks.Ktx + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-dynamic-links-ktx/Transforms/Metadata.xml b/source/com.google.firebase/firebase-dynamic-links-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-dynamic-links-ktx/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-dynamic-links/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-dynamic-links/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-dynamic-links/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-dynamic-links/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-dynamic-links/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-dynamic-links/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-dynamic-links/Transforms/Metadata.xml b/source/com.google.firebase/firebase-dynamic-links/Transforms/Metadata.xml new file mode 100644 index 000000000..ab1472c32 --- /dev/null +++ b/source/com.google.firebase/firebase-dynamic-links/Transforms/Metadata.xml @@ -0,0 +1,53 @@ + + + Firebase + Firebase.DynamicLinks + + + + + + + + + source + size + dest + flags + + + + + + + Firebase.DynamicLinks.Internal + + + + + + + + + + + + + Firebase.DynamicLinks.Ktx + + + diff --git a/source/com.google.firebase/firebase-encoders-json/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-encoders-json/Transforms/EnumFields.xml new file mode 100644 index 000000000..48b8feb1e --- /dev/null +++ b/source/com.google.firebase/firebase-encoders-json/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-encoders-json/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-encoders-json/Transforms/EnumMethods.xml new file mode 100644 index 000000000..ed82d6139 --- /dev/null +++ b/source/com.google.firebase/firebase-encoders-json/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-encoders-json/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-encoders-json/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..88af87f83 --- /dev/null +++ b/source/com.google.firebase/firebase-encoders-json/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,59 @@ + + + Firebase.Encoders + + + Firebase.Encoders.Config + + + Firebase.Encoders.JSON + + + Firebase.Encoders.Annotations + + + + + Firebase + + + Firebase.Encoders + + + Firebase.Encoders.Annotations + + + Firebase.Encoders.Config + + + Firebase.Encoders.JSON + + + diff --git a/source/com.google.firebase/firebase-encoders-json/Transforms/Metadata.xml b/source/com.google.firebase/firebase-encoders-json/Transforms/Metadata.xml new file mode 100644 index 000000000..ae27f2834 --- /dev/null +++ b/source/com.google.firebase/firebase-encoders-json/Transforms/Metadata.xml @@ -0,0 +1,9 @@ + + + + + + + diff --git a/source/com.google.firebase/firebase-encoders-proto/Additions/Additions.cs b/source/com.google.firebase/firebase-encoders-proto/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.firebase/firebase-encoders-proto/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.firebase/firebase-encoders-proto/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-encoders-proto/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.firebase/firebase-encoders-proto/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-encoders-proto/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-encoders-proto/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.firebase/firebase-encoders-proto/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-encoders-proto/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-encoders-proto/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..8b0f68275 --- /dev/null +++ b/source/com.google.firebase/firebase-encoders-proto/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Firebase.Encoders.Proto + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-encoders-proto/Transforms/Metadata.ParameterNames.xml b/source/com.google.firebase/firebase-encoders-proto/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.firebase/firebase-encoders-proto/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-encoders-proto/Transforms/Metadata.xml b/source/com.google.firebase/firebase-encoders-proto/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-encoders-proto/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-encoders/Additions/Additions.cs b/source/com.google.firebase/firebase-encoders/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.firebase/firebase-encoders/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.firebase/firebase-encoders/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-encoders/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.firebase/firebase-encoders/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-encoders/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-encoders/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.firebase/firebase-encoders/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-encoders/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-encoders/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..62ca8ab10 --- /dev/null +++ b/source/com.google.firebase/firebase-encoders/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,4 @@ + + Firebase.Encoders + Firebase.Encoders.Annotations + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-encoders/Transforms/Metadata.ParameterNames.xml b/source/com.google.firebase/firebase-encoders/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.firebase/firebase-encoders/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-encoders/Transforms/Metadata.xml b/source/com.google.firebase/firebase-encoders/Transforms/Metadata.xml new file mode 100644 index 000000000..63f2eda31 --- /dev/null +++ b/source/com.google.firebase/firebase-encoders/Transforms/Metadata.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-firestore-ktx/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-firestore-ktx/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..d3afd81ef --- /dev/null +++ b/source/com.google.firebase/firebase-firestore-ktx/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,9 @@ + + + Firebase.Firestore.Ktx + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-firestore-ktx/Transforms/Metadata.xml b/source/com.google.firebase/firebase-firestore-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-firestore-ktx/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-firestore/Additions/Additions.cs b/source/com.google.firebase/firebase-firestore/Additions/Additions.cs new file mode 100644 index 000000000..505f302a0 --- /dev/null +++ b/source/com.google.firebase/firebase-firestore/Additions/Additions.cs @@ -0,0 +1,31 @@ +using System; +using Android.Runtime; +using Android.Gms.Extensions; + + +namespace Firebase.Firestore +{ + + // Metadata.xml XPath class reference: path="/api/package[@name='com.google.firebase.firestore']/class[@name='LoadBundleTask']" + //[global::Android.Runtime.Register("com/google/firebase/firestore/LoadBundleTask", DoNotGenerateAcw = true)] + public partial class LoadBundleTask // : global::Android.Gms.Tasks.Task + { + protected override unsafe global::Java.Lang.Object RawResult + { + // Metadata.xml XPath method reference: path="/api/package[@name='com.google.android.gms.tasks']/class[@name='Task']/method[@name='getResult' and count(parameter)=0]" + [Register("getResult", "()Ljava/lang/Object;", "GetGetResultHandler")] + get + { + const string __id = "getResult.()Ljava/lang/Object;"; + try + { + var __rm = _members.InstanceMethods.InvokeAbstractObjectMethod(__id, this, null); + return (Java.Lang.Object)global::Java.Lang.Object.GetObject(__rm.Handle, JniHandleOwnership.TransferLocalRef); + } + finally + { + } + } + } + } +} diff --git a/source/com.google.firebase/firebase-firestore/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-firestore/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-firestore/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-firestore/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-firestore/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-firestore/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-firestore/Transforms/Metadata.xml b/source/com.google.firebase/firebase-firestore/Transforms/Metadata.xml new file mode 100644 index 000000000..5e994e5d8 --- /dev/null +++ b/source/com.google.firebase/firebase-firestore/Transforms/Metadata.xml @@ -0,0 +1,475 @@ + + + + Firebase.Firestore + IO.Grpc.OkHttp + + + + + + + + + source + size + dest + flags + + + + + + protected + + + Java.Lang.Object + Java.Lang.Object + Firebase.Firestore.Remote.IConnectivityMonitor + + obj + error + + + Firebase + + + Google.Cloud.Datastore.Core.Number + + + Firebase.Firestore.Auth + + + Firebase.Firestore.Core + + + Firebase.Firestore.Local + + + Firebase.Firestore.Model + + + Firebase.Firestore.Model.Mutation + + + Firebase.Firestore.Model.Value + + + Firebase.Firestore.Proto + + + Firebase.Firestore.Remote + + + Firebase.Firestore.Util + + + Google.Firestore.V1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Firebase.Firestore.Model.Value.FieldValue + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Java.Lang.Object + + + + + Firebase.Firestore.Bundle + + + Firebase.Firestore.Proto + + + + + Firestore.Bundle + + + + + + + + + + + + + + Firebase.Firestore.Index + + + Firestore.Admin.V1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Java.Lang.Object + + + Java.Lang.Object + + + + + Firebase.Firestore.Ktx + + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-functions-ktx/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-functions-ktx/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..1d141c53e --- /dev/null +++ b/source/com.google.firebase/firebase-functions-ktx/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,9 @@ + + + Firebase.Functions.Ktx + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-functions-ktx/Transforms/Metadata.xml b/source/com.google.firebase/firebase-functions-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-functions-ktx/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-functions/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-functions/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-functions/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-functions/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-functions/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-functions/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-functions/Transforms/Metadata.xml b/source/com.google.firebase/firebase-functions/Transforms/Metadata.xml new file mode 100644 index 000000000..3938633b4 --- /dev/null +++ b/source/com.google.firebase/firebase-functions/Transforms/Metadata.xml @@ -0,0 +1,40 @@ + + + Firebase + Firebase.Functions + + + + + Java.Lang.Object + + + + Firebase.Functions.Dagger + + + Firebase.Functions.Dagger.Interal + + + Firebase.Functions.Dagger.Assisted + + + Firebase.Functions.Ktx + + + diff --git a/source/com.google.firebase/firebase-iid-interop/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-iid-interop/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-iid-interop/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-iid-interop/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-iid-interop/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-iid-interop/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-iid-interop/Transforms/Metadata.xml b/source/com.google.firebase/firebase-iid-interop/Transforms/Metadata.xml new file mode 100644 index 000000000..340c5adcf --- /dev/null +++ b/source/com.google.firebase/firebase-iid-interop/Transforms/Metadata.xml @@ -0,0 +1,6 @@ + + + Firebase + Firebase.Iid.Internal + + diff --git a/source/com.google.firebase/firebase-iid/Additions/AboutAdditions.txt b/source/com.google.firebase/firebase-iid/Additions/AboutAdditions.txt new file mode 100644 index 000000000..c511f1d4e --- /dev/null +++ b/source/com.google.firebase/firebase-iid/Additions/AboutAdditions.txt @@ -0,0 +1,48 @@ +Additions allow you to add arbitrary C# to the generated classes +before they are compiled. This can be helpful for providing convenience +methods or adding pure C# classes. + +== Adding Methods to Generated Classes == + +Let's say the library being bound has a Rectangle class with a constructor +that takes an x and y position, and a width and length size. It will look like +this: + +public partial class Rectangle +{ + public Rectangle (int x, int y, int width, int height) + { + // JNI bindings + } +} + +Imagine we want to add a constructor to this class that takes a Point and +Size structure instead of 4 ints. We can add a new file called Rectangle.cs +with a partial class containing our new method: + +public partial class Rectangle +{ + public Rectangle (Point location, Size size) : + this (location.X, location.Y, size.Width, size.Height) + { + } +} + +At compile time, the additions class will be added to the generated class +and the final assembly will a Rectangle class with both constructors. + + +== Adding C# Classes == + +Another thing that can be done is adding fully C# managed classes to the +generated library. In the above example, let's assume that there isn't a +Point class available in Java or our library. The one we create doesn't need +to interact with Java, so we'll create it like a normal class in C#. + +By adding a Point.cs file with this class, it will end up in the binding library: + +public class Point +{ + public int X { get; set; } + public int Y { get; set; } +} diff --git a/source/com.google.firebase/firebase-iid/Additions/Additions.cs b/source/com.google.firebase/firebase-iid/Additions/Additions.cs new file mode 100644 index 000000000..4bcbf135f --- /dev/null +++ b/source/com.google.firebase/firebase-iid/Additions/Additions.cs @@ -0,0 +1,6 @@ +using System; +using Android.Gms.Extensions; + +namespace Firebase.Iid +{ +} diff --git a/source/com.google.firebase/firebase-iid/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-iid/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-iid/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-iid/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-iid/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-iid/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-iid/Transforms/Metadata.xml b/source/com.google.firebase/firebase-iid/Transforms/Metadata.xml new file mode 100644 index 000000000..b3a56932d --- /dev/null +++ b/source/com.google.firebase/firebase-iid/Transforms/Metadata.xml @@ -0,0 +1,25 @@ + + + + Firebase + Firebase.Iid + + + + + + + + + source + size + dest + flags + + false + + + + + + diff --git a/source/com.google.firebase/firebase-inappmessaging-display-ktx/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-inappmessaging-display-ktx/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..b30374277 --- /dev/null +++ b/source/com.google.firebase/firebase-inappmessaging-display-ktx/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,9 @@ + + + Firebase.InAppMessaging.Display.Ktx + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-inappmessaging-display-ktx/Transforms/Metadata.xml b/source/com.google.firebase/firebase-inappmessaging-display-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-inappmessaging-display-ktx/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-inappmessaging-display/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-inappmessaging-display/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.firebase/firebase-inappmessaging-display/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-inappmessaging-display/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-inappmessaging-display/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.firebase/firebase-inappmessaging-display/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-inappmessaging-display/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-inappmessaging-display/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..582fcc04a --- /dev/null +++ b/source/com.google.firebase/firebase-inappmessaging-display/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,88 @@ + + + + Firebase.InAppMessaging.Display + + + Firebase.InAppMessaging.Display.Internal + + + Firebase.InAppMessaging.Display.Internal + + + Firebase.InAppMessaging.Display.Internal.BindingWrappers + + + Firebase.InAppMessaging.Display.Internal.Injection.Components + + + Firebase.InAppMessaging.Display.Internal.Injection.Keys + + + Firebase.InAppMessaging.Display.Internal.Injection.Modules + + + Firebase.InAppMessaging.Display.Internal.Injection.Scopes + + + Firebase.InAppMessaging.Display.Internal.Layout + + + Firebase.InAppMessaging.Display.Internal.Layout.Util + + + Firebase.InAppMessaging.Display.Dagger + + + Firebase.InAppMessaging.Display.Dagger.MultiBindings + + + Firebase.InAppMessaging.Display.Ktx + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-inappmessaging-display/Transforms/Metadata.ParameterNames.xml b/source/com.google.firebase/firebase-inappmessaging-display/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.firebase/firebase-inappmessaging-display/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-inappmessaging-display/Transforms/Metadata.xml b/source/com.google.firebase/firebase-inappmessaging-display/Transforms/Metadata.xml new file mode 100644 index 000000000..d4135a9dd --- /dev/null +++ b/source/com.google.firebase/firebase-inappmessaging-display/Transforms/Metadata.xml @@ -0,0 +1,12 @@ + + + + + + Java.Lang.Object + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-inappmessaging-ktx/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-inappmessaging-ktx/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..e3e4405f5 --- /dev/null +++ b/source/com.google.firebase/firebase-inappmessaging-ktx/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,9 @@ + + + Firebase.InAppMessaging.Ktx + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-inappmessaging-ktx/Transforms/Metadata.xml b/source/com.google.firebase/firebase-inappmessaging-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-inappmessaging-ktx/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-inappmessaging/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-inappmessaging/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.firebase/firebase-inappmessaging/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-inappmessaging/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-inappmessaging/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.firebase/firebase-inappmessaging/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-inappmessaging/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-inappmessaging/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..5baa5d09e --- /dev/null +++ b/source/com.google.firebase/firebase-inappmessaging/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,96 @@ + + + + Google.Developers.Mobile.Targeting.Proto + + + Firebase.InAppMessaging + + + Firebase.InAppMessaging.Internal + + + Firebase.InAppMessaging.Internal.Injection.Components + + + Firebase.InAppMessaging.Internal.Injection.Modules + + + Firebase.InAppMessaging.Internal.Injection.Qualifiers + + + Firebase.InAppMessaging.Internal.Injection.Scopes + + + Firebase.InAppMessaging.Internal.Time + + + Firebase.InAppMessaging.Model + + + Google.Internal.Firebase.InAppMessaging.V1 + + + + Google.Internal.Firebase.InAppMessaging.V1.SdkServing + + + Firebase.InAppMessaging.Dagger + + + Firebase.InAppMessaging.Dagger.MultiBindings + + + Firebase.InAppMessaging.Ktx + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-inappmessaging/Transforms/Metadata.ParameterNames.xml b/source/com.google.firebase/firebase-inappmessaging/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.firebase/firebase-inappmessaging/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-inappmessaging/Transforms/Metadata.xml b/source/com.google.firebase/firebase-inappmessaging/Transforms/Metadata.xml new file mode 100644 index 000000000..bc81d5894 --- /dev/null +++ b/source/com.google.firebase/firebase-inappmessaging/Transforms/Metadata.xml @@ -0,0 +1,305 @@ + + + + + + + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + + Java.Lang.Object + + + + Java.Lang.Object + + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + + + + + + + + + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-installations-interop/Additions/AboutAdditions.txt b/source/com.google.firebase/firebase-installations-interop/Additions/AboutAdditions.txt new file mode 100644 index 000000000..c511f1d4e --- /dev/null +++ b/source/com.google.firebase/firebase-installations-interop/Additions/AboutAdditions.txt @@ -0,0 +1,48 @@ +Additions allow you to add arbitrary C# to the generated classes +before they are compiled. This can be helpful for providing convenience +methods or adding pure C# classes. + +== Adding Methods to Generated Classes == + +Let's say the library being bound has a Rectangle class with a constructor +that takes an x and y position, and a width and length size. It will look like +this: + +public partial class Rectangle +{ + public Rectangle (int x, int y, int width, int height) + { + // JNI bindings + } +} + +Imagine we want to add a constructor to this class that takes a Point and +Size structure instead of 4 ints. We can add a new file called Rectangle.cs +with a partial class containing our new method: + +public partial class Rectangle +{ + public Rectangle (Point location, Size size) : + this (location.X, location.Y, size.Width, size.Height) + { + } +} + +At compile time, the additions class will be added to the generated class +and the final assembly will a Rectangle class with both constructors. + + +== Adding C# Classes == + +Another thing that can be done is adding fully C# managed classes to the +generated library. In the above example, let's assume that there isn't a +Point class available in Java or our library. The one we create doesn't need +to interact with Java, so we'll create it like a normal class in C#. + +By adding a Point.cs file with this class, it will end up in the binding library: + +public class Point +{ + public int X { get; set; } + public int Y { get; set; } +} diff --git a/source/com.google.firebase/firebase-installations-interop/Additions/Additions.cs b/source/com.google.firebase/firebase-installations-interop/Additions/Additions.cs new file mode 100644 index 000000000..6613620e2 --- /dev/null +++ b/source/com.google.firebase/firebase-installations-interop/Additions/Additions.cs @@ -0,0 +1,6 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; +using Android.Gms.Extensions; + diff --git a/source/com.google.firebase/firebase-installations-interop/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-installations-interop/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-installations-interop/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-installations-interop/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-installations-interop/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-installations-interop/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-installations-interop/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-installations-interop/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..780a520b8 --- /dev/null +++ b/source/com.google.firebase/firebase-installations-interop/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,29 @@ + + + + Firebase.Installations + + + Firebase.Installations.Internal + + + Firebase.Installations.InterOp + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-installations-interop/Transforms/Metadata.ParameterNames.xml b/source/com.google.firebase/firebase-installations-interop/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.firebase/firebase-installations-interop/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-installations-interop/Transforms/Metadata.xml b/source/com.google.firebase/firebase-installations-interop/Transforms/Metadata.xml new file mode 100644 index 000000000..a8cc29710 --- /dev/null +++ b/source/com.google.firebase/firebase-installations-interop/Transforms/Metadata.xml @@ -0,0 +1,23 @@ + + + + + Firebase + + + Firebase.Installations + + + Firebase.Installations.InterOp + + + diff --git a/source/com.google.firebase/firebase-installations-ktx/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-installations-ktx/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..116055cad --- /dev/null +++ b/source/com.google.firebase/firebase-installations-ktx/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,9 @@ + + + Firebase.Installations.Ktx + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-installations-ktx/Transforms/Metadata.xml b/source/com.google.firebase/firebase-installations-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-installations-ktx/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-installations/Additions/AboutAdditions.txt b/source/com.google.firebase/firebase-installations/Additions/AboutAdditions.txt new file mode 100644 index 000000000..c511f1d4e --- /dev/null +++ b/source/com.google.firebase/firebase-installations/Additions/AboutAdditions.txt @@ -0,0 +1,48 @@ +Additions allow you to add arbitrary C# to the generated classes +before they are compiled. This can be helpful for providing convenience +methods or adding pure C# classes. + +== Adding Methods to Generated Classes == + +Let's say the library being bound has a Rectangle class with a constructor +that takes an x and y position, and a width and length size. It will look like +this: + +public partial class Rectangle +{ + public Rectangle (int x, int y, int width, int height) + { + // JNI bindings + } +} + +Imagine we want to add a constructor to this class that takes a Point and +Size structure instead of 4 ints. We can add a new file called Rectangle.cs +with a partial class containing our new method: + +public partial class Rectangle +{ + public Rectangle (Point location, Size size) : + this (location.X, location.Y, size.Width, size.Height) + { + } +} + +At compile time, the additions class will be added to the generated class +and the final assembly will a Rectangle class with both constructors. + + +== Adding C# Classes == + +Another thing that can be done is adding fully C# managed classes to the +generated library. In the above example, let's assume that there isn't a +Point class available in Java or our library. The one we create doesn't need +to interact with Java, so we'll create it like a normal class in C#. + +By adding a Point.cs file with this class, it will end up in the binding library: + +public class Point +{ + public int X { get; set; } + public int Y { get; set; } +} diff --git a/source/com.google.firebase/firebase-installations/Additions/Additions.cs b/source/com.google.firebase/firebase-installations/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.firebase/firebase-installations/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.firebase/firebase-installations/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-installations/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-installations/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-installations/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-installations/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-installations/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-installations/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-installations/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..fd35edb6d --- /dev/null +++ b/source/com.google.firebase/firebase-installations/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,41 @@ + + + + Firebase.Installations + + + Firebase.Installations.Local + + + Firebase.Installations.Remote + + + Firebase.Installations.Time + + + Firebase.Installations.Ktx + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-installations/Transforms/Metadata.ParameterNames.xml b/source/com.google.firebase/firebase-installations/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.firebase/firebase-installations/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-installations/Transforms/Metadata.xml b/source/com.google.firebase/firebase-installations/Transforms/Metadata.xml new file mode 100644 index 000000000..b567fa490 --- /dev/null +++ b/source/com.google.firebase/firebase-installations/Transforms/Metadata.xml @@ -0,0 +1,29 @@ + + + + + Firebase + + + Firebase.Installations + + + Firebase.Installations.Local + + + Firebase.Installations.Remote + + + diff --git a/source/com.google.firebase/firebase-installations/source/Firebase-Iid.csproj b/source/com.google.firebase/firebase-installations/source/Firebase-Iid.csproj new file mode 100644 index 000000000..1d28f84ac --- /dev/null +++ b/source/com.google.firebase/firebase-installations/source/Firebase-Iid.csproj @@ -0,0 +1,98 @@ + + + + Debug + AnyCPU + {10368E6C-D01B-4462-8E8B-01FC667A7035};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + {B28F65D1-D8DD-45E8-9DD7-74A3BE40B4CE} + Library + Xamarin.Firebase.Iid + Resources + Assets + False + Xamarin.Firebase.Iid + v8.0 + class-parse + XAJavaInterop1 + ..\..\externals\docs\reference + 8.0.30703 + 2.0 + + + + true + full + false + bin\Debug + DEBUG; + prompt + 4 + None + false + + + full + true + bin\Release + prompt + 4 + false + false + + + + + + + + + + + + + + + + + + + + Transforms\Metadata.Common.xml + + + Transforms\Metadata.generated.xml + + + + + {6A38FACF-F0C5-4A49-8A8A-7CE6634207CE} + Basement + + + {865652D3-8D1A-4779-92FC-4C54719286B7} + Firebase-Common + + + {53F87D88-8871-41A2-9F81-B79AB02FEC24} + Tasks + + + {B5360982-854F-4DB8-86A2-326041BFC46F} + Stats + + + {9F5638E1-7D20-42B2-8C14-AB815E5A5B7B} + Firebase-Iid-Interop + + + + + Jars\firebase-iid.jar + + + + + + + + diff --git a/source/com.google.firebase/firebase-installations/source/Jars/AboutJars.txt b/source/com.google.firebase/firebase-installations/source/Jars/AboutJars.txt new file mode 100644 index 000000000..320a154be --- /dev/null +++ b/source/com.google.firebase/firebase-installations/source/Jars/AboutJars.txt @@ -0,0 +1,37 @@ +This directory is for Android .jars. + +There are 4 types of jars that are supported: + +== Input Jar and Embedded Jar == + +This is the jar that bindings should be generated for. + +For example, if you were binding the Google Maps library, this would +be Google's "maps.jar". + +The difference between EmbeddedJar and InputJar is, EmbeddedJar is to be +embedded in the resulting dll as EmbeddedResource, while InputJar is not. +There are couple of reasons you wouldn't like to embed the target jar +in your dll (the ones that could be internally loaded by +feature e.g. maps.jar, or you cannot embed jars that are under some +proprietary license). + +Set the build action for these jars in the properties page to "InputJar". + + +== Reference Jar and Embedded Reference Jar == + +These are jars that are referenced by the input jar. C# bindings will +not be created for these jars. These jars will be used to resolve +types used by the input jar. + +NOTE: Do not add "android.jar" as a reference jar. It will be added automatically +based on the Target Framework selected. + +Set the build action for these jars in the properties page to "ReferenceJar". + +"EmbeddedJar" works like "ReferenceJar", but like "EmbeddedJar", it is +embedded in your dll. But at application build time, they are not included +in the final apk, like ReferenceJar files. + + diff --git a/source/com.google.firebase/firebase-installations/source/Properties/AssemblyInfo.cs b/source/com.google.firebase/firebase-installations/source/Properties/AssemblyInfo.cs new file mode 100644 index 000000000..8a3bd6edc --- /dev/null +++ b/source/com.google.firebase/firebase-installations/source/Properties/AssemblyInfo.cs @@ -0,0 +1,32 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using Android.App; + +// Information about this assembly is defined by the following attributes. +// Change them to the values specific to your project. + +[assembly: AssemblyTitle ("Xamarin.Firebase.Iid")] +[assembly: AssemblyDescription ("")] +[assembly: AssemblyConfiguration ("")] +[assembly: AssemblyCompany ("Microsoft Corporation")] +[assembly: AssemblyProduct ("")] +[assembly: AssemblyCopyright ("Copyright © Microsoft Corporation")] +[assembly: AssemblyTrademark ("")] +[assembly: AssemblyCulture ("")] + +// The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}". +// The form "{Major}.{Minor}.*" will automatically update the build and revision, +// and "{Major}.{Minor}.{Build}.*" will update just the revision. + +[assembly: AssemblyVersion ("1.0.0")] + +// The following attributes are used to specify the signing key for the assembly, +// if desired. See the Mono documentation for more information about signing. + +//[assembly: AssemblyDelaySign(false)] +//[assembly: AssemblyKeyFile("")] +[assembly: AssemblyMetadata ("BUILD_COMMIT", "{BUILD_COMMIT}")] +[assembly: AssemblyMetadata ("BUILD_NUMBER", "{BUILD_NUMBER}")] +[assembly: AssemblyMetadata ("BUILD_TIMESTAMP", "{BUILD_TIMESTAMP}")] + +[assembly: AssemblyInformationalVersion ("{NUGET_VERSION}")] diff --git a/source/com.google.firebase/firebase-invites/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-invites/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-invites/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-invites/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-invites/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-invites/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-invites/Transforms/Metadata.xml b/source/com.google.firebase/firebase-invites/Transforms/Metadata.xml new file mode 100644 index 000000000..787d49bb8 --- /dev/null +++ b/source/com.google.firebase/firebase-invites/Transforms/Metadata.xml @@ -0,0 +1,6 @@ + + + Firebase + + + diff --git a/source/com.google.firebase/firebase-measurement-connector/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-measurement-connector/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-measurement-connector/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-measurement-connector/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-measurement-connector/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-measurement-connector/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-measurement-connector/Transforms/Metadata.xml b/source/com.google.firebase/firebase-measurement-connector/Transforms/Metadata.xml new file mode 100644 index 000000000..e0655676b --- /dev/null +++ b/source/com.google.firebase/firebase-measurement-connector/Transforms/Metadata.xml @@ -0,0 +1,28 @@ + + + Firebase + Firebase.Analytics.Connector + + + + + + + + + + + source + size + dest + flags + + + + + Java.Lang.Object + + diff --git a/source/com.google.firebase/firebase-messaging-directboot/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-messaging-directboot/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..bafee946c --- /dev/null +++ b/source/com.google.firebase/firebase-messaging-directboot/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,14 @@ + + + Firebase.Messaging.DirectBoot + + + Firebase.Messaging.DirectBoot.Threads + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-messaging-directboot/Transforms/Metadata.xml b/source/com.google.firebase/firebase-messaging-directboot/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-messaging-directboot/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-messaging-ktx/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-messaging-ktx/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..c614714f6 --- /dev/null +++ b/source/com.google.firebase/firebase-messaging-ktx/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Firebase.Messaging.Ktx + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-messaging-ktx/Transforms/Metadata.xml b/source/com.google.firebase/firebase-messaging-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-messaging-ktx/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-messaging/Additions/AboutAdditions.txt b/source/com.google.firebase/firebase-messaging/Additions/AboutAdditions.txt new file mode 100644 index 000000000..c511f1d4e --- /dev/null +++ b/source/com.google.firebase/firebase-messaging/Additions/AboutAdditions.txt @@ -0,0 +1,48 @@ +Additions allow you to add arbitrary C# to the generated classes +before they are compiled. This can be helpful for providing convenience +methods or adding pure C# classes. + +== Adding Methods to Generated Classes == + +Let's say the library being bound has a Rectangle class with a constructor +that takes an x and y position, and a width and length size. It will look like +this: + +public partial class Rectangle +{ + public Rectangle (int x, int y, int width, int height) + { + // JNI bindings + } +} + +Imagine we want to add a constructor to this class that takes a Point and +Size structure instead of 4 ints. We can add a new file called Rectangle.cs +with a partial class containing our new method: + +public partial class Rectangle +{ + public Rectangle (Point location, Size size) : + this (location.X, location.Y, size.Width, size.Height) + { + } +} + +At compile time, the additions class will be added to the generated class +and the final assembly will a Rectangle class with both constructors. + + +== Adding C# Classes == + +Another thing that can be done is adding fully C# managed classes to the +generated library. In the above example, let's assume that there isn't a +Point class available in Java or our library. The one we create doesn't need +to interact with Java, so we'll create it like a normal class in C#. + +By adding a Point.cs file with this class, it will end up in the binding library: + +public class Point +{ + public int X { get; set; } + public int Y { get; set; } +} diff --git a/source/com.google.firebase/firebase-messaging/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-messaging/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-messaging/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-messaging/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-messaging/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-messaging/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-messaging/Transforms/Metadata.xml b/source/com.google.firebase/firebase-messaging/Transforms/Metadata.xml new file mode 100644 index 000000000..2b8228cfa --- /dev/null +++ b/source/com.google.firebase/firebase-messaging/Transforms/Metadata.xml @@ -0,0 +1,91 @@ + + + + Firebase.Messaging + + + + + + + + + source + size + dest + flags + + + + false + + + false + + + false + + + Android.Gms.Internal.FirebaseMessaging + + + + Java.Lang.Object + + + + Firebase.Iid + + + Firebase.Messaging.Reporting + + + Firebase.Messaging.Threads + + + + Firebase.Messaging.Ktx + + + diff --git a/source/com.google.firebase/firebase-ml-common/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-ml-common/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-common/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-common/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-ml-common/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-common/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-common/Transforms/Metadata.xml b/source/com.google.firebase/firebase-ml-common/Transforms/Metadata.xml new file mode 100644 index 000000000..d4fa968f2 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-common/Transforms/Metadata.xml @@ -0,0 +1,25 @@ + + + Firebase.ML.Common + Firebase.ML.Internal + + + Firebase.ML.Common + + + Firebase.ML.Internal.ModelDownload + + + Firebase.ML.Common.ModelDownload + + + diff --git a/source/com.google.firebase/firebase-ml-model-interpreter/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-ml-model-interpreter/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-model-interpreter/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-model-interpreter/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-ml-model-interpreter/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-model-interpreter/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-model-interpreter/Transforms/Metadata.xml b/source/com.google.firebase/firebase-ml-model-interpreter/Transforms/Metadata.xml new file mode 100644 index 000000000..3c065d02f --- /dev/null +++ b/source/com.google.firebase/firebase-ml-model-interpreter/Transforms/Metadata.xml @@ -0,0 +1,12 @@ + + + Firebase.ML.Custom + Firebase.ML.Custom.Model + Firebase.ML.Internal + + + + + diff --git a/source/com.google.firebase/firebase-ml-natural-language-language-id-model/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-ml-natural-language-language-id-model/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-natural-language-language-id-model/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-natural-language-language-id-model/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-ml-natural-language-language-id-model/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-natural-language-language-id-model/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-natural-language-language-id-model/Transforms/Metadata.xml b/source/com.google.firebase/firebase-ml-natural-language-language-id-model/Transforms/Metadata.xml new file mode 100644 index 000000000..9fa2d8843 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-natural-language-language-id-model/Transforms/Metadata.xml @@ -0,0 +1,16 @@ + + + Firebase.ML.NaturalLanguage.LanguageId + + + Firebase.ML.NaturalLanguage.LanguageId + + + + diff --git a/source/com.google.firebase/firebase-ml-natural-language-smart-reply-model/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-ml-natural-language-smart-reply-model/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-natural-language-smart-reply-model/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-natural-language-smart-reply-model/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-ml-natural-language-smart-reply-model/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-natural-language-smart-reply-model/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-natural-language-smart-reply-model/Transforms/Metadata.xml b/source/com.google.firebase/firebase-ml-natural-language-smart-reply-model/Transforms/Metadata.xml new file mode 100644 index 000000000..d1cd901b9 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-natural-language-smart-reply-model/Transforms/Metadata.xml @@ -0,0 +1,28 @@ + + + Android.Gms.Internal.FirebaseMLNaturalLanguage + + + Android.Gms.PredictOnDevice.Component + + + Android.Gms.PredictOnDevice.Jni + + + Android.Gms.PredictOnDevice.Component + + + + diff --git a/source/com.google.firebase/firebase-ml-natural-language-smart-reply/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-ml-natural-language-smart-reply/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-natural-language-smart-reply/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-natural-language-smart-reply/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-ml-natural-language-smart-reply/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-natural-language-smart-reply/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-natural-language-smart-reply/Transforms/Metadata.xml b/source/com.google.firebase/firebase-ml-natural-language-smart-reply/Transforms/Metadata.xml new file mode 100644 index 000000000..1f7abd3b8 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-natural-language-smart-reply/Transforms/Metadata.xml @@ -0,0 +1,21 @@ + + + Firebase.ML.Common + + + Android.Gms.Internal.FirebaseMLNaturalLanguage + + + Android.Gms.PredictOnDevice + + + diff --git a/source/com.google.firebase/firebase-ml-natural-language-translate-model/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-ml-natural-language-translate-model/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-natural-language-translate-model/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-natural-language-translate-model/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-ml-natural-language-translate-model/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-natural-language-translate-model/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-natural-language-translate-model/Transforms/Metadata.xml b/source/com.google.firebase/firebase-ml-natural-language-translate-model/Transforms/Metadata.xml new file mode 100644 index 000000000..b79e68f7c --- /dev/null +++ b/source/com.google.firebase/firebase-ml-natural-language-translate-model/Transforms/Metadata.xml @@ -0,0 +1,14 @@ + + + Firebase.ML.Common + + + Firebase.ML.NaturalLanguage.Translate.Internal + + diff --git a/source/com.google.firebase/firebase-ml-natural-language-translate/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-ml-natural-language-translate/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-natural-language-translate/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-natural-language-translate/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-ml-natural-language-translate/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-natural-language-translate/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-natural-language-translate/Transforms/Metadata.xml b/source/com.google.firebase/firebase-ml-natural-language-translate/Transforms/Metadata.xml new file mode 100644 index 000000000..a8d56cd2c --- /dev/null +++ b/source/com.google.firebase/firebase-ml-natural-language-translate/Transforms/Metadata.xml @@ -0,0 +1,23 @@ + + + Android.Gms.Internal.FirebaseMLNaturalLanguageTranslate + + + Firebase.ML.NaturalLanguage.Translate + + + Firebase.ML.NaturalLanguage.Translate.Internal + + + + + diff --git a/source/com.google.firebase/firebase-ml-natural-language/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-ml-natural-language/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-natural-language/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-natural-language/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-ml-natural-language/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-natural-language/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-natural-language/Transforms/Metadata.xml b/source/com.google.firebase/firebase-ml-natural-language/Transforms/Metadata.xml new file mode 100644 index 000000000..d32d51ad5 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-natural-language/Transforms/Metadata.xml @@ -0,0 +1,37 @@ + + + + + Android.Gms.Internal.FirebaseMLNaturalLanguage + + + Firebase.ML.NaturalLanguage + + + Firebase.ML.NaturalLanguage.LanguageId + + + Firebase.ML.NaturalLanguage.LanguageId.Internal + + + Firebase.ML.NaturalLanguage.SmartReply + + + + + diff --git a/source/com.google.firebase/firebase-ml-vision-automl/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-ml-vision-automl/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision-automl/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-vision-automl/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-ml-vision-automl/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision-automl/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-vision-automl/Transforms/Metadata.xml b/source/com.google.firebase/firebase-ml-vision-automl/Transforms/Metadata.xml new file mode 100644 index 000000000..4b257f46c --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision-automl/Transforms/Metadata.xml @@ -0,0 +1,16 @@ + + + Firebase.ML.Vision.AutoML + + + Firebase.ML.Vision.Dynamite.AutoML + + + + diff --git a/source/com.google.firebase/firebase-ml-vision-barcode-model/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-ml-vision-barcode-model/Transforms/EnumFields.xml new file mode 100644 index 000000000..48b8feb1e --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision-barcode-model/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-vision-barcode-model/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-ml-vision-barcode-model/Transforms/EnumMethods.xml new file mode 100644 index 000000000..ed82d6139 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision-barcode-model/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-vision-barcode-model/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-ml-vision-barcode-model/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..5c5c0abb7 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision-barcode-model/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,26 @@ + + + + + Android.Gms.Dynamite.Descriptors.Firebase.ML.Vision.Barcode + + + Google.AndroidLibraries.BarHopper + + + Google.BarHopper.DeepLearning + + + + + + diff --git a/source/com.google.firebase/firebase-ml-vision-barcode-model/Transforms/Metadata.xml b/source/com.google.firebase/firebase-ml-vision-barcode-model/Transforms/Metadata.xml new file mode 100644 index 000000000..c5a783096 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision-barcode-model/Transforms/Metadata.xml @@ -0,0 +1,14 @@ + + + + + + System.Collections.Generic.IList < global::Android.Graphics.Point > + + + diff --git a/source/com.google.firebase/firebase-ml-vision-face-model/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-ml-vision-face-model/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision-face-model/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-vision-face-model/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-ml-vision-face-model/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision-face-model/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-vision-face-model/Transforms/Metadata.xml b/source/com.google.firebase/firebase-ml-vision-face-model/Transforms/Metadata.xml new file mode 100644 index 000000000..ad64157a9 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision-face-model/Transforms/Metadata.xml @@ -0,0 +1,28 @@ + + + + Android.Gms.Vision.Face + + + Android.Gms.Vision.Dynamite.Face + + + Android.Gms.Internal.Vision + + + Firebase.ML.Vision.Face + + + diff --git a/source/com.google.firebase/firebase-ml-vision-image-label-model/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-ml-vision-image-label-model/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision-image-label-model/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-vision-image-label-model/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-ml-vision-image-label-model/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision-image-label-model/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-vision-image-label-model/Transforms/Metadata.xml b/source/com.google.firebase/firebase-ml-vision-image-label-model/Transforms/Metadata.xml new file mode 100644 index 000000000..1248300c1 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision-image-label-model/Transforms/Metadata.xml @@ -0,0 +1,41 @@ + + + Firebase + + Android.Gms.Stats.Internal + Android.Gms.Stats.Internal.Vision + Android.Gms.Vision + + + + + + + + + + Android.Gms.Dynamite.Vision.Ica + + + Firebase.ML.Vision.ImageLabel + + + + + Firebase.ML.Vision.ImageLabel + + + + + diff --git a/source/com.google.firebase/firebase-ml-vision-internal-vkp/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-ml-vision-internal-vkp/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision-internal-vkp/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-vision-internal-vkp/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-ml-vision-internal-vkp/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision-internal-vkp/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-vision-internal-vkp/Transforms/Metadata.xml b/source/com.google.firebase/firebase-ml-vision-internal-vkp/Transforms/Metadata.xml new file mode 100644 index 000000000..7c7661770 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision-internal-vkp/Transforms/Metadata.xml @@ -0,0 +1,23 @@ + + + + Firebase + + + Android.Gms.Internal.FirebaseML + + + Android.Libraries.Vision.VisionKit.Pipeline + + + + diff --git a/source/com.google.firebase/firebase-ml-vision-object-detection-model/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-ml-vision-object-detection-model/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision-object-detection-model/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-vision-object-detection-model/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-ml-vision-object-detection-model/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision-object-detection-model/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-vision-object-detection-model/Transforms/Metadata.xml b/source/com.google.firebase/firebase-ml-vision-object-detection-model/Transforms/Metadata.xml new file mode 100644 index 000000000..a85bbd153 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision-object-detection-model/Transforms/Metadata.xml @@ -0,0 +1,16 @@ + + + Firebse.ML.Vision.Dynamite.Objects + + + Android.Gms.Internal.FirebseML + + + + diff --git a/source/com.google.firebase/firebase-ml-vision/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-ml-vision/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-vision/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-ml-vision/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-ml-vision/Transforms/Metadata.xml b/source/com.google.firebase/firebase-ml-vision/Transforms/Metadata.xml new file mode 100644 index 000000000..ab9f5c815 --- /dev/null +++ b/source/com.google.firebase/firebase-ml-vision/Transforms/Metadata.xml @@ -0,0 +1,215 @@ + + + Firebase.ML.Internal + + Firebase.ML.Vision + Firebase.ML.Vision.Barcode + Firebase.ML.Vision.Cloud + Firebase.ML.Vision.Cloud.Label + Firebase.ML.Vision.Cloud.Landmark + Firebase.ML.Vision.Cloud.Text + Firebase.ML.Vision.Common + Firebase.ML.Vision.Face + Firebase.ML.Vision.Label + Firebase.ML.Vision.Text + + + Firebase.ML.Vision.Document + + + Firebase.ML.Vision.AutoML + + + Firebase.ML.Vision.AutoML.Internal + + + Firebase.ML.Vision.Barcode.Internal + + + + Firebase.ML.Vision.Objects + + + Firebase.ML.Vision.Objects.Internal + + + + + + + + false + + + false + + + + + + + + + + public + + + + System.Collections.IList + + + public + + + System.Collections.IList + + + System.Collections.IList + + + System.Collections.IList + + + + System.Collections.IList + + + System.Collections.IList + + + System.Collections.IList + + + + System.Collections.IList + + + System.Collections.IList + + + System.Collections.IList + + + java.util.List + + + java.util.List + + + + + public + + + public + + + + + false + + + false + + + false + + + diff --git a/source/com.google.firebase/firebase-perf-ktx/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-perf-ktx/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..22c0c0249 --- /dev/null +++ b/source/com.google.firebase/firebase-perf-ktx/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,9 @@ + + + Firebase.Perf.Ktx + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-perf-ktx/Transforms/Metadata.xml b/source/com.google.firebase/firebase-perf-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-perf-ktx/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-perf/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-perf/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-perf/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-perf/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-perf/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-perf/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-perf/Transforms/Metadata.xml b/source/com.google.firebase/firebase-perf/Transforms/Metadata.xml new file mode 100644 index 000000000..2f702b096 --- /dev/null +++ b/source/com.google.firebase/firebase-perf/Transforms/Metadata.xml @@ -0,0 +1,160 @@ + + + + Firebase + Firebase.Perf + Firebase.Perf.Metrics + Firebase.Perf.Network + Firebase.Perf.Provider + Firebase.Perf.Component + Firebase.Perf.Internal + Firebase.Perf.Config + Firebase.Perf.Gauges + Firebase.Perf.Impl + Firebase.Perf.Logging + Firebase.Perf.Transport + Firebase.Perf.Util + Firebase.Perf.V1 + + Firebase.Perf.Provider + + + > + + + + + + + + + source + size + dest + flags + + java.lang.Object + java.lang.Object + + + Firebase.Perf.Injection.Modules + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + Java.Lang.Object + + + + + + Firebase.Perf.Injection.Components + + + Firebase.Perf.Session + + + Firebase.Perf.Session.Gauges + + + Firebase.Perf.Application + + + Firebase.Perf.Metrics + + + Firebase.Perf.Metrics.Resource + + + Firebase.Perf.Validator + + + Firebase.Perf.Metrics.Validator + + + + Java.Lang.Object + + + + Firebase.Perf.Ktx + + + + diff --git a/source/com.google.firebase/firebase-sessions/Additions/Additions.cs b/source/com.google.firebase/firebase-sessions/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.firebase/firebase-sessions/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.firebase/firebase-sessions/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-sessions/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.firebase/firebase-sessions/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-sessions/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-sessions/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.firebase/firebase-sessions/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-sessions/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-sessions/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..5633ff0e4 --- /dev/null +++ b/source/com.google.firebase/firebase-sessions/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,15 @@ + + + Firebase.Sessions + + + Firebase.Sessions.Api + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-sessions/Transforms/Metadata.ParameterNames.xml b/source/com.google.firebase/firebase-sessions/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.firebase/firebase-sessions/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-sessions/Transforms/Metadata.xml b/source/com.google.firebase/firebase-sessions/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-sessions/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-storage-common/Additions/AboutAdditions.txt b/source/com.google.firebase/firebase-storage-common/Additions/AboutAdditions.txt new file mode 100644 index 000000000..c511f1d4e --- /dev/null +++ b/source/com.google.firebase/firebase-storage-common/Additions/AboutAdditions.txt @@ -0,0 +1,48 @@ +Additions allow you to add arbitrary C# to the generated classes +before they are compiled. This can be helpful for providing convenience +methods or adding pure C# classes. + +== Adding Methods to Generated Classes == + +Let's say the library being bound has a Rectangle class with a constructor +that takes an x and y position, and a width and length size. It will look like +this: + +public partial class Rectangle +{ + public Rectangle (int x, int y, int width, int height) + { + // JNI bindings + } +} + +Imagine we want to add a constructor to this class that takes a Point and +Size structure instead of 4 ints. We can add a new file called Rectangle.cs +with a partial class containing our new method: + +public partial class Rectangle +{ + public Rectangle (Point location, Size size) : + this (location.X, location.Y, size.Width, size.Height) + { + } +} + +At compile time, the additions class will be added to the generated class +and the final assembly will a Rectangle class with both constructors. + + +== Adding C# Classes == + +Another thing that can be done is adding fully C# managed classes to the +generated library. In the above example, let's assume that there isn't a +Point class available in Java or our library. The one we create doesn't need +to interact with Java, so we'll create it like a normal class in C#. + +By adding a Point.cs file with this class, it will end up in the binding library: + +public class Point +{ + public int X { get; set; } + public int Y { get; set; } +} diff --git a/source/com.google.firebase/firebase-storage-common/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-storage-common/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-storage-common/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-storage-common/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-storage-common/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-storage-common/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-storage-common/Transforms/Metadata.xml b/source/com.google.firebase/firebase-storage-common/Transforms/Metadata.xml new file mode 100644 index 000000000..64fc07e17 --- /dev/null +++ b/source/com.google.firebase/firebase-storage-common/Transforms/Metadata.xml @@ -0,0 +1,19 @@ + + + + Firebase.Storage + + + + + + + + + source + size + dest + flags + + + diff --git a/source/com.google.firebase/firebase-storage-ktx/Transforms/Metadata.Namespaces.xml b/source/com.google.firebase/firebase-storage-ktx/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..45752db2c --- /dev/null +++ b/source/com.google.firebase/firebase-storage-ktx/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Firebase.Storage.Ktx + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-storage-ktx/Transforms/Metadata.xml b/source/com.google.firebase/firebase-storage-ktx/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.firebase/firebase-storage-ktx/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.firebase/firebase-storage/Additions/AboutAdditions.txt b/source/com.google.firebase/firebase-storage/Additions/AboutAdditions.txt new file mode 100644 index 000000000..c511f1d4e --- /dev/null +++ b/source/com.google.firebase/firebase-storage/Additions/AboutAdditions.txt @@ -0,0 +1,48 @@ +Additions allow you to add arbitrary C# to the generated classes +before they are compiled. This can be helpful for providing convenience +methods or adding pure C# classes. + +== Adding Methods to Generated Classes == + +Let's say the library being bound has a Rectangle class with a constructor +that takes an x and y position, and a width and length size. It will look like +this: + +public partial class Rectangle +{ + public Rectangle (int x, int y, int width, int height) + { + // JNI bindings + } +} + +Imagine we want to add a constructor to this class that takes a Point and +Size structure instead of 4 ints. We can add a new file called Rectangle.cs +with a partial class containing our new method: + +public partial class Rectangle +{ + public Rectangle (Point location, Size size) : + this (location.X, location.Y, size.Width, size.Height) + { + } +} + +At compile time, the additions class will be added to the generated class +and the final assembly will a Rectangle class with both constructors. + + +== Adding C# Classes == + +Another thing that can be done is adding fully C# managed classes to the +generated library. In the above example, let's assume that there isn't a +Point class available in Java or our library. The one we create doesn't need +to interact with Java, so we'll create it like a normal class in C#. + +By adding a Point.cs file with this class, it will end up in the binding library: + +public class Point +{ + public int X { get; set; } + public int Y { get; set; } +} diff --git a/source/com.google.firebase/firebase-storage/Additions/Additions.cs b/source/com.google.firebase/firebase-storage/Additions/Additions.cs new file mode 100644 index 000000000..7451c3547 --- /dev/null +++ b/source/com.google.firebase/firebase-storage/Additions/Additions.cs @@ -0,0 +1,110 @@ +using System; +using Android.Runtime; +using Android.Gms.Extensions; + +namespace Firebase.Storage +{ + public partial class FileDownloadTask + { + static IntPtr id_getResult; + protected override unsafe global::Java.Lang.Object RawResult { + [Register ("getResult", "()Ljava/lang/Object;", "GetGetRawResultHandler")] + get { + if (id_getResult == IntPtr.Zero) + id_getResult = JNIEnv.GetMethodID (class_ref, "getResult", "()Ljava/lang/Object;"); + try { + return global::Java.Lang.Object.GetObject (JNIEnv.CallObjectMethod (Handle, id_getResult), JniHandleOwnership.TransferLocalRef); + } finally { + } + } + } + } + + public partial class StreamDownloadTask + { + static IntPtr id_getResult; + protected override unsafe global::Java.Lang.Object RawResult { + [Register ("getResult", "()Ljava/lang/Object;", "GetGetRawResultHandler")] + get { + if (id_getResult == IntPtr.Zero) + id_getResult = JNIEnv.GetMethodID (class_ref, "getResult", "()Ljava/lang/Object;"); + try { + return global::Java.Lang.Object.GetObject (JNIEnv.CallObjectMethod (Handle, id_getResult), JniHandleOwnership.TransferLocalRef); + } finally { + } + } + } + } + + public partial class UploadTask + { + static IntPtr id_getResult; + protected override unsafe global::Java.Lang.Object RawResult { + [Register ("getResult", "()Ljava/lang/Object;", "GetGetRawResultHandler")] + get { + if (id_getResult == IntPtr.Zero) + id_getResult = JNIEnv.GetMethodID (class_ref, "getResult", "()Ljava/lang/Object;"); + try { + return global::Java.Lang.Object.GetObject (JNIEnv.CallObjectMethod (Handle, id_getResult), JniHandleOwnership.TransferLocalRef); + } finally { + } + } + } + } + + public partial class StorageReference + { + public System.Threading.Tasks.Task DeleteAsync () + { + return Delete ().AsAsync (); + } + + // public System.Threading.Tasks.Task GetBytesAsync (long l) + // { + // return GetBytes (l).AsAsync (); + // } + + public System.Threading.Tasks.Task GetDownloadUrlAsync () + { + return GetDownloadUrl ().AsAsync (); + } + } + + public partial class StorageException + { + static Delegate cb_getMessage; +#pragma warning disable 0169 + static Delegate GetGetMessageHandler () + { + if (cb_getMessage == null) + cb_getMessage = JNINativeWrapper.CreateDelegate ((Func) n_GetMessage); + return cb_getMessage; + } + + static IntPtr n_GetMessage (IntPtr jnienv, IntPtr native__this) + { + global::Firebase.Storage.StorageException __this = global::Java.Lang.Object.GetObject (jnienv, native__this, JniHandleOwnership.DoNotTransfer); + return JNIEnv.NewString (__this.Message); + } +#pragma warning restore 0169 + + static IntPtr id_getMessage; + public override unsafe string Message { + // Metadata.xml XPath method reference: path="/api/package[@name='com.google.firebase.storage']/class[@name='StorageException']/method[@name='getMessage' and count(parameter)=0]" + [Register ("getMessage", "()Ljava/lang/String;", "GetGetMessageHandler")] + get { + if (id_getMessage == IntPtr.Zero) + id_getMessage = JNIEnv.GetMethodID (class_ref, "getMessage", "()Ljava/lang/String;"); + try { + + if (GetType () == ThresholdType) + return JNIEnv.GetString (JNIEnv.CallObjectMethod (((global::Java.Lang.Throwable) this).Handle, id_getMessage), JniHandleOwnership.TransferLocalRef); + else + return JNIEnv.GetString (JNIEnv.CallNonvirtualObjectMethod (((global::Java.Lang.Throwable) this).Handle, ThresholdClass, JNIEnv.GetMethodID (ThresholdClass, "getMessage", "()Ljava/lang/String;")), JniHandleOwnership.TransferLocalRef); + } finally { + } + } + } + } +} + diff --git a/source/com.google.firebase/firebase-storage/Transforms/EnumFields.xml b/source/com.google.firebase/firebase-storage/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/firebase-storage/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-storage/Transforms/EnumMethods.xml b/source/com.google.firebase/firebase-storage/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/firebase-storage/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/firebase-storage/Transforms/Metadata.xml b/source/com.google.firebase/firebase-storage/Transforms/Metadata.xml new file mode 100644 index 000000000..3c26c0126 --- /dev/null +++ b/source/com.google.firebase/firebase-storage/Transforms/Metadata.xml @@ -0,0 +1,79 @@ + + + + Firebase.Storage + + + + + + + + + source + size + dest + flags + + snapshot + snapshot + + Android.Gms.Tasks.Task + Firebase.Storage.ControllableTask + Android.Gms.Tasks.Task + Firebase.Storage.CancellableTask + + public + + + + + + + + + + + + + + Firebase.Storage + + + Firebase.Storage.Internal + + + Firebase.Storage.Network + + + Firebase.Storage.Network.Connection + + + + + Firebase.Storage.Ktx + + + + + diff --git a/source/com.google.firebase/protolite-well-known-types/Transforms/EnumFields.xml b/source/com.google.firebase/protolite-well-known-types/Transforms/EnumFields.xml new file mode 100644 index 000000000..e9af0eeb3 --- /dev/null +++ b/source/com.google.firebase/protolite-well-known-types/Transforms/EnumFields.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/protolite-well-known-types/Transforms/EnumMethods.xml b/source/com.google.firebase/protolite-well-known-types/Transforms/EnumMethods.xml new file mode 100644 index 000000000..2efa81467 --- /dev/null +++ b/source/com.google.firebase/protolite-well-known-types/Transforms/EnumMethods.xml @@ -0,0 +1,18 @@ + + + diff --git a/source/com.google.firebase/protolite-well-known-types/Transforms/Metadata.xml b/source/com.google.firebase/protolite-well-known-types/Transforms/Metadata.xml new file mode 100644 index 000000000..276e72bfb --- /dev/null +++ b/source/com.google.firebase/protolite-well-known-types/Transforms/Metadata.xml @@ -0,0 +1,124 @@ + + + + Google.Protobuf + + + Google.Api + + + Google.Cloud.Audit + + + Google.Logging.Type + + + Google.Longrunning + + + Google.Protobuf.Compiler + + + Google.Rpc + + + Google.Type + + + Firebase.ProtoliteWrapper + + + Google.Geo.Type + + + Google.Rpc.Context + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/source/com.google.mlkit/barcode-scanning-common/Additions/Additions.cs b/source/com.google.mlkit/barcode-scanning-common/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.mlkit/barcode-scanning-common/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.mlkit/barcode-scanning-common/Transforms/EnumFields.xml b/source/com.google.mlkit/barcode-scanning-common/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.mlkit/barcode-scanning-common/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/barcode-scanning-common/Transforms/EnumMethods.xml b/source/com.google.mlkit/barcode-scanning-common/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.mlkit/barcode-scanning-common/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/barcode-scanning-common/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/barcode-scanning-common/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..2fa7fc5d5 --- /dev/null +++ b/source/com.google.mlkit/barcode-scanning-common/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,15 @@ + + + Xamarin.Google.MLKit.Vision.Barcode.Common + + + Xamarin.Google.MLKit.Vision.Barcode.Common.Internal + + + \ No newline at end of file diff --git a/source/com.google.mlkit/barcode-scanning-common/Transforms/Metadata.ParameterNames.xml b/source/com.google.mlkit/barcode-scanning-common/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.mlkit/barcode-scanning-common/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/barcode-scanning-common/Transforms/Metadata.xml b/source/com.google.mlkit/barcode-scanning-common/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.mlkit/barcode-scanning-common/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.mlkit/barcode-scanning/Additions/Barcode.cs b/source/com.google.mlkit/barcode-scanning/Additions/Barcode.cs new file mode 100644 index 000000000..a51502e20 --- /dev/null +++ b/source/com.google.mlkit/barcode-scanning/Additions/Barcode.cs @@ -0,0 +1,8 @@ +using System; +using System.Collections.Generic; +using Android.Runtime; +using Java.Interop; + +namespace Xamarin.Google.MLKit.Barhopper +{ +} diff --git a/source/com.google.mlkit/barcode-scanning/Transforms/EnumFields.xml b/source/com.google.mlkit/barcode-scanning/Transforms/EnumFields.xml new file mode 100644 index 000000000..68cc7fd68 --- /dev/null +++ b/source/com.google.mlkit/barcode-scanning/Transforms/EnumFields.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/barcode-scanning/Transforms/EnumMethods.xml b/source/com.google.mlkit/barcode-scanning/Transforms/EnumMethods.xml new file mode 100644 index 000000000..bd77573ac --- /dev/null +++ b/source/com.google.mlkit/barcode-scanning/Transforms/EnumMethods.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/barcode-scanning/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/barcode-scanning/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..fd2141338 --- /dev/null +++ b/source/com.google.mlkit/barcode-scanning/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,38 @@ + + + + Android.Gms.Dynamite.Descriptors.MLKit.Barcode + + + Android.Gms.Internal.MLKit.Vision.Barcode + + + Xamarin.Google.MLKit.Barhopper + + + Xamarin.Google.MLKit.Barhopper.DeepLearning + + + Xamarin.Google.MLKit.Barhopper.DeepLearning + + + + + + + diff --git a/source/com.google.mlkit/barcode-scanning/Transforms/Metadata.xml b/source/com.google.mlkit/barcode-scanning/Transforms/Metadata.xml new file mode 100644 index 000000000..3777a55be --- /dev/null +++ b/source/com.google.mlkit/barcode-scanning/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + diff --git a/source/com.google.mlkit/common/Additions/Additions.cs b/source/com.google.mlkit/common/Additions/Additions.cs new file mode 100644 index 000000000..00f770259 --- /dev/null +++ b/source/com.google.mlkit/common/Additions/Additions.cs @@ -0,0 +1,32 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; + +using Android.Runtime; +using Java.Interop; + + +namespace Xamarin.Google.MLKit.Common.Internal +{ + + // Metadata.xml XPath class reference: path="/api/package[@name='com.google.mlkit.common.internal']/class[@name='CommonComponentRegistrar']" + // [global::Android.Runtime.Register ("com/google/mlkit/common/internal/CommonComponentRegistrar", DoNotGenerateAcw=true)] + public partial class CommonComponentRegistrar //: global::Java.Lang.Object, global::Firebase.Components.IComponentRegistrar { + { + public unsafe global::System.Collections.Generic.IList Components + { + // Metadata.xml XPath method reference: path="/api/package[@name='com.google.mlkit.common.internal']/class[@name='CommonComponentRegistrar']/method[@name='getComponents' and count(parameter)=0]" + // [Register ("getComponents", "()Ljava/util/List;", "")] + get { + const string __id = "getComponents.()Ljava/util/List;"; + try { + var __rm = _members.InstanceMethods.InvokeNonvirtualObjectMethod (__id, this, null); + return (System.Collections.Generic.IList) global::Android.Runtime.JavaList.FromJniHandle (__rm.Handle, JniHandleOwnership.TransferLocalRef); + } finally { + } + } + } + + } +} \ No newline at end of file diff --git a/source/com.google.mlkit/common/Additions/Xamarin.Google.MLKit.Common.SDKInternal.OptionalModuleUtils.cs b/source/com.google.mlkit/common/Additions/Xamarin.Google.MLKit.Common.SDKInternal.OptionalModuleUtils.cs new file mode 100644 index 000000000..70c7c7c89 --- /dev/null +++ b/source/com.google.mlkit/common/Additions/Xamarin.Google.MLKit.Common.SDKInternal.OptionalModuleUtils.cs @@ -0,0 +1,49 @@ +using System; +using System.Collections.Generic; +using Android.Runtime; +using Java.Interop; + +namespace Xamarin.Google.MLKit.Common.SDKInternal { + + // Metadata.xml XPath class reference: path="/api/package[@name='com.google.mlkit.common.sdkinternal']/class[@name='OptionalModuleUtils']" + // [global::Android.Runtime.Register ("com/google/mlkit/common/sdkinternal/OptionalModuleUtils", DoNotGenerateAcw=true)] + public partial class OptionalModuleUtils : global::Java.Lang.Object + { + /* + Issue?? + + unable to change [return] type of the property + + 1. Does nothing + + + System.Collections.Generic.IList < global::Android.Gms.Common.Feature > + + + 2. Removes property completely + + + System.Collections.Generic.IList < global::Android.Gms.Common.Feature > + + + 3. Workaround - copy code + remove-node + change code + + */ + // Metadata.xml XPath field reference: path="/api/package[@name='com.google.mlkit.common.sdkinternal']/class[@name='OptionalModuleUtils']/field[@name='EMPTY_FEATURES']" + [Register ("EMPTY_FEATURES")] + public static IList EmptyFeatures { + get { + const string __id = "EMPTY_FEATURES.[Lcom/google/android/gms/common/Feature;"; + + var __v = _members.StaticFields.GetObjectValue (__id); + return global::Android.Runtime.JavaArray.FromJniHandle (__v.Handle, JniHandleOwnership.TransferLocalRef); + } + } + } +} \ No newline at end of file diff --git a/source/com.google.mlkit/common/Transforms/EnumFields.xml b/source/com.google.mlkit/common/Transforms/EnumFields.xml new file mode 100644 index 000000000..68cc7fd68 --- /dev/null +++ b/source/com.google.mlkit/common/Transforms/EnumFields.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/common/Transforms/EnumMethods.xml b/source/com.google.mlkit/common/Transforms/EnumMethods.xml new file mode 100644 index 000000000..bd77573ac --- /dev/null +++ b/source/com.google.mlkit/common/Transforms/EnumMethods.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/common/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/common/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..d72a987da --- /dev/null +++ b/source/com.google.mlkit/common/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,54 @@ + + + + + Android.Gms.Internal.MLKit.Common + + + Xamarin.Google.MLKit.Common + + + Xamarin.Google.MLKit.Common.Internal + + + Xamarin.Google.MLKit.Common.Internal.Model + + + Xamarin.Google.MLKit.Common.Model + + + Xamarin.Google.MLKit.Common.SDKInternal + + + Xamarin.Google.MLKit.Common.SDKInternal.Model + + + + + + + + + + diff --git a/source/com.google.mlkit/common/Transforms/Metadata.xml b/source/com.google.mlkit/common/Transforms/Metadata.xml new file mode 100644 index 000000000..54ba30929 --- /dev/null +++ b/source/com.google.mlkit/common/Transforms/Metadata.xml @@ -0,0 +1,29 @@ + + + + + public + + + + + + + + + + diff --git a/source/com.google.mlkit/digital-ink-recognition/Additions/Additions.cs b/source/com.google.mlkit/digital-ink-recognition/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.mlkit/digital-ink-recognition/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.mlkit/digital-ink-recognition/Transforms/EnumFields.xml b/source/com.google.mlkit/digital-ink-recognition/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.mlkit/digital-ink-recognition/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/digital-ink-recognition/Transforms/EnumMethods.xml b/source/com.google.mlkit/digital-ink-recognition/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.mlkit/digital-ink-recognition/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/digital-ink-recognition/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/digital-ink-recognition/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..121bdf4cf --- /dev/null +++ b/source/com.google.mlkit/digital-ink-recognition/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,35 @@ + + + + Android.Gms.Internal.MLKitVisionDigitalInk + + + Xamarin.Google.MLKit.Vision.DigitalInk + + + Xamarin.Google.MLKit.Vision.DigitalInk.Internal + + + Xamarin.Google.MLKit.Vision.DigitalInk.Downloading + + + \ No newline at end of file diff --git a/source/com.google.mlkit/digital-ink-recognition/Transforms/Metadata.ParameterNames.xml b/source/com.google.mlkit/digital-ink-recognition/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.mlkit/digital-ink-recognition/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/digital-ink-recognition/Transforms/Metadata.xml b/source/com.google.mlkit/digital-ink-recognition/Transforms/Metadata.xml new file mode 100644 index 000000000..8eb2f52a4 --- /dev/null +++ b/source/com.google.mlkit/digital-ink-recognition/Transforms/Metadata.xml @@ -0,0 +1,5 @@ + + + \ No newline at end of file diff --git a/source/com.google.mlkit/face-detection/Additions/Additions.cs b/source/com.google.mlkit/face-detection/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.mlkit/face-detection/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.mlkit/face-detection/Transforms/EnumFields.xml b/source/com.google.mlkit/face-detection/Transforms/EnumFields.xml new file mode 100644 index 000000000..68cc7fd68 --- /dev/null +++ b/source/com.google.mlkit/face-detection/Transforms/EnumFields.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/face-detection/Transforms/EnumMethods.xml b/source/com.google.mlkit/face-detection/Transforms/EnumMethods.xml new file mode 100644 index 000000000..bd77573ac --- /dev/null +++ b/source/com.google.mlkit/face-detection/Transforms/EnumMethods.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/face-detection/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/face-detection/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..7209607fb --- /dev/null +++ b/source/com.google.mlkit/face-detection/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,36 @@ + + + + + Xamarin.Google.MLKit.Vision.Face + + + Xamarin.Google.MLKit.Vision.Face + + + Xamarin.Google.MLKit.Vision.Face.Internal + + + Android.Gms.Vision.Face + + + Android.Gms.Vision.Dynamite.Descriptors.Google.MLKit.Dynamite.Face + + + + diff --git a/source/com.google.mlkit/face-detection/Transforms/Metadata.xml b/source/com.google.mlkit/face-detection/Transforms/Metadata.xml new file mode 100644 index 000000000..db6e272d1 --- /dev/null +++ b/source/com.google.mlkit/face-detection/Transforms/Metadata.xml @@ -0,0 +1,7 @@ + + + + + diff --git a/source/com.google.mlkit/image-labeling-automl/Additions/AutoMLImageLabelerOptions.cs b/source/com.google.mlkit/image-labeling-automl/Additions/AutoMLImageLabelerOptions.cs new file mode 100644 index 000000000..482c996ec --- /dev/null +++ b/source/com.google.mlkit/image-labeling-automl/Additions/AutoMLImageLabelerOptions.cs @@ -0,0 +1,81 @@ +using System; +using Android.Runtime; +using Java.Interop; + +namespace Xamarin.Google.MLKit.Vision.Label.AutoML +{ + + // Metadata.xml XPath class reference: path="/api/package[@name='com.google.mlkit.vision.label.automl']/class[@name='AutoMLImageLabelerOptions']" + //[global::Android.Runtime.Register("com/google/mlkit/vision/label/automl/AutoMLImageLabelerOptions", DoNotGenerateAcw = true)] + public partial class AutoMLImageLabelerOptions //: global::Xamarin.Google.MLKit.Vision.Label.ImageLabelerOptionsBase + { + static Delegate cb_build; +#pragma warning disable 0169 + static Delegate GetBuildHandler() + { + if (cb_build == null) + cb_build = JNINativeWrapper.CreateDelegate((Func)n_Build); + return cb_build; + } + + static IntPtr n_Build(IntPtr jnienv, IntPtr native__this) + { + global::Xamarin.Google.MLKit.Vision.Label.AutoML.AutoMLImageLabelerOptions.Builder __this = global::Java.Lang.Object.GetObject(jnienv, native__this, JniHandleOwnership.DoNotTransfer); + return JNIEnv.ToLocalJniHandle(__this.Build()); + } +#pragma warning restore 0169 + + // Metadata.xml XPath method reference: path="/api/package[@name='com.google.mlkit.vision.label.automl']/class[@name='AutoMLImageLabelerOptions.Builder']/method[@name='build' and count(parameter)=0]" + [Register("build", "()Lcom/google/mlkit/vision/label/ImageLabelerOptionsBase;", "GetBuildHandler")] + public virtual unsafe global::Xamarin.Google.MLKit.Vision.Label.ImageLabelerOptionsBase Build() + { + const string __id = "build.()Lcom/google/mlkit/vision/label/ImageLabelerOptionsBase;"; + try + { + var __rm = _members.InstanceMethods.InvokeVirtualObjectMethod(__id, this, null); + return global::Java.Lang.Object.GetObject(__rm.Handle, JniHandleOwnership.TransferLocalRef); + } + finally + { + } + } + + + + + + static Delegate cb_setConfidenceThreshold_F; +#pragma warning disable 0169 + static Delegate GetSetConfidenceThreshold_FHandler() + { + if (cb_setConfidenceThreshold_F == null) + cb_setConfidenceThreshold_F = JNINativeWrapper.CreateDelegate((Func)n_SetConfidenceThreshold_F); + return cb_setConfidenceThreshold_F; + } + + static IntPtr n_SetConfidenceThreshold_F(IntPtr jnienv, IntPtr native__this, float p0) + { + global::Xamarin.Google.MLKit.Vision.Label.AutoML.AutoMLImageLabelerOptions.Builder __this = global::Java.Lang.Object.GetObject(jnienv, native__this, JniHandleOwnership.DoNotTransfer); + return JNIEnv.ToLocalJniHandle(__this.SetConfidenceThreshold(p0)); + } +#pragma warning restore 0169 + + // Metadata.xml XPath method reference: path="/api/package[@name='com.google.mlkit.vision.label.automl']/class[@name='AutoMLImageLabelerOptions.Builder']/method[@name='setConfidenceThreshold' and count(parameter)=1 and parameter[1][@type='float']]" + [Register("setConfidenceThreshold", "(F)Ljava/lang/Object;", "GetSetConfidenceThreshold_FHandler")] + public virtual unsafe global::Java.Lang.Object SetConfidenceThreshold(float p0) + { + const string __id = "setConfidenceThreshold.(F)Ljava/lang/Object;"; + try + { + JniArgumentValue* __args = stackalloc JniArgumentValue[1]; + __args[0] = new JniArgumentValue(p0); + var __rm = _members.InstanceMethods.InvokeVirtualObjectMethod(__id, this, __args); + return global::Java.Lang.Object.GetObject(__rm.Handle, JniHandleOwnership.TransferLocalRef); + } + finally + { + } + } + + } +} diff --git a/source/com.google.mlkit/image-labeling-automl/Transforms/EnumFields.xml b/source/com.google.mlkit/image-labeling-automl/Transforms/EnumFields.xml new file mode 100644 index 000000000..68cc7fd68 --- /dev/null +++ b/source/com.google.mlkit/image-labeling-automl/Transforms/EnumFields.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/image-labeling-automl/Transforms/EnumMethods.xml b/source/com.google.mlkit/image-labeling-automl/Transforms/EnumMethods.xml new file mode 100644 index 000000000..bd77573ac --- /dev/null +++ b/source/com.google.mlkit/image-labeling-automl/Transforms/EnumMethods.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/image-labeling-automl/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/image-labeling-automl/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..5c9f150f7 --- /dev/null +++ b/source/com.google.mlkit/image-labeling-automl/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,25 @@ + + + + Android.Gms.Internal.MLKitVisionLabelAutoML + + + Xamarin.Google.MLKit.Vision.Label.AutoML + + + Xamarin.Google.MLKit.Vision.Label.AutoML.Internal + + + + + + diff --git a/source/com.google.mlkit/image-labeling-automl/Transforms/Metadata.xml b/source/com.google.mlkit/image-labeling-automl/Transforms/Metadata.xml new file mode 100644 index 000000000..6b6e9b3ef --- /dev/null +++ b/source/com.google.mlkit/image-labeling-automl/Transforms/Metadata.xml @@ -0,0 +1,24 @@ + + + + + + Xamarin.Google.MLKit.Vision.Label.ImageLabelerOptionsBase + + + + diff --git a/source/com.google.mlkit/image-labeling-common/Additions/Additions.cs b/source/com.google.mlkit/image-labeling-common/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.mlkit/image-labeling-common/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.mlkit/image-labeling-common/Transforms/EnumFields.xml b/source/com.google.mlkit/image-labeling-common/Transforms/EnumFields.xml new file mode 100644 index 000000000..68cc7fd68 --- /dev/null +++ b/source/com.google.mlkit/image-labeling-common/Transforms/EnumFields.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/image-labeling-common/Transforms/EnumMethods.xml b/source/com.google.mlkit/image-labeling-common/Transforms/EnumMethods.xml new file mode 100644 index 000000000..bd77573ac --- /dev/null +++ b/source/com.google.mlkit/image-labeling-common/Transforms/EnumMethods.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/image-labeling-common/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/image-labeling-common/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..fa367660d --- /dev/null +++ b/source/com.google.mlkit/image-labeling-common/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,25 @@ + + + + + Android.Gms.Internal.MLKitVisionLabelCommon + + + Xamarin.Google.MLKit.Vision.Label + + + Xamarin.Google.MLKit.Vision.Label.Internal + + + + + diff --git a/source/com.google.mlkit/image-labeling-common/Transforms/Metadata.xml b/source/com.google.mlkit/image-labeling-common/Transforms/Metadata.xml new file mode 100644 index 000000000..7f3e729dd --- /dev/null +++ b/source/com.google.mlkit/image-labeling-common/Transforms/Metadata.xml @@ -0,0 +1,16 @@ + + + + public + + + public + + + diff --git a/source/com.google.mlkit/image-labeling-custom-common/Additions/Additions.cs b/source/com.google.mlkit/image-labeling-custom-common/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.mlkit/image-labeling-custom-common/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.mlkit/image-labeling-custom-common/Transforms/EnumFields.xml b/source/com.google.mlkit/image-labeling-custom-common/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.mlkit/image-labeling-custom-common/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/image-labeling-custom-common/Transforms/EnumMethods.xml b/source/com.google.mlkit/image-labeling-custom-common/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.mlkit/image-labeling-custom-common/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/image-labeling-custom-common/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/image-labeling-custom-common/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..bb25fdad9 --- /dev/null +++ b/source/com.google.mlkit/image-labeling-custom-common/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,15 @@ + + + Xamarin.Google.MLKit.Vision.Label.Custom + + + Android.Gms.Internal.MLKitVisionLabelCustomCommon + + + \ No newline at end of file diff --git a/source/com.google.mlkit/image-labeling-custom-common/Transforms/Metadata.ParameterNames.xml b/source/com.google.mlkit/image-labeling-custom-common/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.mlkit/image-labeling-custom-common/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/image-labeling-custom-common/Transforms/Metadata.xml b/source/com.google.mlkit/image-labeling-custom-common/Transforms/Metadata.xml new file mode 100644 index 000000000..31d1cca26 --- /dev/null +++ b/source/com.google.mlkit/image-labeling-custom-common/Transforms/Metadata.xml @@ -0,0 +1,9 @@ + + + Xamarin.Google.MLKit.Vision.Label.ImageLabelerOptionsBase + + + \ No newline at end of file diff --git a/source/com.google.mlkit/image-labeling-custom/Additions/CustomImageLabelerOptions.cs b/source/com.google.mlkit/image-labeling-custom/Additions/CustomImageLabelerOptions.cs new file mode 100644 index 000000000..50326d6ed --- /dev/null +++ b/source/com.google.mlkit/image-labeling-custom/Additions/CustomImageLabelerOptions.cs @@ -0,0 +1,8 @@ +using System; +using System.Collections.Generic; +using Android.Runtime; +using Java.Interop; + +namespace Xamarin.Google.MLKit.Vision.Label.Custom +{ +} diff --git a/source/com.google.mlkit/image-labeling-custom/Transforms/EnumFields.xml b/source/com.google.mlkit/image-labeling-custom/Transforms/EnumFields.xml new file mode 100644 index 000000000..68cc7fd68 --- /dev/null +++ b/source/com.google.mlkit/image-labeling-custom/Transforms/EnumFields.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/image-labeling-custom/Transforms/EnumMethods.xml b/source/com.google.mlkit/image-labeling-custom/Transforms/EnumMethods.xml new file mode 100644 index 000000000..bd77573ac --- /dev/null +++ b/source/com.google.mlkit/image-labeling-custom/Transforms/EnumMethods.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/image-labeling-custom/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/image-labeling-custom/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..3dbdfb28e --- /dev/null +++ b/source/com.google.mlkit/image-labeling-custom/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,26 @@ + + + + + Android.Gms.Internal.MLKitVisionLabelCustom + + + Xamarin.Google.MLKit.Vision.Label.Custom + + + Xamarin.Google.MLKit.Vision.Label.Custom.Internal + + + + + + diff --git a/source/com.google.mlkit/image-labeling-custom/Transforms/Metadata.xml b/source/com.google.mlkit/image-labeling-custom/Transforms/Metadata.xml new file mode 100644 index 000000000..cf83dd49e --- /dev/null +++ b/source/com.google.mlkit/image-labeling-custom/Transforms/Metadata.xml @@ -0,0 +1,25 @@ + + + + + + Xamarin.Google.MLKit.Vision.Label.ImageLabelerOptionsBase + + + + + + diff --git a/source/com.google.mlkit/image-labeling-default-common/Additions/Additions.cs b/source/com.google.mlkit/image-labeling-default-common/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.mlkit/image-labeling-default-common/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.mlkit/image-labeling-default-common/Transforms/EnumFields.xml b/source/com.google.mlkit/image-labeling-default-common/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.mlkit/image-labeling-default-common/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/image-labeling-default-common/Transforms/EnumMethods.xml b/source/com.google.mlkit/image-labeling-default-common/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.mlkit/image-labeling-default-common/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/image-labeling-default-common/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/image-labeling-default-common/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..92ddfaa45 --- /dev/null +++ b/source/com.google.mlkit/image-labeling-default-common/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,11 @@ + + + + + Xamarin.Google.MLKit.Vision.Label.Defaults + + + diff --git a/source/com.google.mlkit/image-labeling-default-common/Transforms/Metadata.ParameterNames.xml b/source/com.google.mlkit/image-labeling-default-common/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.mlkit/image-labeling-default-common/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/image-labeling-default-common/Transforms/Metadata.xml b/source/com.google.mlkit/image-labeling-default-common/Transforms/Metadata.xml new file mode 100644 index 000000000..df947efd1 --- /dev/null +++ b/source/com.google.mlkit/image-labeling-default-common/Transforms/Metadata.xml @@ -0,0 +1,13 @@ + + + Xamarin.Google.MLKit.Vision.Label.ImageLabelerOptionsBase + + + + + \ No newline at end of file diff --git a/source/com.google.mlkit/image-labeling/Additions/ImageLabelerOptions.cs b/source/com.google.mlkit/image-labeling/Additions/ImageLabelerOptions.cs new file mode 100644 index 000000000..c00ab6010 --- /dev/null +++ b/source/com.google.mlkit/image-labeling/Additions/ImageLabelerOptions.cs @@ -0,0 +1,7 @@ +using System; +using Android.Runtime; +using Java.Interop; + +namespace Xamarin.Google.MLKit.Vision.Label.Defaults +{ +} diff --git a/source/com.google.mlkit/image-labeling/Transforms/EnumFields.xml b/source/com.google.mlkit/image-labeling/Transforms/EnumFields.xml new file mode 100644 index 000000000..68cc7fd68 --- /dev/null +++ b/source/com.google.mlkit/image-labeling/Transforms/EnumFields.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/image-labeling/Transforms/EnumMethods.xml b/source/com.google.mlkit/image-labeling/Transforms/EnumMethods.xml new file mode 100644 index 000000000..bd77573ac --- /dev/null +++ b/source/com.google.mlkit/image-labeling/Transforms/EnumMethods.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/image-labeling/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/image-labeling/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..bb7110835 --- /dev/null +++ b/source/com.google.mlkit/image-labeling/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,26 @@ + + + + + Android.Gms.Internal.MLKitVisionLabelBundled + + + Xamarin.Google.MLKit.Vision.Label.Defaults + + + Xamarin.Google.MLKit.Vision.Label.Defaults.Internal + + + + + + diff --git a/source/com.google.mlkit/image-labeling/Transforms/Metadata.xml b/source/com.google.mlkit/image-labeling/Transforms/Metadata.xml new file mode 100644 index 000000000..c8a794e51 --- /dev/null +++ b/source/com.google.mlkit/image-labeling/Transforms/Metadata.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + diff --git a/source/com.google.mlkit/language-id-common/Additions/Additions.cs b/source/com.google.mlkit/language-id-common/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.mlkit/language-id-common/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.mlkit/language-id-common/Transforms/EnumFields.xml b/source/com.google.mlkit/language-id-common/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.mlkit/language-id-common/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/language-id-common/Transforms/EnumMethods.xml b/source/com.google.mlkit/language-id-common/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.mlkit/language-id-common/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/language-id-common/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/language-id-common/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..5e0acc1e2 --- /dev/null +++ b/source/com.google.mlkit/language-id-common/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,21 @@ + + + Android.Gms.Internal.MLKitLanguageIdCommon + + + Xamarin.Google.MLKit.NL.LanguageId + + + Xamarin.Google.MLKit.NL.LanguageId.Internal + + + \ No newline at end of file diff --git a/source/com.google.mlkit/language-id-common/Transforms/Metadata.ParameterNames.xml b/source/com.google.mlkit/language-id-common/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.mlkit/language-id-common/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/language-id-common/Transforms/Metadata.xml b/source/com.google.mlkit/language-id-common/Transforms/Metadata.xml new file mode 100644 index 000000000..b25883689 --- /dev/null +++ b/source/com.google.mlkit/language-id-common/Transforms/Metadata.xml @@ -0,0 +1,5 @@ + + + \ No newline at end of file diff --git a/source/com.google.mlkit/language-id/Additions/Additions.cs b/source/com.google.mlkit/language-id/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.mlkit/language-id/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.mlkit/language-id/Transforms/EnumFields.xml b/source/com.google.mlkit/language-id/Transforms/EnumFields.xml new file mode 100644 index 000000000..68cc7fd68 --- /dev/null +++ b/source/com.google.mlkit/language-id/Transforms/EnumFields.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/language-id/Transforms/EnumMethods.xml b/source/com.google.mlkit/language-id/Transforms/EnumMethods.xml new file mode 100644 index 000000000..bd77573ac --- /dev/null +++ b/source/com.google.mlkit/language-id/Transforms/EnumMethods.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/language-id/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/language-id/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..bd00db431 --- /dev/null +++ b/source/com.google.mlkit/language-id/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,45 @@ + + + + + Android.Gms.Internal.MLKitLanguageId + + + Xamarin.Google.MLKit.LanguageId + + + Xamarin.Google.MLKit.LanguageId.Internal + + + Android.Gms.Dynamite.Descriptors.MLKit.Dynamite.LangId + + + + + + Android.Gms.Internal.MLKitLanguageIdBundled + + + Xamarin.Google.MLKit.NL.LanguageId.Bundled.Internal + + + + diff --git a/source/com.google.mlkit/language-id/Transforms/Metadata.xml b/source/com.google.mlkit/language-id/Transforms/Metadata.xml new file mode 100644 index 000000000..f605c7cf3 --- /dev/null +++ b/source/com.google.mlkit/language-id/Transforms/Metadata.xml @@ -0,0 +1,16 @@ + + + + + + + + diff --git a/source/com.google.mlkit/linkfirebase/Additions/Additions.cs b/source/com.google.mlkit/linkfirebase/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.mlkit/linkfirebase/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.mlkit/linkfirebase/Transforms/EnumFields.xml b/source/com.google.mlkit/linkfirebase/Transforms/EnumFields.xml new file mode 100644 index 000000000..68cc7fd68 --- /dev/null +++ b/source/com.google.mlkit/linkfirebase/Transforms/EnumFields.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/linkfirebase/Transforms/EnumMethods.xml b/source/com.google.mlkit/linkfirebase/Transforms/EnumMethods.xml new file mode 100644 index 000000000..bd77573ac --- /dev/null +++ b/source/com.google.mlkit/linkfirebase/Transforms/EnumMethods.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/linkfirebase/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/linkfirebase/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..68ad217cc --- /dev/null +++ b/source/com.google.mlkit/linkfirebase/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,22 @@ + + + + Android.Gms.Internal.MLKitLinkFirebase + + + Xamarin.Google.MLKit.LinkFirebase + + + Xamarin.Google.MLKit.LinkFirebase.Internal + + + diff --git a/source/com.google.mlkit/linkfirebase/Transforms/Metadata.xml b/source/com.google.mlkit/linkfirebase/Transforms/Metadata.xml new file mode 100644 index 000000000..958fe3d92 --- /dev/null +++ b/source/com.google.mlkit/linkfirebase/Transforms/Metadata.xml @@ -0,0 +1,7 @@ + + + + + diff --git a/source/com.google.mlkit/mediapipe-internal/Additions/Additions.cs b/source/com.google.mlkit/mediapipe-internal/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.mlkit/mediapipe-internal/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.mlkit/mediapipe-internal/Transforms/EnumFields.xml b/source/com.google.mlkit/mediapipe-internal/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.mlkit/mediapipe-internal/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/mediapipe-internal/Transforms/EnumMethods.xml b/source/com.google.mlkit/mediapipe-internal/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.mlkit/mediapipe-internal/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/mediapipe-internal/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/mediapipe-internal/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..4734fe09e --- /dev/null +++ b/source/com.google.mlkit/mediapipe-internal/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,47 @@ + + + + Android.Gms.Internal.MLKitVisionMediaPipe + + + Xamarin.Google.MLKit.Vision.MediaPipe + + + Xamarin.Google.MLKit.Vision.MediaPipe.Pose + + + Xamarin.Google.MLKit.Vision.MediaPipe.Segmentation + + + Xamarin.Google.MLKit.Vision.MediaPipe.Utils + + + Xamarin.Google.Research.Xeno.Effect + + + \ No newline at end of file diff --git a/source/com.google.mlkit/mediapipe-internal/Transforms/Metadata.ParameterNames.xml b/source/com.google.mlkit/mediapipe-internal/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.mlkit/mediapipe-internal/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/mediapipe-internal/Transforms/Metadata.xml b/source/com.google.mlkit/mediapipe-internal/Transforms/Metadata.xml new file mode 100644 index 000000000..e7533ff4e --- /dev/null +++ b/source/com.google.mlkit/mediapipe-internal/Transforms/Metadata.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/source/com.google.mlkit/object-detection-common/Additions/Additions.cs b/source/com.google.mlkit/object-detection-common/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.mlkit/object-detection-common/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.mlkit/object-detection-common/Transforms/EnumFields.xml b/source/com.google.mlkit/object-detection-common/Transforms/EnumFields.xml new file mode 100644 index 000000000..68cc7fd68 --- /dev/null +++ b/source/com.google.mlkit/object-detection-common/Transforms/EnumFields.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/object-detection-common/Transforms/EnumMethods.xml b/source/com.google.mlkit/object-detection-common/Transforms/EnumMethods.xml new file mode 100644 index 000000000..bd77573ac --- /dev/null +++ b/source/com.google.mlkit/object-detection-common/Transforms/EnumMethods.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/object-detection-common/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/object-detection-common/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..f69c9bc80 --- /dev/null +++ b/source/com.google.mlkit/object-detection-common/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,19 @@ + + + + + Xamarin.Google.MLKit.Vision.Objects + + + Xamarin.Google.MLKit.Vision.Objects.Internal + + + + + diff --git a/source/com.google.mlkit/object-detection-common/Transforms/Metadata.xml b/source/com.google.mlkit/object-detection-common/Transforms/Metadata.xml new file mode 100644 index 000000000..29ef43496 --- /dev/null +++ b/source/com.google.mlkit/object-detection-common/Transforms/Metadata.xml @@ -0,0 +1,4 @@ + + + + diff --git a/source/com.google.mlkit/object-detection-custom/Additions/Xamarin.Google.MLKit.Vision.Objects.Custom.Internal.CustomObjectsRegistrar.cs b/source/com.google.mlkit/object-detection-custom/Additions/Xamarin.Google.MLKit.Vision.Objects.Custom.Internal.CustomObjectsRegistrar.cs new file mode 100644 index 000000000..fa093303c --- /dev/null +++ b/source/com.google.mlkit/object-detection-custom/Additions/Xamarin.Google.MLKit.Vision.Objects.Custom.Internal.CustomObjectsRegistrar.cs @@ -0,0 +1,32 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; + + +using System; +using System.Collections.Generic; +using Android.Runtime; +using Java.Interop; + +namespace Xamarin.Google.MLKit.Vision.Objects.Custom.Internal +{ + // Metadata.xml XPath class reference: path="/api/package[@name='com.google.mlkit.vision.objects.custom.internal']/class[@name='CustomObjectsRegistrar']" + //[global::Android.Runtime.Register ("com/google/mlkit/vision/objects/custom/internal/CustomObjectsRegistrar", DoNotGenerateAcw=true)] + public partial class CustomObjectsRegistrar : global::Java.Lang.Object, global::Firebase.Components.IComponentRegistrar + { + public unsafe global::System.Collections.Generic.IList Components + { + // Metadata.xml XPath method reference: path="/api/package[@name='com.google.mlkit.vision.objects.custom.internal']/class[@name='CustomObjectsRegistrar']/method[@name='getComponents' and count(parameter)=0]" + [Register ("getComponents", "()Ljava/util/List;", "")] + get { + const string __id = "getComponents.()Ljava/util/List;"; + try { + var __rm = _members.InstanceMethods.InvokeNonvirtualObjectMethod (__id, this, null); + return (System.Collections.Generic.IList) global::Android.Runtime.JavaList.FromJniHandle (__rm.Handle, JniHandleOwnership.TransferLocalRef); + } finally { + } + } + } + } +} \ No newline at end of file diff --git a/source/com.google.mlkit/object-detection-custom/Transforms/EnumFields.xml b/source/com.google.mlkit/object-detection-custom/Transforms/EnumFields.xml new file mode 100644 index 000000000..68cc7fd68 --- /dev/null +++ b/source/com.google.mlkit/object-detection-custom/Transforms/EnumFields.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/object-detection-custom/Transforms/EnumMethods.xml b/source/com.google.mlkit/object-detection-custom/Transforms/EnumMethods.xml new file mode 100644 index 000000000..bd77573ac --- /dev/null +++ b/source/com.google.mlkit/object-detection-custom/Transforms/EnumMethods.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/object-detection-custom/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/object-detection-custom/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..3878c5655 --- /dev/null +++ b/source/com.google.mlkit/object-detection-custom/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,26 @@ + + + + + Android.Gms.Internal.MLKitVisionObjectDetectionCustom + + + Xamarin.Google.MLKit.Vision.Objects.Custom + + + Xamarin.Google.MLKit.Vision.Objects.Custom.Internal + + + + + + diff --git a/source/com.google.mlkit/object-detection-custom/Transforms/Metadata.xml b/source/com.google.mlkit/object-detection-custom/Transforms/Metadata.xml new file mode 100644 index 000000000..268ead148 --- /dev/null +++ b/source/com.google.mlkit/object-detection-custom/Transforms/Metadata.xml @@ -0,0 +1,123 @@ + + + + + + + + + + + + + + + + + BuildAlternative + + + EnableMultipleObjectsAlternative + + + EnableClassificationAlternative + + + SetExecutorAlternative + + + SetExecutorAlternative + + + + + java.lang.Object + + + java.lang.Object + + + diff --git a/source/com.google.mlkit/object-detection/Additions/ObjectDetectorOptions.cs b/source/com.google.mlkit/object-detection/Additions/ObjectDetectorOptions.cs new file mode 100644 index 000000000..5eca9d557 --- /dev/null +++ b/source/com.google.mlkit/object-detection/Additions/ObjectDetectorOptions.cs @@ -0,0 +1,10 @@ +using System; +namespace Xamarin.Google.MLKit.ObjectDetection.Additions +{ + public class ObjectDetectorOptions + { + public ObjectDetectorOptions() + { + } + } +} diff --git a/source/com.google.mlkit/object-detection/Additions/Xamarin.Google.MLKit.Vision.Objects.Defaults.Internal.DefaultObjectsRegistrar.cs b/source/com.google.mlkit/object-detection/Additions/Xamarin.Google.MLKit.Vision.Objects.Defaults.Internal.DefaultObjectsRegistrar.cs new file mode 100644 index 000000000..b4e697033 --- /dev/null +++ b/source/com.google.mlkit/object-detection/Additions/Xamarin.Google.MLKit.Vision.Objects.Defaults.Internal.DefaultObjectsRegistrar.cs @@ -0,0 +1,27 @@ +using System; +using System.Collections.Generic; +using Android.Runtime; +using Java.Interop; + +namespace Xamarin.Google.MLKit.Vision.Objects.Defaults.Internal +{ + + // Metadata.xml XPath class reference: path="/api/package[@name='com.google.mlkit.vision.objects.defaults.internal']/class[@name='DefaultObjectsRegistrar']" + // [global::Android.Runtime.Register ("com/google/mlkit/vision/objects/defaults/internal/DefaultObjectsRegistrar", DoNotGenerateAcw=true)] + public partial class DefaultObjectsRegistrar //: global::Java.Lang.Object, global::Firebase.Components.IComponentRegistrar + { + public unsafe System.Collections.Generic.IList Components + { + // Metadata.xml XPath method reference: path="/api/package[@name='com.google.mlkit.vision.objects.defaults.internal']/class[@name='DefaultObjectsRegistrar']/method[@name='getComponents' and count(parameter)=0]" + [Register ("getComponents", "()Ljava/util/List;", "")] + get { + const string __id = "getComponents.()Ljava/util/List;"; + try { + var __rm = _members.InstanceMethods.InvokeNonvirtualObjectMethod (__id, this, null); + return (System.Collections.Generic.IList) global::Android.Runtime.JavaList.FromJniHandle (__rm.Handle, JniHandleOwnership.TransferLocalRef); + } finally { + } + } + } + } +} \ No newline at end of file diff --git a/source/com.google.mlkit/object-detection/Transforms/EnumFields.xml b/source/com.google.mlkit/object-detection/Transforms/EnumFields.xml new file mode 100644 index 000000000..68cc7fd68 --- /dev/null +++ b/source/com.google.mlkit/object-detection/Transforms/EnumFields.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/object-detection/Transforms/EnumMethods.xml b/source/com.google.mlkit/object-detection/Transforms/EnumMethods.xml new file mode 100644 index 000000000..bd77573ac --- /dev/null +++ b/source/com.google.mlkit/object-detection/Transforms/EnumMethods.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/object-detection/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/object-detection/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..38fcf4cb0 --- /dev/null +++ b/source/com.google.mlkit/object-detection/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,26 @@ + + + + + Android.Gms.Internal.MLKitVisionObjectDetectionBundled + + + Xamarin.Google.MLKit.Vision.Objects.Defaults + + + Xamarin.Google.MLKit.Vision.Objects.Defaults.Internal + + + + + + diff --git a/source/com.google.mlkit/object-detection/Transforms/Metadata.xml b/source/com.google.mlkit/object-detection/Transforms/Metadata.xml new file mode 100644 index 000000000..6477e4051 --- /dev/null +++ b/source/com.google.mlkit/object-detection/Transforms/Metadata.xml @@ -0,0 +1,52 @@ + + + + + + BuildAlternative + + + EnableClassificationAlternative + + + SetDetectorModeAlternative + + + EnableMultipleObjectsAlternative + + + SetExecutorAlternative + + + + + java.lang.Object + + + java.lang.Object + + + diff --git a/source/com.google.mlkit/pose-detection-accurate/Additions/Additions.cs b/source/com.google.mlkit/pose-detection-accurate/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.mlkit/pose-detection-accurate/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.mlkit/pose-detection-accurate/Transforms/EnumFields.xml b/source/com.google.mlkit/pose-detection-accurate/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.mlkit/pose-detection-accurate/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/pose-detection-accurate/Transforms/EnumMethods.xml b/source/com.google.mlkit/pose-detection-accurate/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.mlkit/pose-detection-accurate/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/pose-detection-accurate/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/pose-detection-accurate/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..f7f576d6d --- /dev/null +++ b/source/com.google.mlkit/pose-detection-accurate/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Xamarin.Google.MLKit.Vision.Pose.Accurate + + \ No newline at end of file diff --git a/source/com.google.mlkit/pose-detection-accurate/Transforms/Metadata.ParameterNames.xml b/source/com.google.mlkit/pose-detection-accurate/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.mlkit/pose-detection-accurate/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/pose-detection-accurate/Transforms/Metadata.xml b/source/com.google.mlkit/pose-detection-accurate/Transforms/Metadata.xml new file mode 100644 index 000000000..ae564839e --- /dev/null +++ b/source/com.google.mlkit/pose-detection-accurate/Transforms/Metadata.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + java.lang.Object + + + java.lang.Object + + + \ No newline at end of file diff --git a/source/com.google.mlkit/pose-detection-common/Additions/Additions.cs b/source/com.google.mlkit/pose-detection-common/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.mlkit/pose-detection-common/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.mlkit/pose-detection-common/Transforms/EnumFields.xml b/source/com.google.mlkit/pose-detection-common/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.mlkit/pose-detection-common/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/pose-detection-common/Transforms/EnumMethods.xml b/source/com.google.mlkit/pose-detection-common/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.mlkit/pose-detection-common/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/pose-detection-common/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/pose-detection-common/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..8f419f07d --- /dev/null +++ b/source/com.google.mlkit/pose-detection-common/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,20 @@ + + + Android.Gms.Internal.MLKitVisionPoseCommon + + + Xamarin.Google.MLKit.Vision.Pose + + + Xamarin.Google.MLKit.Vision.Pose.Internal + + \ No newline at end of file diff --git a/source/com.google.mlkit/pose-detection-common/Transforms/Metadata.ParameterNames.xml b/source/com.google.mlkit/pose-detection-common/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.mlkit/pose-detection-common/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/pose-detection-common/Transforms/Metadata.xml b/source/com.google.mlkit/pose-detection-common/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.mlkit/pose-detection-common/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.mlkit/pose-detection/Additions/Additions.cs b/source/com.google.mlkit/pose-detection/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.mlkit/pose-detection/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.mlkit/pose-detection/Transforms/EnumFields.xml b/source/com.google.mlkit/pose-detection/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.mlkit/pose-detection/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/pose-detection/Transforms/EnumMethods.xml b/source/com.google.mlkit/pose-detection/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.mlkit/pose-detection/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/pose-detection/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/pose-detection/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..26dce6e13 --- /dev/null +++ b/source/com.google.mlkit/pose-detection/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,27 @@ + + + Android.Gms.Internal.MLKitVisionPoseBundlee + + + Xamarin.Google.MLKit.Vision.Pose + + + Xamarin.Google.MLKit.Vision.Pose.Internal + + + Xamarin.Google.MLKit.Vision.Pose.Defaults + + + \ No newline at end of file diff --git a/source/com.google.mlkit/pose-detection/Transforms/Metadata.ParameterNames.xml b/source/com.google.mlkit/pose-detection/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.mlkit/pose-detection/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/pose-detection/Transforms/Metadata.xml b/source/com.google.mlkit/pose-detection/Transforms/Metadata.xml new file mode 100644 index 000000000..71ea5cf80 --- /dev/null +++ b/source/com.google.mlkit/pose-detection/Transforms/Metadata.xml @@ -0,0 +1,28 @@ + + + + + + + + + + java.lang.Object + + + java.lang.Object + + + \ No newline at end of file diff --git a/source/com.google.mlkit/smart-reply-common/Additions/Additions.cs b/source/com.google.mlkit/smart-reply-common/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.mlkit/smart-reply-common/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.mlkit/smart-reply-common/Transforms/EnumFields.xml b/source/com.google.mlkit/smart-reply-common/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.mlkit/smart-reply-common/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/smart-reply-common/Transforms/EnumMethods.xml b/source/com.google.mlkit/smart-reply-common/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.mlkit/smart-reply-common/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/smart-reply-common/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/smart-reply-common/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..0b091f070 --- /dev/null +++ b/source/com.google.mlkit/smart-reply-common/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,21 @@ + + + Android.Gms.Internal.MLKitSmartReplyCommon + + + Xamarin.Google.MLKit.NL.SmartReply + + + Xamarin.Google.MLKit.NL.SmartReply.Internal + + + \ No newline at end of file diff --git a/source/com.google.mlkit/smart-reply-common/Transforms/Metadata.ParameterNames.xml b/source/com.google.mlkit/smart-reply-common/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.mlkit/smart-reply-common/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/smart-reply-common/Transforms/Metadata.xml b/source/com.google.mlkit/smart-reply-common/Transforms/Metadata.xml new file mode 100644 index 000000000..8673ce3a3 --- /dev/null +++ b/source/com.google.mlkit/smart-reply-common/Transforms/Metadata.xml @@ -0,0 +1,5 @@ + + + \ No newline at end of file diff --git a/source/com.google.mlkit/smart-reply/Additions/Additions.cs b/source/com.google.mlkit/smart-reply/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.mlkit/smart-reply/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.mlkit/smart-reply/Transforms/EnumFields.xml b/source/com.google.mlkit/smart-reply/Transforms/EnumFields.xml new file mode 100644 index 000000000..68cc7fd68 --- /dev/null +++ b/source/com.google.mlkit/smart-reply/Transforms/EnumFields.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/smart-reply/Transforms/EnumMethods.xml b/source/com.google.mlkit/smart-reply/Transforms/EnumMethods.xml new file mode 100644 index 000000000..bd77573ac --- /dev/null +++ b/source/com.google.mlkit/smart-reply/Transforms/EnumMethods.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/smart-reply/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/smart-reply/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..c0040f44f --- /dev/null +++ b/source/com.google.mlkit/smart-reply/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,53 @@ + + + + + Android.Gms.Internal.MLKitNaturalLanguage + + + Xamarin.Google.MLKit.NL.SmartReply + + + Xamarin.Google.MLKit.NL.SmartReply.API + + + Xamarin.Google.MLKit.NL.SmartReply.Component + + + Xamarin.Google.MLKit.NL.SmartReply.JNI + + + + + Android.Gms.Internal.MLKitSmartReplyBundled + + + Xamarin.Google.MLKit.NL.SmartReply.Bundled.Internal + + + + + + + diff --git a/source/com.google.mlkit/smart-reply/Transforms/Metadata.xml b/source/com.google.mlkit/smart-reply/Transforms/Metadata.xml new file mode 100644 index 000000000..5d56ab3ab --- /dev/null +++ b/source/com.google.mlkit/smart-reply/Transforms/Metadata.xml @@ -0,0 +1,9 @@ + + + + + diff --git a/source/com.google.mlkit/text-recognition-bundled-common/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/text-recognition-bundled-common/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..3b016525e --- /dev/null +++ b/source/com.google.mlkit/text-recognition-bundled-common/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,27 @@ + + + Android.Gms.Internal.MLKitVisionTextBundledCommon + + + Xamarin.GoogleAndroid.Libraries.Vision.VisionKit.Pipeline + + + Xamarin.GoogleAndroid.Libraries.Vision.VisionKit.Pipeline.Alt + + + Xamarin.Google.MLKit.Vision.Text.Pipeline + + + \ No newline at end of file diff --git a/source/com.google.mlkit/text-recognition-bundled-common/Transforms/Metadata.xml b/source/com.google.mlkit/text-recognition-bundled-common/Transforms/Metadata.xml new file mode 100644 index 000000000..de5a35a0d --- /dev/null +++ b/source/com.google.mlkit/text-recognition-bundled-common/Transforms/Metadata.xml @@ -0,0 +1,9 @@ + + + + + \ No newline at end of file diff --git a/source/com.google.mlkit/text-recognition-chinese/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/text-recognition-chinese/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..f7574ee11 --- /dev/null +++ b/source/com.google.mlkit/text-recognition-chinese/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Android.Gms.Vision.Dynamite.Descriptors.Google.MLKit.Dynamite.Text.Chinese + + \ No newline at end of file diff --git a/source/com.google.mlkit/text-recognition-chinese/Transforms/Metadata.xml b/source/com.google.mlkit/text-recognition-chinese/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.mlkit/text-recognition-chinese/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.mlkit/text-recognition-devanagari/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/text-recognition-devanagari/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..73071e097 --- /dev/null +++ b/source/com.google.mlkit/text-recognition-devanagari/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Android.Gms.Vision.Dynamite.Descriptors.Google.MLKit.Dynamite.Text.Devanagari + + \ No newline at end of file diff --git a/source/com.google.mlkit/text-recognition-devanagari/Transforms/Metadata.xml b/source/com.google.mlkit/text-recognition-devanagari/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.mlkit/text-recognition-devanagari/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.mlkit/text-recognition-japanese/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/text-recognition-japanese/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..6e3706561 --- /dev/null +++ b/source/com.google.mlkit/text-recognition-japanese/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Android.Gms.Vision.Dynamite.Descriptors.Google.MLKit.Dynamite.Text.Japanese + + \ No newline at end of file diff --git a/source/com.google.mlkit/text-recognition-japanese/Transforms/Metadata.xml b/source/com.google.mlkit/text-recognition-japanese/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.mlkit/text-recognition-japanese/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.mlkit/text-recognition-korean/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/text-recognition-korean/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..03545f081 --- /dev/null +++ b/source/com.google.mlkit/text-recognition-korean/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,10 @@ + + + Android.Gms.Vision.Dynamite.Descriptors.Google.MLKit.Dynamite.Text.Korean + + + + \ No newline at end of file diff --git a/source/com.google.mlkit/text-recognition-korean/Transforms/Metadata.xml b/source/com.google.mlkit/text-recognition-korean/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.mlkit/text-recognition-korean/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.mlkit/text-recognition/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/text-recognition/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..2b2a2e474 --- /dev/null +++ b/source/com.google.mlkit/text-recognition/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Android.Gms.Vision.Dynamite.Descriptors.Google.MLKit.Dynamite.Text.Latin + + \ No newline at end of file diff --git a/source/com.google.mlkit/text-recognition/Transforms/Metadata.xml b/source/com.google.mlkit/text-recognition/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.mlkit/text-recognition/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.mlkit/translate/Additions/Additions.cs b/source/com.google.mlkit/translate/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.mlkit/translate/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.mlkit/translate/Transforms/EnumFields.xml b/source/com.google.mlkit/translate/Transforms/EnumFields.xml new file mode 100644 index 000000000..68cc7fd68 --- /dev/null +++ b/source/com.google.mlkit/translate/Transforms/EnumFields.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/translate/Transforms/EnumMethods.xml b/source/com.google.mlkit/translate/Transforms/EnumMethods.xml new file mode 100644 index 000000000..bd77573ac --- /dev/null +++ b/source/com.google.mlkit/translate/Transforms/EnumMethods.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/translate/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/translate/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..3ff75e65f --- /dev/null +++ b/source/com.google.mlkit/translate/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,26 @@ + + + + + Android.Gms.Internal.MLKitTranslate + + + Xamarin.Google.MLKit.NL.Translate + + + Xamarin.Google.MLKit.NL.Translate.Internal + + + + + + diff --git a/source/com.google.mlkit/translate/Transforms/Metadata.xml b/source/com.google.mlkit/translate/Transforms/Metadata.xml new file mode 100644 index 000000000..4d41036c7 --- /dev/null +++ b/source/com.google.mlkit/translate/Transforms/Metadata.xml @@ -0,0 +1,7 @@ + + + + + diff --git a/source/com.google.mlkit/vision-common/Additions/Additions.cs b/source/com.google.mlkit/vision-common/Additions/Additions.cs new file mode 100644 index 000000000..32eb0f52b --- /dev/null +++ b/source/com.google.mlkit/vision-common/Additions/Additions.cs @@ -0,0 +1,28 @@ +using System; +using System.Collections.Generic; +using Android.Runtime; +using Java.Interop; + +namespace Xamarin.Google.MLKit.Vision.Common.Internal +{ + // Metadata.xml XPath class reference: path="/api/package[@name='com.google.mlkit.vision.common.internal']/class[@name='VisionCommonRegistrar']" + //[global::Android.Runtime.Register ("com/google/mlkit/vision/common/internal/VisionCommonRegistrar", DoNotGenerateAcw=true)] + public partial class VisionCommonRegistrar //: global::Java.Lang.Object, global::Firebase.Components.IComponentRegistrar { + { + + public unsafe global::System.Collections.Generic.IList Components + { + // Metadata.xml XPath method reference: path="/api/package[@name='com.google.mlkit.vision.common.internal']/class[@name='VisionCommonRegistrar']/method[@name='getComponents' and count(parameter)=0]" + [Register ("getComponents", "()Ljava/util/List;", "")] + get { + const string __id = "getComponents.()Ljava/util/List;"; + try { + var __rm = _members.InstanceMethods.InvokeNonvirtualObjectMethod (__id, this, null); + return (global::System.Collections.Generic.IList ) global::Android.Runtime.JavaList.FromJniHandle (__rm.Handle, JniHandleOwnership.TransferLocalRef); + } finally { + } + } + } + + } +} diff --git a/source/com.google.mlkit/vision-common/Transforms/EnumFields.xml b/source/com.google.mlkit/vision-common/Transforms/EnumFields.xml new file mode 100644 index 000000000..68cc7fd68 --- /dev/null +++ b/source/com.google.mlkit/vision-common/Transforms/EnumFields.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/vision-common/Transforms/EnumMethods.xml b/source/com.google.mlkit/vision-common/Transforms/EnumMethods.xml new file mode 100644 index 000000000..bd77573ac --- /dev/null +++ b/source/com.google.mlkit/vision-common/Transforms/EnumMethods.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/vision-common/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/vision-common/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..e05cef3a2 --- /dev/null +++ b/source/com.google.mlkit/vision-common/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,27 @@ + + + + + Android.Gms.Internal.MLKitVisionCommon + + + Xamarin.Google.MLKit.Vision.Common + + + Xamarin.Google.MLKit.Vision.Common.Internal + + + + + + + diff --git a/source/com.google.mlkit/vision-common/Transforms/Metadata.xml b/source/com.google.mlkit/vision-common/Transforms/Metadata.xml new file mode 100644 index 000000000..0627e6886 --- /dev/null +++ b/source/com.google.mlkit/vision-common/Transforms/Metadata.xml @@ -0,0 +1,17 @@ + + + + + + + + diff --git a/source/com.google.mlkit/vision-interfaces/Additions/Additions.cs b/source/com.google.mlkit/vision-interfaces/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.mlkit/vision-interfaces/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.mlkit/vision-interfaces/Transforms/EnumFields.xml b/source/com.google.mlkit/vision-interfaces/Transforms/EnumFields.xml new file mode 100644 index 000000000..f8105b317 --- /dev/null +++ b/source/com.google.mlkit/vision-interfaces/Transforms/EnumFields.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/vision-interfaces/Transforms/EnumMethods.xml b/source/com.google.mlkit/vision-interfaces/Transforms/EnumMethods.xml new file mode 100644 index 000000000..501e4827b --- /dev/null +++ b/source/com.google.mlkit/vision-interfaces/Transforms/EnumMethods.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/vision-interfaces/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/vision-interfaces/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..853bd316e --- /dev/null +++ b/source/com.google.mlkit/vision-interfaces/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,8 @@ + + + Xamarin.Google.MLKit.Vision.Interfaces + + \ No newline at end of file diff --git a/source/com.google.mlkit/vision-interfaces/Transforms/Metadata.ParameterNames.xml b/source/com.google.mlkit/vision-interfaces/Transforms/Metadata.ParameterNames.xml new file mode 100644 index 000000000..f5da9828b --- /dev/null +++ b/source/com.google.mlkit/vision-interfaces/Transforms/Metadata.ParameterNames.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/source/com.google.mlkit/vision-interfaces/Transforms/Metadata.xml b/source/com.google.mlkit/vision-interfaces/Transforms/Metadata.xml new file mode 100644 index 000000000..9495e200d --- /dev/null +++ b/source/com.google.mlkit/vision-interfaces/Transforms/Metadata.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/source/com.google.mlkit/vision-internal-vkp/Additions/Additions.cs b/source/com.google.mlkit/vision-internal-vkp/Additions/Additions.cs new file mode 100644 index 000000000..127606d41 --- /dev/null +++ b/source/com.google.mlkit/vision-internal-vkp/Additions/Additions.cs @@ -0,0 +1,4 @@ +using System; +using Android.Views; +using Android.Widget; +using Android.Graphics; diff --git a/source/com.google.mlkit/vision-internal-vkp/Transforms/EnumFields.xml b/source/com.google.mlkit/vision-internal-vkp/Transforms/EnumFields.xml new file mode 100644 index 000000000..68cc7fd68 --- /dev/null +++ b/source/com.google.mlkit/vision-internal-vkp/Transforms/EnumFields.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/vision-internal-vkp/Transforms/EnumMethods.xml b/source/com.google.mlkit/vision-internal-vkp/Transforms/EnumMethods.xml new file mode 100644 index 000000000..bd77573ac --- /dev/null +++ b/source/com.google.mlkit/vision-internal-vkp/Transforms/EnumMethods.xml @@ -0,0 +1,19 @@ + + + + diff --git a/source/com.google.mlkit/vision-internal-vkp/Transforms/Metadata.Namespaces.xml b/source/com.google.mlkit/vision-internal-vkp/Transforms/Metadata.Namespaces.xml new file mode 100644 index 000000000..a56765822 --- /dev/null +++ b/source/com.google.mlkit/vision-internal-vkp/Transforms/Metadata.Namespaces.xml @@ -0,0 +1,40 @@ + + + + + Android.Gms.Internal.MLKitVisionInternalVkp + + + Xamarin.Android.Libraries.Intelligence.Acceleration + + + Xamarin.Android.Libraries.Intelligence.Acceleration.Process + + + Xamarin.Android.Libraries.Vision.VisionKit.Pipeline + + + Xamarin.Google.MLKit.Vision.Vkp + + + + + + + + diff --git a/source/com.google.mlkit/vision-internal-vkp/Transforms/Metadata.xml b/source/com.google.mlkit/vision-internal-vkp/Transforms/Metadata.xml new file mode 100644 index 000000000..e206599a8 --- /dev/null +++ b/source/com.google.mlkit/vision-internal-vkp/Transforms/Metadata.xml @@ -0,0 +1,11 @@ + + + + + + + diff --git a/templates/glide/External-Dependency-Info.txt b/templates/glide/External-Dependency-Info.txt new file mode 100644 index 000000000..d5bdbc3f4 --- /dev/null +++ b/templates/glide/External-Dependency-Info.txt @@ -0,0 +1,106 @@ +THIRD-PARTY SOFTWARE NOTICES AND INFORMATION +Do not translate or localize + +Xamarin Components for Glide incorporates +third party material from the projects listed below. The original copyright +notice and the license under which Microsoft received such third party +material are set forth below. Microsoft reserves all other rights not +expressly granted, whether by implication, estoppel or otherwise. + +######################################## +# Glide +# https://github.com/bumptech/glide/ +######################################## + +Copyright 2014 Google, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are +permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, this list of + conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright notice, this list + of conditions and the following disclaimer in the documentation and/or other materials + provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY GOOGLE, INC. ``AS IS'' AND ANY EXPRESS OR IMPLIED +WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GOOGLE, INC. OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON +ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +The views and conclusions contained in the software and documentation are those of the +authors and should not be interpreted as representing official policies, either expressed +or implied, of Google, Inc. +--------------------------------------------------------------------------------------------- +License for third_party/disklrucache: + +Copyright 2012 Jake Wharton +Copyright 2011 The Android Open Source Project + +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. +--------------------------------------------------------------------------------------------- +License for third_party/gif_decoder: + +Copyright (c) 2013 Xcellent Creations, Inc. + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +--------------------------------------------------------------------------------------------- +License for third_party/gif_encoder/AnimatedGifEncoder.java and +third_party/gif_encoder/LZWEncoder.java: + +No copyright asserted on the source code of this class. May be used for any +purpose, however, refer to the Unisys LZW patent for restrictions on use of +the associated LZWEncoder class. Please forward any corrections to +kweiner@fmsware.com. + +----------------------------------------------------------------------------- +License for third_party/gif_encoder/NeuQuant.java + +Copyright (c) 1994 Anthony Dekker + +NEUQUANT Neural-Net quantization algorithm by Anthony Dekker, 1994. See +"Kohonen neural networks for optimal colour quantization" in "Network: +Computation in Neural Systems" Vol. 5 (1994) pp 351-367. for a discussion of +the algorithm. + +Any party obtaining a copy of these files from the author, directly or +indirectly, is granted, free of charge, a full and unrestricted irrevocable, +world-wide, paid up, royalty-free, nonexclusive right and license to deal in +this software and documentation files (the "Software"), including without +limitation the rights to use, copy, modify, merge, publish, distribute, +sublicense, and/or sell copies of the Software, and to permit persons who +receive copies from any such party to do so, with the only requirement being +that this copyright notice remain intact. \ No newline at end of file diff --git a/templates/glide/LICENSE.md b/templates/glide/LICENSE.md new file mode 100644 index 000000000..50153957b --- /dev/null +++ b/templates/glide/LICENSE.md @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) .NET Foundation Contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/templates/glide/NuGetReadMe.cshtml b/templates/glide/NuGetReadMe.cshtml new file mode 100644 index 000000000..6e0e1deab --- /dev/null +++ b/templates/glide/NuGetReadMe.cshtml @@ -0,0 +1,166 @@ +@using System +@using System.IO +@using System.Linq +@using System.Xml.Linq + + @{ + string[] artifact_version_parts = Model.NuGetVersion + .Split(new string[] { "-" }, StringSplitOptions.None); + string artifact_version = null; + + string artifact_version_release = artifact_version_parts[0]; + string[] artifact_version_release_parts = artifact_version_release.Split(new string[] { "." }, StringSplitOptions.None); + artifact_version = string.Join(".", artifact_version_release_parts, 0, 3); + + if (artifact_version_parts.Length == 1) + { + // release + } + if (artifact_version_parts.Length == 2) + { + artifact_version += "-" + artifact_version_parts[1]; + } + } + +## About + + + +`@(Model.NuGetPackageId)` Bindings NuGet Package is a dependency of packages for +Google.Play.Services, Firebase and MLKit (GPS-FB-MLKit). + +This is .NET for Android (formerly Xamarin.Android) bindings NuGet Package for Maven artifact: + +artifact=@(Model.MavenGroupId):@(Model.Name) + +artifact_versioned=@(Model.MavenGroupId):@(Model.Name):@(artifact_version) + +nuget=@(Model.Name).@(Model.NuGetVersion) + +For more info please visit: + +https://github.com/xamarin/GooglePlayServicesComponents/ + + +## How to Use + + + +See samples: + +https://github.com/xamarin/GooglePlayServicesComponents/tree/main/samples + +## Key Features + + + +## Main Types + + + +## Addtional Documentation + + +### What is Google.Play.Services, Firebase and ML Kit (GPS-FB-MLKit) + + +Google Play services powers a broad set of APIs and services on Android to help you build your app, +enhance privacy and security, engage users, and grow your business. + +SDKs powered by Google Play services are backward-compatible to Android 5.0, so you can reach over +3 billion active Android devices worldwide. + +Google Play services receive automatic updates—independent of OS, OEM, or app updates—so your users +receive new features and bug fixes more quickly. + +https://developers.google.com/android + + +Google Play services powers a broad set of APIs and services on Android to help you build your app, +enhance privacy and security, engage users, and grow your business. + + +https://developers.google.com/android/reference/packages + +Firebase is an app development platform that helps you build and grow apps and games users love. +Backed by Google and trusted by millions of businesses around the world. + + +Accelerate app development with fully managed backend infrastructure + +https://firebase.google.com/products-build + + +Release with confidence and monitor performance and stability + +https://firebase.google.com/products-release + + +Boost user engagement with rich analytics, A/B testing, and messaging campaigns + +https://firebase.google.com/products-engage + + +ML Kit brings Google’s machine learning expertise to mobile developers in a powerful and easy-to-use +package. Make your iOS and Android apps more engaging, personalized, and helpful with solutions that +are optimized to run on device. + +ML Kit’s processing happens on-device. This makes it fast and unlocks real-time use cases like processing +of camera input. It also works while offline and can be used for processing images and text that need to +remain on the device. + +https://developers.google.com/ml-kit + + +## Related Packages + + + +https://github.com/xamarin/GooglePlayServicesComponents/blob/main/docs/artifact-list.md + +https://github.com/xamarin/GooglePlayServicesComponents/blob/main/docs/artifact-list-with-versions.md + +https://www.nuget.org/packages?q=Xamarin.GooglePlayServices + +https://www.nuget.org/packages?q=Xamarin.Firebase + +https://www.nuget.org/packages?q=Xamarin.MLKit + +## Feedback & Contributing + + +https://github.com/xamarin/AndroidX/issues + + +https://github.com/xamarin/GooglePlayServicesComponents/issues + +https://discord.com/channels/732297728826277939/732297837953679412 + + +### More Info + + +## Issues + +Please report any issues: + +https://github.com/xamarin/GooglePlayServicesComponents/issues + +MIT license \ No newline at end of file diff --git a/templates/glide/Project.cshtml b/templates/glide/Project.cshtml new file mode 100644 index 000000000..8f355b94f --- /dev/null +++ b/templates/glide/Project.cshtml @@ -0,0 +1,119 @@ + + + $(_DefaultTargetFrameworks) + true + + 0618;0109;0114;0628;0108;0809 + + + + class-parse + XAJavaInterop1 + + + + Microsoft + Microsoft + © Microsoft Corporation. All rights reserved. + https://go.microsoft.com/fwlink/?linkid=865435 + https://go.microsoft.com/fwlink/?linkid=865435 + true + true + MIT AND Apache-2.0 + + @foreach (var art in @Model.MavenArtifacts) + { + @Model.NuGetPackageId + @Model.NuGetPackageId + switch(@Model.NuGetPackageId) + { + case "Xamarin.Android.Glide": + Xamarin.Android.Glide + .NET for Android (formerly Xamarin.Android) bindings for Glide + .NET, dotnet, xamarin, android, bindings, bumptech, glide, artifact=@(Model.MavenGroupId):@(Model.Name) artifact_versioned=@(Model.MavenGroupId):@(Model.Name):@(Model.MavenArtifacts[0].MavenArtifactVersion) + Bumptech.Glide + break; + case "Xamarin.Android.Glide.GifDecoder": + Xamarin.Android.Glide.GifDecoder + .NET for Android (formerly Xamarin.Android) bindings for Glide.GifDecoder + .NET, dotnet, xamarin, android, bindings, bumptech, glide, gifdecoder, artifact=@(Model.MavenGroupId):@(Model.Name) artifact_versioned=@(Model.MavenGroupId):@(Model.Name):@(Model.MavenArtifacts[0].MavenArtifactVersion) + break; + case "Xamarin.Android.Glide.DiskLruCache": + Xamarin.Android.Glide.DiskLruCache + .NET for Android (formerly Xamarin.Android) bindings for Glide.DiskLruCahce + .NET, dotnet, xamarin, android, bindings, bumptech, glide, disklrucache, artifact=@(Model.MavenGroupId):@(Model.Name) artifact_versioned=@(Model.MavenGroupId):@(Model.Name):@(Model.MavenArtifacts[0].MavenArtifactVersion) + break; + case "Xamarin.Android.Glide.RecyclerViewIntegration": + Xamarin.Android.Glide.RecyclerViewIntegration + .NET for Android (formerly Xamarin.Android) bindings for Glide.RecyclerViewIntegration + .NET, dotnet, xamarin, android, bindings, bumptech, glide, recyclerviewintegration, artifact=@(Model.MavenGroupId):@(Model.Name) artifact_versioned=@(Model.MavenGroupId):@(Model.Name):@(Model.MavenArtifacts[0].MavenArtifactVersion) + break; + default: + break; + } + @(Model.NuGetVersion) + } + + + + + + + + + + + + @foreach (var art in @Model.MavenArtifacts) + { + switch(@Model.NuGetPackageId) + { + case "Xamarin.Android.Glide": + case "Xamarin.Android.Glide.GifDecoder": + case "Xamarin.Android.Glide.RecyclerViewIntegration": + + + break; + case "Xamarin.Android.Glide.DiskLruCache": + + + break; + case "Xamarin.Android.Glide.Annotations": + + break; + default: + break; + } + + + } + + + + @foreach (var dep in @Model.NuGetDependencies) { + if (dep.IsProjectReference) { + + } else { + + } + } + + + + + + + + + + + + diff --git a/templates/gps/AssemblyInfo.cs b/templates/gps/AssemblyInfo.cs new file mode 100644 index 000000000..8b2612487 --- /dev/null +++ b/templates/gps/AssemblyInfo.cs @@ -0,0 +1,15 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using Android.App; + +[assembly: AssemblyMetadata ("BUILD_COMMIT", "{BUILD_COMMIT}")] +[assembly: AssemblyMetadata ("BUILD_NUMBER", "{BUILD_NUMBER}")] +[assembly: AssemblyMetadata ("BUILD_TIMESTAMP", "{BUILD_TIMESTAMP}")] + +#if !NETCOREAPP +[assembly: Android.LinkerSafe] +#endif + +[assembly: AssemblyMetadata ("IsTrimmable", "True")] + +[assembly: Android.App.UsesLibrary("org.apache.http.legacy", Required=false)] diff --git a/templates/gps/GooglePlayServices-Firebase.Solution.proj b/templates/gps/GooglePlayServices-Firebase.Solution.proj new file mode 100644 index 000000000..5adf0be72 --- /dev/null +++ b/templates/gps/GooglePlayServices-Firebase.Solution.proj @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/templates/gps/GooglePlayServicesDirectoryBuildRsp.cshtml b/templates/gps/GooglePlayServicesDirectoryBuildRsp.cshtml new file mode 100644 index 000000000..c5ac53001 --- /dev/null +++ b/templates/gps/GooglePlayServicesDirectoryBuildRsp.cshtml @@ -0,0 +1,46 @@ +@using System +@using System.IO +@using System.Linq +@using System.Xml.Linq + + @{ + string path_current_directory = System.IO.Directory.GetCurrentDirectory(); + string[] artifact_version_parts = Model.NuGetVersion + .Split(new string[] { "-" }, StringSplitOptions.None); + string artifact_version = null; + + string artifact_version_release = artifact_version_parts[0]; + string[] artifact_version_release_parts = artifact_version_release.Split(new string[] { "." }, StringSplitOptions.None); + artifact_version = string.Join(".", artifact_version_release_parts, 0, 3); + + if (artifact_version_parts.Length == 1) + { + // release + } + if (artifact_version_parts.Length == 2) + { + artifact_version += "-" + artifact_version_parts[1]; + } + } +# Directory.Build.rsp + +# https://learn.microsoft.com/en-us/visualstudio/msbuild/msbuild-command-line-reference +# https://learn.microsoft.com/en-us/visualstudio/msbuild/msbuild-response-files + +# artifact=@(Model.MavenGroupId):@(Model.Name) + +# artifact_versioned=@(Model.MavenGroupId)-@(Model.Name)-@(artifact_version) + +# nuget=@(Model.NuGetPackageId).@(Model.NuGetVersion) + +#-ConsoleLoggerParameters:Verbosity=Minimal;Summary +-clp:Verbosity=Minimal;Summary + +#-BinaryLogger:@(Model.MavenGroupId)-@(Model.Name)-@(artifact_version).binlog +-bl:@(path_current_directory)/output/@(Model.MavenGroupId)-@(Model.Name)-@(artifact_version).binlog + + +#-FileLoggerParameters:Verbosity=Diagnostic +#/flp:v=diag;logfile=@(path_current_directory)/output/@(Model.MavenGroupId):@(Model.Name):@(artifact_version).diag.log +-flp1:Verbosity=Diagnostic;errorsonly;logfile=@(path_current_directory)/output/@(Model.MavenGroupId):@(Model.Name):@(artifact_version).errors.diag.log +-flp2:Verbosity=Diagnostic;warningsonly;logfile=@(path_current_directory)/output/@(Model.MavenGroupId):@(Model.Name):@(artifact_version).warnings.diag.log \ No newline at end of file diff --git a/templates/gps/GooglePlayServicesNuGetReadMe.cshtml b/templates/gps/GooglePlayServicesNuGetReadMe.cshtml new file mode 100644 index 000000000..0c547c62f --- /dev/null +++ b/templates/gps/GooglePlayServicesNuGetReadMe.cshtml @@ -0,0 +1,131 @@ +@using System +@using System.IO +@using System.Linq +@using System.Xml.Linq + + @{ + string[] artifact_version_parts = Model.NuGetVersion + .Split(new string[] { "-" }, StringSplitOptions.None); + string artifact_version = null; + + string artifact_version_release = artifact_version_parts[0]; + string[] artifact_version_release_parts = artifact_version_release.Split(new string[] { "." }, StringSplitOptions.None); + artifact_version = string.Join(".", artifact_version_release_parts, 0, 3); + + if (artifact_version_parts.Length == 1) + { + // release + } + if (artifact_version_parts.Length == 2) + { + artifact_version += "-" + artifact_version_parts[1]; + } + } + +## About + + + +Google.Play.Services, Firebase and ML Kit (GPS-FB-MLKit) Bindings NuGet Package @(Model.NuGetPackageId) + +.NET Android (formerly Xamarin.Android) GPS-FB-MLKit bindings NuGet Package @(Model.NuGetPackageId) +for Maven artifact: + +artifact=@(Model.MavenGroupId):@(Model.Name) + +artifact_versioned=@(Model.MavenGroupId):@(Model.Name):@(artifact_version) + +nuget=@(Model.Name).@(Model.NuGetVersion) + +For more info please visit: + +https://github.com/xamarin/GooglePlayServicesComponents/ + + + +### What is Google.Play.Services, Firebase and ML Kit (GPS-FB-MLKit) + + +Google Play services powers a broad set of APIs and services on Android to help you build your app, +enhance privacy and security, engage users, and grow your business. + +SDKs powered by Google Play services are backward-compatible to Android 5.0, so you can reach over +3 billion active Android devices worldwide. + +Google Play services receive automatic updates—independent of OS, OEM, or app updates—so your users +receive new features and bug fixes more quickly. + +https://developers.google.com/android + + +Google Play services powers a broad set of APIs and services on Android to help you build your app, +enhance privacy and security, engage users, and grow your business. + + +https://developers.google.com/android/reference/packages + +Firebase is an app development platform that helps you build and grow apps and games users love. +Backed by Google and trusted by millions of businesses around the world. + + +Accelerate app development with fully managed backend infrastructure + +https://firebase.google.com/products-build + + +Release with confidence and monitor performance and stability + +https://firebase.google.com/products-release + + +Boost user engagement with rich analytics, A/B testing, and messaging campaigns + +https://firebase.google.com/products-engage + + +ML Kit brings Google’s machine learning expertise to mobile developers in a powerful and easy-to-use +package. Make your iOS and Android apps more engaging, personalized, and helpful with solutions that +are optimized to run on device. + +ML Kit’s processing happens on-device. This makes it fast and unlocks real-time use cases like processing +of camera input. It also works while offline and can be used for processing images and text that need to +remain on the device. + +https://developers.google.com/ml-kit + + +## Related Packages + + + +https://github.com/xamarin/GooglePlayServicesComponents/blob/main/docs/artifact-list.md + +https://github.com/xamarin/GooglePlayServicesComponents/blob/main/docs/artifact-list-with-versions.md + +https://www.nuget.org/packages?q=Xamarin.GooglePlayServices + +https://www.nuget.org/packages?q=Xamarin.Firebase + +https://www.nuget.org/packages?q=Xamarin.MLKit + +## Feedback & Contributing + + +https://github.com/xamarin/GooglePlayServicesComponents/issues + +https://discord.com/channels/732297728826277939/732297837953679412 + + +## Issues + +Please report any issues: + +https://github.com/xamarin/GooglePlayServicesComponents/issues + +MIT license \ No newline at end of file diff --git a/templates/gps/GooglePlayServicesPom.cshtml b/templates/gps/GooglePlayServicesPom.cshtml new file mode 100644 index 000000000..e42f52ef8 --- /dev/null +++ b/templates/gps/GooglePlayServicesPom.cshtml @@ -0,0 +1,44 @@ + +@using System.Linq +@using System.IO +@using System.Xml.Linq + + 4.0.0 + com.xamarin.android.bindings + @(Model.Name) + 1.0.0 + aar + Xamarin.Android Bindings for GooglePlayServicesFirebase - @(Model.Name) + Xamarin.Android Bindings for GooglePlayServicesFirebase - @(Model.Name) + https://github.com/xamarin/GooglePlayServicesComponents/ + 2019 + + + MIT License + https://github.com/xamarin/GooglePlayServicesComponents/blob/master/LICENSE.md + repo + + + + + Xamarin + + + + scm:git:https://github.com/xamarin/GooglePlayServicesComponents.git + https://github.com/xamarin/GooglePlayServicesComponents/ + + @if (@Model.MavenArtifacts.Count > 0) { + + @foreach (var art in @Model.MavenArtifacts) { + + @(art.MavenGroupId) + @(art.MavenArtifactId) + @(art.MavenArtifactVersion) + compile + + } + + } + \ No newline at end of file diff --git a/templates/gps/GooglePlayServicesProject.cshtml b/templates/gps/GooglePlayServicesProject.cshtml new file mode 100644 index 000000000..cfc79bcb0 --- /dev/null +++ b/templates/gps/GooglePlayServicesProject.cshtml @@ -0,0 +1,1280 @@ +@using System +@using System.Linq +@using System.Collections.Generic + +@{ + var targetFrameworkMoniker = "MonoAndroid12.0"; +} + + + + $(_DefaultTargetFrameworks) + true + @if (!string.IsNullOrEmpty(Model.AssemblyName)) { + @(Model.AssemblyName) + } else { + @(Model.NuGetPackageId) + } + + + @{ + string name_short = Model.NuGetPackageId.Replace("Xamarin.GooglePlayServices.", ""); + string key = Model.NuGetPackageId; + string project_url = "https://github.com/xamarin/GooglePlayServicesComponents"; + string license_url = "https://github.com/xamarin/GooglePlayServicesComponents/blob/master/LICENSE.md"; + string icon_url = "N/A"; + string summary = "N/A"; + string description = "N/A"; + + if (ArtifactsNugetPackageData.ContainsKey(key)) + { + var npd = ArtifactsNugetPackageData[key]; + project_url = npd.ProjectUrl; + license_url = npd.LicenseUrl; + icon_url = npd.IconUrl; + summary = npd.Summary; + description = npd.Description; + } + + string c = Model.Name; + + string[] artifact_version_parts = Model.NuGetVersion + .Substring(1, Model.NuGetVersion.Length - 1) + .Split(new string[] { "-" }, StringSplitOptions.None); + string artifact_version = null; + + string artifact_version_release = artifact_version_parts[0]; + string[] artifact_version_release_parts = artifact_version_release.Split(new string[] { "." }, StringSplitOptions.None); + artifact_version = string.Join(".", artifact_version_release_parts, 0, 3); + + if (artifact_version_parts.Length == 1) + { + // release + } + if (artifact_version_parts.Length == 2) + { + artifact_version += "-" + artifact_version_parts[1]; + } + } + + + @(Model.NuGetPackageId) + .NET for Android (formerly Xamarin.Android) Bindings for Google Play Services - @(name_short) + + .NET for Android (formerly Xamarin.Android) Bindings for Google Play Services - `@(name_short)` `@(Model.NuGetVersion)` + + + .NET for Android (formerly Xamarin.Android) bindings for Google Play Services library '@(Model.MavenGroupId):@(Model.Name)'. + + @(summary) + + .NET for Android Xamarin.Android Bindings for Google Play Services artifact=@(Model.MavenGroupId):@(Model.Name):@(artifact_version) artifact_versioned=@(Model.MavenGroupId):@(Model.Name):@(artifact_version) + Microsoft + Microsoft + © Microsoft Corporation. All rights reserved. + @(project_url) + @(license_url) + @(icon_url) + @(Model.NuGetVersion) + true + + + $(AllowedOutputExtensionsInPackageBuildOutputFolder);.pdb + false + + @switch (@Model.NuGetPackageId) + { + case "Xamarin.Google.MLKit.ObjectDetection": + case "Xamarin.Google.MLKit.ObjectDetection.Custom": + case "Xamarin.Google.MLKit.PoseDetection": + case "Xamarin.Google.MLKit.PoseDetection.Accurate": + + false + break; + } + + + + + class-parse + XAJavaInterop1 + + + + + + 0618;0109;0114;0628;0108;0809;NU1605;NU1107 + + + + $(NoWarn);BG8A04;BG8A00 +@if (Model.AllowPrereleaseDependencies) { + + $(NoWarn);NU5104 +} + + + + + + + + + + + @foreach (var art in @Model.MavenArtifacts) + { + + } + @if (@Model.NuGetPackageId == "Xamarin.GooglePlayServices.AdsLite") + { + + } + + + + @foreach (var art in @Model.MavenArtifacts) + { + + + } + + + + <_AndroidDocumentationPath Include="..\..\externals\paramnames.txt" Condition="Exists('..\..\externals\paramnames.txt')" /> + @foreach (var art in @Model.MavenArtifacts) { + <_AndroidDocumentationPath Include="..\..\externals\@(art.MavenGroupId)\@(art.MavenArtifactId)-paramnames.txt" Condition="Exists('..\..\externals\@(art.MavenGroupId)\@(art.MavenArtifactId)-paramnames.txt')" /> + } + + + + + + + + @if (@Model.NuGetPackageId == "Xamarin.GooglePlayServices.Basement") + { + + + + } + + @if (@Model.MavenArtifacts.Count > 0) { + + @foreach (var art in @Model.MavenArtifacts) { + if (art.ProguardFile != null) { + + } + } + + } + + + + + + + + + + Additions/%(RecursiveDir)/%(Filename)%(Extension) + + + + + + Transforms/Metadata.Common.xml + + + Transforms/%(RecursiveDir)/%(Filename)%(Extension) + + + Transforms/%(RecursiveDir)/%(Filename)%(Extension) + + + + + @foreach (var art in @Model.MavenArtifacts) { + if (1==2 && art.MavenArtifactPackaging == "aar") { + + } + } + + + + @if (@Model.MavenArtifacts.Count > 0) { + + @foreach (var art in @Model.MavenArtifacts) { + if (art.MavenArtifactPackaging == "aar") { + if ((System.Environment.GetEnvironmentVariable("LOCAL_TEST_PKG") ?? "") == "true") { + + + } else { + + + + } + } else { + + } + } + + @if (@Model.NuGetPackageId == "Xamarin.Google.Android.Play.Core") + { + + } + @if (@Model.NuGetPackageId == "Xamarin.Google.Android.Play.Asset.Delivery") + { + + } + @if (@Model.NuGetPackageId == "Xamarin.Google.Android.Play.Feature.Delivery") + { + + } + + } + + + + + + + @foreach (var dep in @Model.NuGetDependencies) { + if (dep.IsProjectReference) { + + } + } + + + + + + @foreach (var dep in @Model.NuGetDependencies) { + if (!dep.IsProjectReference) { + + } + } + @if (@Model.NuGetPackageId == "Xamarin.GooglePlayServices.SafetyNet") + { + + + } + @if (@Model.NuGetPackageId == "Xamarin.Firebase.Firestore") + { + + } + @if (@Model.NuGetPackageId == "Xamarin.Firebase.Crashlytics") + { + + } + @if (@Model.NuGetPackageId == "Xamarin.Firebase.Measurement.Connector.Impl") + { + + + } + @if + ( + @Model.NuGetPackageId == "Xamarin.Google.MLKit.DigitalInk.Recognition" + || + @Model.NuGetPackageId == "Xamarin.Firebase.Ads" + || + @Model.NuGetPackageId == "Xamarin.Firebase.Ads.Lite" + || + @Model.NuGetPackageId == "Xamarin.GooglePlayServices.Ads" + || + @Model.NuGetPackageId == "Xamarin.GooglePlayServices.Ads.Lite" + ) + { + + } + @if + ( + @Model.NuGetPackageId == "Xamarin.Google.MLKit.DigitalInk.Recognition" + || + @Model.NuGetPackageId == "Xamarin.GooglePlayServices.Ads" + || + @Model.NuGetPackageId == "Xamarin.Firebase.Ads.Lite" + || + @Model.NuGetPackageId == "Xamarin.GooglePlayServices.Ads.Lite" + ) + { + + } + + + + + + + + @* + + *@ + + + + + + + + +@functions +{ + public class ProjectCustomMetaData + { + public string Namespace + { + get; + set; + } + } + + public class NugetPackageCustomMetaData + { + public string Title + { + get; + set; + } + public string Version + { + get; + set; + } + public string Summary + { + get; + set; + } + public string Description + { + get; + set; + } + public string ProjectUrl + { + get; + set; + } + public string LicenseUrl + { + get; + set; + } + public string IconUrl + { + get; + set; + } + + } + + public Dictionary ArtifactsNugetPackageData = new Dictionary() + { + { + "Xamarin.GooglePlayServices.Ads", + new NugetPackageCustomMetaData() + { + Description = @"The Google Mobile Ads SDK is the latest generation in Google mobile advertising, featuring refined ad formats and streamlined APIs for access to mobile ad networks and advertising solutions. The SDK enables mobile app developers to maximize their monetization in native mobile apps.", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865354", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-ads_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Ads.Base", + new NugetPackageCustomMetaData() + { + Description = @"The Google Mobile Ads SDK is the latest generation in Google mobile advertising, featuring refined ad formats and streamlined APIs for access to mobile ad networks and advertising solutions. The SDK enables mobile app developers to maximize their monetization in native mobile apps.", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-ads-base_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Ads.Identifier", + new NugetPackageCustomMetaData() + { + Description = @"The Google Mobile Ads SDK is the latest generation in Google mobile advertising, featuring refined ad formats and streamlined APIs for access to mobile ad networks and advertising solutions. The SDK enables mobile app developers to maximize their monetization in native mobile apps.", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-ads-base_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Ads.Lite", + new NugetPackageCustomMetaData() + { + Description = @"The Google Mobile Ads SDK is the latest generation in Google mobile advertising, featuring refined ad formats and streamlined APIs for access to mobile ad networks and advertising solutions. The SDK enables mobile app developers to maximize their monetization in native mobile apps.", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-ads-lite_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Analytics", + new NugetPackageCustomMetaData() + { + Description = @"The Google Analytics SDK for Android makes it easy for developers to collect user engagement data form their apps.", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865360", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-analytics_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Analytics.Impl", + new NugetPackageCustomMetaData() + { + Description = @"The Google Analytics SDK for Android makes it easy for developers to collect user engagement data form their apps.", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-analytics-impl_128x128.png", + } + }, + /* + { + "Xamarin.GooglePlayServices.AppIndexing", + new NugetPackageCustomMetaData() + { + Description = @"NOTE: This is package only contains type forwarders to the types which now exist in Xamarin.Firebase.AppIndexing and is only available for backwards compatibility purposes.", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-appindexing_128x128.png", + } + }, + */ + { + "Xamarin.GooglePlayServices.AppInvite", + new NugetPackageCustomMetaData() + { + Description = @"App Invites provide a powerful way to organically grow your app, user-to-user. Your users recommend your app to their friends using personalized, contextual invitations powered by Google. App Invites provide a great onboarding experience to your new users. Google optimizes your app install rates by reducing friction and using relevant context at every step of the user invitation flow.", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-appinvite_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Audience", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-audience_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Auth", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865364", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-auth_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Auth.Api.Phone", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-auth-phone-api_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Auth.Base", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-auth-base_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Awareness", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865368", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-awareness_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Base", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-base_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Basement", + new NugetPackageCustomMetaData() + { + Summary = " - do not install directly", + Description = @"Instead of installing this package directly, install the specific package(s) you need.", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-basement_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Cast", + new NugetPackageCustomMetaData() + { + Description = @"The Google Cast SDK lets you extend your Android app to control a TV or sound system. It supports many media formats, protocols and codecs to ease integration. Continuous playback is enabled by autoplay and queuing APIs and Game Manager APIs make Cast enabled gaming a breeze.", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865372", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-cast_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Cast.Framework", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-cast-framework_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Clearcut", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865372", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-clearcut_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Drive", + new NugetPackageCustomMetaData() + { + Description = @"With Drive now part of Android, integrating Drive services into your Android application has never been easier. With sync and offline support, we make it easier for you to focus on writing great apps. Simply read and write files and we’ll handle the details.", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865376", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-drive_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Fido", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-fitness_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Fitness", + new NugetPackageCustomMetaData() + { + Description = @"Google Fit is an open platform that lets users control their fitness data, developers build smarter apps, and manufacturers focus on creating amazing devices.", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865380", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-fitness_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Flags", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-flags_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Games", + new NugetPackageCustomMetaData() + { + Description = @"The Play Games SDK provides cross-platform Google Play games services that lets you easily integrate popular gaming features such as achievements, leaderboards, Saved Games, and real-time multiplayer in your tablet and mobile games.", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865384", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-games_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Gass", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-gass_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Gcm", + new NugetPackageCustomMetaData() + { + Description = @" + Google Cloud Messaging (GCM) is a free service that enables developers to send messages between servers and client apps. This includes downstream messages from servers to client apps, and upstream messages from client apps to servers. + + For example, a lightweight downstream message could inform a client app that there is new data to be fetched from the server, as in the case of a ''new email' notification. For use cases such as instant messaging, a GCM message can transfer up to 4kb of payload to the client app. The GCM service handles all aspects of queueing of messages and delivery to and from the target client app. + ", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-gcm_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Identity", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-identity_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Iid", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-iid_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.InstantApps", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865388", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-instantapps_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Location", + new NugetPackageCustomMetaData() + { + Description = @"One of the unique features of mobile applications is location awareness. Mobile users take their devices with them everywhere, and adding location awareness to your app offers users a more contextual experience. The location APIs available in Google Play services facilitate adding location awareness to your app with automated location tracking, geofencing, and activity recognition.", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865326", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-location_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Maps", + new NugetPackageCustomMetaData() + { + Description = @"With the Google Maps Android API, you can add maps based on Google Maps data to your application. The API automatically handles access to Google Maps servers, data downloading, map display, and response to map gestures. You can also use API calls to add markers, polygons, and overlays to a basic map, and to change the user's view of a particular map area. These objects provide additional information for map locations, and allow user interaction with the map.", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865333", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-maps_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Measurement.Base", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-measurement-base_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Measurement.Api", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-measurement-base_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Measurement.Sdk.Api", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-measurement-base_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Nearby", + new NugetPackageCustomMetaData() + { + Description = @"Nearby exposes simple publish and subscribe methods that rely on proximity. Your app publishes a payload that can be received by nearby subscribers. On top of this foundation, you can build a variety of user experiences to share messages and create real-time connections between nearby devices.", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865337", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-nearby_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Oss.Licenses", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-oss-licenses_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Panorama", + new NugetPackageCustomMetaData() + { + Description = @"The Panorama API allows you to include a Panorama Viewer in your own applications.", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865341", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-panorama_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Phenotype", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-phenotype_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Places", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865345", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-places_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Places.PlaceReport", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-places-placereport_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Plus", + new NugetPackageCustomMetaData() + { + Description = @"Create a more engaging experience and connect with more users by integrating social into your Android app.", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865349", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-plus_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.SafetyNet", + new NugetPackageCustomMetaData() + { + Description = @"SafetyNet provides services for analyzing the configuration of a particular device, to make sure that apps function properly on a particular device and that users have a great experience.", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865353", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-safetynet_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Stats", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-stats_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.TagManager", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865357", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-tagmanager_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.TagManager.Api", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-tagmanager-api_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.TagManager.V4.Impl", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-tagmanager-api_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Tasks", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-tasks_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Vision", + new NugetPackageCustomMetaData() + { + Description = @" + The Face API finds human faces in photos, videos, or live streams. It also finds and tracks positions of facial landmarks such as the eyes, nose, and mouth. + + The API also provides information about the state of facial features -- are the subject's eyes open? Are they smiling? With these technologies, you can edit photos and video, enhance video feeds with effects and decorations, create hands-free controls for games and apps, or react when a person winks or smiles. + + The Barcode Scanner API detects barcodes in real time in any orientation. You can also detect and parse several barcodes in different formats at the same time. + ", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865361", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-vision_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Vision.Common", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-vision-common_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Vision.ImageLabel", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-vision-image-label_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Wallet", + new NugetPackageCustomMetaData() + { + Description = @"Android Pay enables simple and secure purchases of physical goods and services in Android apps, and eliminates the need to manually enter payment and shipping information. Integrate Android Pay to reach millions of signed-in Android users and drive higher conversions.", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865365", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-wallet_128x128.png", + } + }, + { + "Xamarin.GooglePlayServices.Wearable", + new NugetPackageCustomMetaData() + { + Description = @"You may also want to install the Xamarin.Android.Wear package if you are installing this.", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865369", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-wearable_128x128.png", + } + }, + + + { + "Xamarin.Firebase.Abt", + new NugetPackageCustomMetaData() + { + Description = @"You should not install this package directly", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865436", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-abt_128x128.png", + } + }, + { + "Xamarin.Firebase.Ads", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865367", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-ads_128x128.png", + } + }, + { + "Xamarin.Firebase.Ads.Lite", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865436", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-ads-lite_128x128.png", + } + }, + { + "Xamarin.Firebase.Analytics", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865371", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-analytics_128x128.png", + } + }, + { + "Xamarin.Firebase.Analytics.Impl", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865436", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-analytics-impl_128x128.png", + } + }, + { + "Xamarin.Firebase.AppIndexing", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865375", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-appindexing_128x128.png", + } + }, + { + "Xamarin.Firebase.Auth", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865379", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-auth_128x128.png", + } + }, + { + "Xamarin.Firebase.Auth.Impl", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865436", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-auth-interop_128x128.png", + } + }, + { + "Xamarin.Firebase.Auth.Interop", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865436", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-auth-interop_128x128.png", + } + }, + { + "Xamarin.Firebase.Common", + new NugetPackageCustomMetaData() + { + Description = @"You should not install this package directly", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865436", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-common_128x128.png", + } + }, + { + "Xamarin.Firebase.Config", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865383", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-config_128x128.png", + } + }, + { + "Xamarin.Firebase.Core", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865436", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-core_128x128.png", + } + }, + { + "Xamarin.Firebase.Crash", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865387", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-crash_128x128.png", + } + }, + { + "Xamarin.Firebase.Database", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865329", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-database_128x128.png", + } + }, + { + "Xamarin.Firebase.Database.Collection", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865436", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-database-collection_128x128.png", + } + }, + { + "Xamarin.Firebase.Database.Connection", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865436", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-database-connection_128x128.png", + } + }, + { + "Xamarin.Firebase.Dynamic.Links", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865436", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-dynamic-links_128x128.png", + } + }, + { + "Xamarin.Firebase.Firestore", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865340", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-firestore_128x128.png", + } + }, + { + "Xamarin.Firebase.Functions", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865436", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-functions_128x128.png", + } + }, + { + "Xamarin.Firebase.Iid", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865332", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-iid_128x128.png", + } + }, + { + "Xamarin.Firebase.Iid.Interop", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865436", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-iid-interop_128x128.png", + } + }, + { + "Xamarin.Firebase.Invites", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865436", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-invites_128x128.png", + } + }, + { + "Xamarin.Firebase.Measurement.Connector", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865436", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-measurement-connector_128x128.png", + } + }, + { + "Xamarin.Firebase.Measurement.Connector.Impl", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865436", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-measurement-connector-impl_128x128.png", + } + }, + { + "Xamarin.Firebase.Messaging", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865344", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-messaging_128x128.png", + } + }, + { + "Xamarin.Firebase.ML.Common", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865436", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-ml-common_128x128.png", + } + }, + { + "Xamarin.Firebase.ML.Model.Interpreter", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865436", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-ml-model-interpreter_128x128.png", + } + }, + { + "Xamarin.Firebase.ML.Vision", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865436", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-ml-vision_128x128.png", + } + }, + { + "Xamarin.Firebase.ML.Vision.Image.Label.Model", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865436", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-ml-vision-image-label-model_128x128.png", + } + }, + { + "Xamarin.Firebase.Perf", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865348", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-perf_128x128.png", + } + }, + { + "Xamarin.Firebase.Storage", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865351", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-storage_128x128.png", + } + }, + { + "Xamarin.Firebase.Storage.Common", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865436", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865377", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/firebase-storage-common_128x128.png", + } + }, + { + "Xamarin.Firebase.ProtoliteWellKnownTypes", + new NugetPackageCustomMetaData() + { + Description = @"", + ProjectUrl = "https://go.microsoft.com/fwlink/?linkid=865435", + LicenseUrl = "https://go.microsoft.com/fwlink/?linkid=865373", + IconUrl = "https://raw.githubusercontent.com/xamarin/GooglePlayServicesComponents/master/icons/play-services-protolitewellknowntypes_128x128.png", + } + }, + }; +} diff --git a/templates/gps/GooglePlayServicesSolutionFilter.cshtml b/templates/gps/GooglePlayServicesSolutionFilter.cshtml new file mode 100644 index 000000000..8c9781c28 --- /dev/null +++ b/templates/gps/GooglePlayServicesSolutionFilter.cshtml @@ -0,0 +1,16 @@ +@using System.Linq +{ + "solution": { + "path": "..\\GooglePlayServices.sln", + "projects": [ +@foreach (var dep in @Model.NuGetDependencies) +{ + if (dep.IsProjectReference) + { + "@($"{dep.MavenArtifact.MavenGroupId}.{dep.MavenArtifact.MavenArtifactId}\\\\{dep.MavenArtifact.MavenGroupId}.{dep.MavenArtifact.MavenArtifactId}.csproj")", + } +} +"@($"{Model.MavenGroupId}.{Model.Name}\\\\{Model.MavenGroupId}.{Model.Name}.csproj")" + ] + } +} diff --git a/templates/gps/GooglePlayServicesTargets.cshtml b/templates/gps/GooglePlayServicesTargets.cshtml new file mode 100644 index 000000000..9d3b14fd9 --- /dev/null +++ b/templates/gps/GooglePlayServicesTargets.cshtml @@ -0,0 +1,98 @@ +@using System.Linq +@using System.IO +@using System.Xml.Linq + +@functions { + public static void RemoveXmlns(XElement e) + { + e.Name = e.Name.LocalName; + + foreach (var node in e.DescendantNodes()) + { + var n = node as XElement; + if (n != null) + RemoveXmlns(n); + } + } +} + + + manifestmerger.jar + + + @if (@Model.MavenArtifacts.Count > 0) { + + @foreach (var art in @Model.MavenArtifacts) { + if (art.ProguardFile != null) { + + } + } + + + manifestmerger.jar + + } + + + manifestmerger.jar + + + AndroidX.Fragment.App.Fragment + + + @foreach (var art in @Model.MavenArtifacts) { + if (art.MavenArtifactPackaging == "aar") { + var friendlyArtifactId = art.MavenArtifactId.Replace("-", ""); + var friendlyVersion = art.MavenArtifactVersion.Replace(".", "_").Replace("-", "_"); + var friendlyId = friendlyArtifactId + "_" + friendlyVersion; + var url = "https://dl.google.com/dl/android/maven2/" + art.MavenGroupId.Replace(".", "/") + "/" + art.MavenArtifactId + "/" + art.MavenArtifactVersion + "/" + art.MavenArtifactId + "-" + art.MavenArtifactVersion + ".aar"; + var xbdKey = friendlyArtifactId + "-" + art.MavenArtifactVersion; + var xbdAarFile = friendlyArtifactId + "-" + art.MavenArtifactVersion + ".aar"; + var xbdAarPath = xbdKey + "\\" + xbdKey + ".aar"; + var xbdSha256 = art.MavenArtifactSha256; + + + + + + + @(url) + @(xbdAarFile) + Uncompressed + @(xbdSha256) + + + + + + + @* + + *@ + + + + } + } + +@{ + string mergeTargets = Path.Combine(Model.Config.BasePath, "source", Model.MavenGroupId, Model.Name, "merge.targets"); + if (File.Exists(mergeTargets)) { + XDocument xmlTargets = XDocument.Load(mergeTargets); + XNamespace nsChild = xmlTargets.Root.Name.Namespace; + @Raw("\r\n\r\n"); + foreach (var xelem in xmlTargets.Element (nsChild + "Project").Elements ()) { + RemoveXmlns(xelem); + @Raw("\r\n" + xelem.ToString()); + } + @Raw("\r\n\r\n"); + } +} + diff --git a/templates/gps/Metadata.Common.xml b/templates/gps/Metadata.Common.xml new file mode 100644 index 000000000..6968b08a0 --- /dev/null +++ b/templates/gps/Metadata.Common.xml @@ -0,0 +1,42 @@ + + + + Java.Lang.Object + Java.Lang.Object[] + + + + + + java.lang.Object + java.lang.Object + + + + + + + java.lang.Object + + + + + + + + + + + + + + java.lang.Object + java.lang.Object + + + + + + + + \ No newline at end of file diff --git a/templates/licenses/bsd-2-clause.txt b/templates/licenses/bsd-2-clause.txt new file mode 100644 index 000000000..5e9ca6dbf --- /dev/null +++ b/templates/licenses/bsd-2-clause.txt @@ -0,0 +1,20 @@ +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this +list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, +this list of conditions and the following disclaimer in the documentation +and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. \ No newline at end of file diff --git a/templates/licenses/google-maps.txt b/templates/licenses/google-maps.txt new file mode 100644 index 000000000..5fc16171b --- /dev/null +++ b/templates/licenses/google-maps.txt @@ -0,0 +1,3 @@ +Google Maps Platform Terms of Service + +For latest Google Maps Platform Terms of Service, see https://cloud.google.com/maps-platform/terms/. \ No newline at end of file diff --git a/templates/licenses/mlkit.txt b/templates/licenses/mlkit.txt new file mode 100644 index 000000000..db4b3abd3 --- /dev/null +++ b/templates/licenses/mlkit.txt @@ -0,0 +1,3 @@ +ML KIT Terms of Service + +For latest ML Kit Terms of Service, see https://developers.google.com/ml-kit/terms. \ No newline at end of file diff --git a/templates/licenses/play-core.txt b/templates/licenses/play-core.txt new file mode 100644 index 000000000..e509319e2 --- /dev/null +++ b/templates/licenses/play-core.txt @@ -0,0 +1,3 @@ +Play Core Software Development Kit Terms of Service + +For latest Play Core Software Development Kit Terms of Service, see https://developer.android.com/guide/playcore#license. \ No newline at end of file diff --git a/templates/licenses/play-integrity.txt b/templates/licenses/play-integrity.txt new file mode 100644 index 000000000..2b0d4d191 --- /dev/null +++ b/templates/licenses/play-integrity.txt @@ -0,0 +1,3 @@ +Play Integrity API Terms of Service + +For latest Play Integrity API Terms of Service, see https://developer.android.com/google/play/integrity/terms#tos. \ No newline at end of file diff --git a/tests/allpackages/TestAllIndividualPackages.cs b/tests/allpackages/TestAllIndividualPackages.cs index 66e00e7dd..19b00d15e 100644 --- a/tests/allpackages/TestAllIndividualPackages.cs +++ b/tests/allpackages/TestAllIndividualPackages.cs @@ -19,7 +19,65 @@ public class TestAllIndividualPackages // other packages, which causes a conflict when building the project. static List ignored_packages = [ "Xamarin.Google.Guava.ListenableFuture", - "Xamarin.Protobuf.Lite" + "Xamarin.Protobuf.Lite", + "Xamarin.GoogleAndroid.Libraries.Places.Compat", + + // PlayServices packages + // - Duplicate managed types (due to Games.V2) + "Xamarin.GooglePlayServices.Games", + + // - Duplicate Java types + "Xamarin.GooglePlayServices.Ads.Base", + "Xamarin.GooglePlayServices.Ads.Lite", + "Xamarin.GooglePlayServices.Gass", + "Xamarin.GooglePlayServices.Measurement.Base", + "Xamarin.GooglePlayServices.Measurement.Sdk", + + // Firebase packages + // - Duplicate managed types (due to Xamarin.AndroidX.DataStore.Core.Android and Xamarin.AndroidX.DataStore.Core.Jvm) + "Xamarin.Firebase.Crashlytics", + "Xamarin.Firebase.Crashlytics.Ktx", + "Xamarin.Firebase.Crashlytics.NDK", + "Xamarin.Firebase.Perf", + "Xamarin.Firebase.Perf.Ktx", + "Xamarin.Firebase.Sessions", + + // - Duplicate Java types + "Xamarin.Firebase.Analytics", + "Xamarin.Firebase.Analytics.Impl", + "Xamarin.Firebase.Analytics.Ktx", + "Xamarin.Firebase.AppIndexing", + "Xamarin.Firebase.Firestore", + "Xamarin.Firebase.Firestore.Ktx", + "Xamarin.Firebase.InAppMessaging", + "Xamarin.Firebase.InAppMessaging.Display", + "Xamarin.Firebase.InAppMessaging.Display.Ktx", + "Xamarin.Firebase.InAppMessaging.Ktx", + "Xamarin.Firebase.ML.Vision", + "Xamarin.Firebase.ML.Vision.AutoML", + "Xamarin.Firebase.ML.Vision.BarCode.Model", + "Xamarin.Firebase.ML.Vision.Face.Model", + "Xamarin.Firebase.ML.Vision.Image.Label.Model", + "Xamarin.Firebase.ML.Vision.Internal.Vkp", + "Xamarin.Firebase.ML.Vision.Object.Detection.Model", + "Xamarin.Firebase.ProtoliteWellKnownTypes", + + // MLKit packages + // - Duplicate Java types + "Xamarin.Google.MLKit.FaceDetection", + + // Google Play packages + // - Split into separate packages, these older ones cause duplicate bound types + "Xamarin.Google.Android.Play.Core", + "Xamarin.Google.Android.Play.Core.Common", + "Xamarin.Google.Android.Play.Core.Ktx", + + // - Causes Kotlin.Stdlib version conflicts + "Xamarin.Google.Android.Play.App.Update.Ktx", + "Xamarin.Google.Android.Play.Asset.Delivery.Ktx", + "Xamarin.Google.Android.Play.Core.Ktx", + "Xamarin.Google.Android.Play.Feature.Delivery.Ktx", + "Xamarin.Google.Android.Play.Review.Ktx", ]; static TestAllIndividualPackages () @@ -60,16 +118,26 @@ static TestAllIndividualPackages () [Test] [Category ("Android")] public Task TestAndroidDotNetAllPackages () - => TestAllPackages ("android"); + => TestAllPackages ("android", false); + + [Test] + [Category ("Android")] + public Task TestAndroidDotNetAllGPSPackages () + => TestAllPackages ("android", true); [Test] [Category ("MAUI")] public Task TestMauiAllPackages () - => TestAllPackages ("maui"); + => TestAllPackages ("maui", false); + + [Test] + [Category ("MAUI")] + public Task TestMauiAllGPSPackages () + => TestAllPackages ("maui", true); - async Task TestAllPackages (string template) + async Task TestAllPackages (string template, bool isGps) { - var case_dir = Path.Combine (base_dir, test_dir, template, $"AllPackagesTest"); + var case_dir = Path.Combine (base_dir, test_dir, template, $"AllPackagesTest{(isGps ? "-GPS" : "")}"); // Test the package try { @@ -99,7 +167,7 @@ async Task TestAllPackages (string template) ReplaceInFile (proj_file, $";{net_version}-windows10.0.19041.0", ""); // Get all packages to test - var packages = GetAllPackages (); + var packages = GetAllPackages (isGps); // Add the package AddPackagesToProjectFile (proj_file, packages.ToArray ()); @@ -115,12 +183,17 @@ async Task TestAllPackages (string template) } } - static IEnumerable GetAllPackages () + static IEnumerable GetAllPackages (bool isGps) { var config_file = Path.Combine (base_dir, "config.json"); var config = BinderatorConfigFileParser.ParseConfigurationFile (config_file).Result; - return config.FirstOrDefault ()?.Artifacts?.Where (a => !a.DependencyOnly) ?? Enumerable.Empty (); + var packages = config.FirstOrDefault ()?.Artifacts?.Where (a => !a.DependencyOnly) ?? []; + + if (isGps) + return packages.Where (p => p.TemplateSet == "gps"); + + return packages.Where (p => p.TemplateSet != "gps"); } static void ReplaceInFile (string filename, string oldValue, string newValue) diff --git a/tests/common/NuGet.config b/tests/common/NuGet.config index 370eb6862..8f6cc75ba 100644 --- a/tests/common/NuGet.config +++ b/tests/common/NuGet.config @@ -34,15 +34,10 @@ - + + - - - - - - diff --git a/util/Xamarin.AndroidBinderator/Xamarin.AndroidBinderator.Tool/Commands/BinderateCommand.cs b/util/Xamarin.AndroidBinderator/Xamarin.AndroidBinderator.Tool/Commands/BinderateCommand.cs index 5ee206e36..40771d5be 100644 --- a/util/Xamarin.AndroidBinderator/Xamarin.AndroidBinderator.Tool/Commands/BinderateCommand.cs +++ b/util/Xamarin.AndroidBinderator/Xamarin.AndroidBinderator.Tool/Commands/BinderateCommand.cs @@ -30,7 +30,7 @@ public static Command Build () return binderate_command; } - public static async Task RunBinderateVerb (string [] configFiles, string? basePath) + public static async Task RunBinderateVerb (string [] configFiles, string? basePath) { Console.WriteLine ("Arguments:"); @@ -67,6 +67,10 @@ public static async Task RunBinderateVerb (string [] configFiles, string? basePa } Trace.WriteLine (sb.ToString ()); + + return 1; } + + return 0; } } diff --git a/util/Xamarin.AndroidBinderator/Xamarin.AndroidBinderator.Tool/Program.cs b/util/Xamarin.AndroidBinderator/Xamarin.AndroidBinderator.Tool/Program.cs index 4f7ec3c4a..4e352753b 100644 --- a/util/Xamarin.AndroidBinderator/Xamarin.AndroidBinderator.Tool/Program.cs +++ b/util/Xamarin.AndroidBinderator/Xamarin.AndroidBinderator.Tool/Program.cs @@ -8,7 +8,7 @@ namespace Xamarin.AndroidBinderator.Tool; class Program { - static async Task Main (params string [] args) + static async Task Main (params string [] args) { Trace.Listeners.Add (new TextWriterTraceListener (Console.Out)); @@ -23,9 +23,9 @@ static async Task Main (params string [] args) // If not using new command verbs, fallback to old legacy command line handling if (args.Any () && !root_command.Subcommands.Select (c => c.Name).Any (c => c == args [0])) { await LegacyCommandLine.Run (args); - return; + return 0; } - await root_command.InvokeAsync (args); + return await root_command.InvokeAsync (args); } } diff --git a/util/Xamarin.AndroidBinderator/Xamarin.AndroidBinderator/ConfigUpdater.cs b/util/Xamarin.AndroidBinderator/Xamarin.AndroidBinderator/ConfigUpdater.cs index 939b4beda..a7e16ad2b 100644 --- a/util/Xamarin.AndroidBinderator/Xamarin.AndroidBinderator/ConfigUpdater.cs +++ b/util/Xamarin.AndroidBinderator/Xamarin.AndroidBinderator/ConfigUpdater.cs @@ -28,7 +28,7 @@ public static async Task Update (BindingConfig config, List dependencyCo if (HasUpdate (art, a)) { var new_version = GetLatestVersion (a)?.ToString (); - var prefix = art.NugetVersion?.StartsWith ("1" + art.Version + ".") == true ? "1" : string.Empty; + var prefix = GetThreePartVersion (art.NugetVersion!) == "1" + GetThreePartVersion (art.Version) ? "1" : string.Empty; art.LatestVersion = new_version ?? string.Empty; art.LatestNuGetVersion = prefix + new_version; @@ -125,6 +125,20 @@ static SemanticVersion GetVersion (string s) return SemanticVersion.Parse (version + tag); } + static string GetThreePartVersion (string version) + { + // Change 121.0.0.0-beta1 to 121.0.0 + var hyphen = version.IndexOf ('-'); + version = hyphen >= 0 ? version.Substring (0, hyphen) : version; + + var parts = version.Split ('.'); + + if (parts.Count () < 3) + return version; + + return $"{parts [0]}.{parts [1]}.{parts [2]}"; + } + static async Task> GetExternalDependencies (List externalFiles) { var list = new List ();