diff --git a/admob/app/build.gradle b/admob/app/build.gradle index 499b94660..2534ad1e4 100644 --- a/admob/app/build.gradle +++ b/admob/app/build.gradle @@ -25,17 +25,17 @@ dependencies { implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'androidx.browser:browser:1.0.0' implementation 'androidx.appcompat:appcompat:1.4.1' - implementation "com.google.firebase:firebase-ads:20.6.0" - implementation "androidx.constraintlayout:constraintlayout:2.1.3" + implementation "com.google.firebase:firebase-ads:21.0.0" + implementation "androidx.constraintlayout:constraintlayout:2.1.4" implementation "androidx.multidex:multidex:2.0.1" // [START gradle_play_config] - implementation 'com.google.android.gms:play-services-ads:20.6.0' + implementation 'com.google.android.gms:play-services-ads:21.0.0' // [END gradle_play_config] // For an optimal experience using AdMob, add the Firebase SDK // for Google Analytics. This is recommended, but not required. - implementation 'com.google.firebase:firebase-analytics:20.1.2' + implementation 'com.google.firebase:firebase-analytics:21.0.0' } apply plugin: 'com.google.gms.google-services' diff --git a/admob/build.gradle b/admob/build.gradle index 27d603dd2..e662653e6 100644 --- a/admob/build.gradle +++ b/admob/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' + classpath 'com.android.tools.build:gradle:7.2.1' classpath 'com.google.gms:google-services:4.3.10' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" } diff --git a/analytics/app/build.gradle b/analytics/app/build.gradle index 2bd259406..bc50b2892 100644 --- a/analytics/app/build.gradle +++ b/analytics/app/build.gradle @@ -11,6 +11,7 @@ android { versionCode 1 versionName "1.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + multiDexEnabled true } buildTypes { release { @@ -29,11 +30,11 @@ repositories { dependencies { implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'androidx.appcompat:appcompat:1.4.1' - implementation "com.google.firebase:firebase-analytics:20.1.2" - implementation "com.google.firebase:firebase-analytics-ktx:20.1.2" + implementation "com.google.firebase:firebase-analytics:21.0.0" + implementation "com.google.firebase:firebase-analytics-ktx:21.0.0" // Ironsource and AppLovin libraries used for ad_impression snippets implementation 'com.applovin:applovin-sdk:+' - implementation 'com.ironsource.sdk:mediationsdk:7.2.1.1' + implementation 'com.ironsource.sdk:mediationsdk:7.2.2' } diff --git a/analytics/build.gradle b/analytics/build.gradle index b68f72227..910d36293 100644 --- a/analytics/build.gradle +++ b/analytics/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' + classpath 'com.android.tools.build:gradle:7.2.1' classpath 'com.google.gms:google-services:4.3.10' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" } diff --git a/appcheck/app/build.gradle b/appcheck/app/build.gradle index 0edb7e133..d0d6aa1c0 100644 --- a/appcheck/app/build.gradle +++ b/appcheck/app/build.gradle @@ -29,12 +29,12 @@ android { dependencies { implementation 'androidx.appcompat:appcompat:1.4.1' - implementation 'com.google.android.material:material:1.5.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + implementation 'com.google.android.material:material:1.6.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' - implementation 'com.google.firebase:firebase-appcheck:16.0.0-beta02' - implementation 'com.google.firebase:firebase-appcheck-debug:16.0.0-beta02' - implementation 'com.google.firebase:firebase-appcheck-safetynet:16.0.0-beta02' + implementation 'com.google.firebase:firebase-appcheck:16.0.0' + implementation 'com.google.firebase:firebase-appcheck-debug:16.0.0' + implementation 'com.google.firebase:firebase-appcheck-safetynet:16.0.0' implementation 'com.squareup.retrofit2:retrofit:2.9.0' diff --git a/appcheck/build.gradle b/appcheck/build.gradle index 4a1cd4358..79f00ea98 100644 --- a/appcheck/build.gradle +++ b/appcheck/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath "com.android.tools.build:gradle:7.1.3" + classpath "com.android.tools.build:gradle:7.2.1" classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath 'com.google.gms:google-services:4.3.10' diff --git a/appindexing/.gitignore b/appindexing/.gitignore deleted file mode 100644 index 39fb081a4..000000000 --- a/appindexing/.gitignore +++ /dev/null @@ -1,9 +0,0 @@ -*.iml -.gradle -/local.properties -/.idea/workspace.xml -/.idea/libraries -.DS_Store -/build -/captures -.externalNativeBuild diff --git a/appindexing/app/.gitignore b/appindexing/app/.gitignore deleted file mode 100644 index 796b96d1c..000000000 --- a/appindexing/app/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/build diff --git a/appindexing/app/build.gradle b/appindexing/app/build.gradle deleted file mode 100644 index cbe05efbc..000000000 --- a/appindexing/app/build.gradle +++ /dev/null @@ -1,30 +0,0 @@ -apply plugin: 'com.android.application' -apply plugin: 'kotlin-android' - -android { - compileSdkVersion 32 - - defaultConfig { - applicationId "com.google.firebase.example.appindexing" - minSdkVersion 19 - targetSdkVersion 32 - versionCode 1 - versionName "1.0" - testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" - } - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' - } - } -} - -dependencies { - implementation 'androidx.legacy:legacy-support-v4:1.0.0' - implementation 'androidx.appcompat:appcompat:1.4.1' - implementation "com.google.firebase:firebase-appindexing:20.0.0" - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' -} - -apply plugin: 'com.google.gms.google-services' diff --git a/appindexing/app/google-services.json b/appindexing/app/google-services.json deleted file mode 100644 index 1a293ac6a..000000000 --- a/appindexing/app/google-services.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "project_info": { - "project_id": "mockproject-1234", - "project_number": "123456789000", - "name": "FirebaseQuickstarts", - "firebase_url": "https://mockproject-1234.firebaseio.com" - }, - "client": [ - { - "client_info": { - "mobilesdk_app_id": "1:123456789000:android:f1bf012572b04065", - "client_id": "android:com.google.firebase.example.appindexing", - "client_type": 1, - "android_client_info": { - "package_name": "com.google.firebase.example.appindexing", - "certificate_hash": [] - } - }, - "oauth_client": [ - { - "client_id": "123456789000-hjugbg6ud799v4c49dim8ce2usclthar.apps.googleusercontent.com", - "client_type": 1, - "android_info": { - "package_name": "com.google.firebase.example.appindexing", - "certificate_hash": "4C20644DE36B8F89D25650C7D1FF9FBAE650FDF7" - } - }, - { - "client_id": "123456789000-e4uksm38sne0bqrj6uvkbo4oiu4hvigl.apps.googleusercontent.com", - "client_type": 3 - } - ], - "api_key": [ - { - "current_key": "AIzbSzCn1N6LWIe6wthYyrgUUSAlUsdqMb-wvTo" - } - ], - "services": { - "analytics_service": { - "status": 1 - }, - "cloud_messaging_service": { - "status": 2, - "apns_config": [] - }, - "appinvite_service": { - "status": 2, - "other_platform_oauth_client": [ - { - "client_id": "123456789000-e4uksm38sne0bqrj6uvkbo4oiu4hvigl.apps.googleusercontent.com", - "client_type": 3 - } - ] - }, - "google_signin_service": { - "status": 2 - }, - "ads_service": { - "status": 2, - "test_banner_ad_unit_id": "ca-app-pub-3940256099942544/6300978111", - "test_interstitial_ad_unit_id": "ca-app-pub-3940256099942544/1033173712" - } - } - } - ], - "client_info": [], - "ARTIFACT_VERSION": "1" -} diff --git a/appindexing/app/proguard-rules.pro b/appindexing/app/proguard-rules.pro deleted file mode 100644 index af6097fd5..000000000 --- a/appindexing/app/proguard-rules.pro +++ /dev/null @@ -1,17 +0,0 @@ -# Add project specific ProGuard rules here. -# By default, the flags in this file are appended to flags specified -# in /Users/ianbarber/Library/Android/sdk/tools/proguard/proguard-android.txt -# You can edit the include path and order by changing the proguardFiles -# directive in build.gradle. -# -# For more details, see -# http://developer.android.com/guide/developing/tools/proguard.html - -# Add any project specific keep options here: - -# 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 *; -#} diff --git a/appindexing/app/src/main/AndroidManifest.xml b/appindexing/app/src/main/AndroidManifest.xml deleted file mode 100644 index 62e320f60..000000000 --- a/appindexing/app/src/main/AndroidManifest.xml +++ /dev/null @@ -1,64 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/appindexing/app/src/main/java/com/google/firebase/example/appindexing/AppIndexingUpdateReceiver.java b/appindexing/app/src/main/java/com/google/firebase/example/appindexing/AppIndexingUpdateReceiver.java deleted file mode 100644 index 80dc76ef8..000000000 --- a/appindexing/app/src/main/java/com/google/firebase/example/appindexing/AppIndexingUpdateReceiver.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.google.firebase.example.appindexing; - -import android.content.BroadcastReceiver; -import android.content.Context; -import android.content.Intent; - -import com.google.firebase.appindexing.FirebaseAppIndex; - -// [START appindexing_update_receiver] -/** Receives broadcast for App Indexing Update. */ -public class AppIndexingUpdateReceiver extends BroadcastReceiver { - - @Override - public void onReceive(Context context, Intent intent) { - if (intent != null - && FirebaseAppIndex.ACTION_UPDATE_INDEX.equals(intent.getAction())) { - // Schedule the job to be run in the background. - AppIndexingUpdateService.enqueueWork(context); - } - } - -} -// [END appindexing_update_receiver] diff --git a/appindexing/app/src/main/java/com/google/firebase/example/appindexing/AppIndexingUpdateService.java b/appindexing/app/src/main/java/com/google/firebase/example/appindexing/AppIndexingUpdateService.java deleted file mode 100644 index 8c46cec6b..000000000 --- a/appindexing/app/src/main/java/com/google/firebase/example/appindexing/AppIndexingUpdateService.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.google.firebase.example.appindexing; - -import android.content.Context; -import android.content.Intent; -import androidx.annotation.NonNull; -import androidx.core.app.JobIntentService; - -import com.google.android.gms.tasks.Tasks; -import com.google.firebase.appindexing.FirebaseAppIndex; -import com.google.firebase.appindexing.Indexable; -import com.google.firebase.appindexing.builders.Indexables; -import com.google.firebase.example.appindexing.model.Note; -import com.google.firebase.example.appindexing.model.Recipe; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; - -import java.util.concurrent.ExecutionException; - -// [START appindexing_update_service] -public class AppIndexingUpdateService extends JobIntentService { - - // Job-ID must be unique across your whole app. - private static final int UNIQUE_JOB_ID = 42; - - public static void enqueueWork(Context context) { - enqueueWork(context, AppIndexingUpdateService.class, UNIQUE_JOB_ID, new Intent()); - } - - @Override - protected void onHandleWork(@NonNull Intent intent) { - // TODO Insert your Indexable objects — for example, the recipe notes look as follows: - - ArrayList indexableNotes = new ArrayList<>(); - - for (Recipe recipe : getAllRecipes()) { - Note note = recipe.getNote(); - if (note != null) { - Indexable noteToIndex = Indexables.noteDigitalDocumentBuilder() - .setName(recipe.getTitle() + " Note") - .setText(note.getText()) - .setUrl(recipe.getNoteUrl()) - .build(); - - indexableNotes.add(noteToIndex); - } - } - - if (indexableNotes.size() > 0) { - Indexable[] notesArr = new Indexable[indexableNotes.size()]; - notesArr = indexableNotes.toArray(notesArr); - - // batch insert indexable notes into index - try { - Tasks.await(FirebaseAppIndex.getInstance(this).update(notesArr)); - } catch (ExecutionException e) { - // update failed - } catch (InterruptedException e) { - // await was interrupted - } - } - } - - // [START_EXCLUDE] - private List getAllRecipes() { - return Collections.emptyList(); - } - // [END_EXCLUDE] -} -// [END appindexing_update_service] diff --git a/appindexing/app/src/main/java/com/google/firebase/example/appindexing/MainActivity.java b/appindexing/app/src/main/java/com/google/firebase/example/appindexing/MainActivity.java deleted file mode 100644 index 7c4a59d98..000000000 --- a/appindexing/app/src/main/java/com/google/firebase/example/appindexing/MainActivity.java +++ /dev/null @@ -1,96 +0,0 @@ -package com.google.firebase.example.appindexing; - -import android.os.Bundle; -import androidx.appcompat.app.AppCompatActivity; - -import com.google.android.gms.tasks.Task; -import com.google.firebase.appindexing.Action; -import com.google.firebase.appindexing.FirebaseAppIndex; -import com.google.firebase.appindexing.FirebaseUserActions; -import com.google.firebase.appindexing.Indexable; -import com.google.firebase.appindexing.builders.Indexables; -import com.google.firebase.example.appindexing.model.Note; -import com.google.firebase.example.appindexing.model.Recipe; - -public class MainActivity extends AppCompatActivity { - - private Note mNote; - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - } - - // [START appindexing_onstart_onstop] - @Override - protected void onStart() { - super.onStart(); - // If you’re logging an action on content that hasn’t been added to the index yet, - // add it first. - // See https://firebase.google.com/docs/app-indexing/android/personal-content#update-the-index. - - FirebaseUserActions.getInstance(this).start(getRecipeViewAction()); - } - - @Override - protected void onStop() { - FirebaseUserActions.getInstance(this).end(getRecipeViewAction()); - super.onStop(); - } - // [END appindexing_onstart_onstop] - - // [START appindexing_instantaneous] - public void displayNoteDialog(final String positiveText, final String negativeText) { - // ... - - // If you’re logging an action on content that hasn’t been added to the index yet, - // add it first. - // See https://firebase.google.com/docs/app-indexing/android/personal-content#update-the-index. - - FirebaseUserActions.getInstance(this).end(getNoteCommentAction()); - // ... - } - - public Action getNoteCommentAction() { - return new Action.Builder(Action.Builder.COMMENT_ACTION) - .setObject(mNote.getTitle(), mNote.getNoteUrl()) - // Keep action data for personal connulltent on the device - .setMetadata(new Action.Metadata.Builder().setUpload(false)) - .build(); - } - // [END appindexing_instantaneous] - - // [START appindexing_update] - public void indexNote(Recipe recipe) { - Note note = recipe.getNote(); - Indexable noteToIndex = Indexables.noteDigitalDocumentBuilder() - .setName(recipe.getTitle()) - .setText(note.getText()) - .setUrl(recipe.getNoteUrl()) - .build(); - - Task task = FirebaseAppIndex.getInstance(this).update(noteToIndex); - // ... - } - // [END appindexing_update] - - private void removeNote(Recipe recipe) { - // [START appindexing_remove_one] - // Deletes or removes the corresponding notes from index. - String noteUrl = recipe.getNoteUrl(); - FirebaseAppIndex.getInstance(this).remove(noteUrl); - // [END appindexing_remove_one] - } - - public void removeAll() { - // [START appindexing_remove_all] - FirebaseAppIndex.getInstance(this).removeAll(); - // [END appindexing_remove_all] - } - - public Action getRecipeViewAction() { - // This is just to make some things compile. - return null; - } - -} diff --git a/appindexing/app/src/main/java/com/google/firebase/example/appindexing/MeasureActivity.java b/appindexing/app/src/main/java/com/google/firebase/example/appindexing/MeasureActivity.java deleted file mode 100644 index 36435d714..000000000 --- a/appindexing/app/src/main/java/com/google/firebase/example/appindexing/MeasureActivity.java +++ /dev/null @@ -1,78 +0,0 @@ -package com.google.firebase.example.appindexing; - -import android.content.Intent; -import android.net.ParseException; -import android.net.Uri; -import android.os.Build; -import android.os.Bundle; -import androidx.appcompat.app.AppCompatActivity; - -import com.google.firebase.appindexing.AndroidAppUri; - -// [START appindexing_measure_activity] -public class MeasureActivity extends AppCompatActivity { - - @Override - public Uri getReferrer() { - - // There is a built in function available from SDK>=22 - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP_MR1) { - return super.getReferrer(); - } - - Intent intent = getIntent(); - Uri referrer = (Uri) intent.getExtras().get("android.intent.extra.REFERRER"); - if (referrer != null) { - return referrer; - } - - String referrerName = intent.getStringExtra("android.intent.extra.REFERRER_NAME"); - - if (referrerName != null) { - try { - return Uri.parse(referrerName); - } catch (ParseException e) { - // ... - } - } - - return null; - } - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - // ... - Uri referrer = getReferrer(); - - if (referrer != null) { - if (referrer.getScheme().equals("http") || referrer.getScheme().equals("https")) { - // App was opened from a browser - // host will contain the host path (e.g. www.google.com) - String host = referrer.getHost(); - - // Add analytics code below to track this click from web Search - // ... - - } else if (referrer.getScheme().equals("android-app")) { - // App was opened from another app - AndroidAppUri appUri = AndroidAppUri.newAndroidAppUri(referrer); - String referrerPackage = appUri.getPackageName(); - if ("com.google.android.googlequicksearchbox".equals(referrerPackage)) { - // App was opened from the Google app - // host will contain the host path (e.g. www.google.com) - String host = appUri.getDeepLinkUri().getHost(); - - // Add analytics code below to track this click from the Google app - // ... - - } else if ("com.google.appcrawler".equals(referrerPackage)) { - // Make sure this is not being counted as part of app usage - // ... - } - } - } - // ... - } -} -// [END appindexing_measure_activity] diff --git a/appindexing/app/src/main/java/com/google/firebase/example/appindexing/kotlin/AppIndexingUpdateReceiver.kt b/appindexing/app/src/main/java/com/google/firebase/example/appindexing/kotlin/AppIndexingUpdateReceiver.kt deleted file mode 100644 index bcdbe7a9c..000000000 --- a/appindexing/app/src/main/java/com/google/firebase/example/appindexing/kotlin/AppIndexingUpdateReceiver.kt +++ /dev/null @@ -1,19 +0,0 @@ -package com.google.firebase.example.appindexing.kotlin - -import android.content.BroadcastReceiver -import android.content.Context -import android.content.Intent -import com.google.firebase.appindexing.FirebaseAppIndex - -// [START appindexing_update_receiver] -/** Receives broadcast for App Indexing Update. */ -class AppIndexingUpdateReceiver : BroadcastReceiver() { - - override fun onReceive(context: Context, intent: Intent?) { - if (intent != null && FirebaseAppIndex.ACTION_UPDATE_INDEX == intent.action) { - // Schedule the job to be run in the background. - AppIndexingUpdateService.enqueueWork(context) - } - } -} -// [END appindexing_update_receiver] diff --git a/appindexing/app/src/main/java/com/google/firebase/example/appindexing/kotlin/AppIndexingUpdateService.kt b/appindexing/app/src/main/java/com/google/firebase/example/appindexing/kotlin/AppIndexingUpdateService.kt deleted file mode 100644 index 3ed29c4fa..000000000 --- a/appindexing/app/src/main/java/com/google/firebase/example/appindexing/kotlin/AppIndexingUpdateService.kt +++ /dev/null @@ -1,64 +0,0 @@ -package com.google.firebase.example.appindexing.kotlin - -import android.content.Context -import android.content.Intent -import androidx.core.app.JobIntentService -import com.google.android.gms.tasks.Tasks -import com.google.firebase.appindexing.FirebaseAppIndex -import com.google.firebase.appindexing.Indexable -import com.google.firebase.appindexing.builders.Indexables -import com.google.firebase.example.appindexing.model.Recipe -import java.util.concurrent.ExecutionException - -// [START appindexing_update_service] -class AppIndexingUpdateService : JobIntentService() { - - companion object { - - // Job-ID must be unique across your whole app. - private const val UNIQUE_JOB_ID = 42 - - fun enqueueWork(context: Context) { - enqueueWork(context, AppIndexingUpdateService::class.java, UNIQUE_JOB_ID, Intent()) - } - } - - override fun onHandleWork(intent: Intent) { - // TODO Insert your Indexable objects — for example, the recipe notes look as follows: - - val indexableNotes = arrayListOf() - - for (recipe in getAllRecipes()) { - val note = recipe.note - if (note != null) { - val noteToIndex = Indexables.noteDigitalDocumentBuilder() - .setName(recipe.title + " Note") - .setText(note.text) - .setUrl(recipe.noteUrl) - .build() - - indexableNotes.add(noteToIndex) - } - } - - if (indexableNotes.size > 0) { - val notesArr: Array = indexableNotes.toTypedArray() - - // batch insert indexable notes into index - try { - Tasks.await(FirebaseAppIndex.getInstance(this).update(*notesArr)) - } catch (e: ExecutionException) { - // update failed - } catch (e: InterruptedException) { - // await was interrupted - } - } - } - - // [START_EXCLUDE] - private fun getAllRecipes(): List { - return emptyList() - } - // [END_EXCLUDE] -} -// [END appindexing_update_service] diff --git a/appindexing/app/src/main/java/com/google/firebase/example/appindexing/kotlin/MainActivity.kt b/appindexing/app/src/main/java/com/google/firebase/example/appindexing/kotlin/MainActivity.kt deleted file mode 100644 index c0d314636..000000000 --- a/appindexing/app/src/main/java/com/google/firebase/example/appindexing/kotlin/MainActivity.kt +++ /dev/null @@ -1,84 +0,0 @@ -package com.google.firebase.example.appindexing.kotlin - -import androidx.appcompat.app.AppCompatActivity -import com.google.firebase.appindexing.Action -import com.google.firebase.appindexing.FirebaseAppIndex -import com.google.firebase.appindexing.FirebaseUserActions -import com.google.firebase.appindexing.builders.Indexables -import com.google.firebase.example.appindexing.model.Note -import com.google.firebase.example.appindexing.model.Recipe - -class MainActivity : AppCompatActivity() { - - private lateinit var note: Note - - // [START appindexing_onstart_onstop] - override fun onStart() { - super.onStart() - // If you’re logging an action on content that hasn’t been added to the index yet, - // add it first. - // See https://firebase.google.com/docs/app-indexing/android/personal-content#update-the-index. - - FirebaseUserActions.getInstance(this).start(getRecipeViewAction()) - } - - override fun onStop() { - FirebaseUserActions.getInstance(this).end(getRecipeViewAction()) - super.onStop() - } - // [END appindexing_onstart_onstop] - - // [START appindexing_instantaneous] - fun displayNoteDialog(positiveText: String, negativeText: String) { - // ... - - // If you’re logging an action on content that hasn’t been added to the index yet, - // add it first. - // See https://firebase.google.com/docs/app-indexing/android/personal-content#update-the-index. - - FirebaseUserActions.getInstance(this).end(getNoteCommentAction()) - // ... - } - - private fun getNoteCommentAction(): Action { - return Action.Builder(Action.Builder.COMMENT_ACTION) - .setObject(note.title, note.noteUrl) - // Keep action data for personal connulltent on the device - .setMetadata(Action.Metadata.Builder().setUpload(false)) - .build() - } - // [END appindexing_instantaneous] - - // [START appindexing_update] - fun indexNote(recipe: Recipe) { - val note = recipe.note - val noteToIndex = Indexables.noteDigitalDocumentBuilder() - .setName(recipe.title) - .setText(note!!.text) - .setUrl(recipe.noteUrl) - .build() - - val task = FirebaseAppIndex.getInstance(this).update(noteToIndex) - // ... - } - // [END appindexing_update] - - private fun removeNote(recipe: Recipe) { - // [START appindexing_remove_one] - // Deletes or removes the corresponding notes from index. - val noteUrl = recipe.noteUrl - FirebaseAppIndex.getInstance(this).remove(noteUrl) - // [END appindexing_remove_one] - } - - private fun removeAll() { - // [START appindexing_remove_all] - FirebaseAppIndex.getInstance(this).removeAll() - // [END appindexing_remove_all] - } - - private fun getRecipeViewAction(): Action { - // This is just to make some things compile. - return Action.Builder("recipe-view").build(); - } -} diff --git a/appindexing/app/src/main/java/com/google/firebase/example/appindexing/kotlin/MeasureActivity.kt b/appindexing/app/src/main/java/com/google/firebase/example/appindexing/kotlin/MeasureActivity.kt deleted file mode 100644 index 6c8c4cd51..000000000 --- a/appindexing/app/src/main/java/com/google/firebase/example/appindexing/kotlin/MeasureActivity.kt +++ /dev/null @@ -1,72 +0,0 @@ -package com.google.firebase.example.appindexing.kotlin - -import android.net.ParseException -import android.net.Uri -import android.os.Build -import android.os.Bundle -import androidx.appcompat.app.AppCompatActivity -import com.google.firebase.appindexing.AndroidAppUri - -// [START appindexing_measure_activity] -class MeasureActivity : AppCompatActivity() { - - override fun getReferrer(): Uri? { - - // There is a built in function available from SDK>=22 - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP_MR1) { - return super.getReferrer() - } - - val intent = intent - val referrer = intent?.extras?.get("android.intent.extra.REFERRER") as Uri? - if (referrer != null) { - return referrer - } - - val referrerName = intent.getStringExtra("android.intent.extra.REFERRER_NAME") - - if (referrerName != null) { - try { - return Uri.parse(referrerName) - } catch (e: ParseException) { - // ... - } - } - - return null - } - - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - // ... - val referrer = referrer - - if (referrer != null) { - if (referrer.scheme == "http" || referrer.scheme == "https") { - // App was opened from a browser - // host will contain the host path (e.g. www.google.com) - val host = referrer.host - - // Add analytics code below to track this click from web Search - // ... - } else if (referrer.scheme == "android-app") { - // App was opened from another app - val appUri = AndroidAppUri.newAndroidAppUri(referrer) - val referrerPackage = appUri.packageName - if ("com.google.android.googlequicksearchbox" == referrerPackage) { - // App was opened from the Google app - // host will contain the host path (e.g. www.google.com) - val host = appUri.deepLinkUri.host - - // Add analytics code below to track this click from the Google app - // ... - } else if ("com.google.appcrawler" == referrerPackage) { - // Make sure this is not being counted as part of app usage - // ... - } - } - } - // ... - } -} -// [END appindexing_measure_activity] diff --git a/appindexing/app/src/main/java/com/google/firebase/example/appindexing/model/Note.java b/appindexing/app/src/main/java/com/google/firebase/example/appindexing/model/Note.java deleted file mode 100644 index 4b1281700..000000000 --- a/appindexing/app/src/main/java/com/google/firebase/example/appindexing/model/Note.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.google.firebase.example.appindexing.model; - -public class Note { - public String getText() { - return ""; - } - - public String getTitle() { - return ""; - } - - public String getNoteUrl() { - return ""; - } -} diff --git a/appindexing/app/src/main/java/com/google/firebase/example/appindexing/model/Recipe.java b/appindexing/app/src/main/java/com/google/firebase/example/appindexing/model/Recipe.java deleted file mode 100644 index 8152eac73..000000000 --- a/appindexing/app/src/main/java/com/google/firebase/example/appindexing/model/Recipe.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.google.firebase.example.appindexing.model; - -public class Recipe { - public String getTitle() { - return ""; - } - - public Note getNote() { - return null; - } - - public String getNoteUrl() { - return ""; - } -} diff --git a/appindexing/app/src/main/res/layout/activity_main.xml b/appindexing/app/src/main/res/layout/activity_main.xml deleted file mode 100644 index 3e3fc69be..000000000 --- a/appindexing/app/src/main/res/layout/activity_main.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - diff --git a/appindexing/app/src/main/res/layout/activity_measure.xml b/appindexing/app/src/main/res/layout/activity_measure.xml deleted file mode 100644 index b29ae2f9f..000000000 --- a/appindexing/app/src/main/res/layout/activity_measure.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - diff --git a/appindexing/app/src/main/res/mipmap-hdpi/ic_launcher.png b/appindexing/app/src/main/res/mipmap-hdpi/ic_launcher.png deleted file mode 100644 index cde69bccc..000000000 Binary files a/appindexing/app/src/main/res/mipmap-hdpi/ic_launcher.png and /dev/null differ diff --git a/appindexing/app/src/main/res/mipmap-mdpi/ic_launcher.png b/appindexing/app/src/main/res/mipmap-mdpi/ic_launcher.png deleted file mode 100644 index c133a0cbd..000000000 Binary files a/appindexing/app/src/main/res/mipmap-mdpi/ic_launcher.png and /dev/null differ diff --git a/appindexing/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/appindexing/app/src/main/res/mipmap-xhdpi/ic_launcher.png deleted file mode 100644 index bfa42f0e7..000000000 Binary files a/appindexing/app/src/main/res/mipmap-xhdpi/ic_launcher.png and /dev/null differ diff --git a/appindexing/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/appindexing/app/src/main/res/mipmap-xxhdpi/ic_launcher.png deleted file mode 100644 index 324e72cdd..000000000 Binary files a/appindexing/app/src/main/res/mipmap-xxhdpi/ic_launcher.png and /dev/null differ diff --git a/appindexing/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/appindexing/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png deleted file mode 100644 index aee44e138..000000000 Binary files a/appindexing/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png and /dev/null differ diff --git a/appindexing/app/src/main/res/values-w820dp/dimens.xml b/appindexing/app/src/main/res/values-w820dp/dimens.xml deleted file mode 100644 index 63fc81644..000000000 --- a/appindexing/app/src/main/res/values-w820dp/dimens.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - 64dp - diff --git a/appindexing/app/src/main/res/values/colors.xml b/appindexing/app/src/main/res/values/colors.xml deleted file mode 100644 index 3ab3e9cbc..000000000 --- a/appindexing/app/src/main/res/values/colors.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - #3F51B5 - #303F9F - #FF4081 - diff --git a/appindexing/app/src/main/res/values/dimens.xml b/appindexing/app/src/main/res/values/dimens.xml deleted file mode 100644 index 47c822467..000000000 --- a/appindexing/app/src/main/res/values/dimens.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - 16dp - 16dp - diff --git a/appindexing/app/src/main/res/values/strings.xml b/appindexing/app/src/main/res/values/strings.xml deleted file mode 100644 index d96e601ff..000000000 --- a/appindexing/app/src/main/res/values/strings.xml +++ /dev/null @@ -1,3 +0,0 @@ - - Firebase Options - diff --git a/appindexing/app/src/main/res/values/styles.xml b/appindexing/app/src/main/res/values/styles.xml deleted file mode 100644 index 5885930df..000000000 --- a/appindexing/app/src/main/res/values/styles.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - diff --git a/appindexing/app/src/main/res/xml/noindex.xml b/appindexing/app/src/main/res/xml/noindex.xml deleted file mode 100644 index bef35bb61..000000000 --- a/appindexing/app/src/main/res/xml/noindex.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/appindexing/build.gradle b/appindexing/build.gradle deleted file mode 100644 index 27d603dd2..000000000 --- a/appindexing/build.gradle +++ /dev/null @@ -1,25 +0,0 @@ -// Top-level build file where you can add configuration options common to all sub-projects/modules. - -buildscript { - repositories { - google() - mavenCentral() - } - dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' - classpath 'com.google.gms:google-services:4.3.10' - classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" - } -} - -allprojects { - repositories { - google() - mavenLocal() - mavenCentral() - } -} - -task clean(type: Delete) { - delete rootProject.buildDir -} diff --git a/appindexing/gradle.properties b/appindexing/gradle.properties deleted file mode 100644 index aac7c9b46..000000000 --- a/appindexing/gradle.properties +++ /dev/null @@ -1,17 +0,0 @@ -# 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=-Xmx1536m - -# 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 diff --git a/appindexing/gradle/wrapper/gradle-wrapper.jar b/appindexing/gradle/wrapper/gradle-wrapper.jar deleted file mode 100644 index 5c2d1cf01..000000000 Binary files a/appindexing/gradle/wrapper/gradle-wrapper.jar and /dev/null differ diff --git a/appindexing/gradle/wrapper/gradle-wrapper.properties b/appindexing/gradle/wrapper/gradle-wrapper.properties deleted file mode 100644 index bb8b2fc26..000000000 --- a/appindexing/gradle/wrapper/gradle-wrapper.properties +++ /dev/null @@ -1,5 +0,0 @@ -distributionBase=GRADLE_USER_HOME -distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.5.1-bin.zip -zipStoreBase=GRADLE_USER_HOME -zipStorePath=wrapper/dists diff --git a/appindexing/gradlew b/appindexing/gradlew deleted file mode 100755 index 83f2acfdc..000000000 --- a/appindexing/gradlew +++ /dev/null @@ -1,188 +0,0 @@ -#!/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=$((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" - -# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong -if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then - cd "$(dirname "$0")" -fi - -exec "$JAVACMD" "$@" diff --git a/appindexing/gradlew.bat b/appindexing/gradlew.bat deleted file mode 100644 index 24467a141..000000000 --- a/appindexing/gradlew.bat +++ /dev/null @@ -1,100 +0,0 @@ -@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 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 -"%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/appindexing/settings.gradle b/appindexing/settings.gradle deleted file mode 100644 index e7b4def49..000000000 --- a/appindexing/settings.gradle +++ /dev/null @@ -1 +0,0 @@ -include ':app' diff --git a/auth/app/build.gradle b/auth/app/build.gradle index 5c76e31a7..d646f3ea0 100644 --- a/auth/app/build.gradle +++ b/auth/app/build.gradle @@ -25,11 +25,11 @@ dependencies { implementation 'androidx.appcompat:appcompat:1.4.1' implementation 'androidx.browser:browser:1.0.0' implementation 'androidx.cardview:cardview:1.0.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' - implementation 'com.google.android.material:material:1.5.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' + implementation 'com.google.android.material:material:1.6.0' implementation 'androidx.activity:activity:1.4.0' - implementation "com.google.firebase:firebase-auth-ktx:21.0.3" + implementation "com.google.firebase:firebase-auth-ktx:21.0.5" // [START gradle_firebase_ui_auth] implementation "com.firebaseui:firebase-ui-auth:8.0.1" diff --git a/auth/build.gradle b/auth/build.gradle index b68f72227..910d36293 100644 --- a/auth/build.gradle +++ b/auth/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' + classpath 'com.android.tools.build:gradle:7.2.1' classpath 'com.google.gms:google-services:4.3.10' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" } diff --git a/build.gradle b/build.gradle index a0ba66dca..7804e540a 100644 --- a/build.gradle +++ b/build.gradle @@ -5,7 +5,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' + classpath 'com.android.tools.build:gradle:7.2.1' classpath 'com.google.gms:google-services:4.3.10' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" } diff --git a/crashlytics/app/build.gradle b/crashlytics/app/build.gradle index 6becbd21e..d331608b1 100644 --- a/crashlytics/app/build.gradle +++ b/crashlytics/app/build.gradle @@ -26,10 +26,10 @@ dependencies { implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'androidx.appcompat:appcompat:1.4.1' - implementation 'com.google.firebase:firebase-crashlytics:18.2.9' - implementation 'com.google.firebase:firebase-crashlytics-ktx:18.2.9' + implementation 'com.google.firebase:firebase-crashlytics:18.2.11' + implementation 'com.google.firebase:firebase-crashlytics-ktx:18.2.11' // For an optimal experience using Crashlytics, add the Firebase SDK // for Google Analytics. This is recommended, but not required. - implementation 'com.google.firebase:firebase-analytics:20.1.2' + implementation 'com.google.firebase:firebase-analytics:21.0.0' } diff --git a/crashlytics/build.gradle b/crashlytics/build.gradle index 5262762bb..89dce9504 100644 --- a/crashlytics/build.gradle +++ b/crashlytics/build.gradle @@ -6,10 +6,10 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' + classpath 'com.android.tools.build:gradle:7.2.1' classpath 'com.google.gms:google-services:4.3.10' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" - classpath 'com.google.firebase:firebase-crashlytics-gradle:2.8.1' + classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.0' } } diff --git a/database/app/build.gradle b/database/app/build.gradle index 9d887482b..9dc259d52 100644 --- a/database/app/build.gradle +++ b/database/app/build.gradle @@ -28,7 +28,7 @@ android { dependencies { implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'androidx.appcompat:appcompat:1.4.1' - implementation "com.google.firebase:firebase-database-ktx:20.0.4" + implementation "com.google.firebase:firebase-database-ktx:20.0.5" } apply plugin: 'com.google.gms.google-services' diff --git a/database/build.gradle b/database/build.gradle index e46a90636..eac13a1af 100644 --- a/database/build.gradle +++ b/database/build.gradle @@ -7,7 +7,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' + classpath 'com.android.tools.build:gradle:7.2.1' classpath 'com.google.gms:google-services:4.3.10' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" } diff --git a/dl-invites/app/build.gradle b/dl-invites/app/build.gradle index ef73f5ff5..3fb0a26c7 100644 --- a/dl-invites/app/build.gradle +++ b/dl-invites/app/build.gradle @@ -27,6 +27,6 @@ dependencies { implementation 'androidx.recyclerview:recyclerview:1.2.1' implementation 'com.google.firebase:firebase-dynamic-links:21.0.1' - implementation 'com.google.android.material:material:1.5.0' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + implementation 'com.google.android.material:material:1.6.0' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' } diff --git a/dl-invites/build.gradle b/dl-invites/build.gradle index 27d603dd2..e662653e6 100644 --- a/dl-invites/build.gradle +++ b/dl-invites/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' + classpath 'com.android.tools.build:gradle:7.2.1' classpath 'com.google.gms:google-services:4.3.10' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" } diff --git a/dynamic-links/app/build.gradle b/dynamic-links/app/build.gradle index 765a9ecd7..b2a253daa 100644 --- a/dynamic-links/app/build.gradle +++ b/dynamic-links/app/build.gradle @@ -23,14 +23,14 @@ android { dependencies { implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'androidx.appcompat:appcompat:1.4.1' - implementation "com.google.firebase:firebase-auth-ktx:21.0.3" + implementation "com.google.firebase:firebase-auth-ktx:21.0.5" implementation "com.google.firebase:firebase-invites:17.0.0" implementation "com.google.firebase:firebase-dynamic-links-ktx:21.0.1" // For an optimal experience using Dynamic Links, add the Firebase SDK // for Google Analytics. This is recommended, but not required. - implementation 'com.google.firebase:firebase-analytics:20.1.2' + implementation 'com.google.firebase:firebase-analytics:21.0.0' - implementation "com.google.firebase:firebase-database-ktx:20.0.4" - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + implementation "com.google.firebase:firebase-database-ktx:20.0.5" + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' } diff --git a/dynamic-links/build.gradle b/dynamic-links/build.gradle index b68f72227..910d36293 100644 --- a/dynamic-links/build.gradle +++ b/dynamic-links/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' + classpath 'com.android.tools.build:gradle:7.2.1' classpath 'com.google.gms:google-services:4.3.10' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" } diff --git a/firebaseoptions/app/build.gradle b/firebaseoptions/app/build.gradle index c96b9e070..9f18e3e48 100644 --- a/firebaseoptions/app/build.gradle +++ b/firebaseoptions/app/build.gradle @@ -23,8 +23,8 @@ android { dependencies { implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'androidx.appcompat:appcompat:1.4.1' - implementation "com.google.firebase:firebase-common-ktx:20.1.0" - implementation "com.google.firebase:firebase-database-ktx:20.0.4" + implementation "com.google.firebase:firebase-common-ktx:20.1.1" + implementation "com.google.firebase:firebase-database-ktx:20.0.5" } apply plugin: 'com.google.gms.google-services' diff --git a/firebaseoptions/build.gradle b/firebaseoptions/build.gradle index b68f72227..910d36293 100644 --- a/firebaseoptions/build.gradle +++ b/firebaseoptions/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' + classpath 'com.android.tools.build:gradle:7.2.1' classpath 'com.google.gms:google-services:4.3.10' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" } diff --git a/firestore/app/build.gradle b/firestore/app/build.gradle index 482f1e7b1..fa0e778f4 100644 --- a/firestore/app/build.gradle +++ b/firestore/app/build.gradle @@ -35,19 +35,19 @@ repositories { dependencies { implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'androidx.appcompat:appcompat:1.4.1' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' implementation 'androidx.multidex:multidex:2.0.1' // Firestore - implementation "com.google.firebase:firebase-firestore-ktx:24.1.1" + implementation "com.google.firebase:firebase-firestore-ktx:24.1.2" // Firebase / Play Services - implementation "com.google.firebase:firebase-auth:21.0.3" - implementation "com.google.android.gms:play-services-auth:20.1.0" - implementation "com.google.firebase:firebase-functions-ktx:20.0.2" + implementation "com.google.firebase:firebase-auth:21.0.5" + implementation "com.google.android.gms:play-services-auth:20.2.0" + implementation "com.google.firebase:firebase-functions-ktx:20.1.0" // GeoFire (for Geoqueries solution) - implementation "com.firebase:geofire-android-common:3.1.0" + implementation "com.firebase:geofire-android-common:3.2.0" // OkHttp (for Android 11+) implementation "io.grpc:grpc-okhttp:1.46.0" diff --git a/firestore/build.gradle b/firestore/build.gradle index 698a666ff..cdcd7320c 100644 --- a/firestore/build.gradle +++ b/firestore/build.gradle @@ -7,7 +7,7 @@ buildscript { mavenLocal() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' + classpath 'com.android.tools.build:gradle:7.2.1' classpath 'com.google.gms:google-services:4.3.10' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" } diff --git a/functions/app/build.gradle b/functions/app/build.gradle index 558128d90..6d249c259 100644 --- a/functions/app/build.gradle +++ b/functions/app/build.gradle @@ -24,7 +24,7 @@ dependencies { implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'androidx.appcompat:appcompat:1.4.1' - implementation "com.google.firebase:firebase-functions-ktx:20.0.2" + implementation "com.google.firebase:firebase-functions-ktx:20.1.0" } apply plugin: 'com.google.gms.google-services' diff --git a/functions/build.gradle b/functions/build.gradle index b68f72227..910d36293 100644 --- a/functions/build.gradle +++ b/functions/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' + classpath 'com.android.tools.build:gradle:7.2.1' classpath 'com.google.gms:google-services:4.3.10' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index ffed3a254..2e6e5897b 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/inappmessaging/app/build.gradle b/inappmessaging/app/build.gradle index 460e9ea62..ade648b0f 100644 --- a/inappmessaging/app/build.gradle +++ b/inappmessaging/app/build.gradle @@ -31,5 +31,5 @@ dependencies { implementation "com.google.firebase:firebase-inappmessaging-display-ktx:20.1.2" // The Firebase SDK for Google Analytics is required to use In-App Messaging. - implementation 'com.google.firebase:firebase-analytics:20.1.2' + implementation 'com.google.firebase:firebase-analytics:21.0.0' } diff --git a/inappmessaging/build.gradle b/inappmessaging/build.gradle index 27d603dd2..e662653e6 100644 --- a/inappmessaging/build.gradle +++ b/inappmessaging/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' + classpath 'com.android.tools.build:gradle:7.2.1' classpath 'com.google.gms:google-services:4.3.10' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" } diff --git a/installations/app/build.gradle b/installations/app/build.gradle index 7ce43195b..d3f12211d 100644 --- a/installations/app/build.gradle +++ b/installations/app/build.gradle @@ -27,7 +27,7 @@ dependencies { implementation fileTree(dir: "libs", include: ["*.jar"]) implementation 'androidx.core:core-ktx:1.7.0' implementation 'androidx.appcompat:appcompat:1.4.1' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' implementation 'com.google.firebase:firebase-installations:17.0.1' } \ No newline at end of file diff --git a/installations/build.gradle b/installations/build.gradle index d7590332a..1f619305c 100644 --- a/installations/build.gradle +++ b/installations/build.gradle @@ -5,7 +5,7 @@ buildscript { mavenCentral() } dependencies { - classpath "com.android.tools.build:gradle:7.1.3" + classpath "com.android.tools.build:gradle:7.2.1" classpath 'com.google.gms:google-services:4.3.10' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" diff --git a/messaging/app/build.gradle b/messaging/app/build.gradle index 3b10009b0..2301f2e5b 100644 --- a/messaging/app/build.gradle +++ b/messaging/app/build.gradle @@ -23,13 +23,13 @@ android { dependencies { implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'androidx.appcompat:appcompat:1.4.1' - implementation "com.google.firebase:firebase-messaging-ktx:23.0.3" + implementation "com.google.firebase:firebase-messaging-ktx:23.0.5" // For an optimal experience using FCM, add the Firebase SDK // for Google Analytics. This is recommended, but not required. - implementation 'com.google.firebase:firebase-analytics:20.1.2' + implementation 'com.google.firebase:firebase-analytics:21.0.0' - implementation "com.google.android.gms:play-services-auth:20.1.0" + implementation "com.google.android.gms:play-services-auth:20.2.0" } apply plugin: 'com.google.gms.google-services' diff --git a/messaging/build.gradle b/messaging/build.gradle index 27d603dd2..e662653e6 100644 --- a/messaging/build.gradle +++ b/messaging/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' + classpath 'com.android.tools.build:gradle:7.2.1' classpath 'com.google.gms:google-services:4.3.10' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" } diff --git a/ml-functions/build.gradle b/ml-functions/build.gradle index b68f72227..910d36293 100644 --- a/ml-functions/build.gradle +++ b/ml-functions/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' + classpath 'com.android.tools.build:gradle:7.2.1' classpath 'com.google.gms:google-services:4.3.10' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" } diff --git a/mlkit/build.gradle b/mlkit/build.gradle index 27d603dd2..e662653e6 100644 --- a/mlkit/build.gradle +++ b/mlkit/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' + classpath 'com.android.tools.build:gradle:7.2.1' classpath 'com.google.gms:google-services:4.3.10' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" } diff --git a/perf/app/build.gradle b/perf/app/build.gradle index 5d4329747..2c41f9983 100644 --- a/perf/app/build.gradle +++ b/perf/app/build.gradle @@ -24,6 +24,6 @@ android { dependencies { implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'androidx.appcompat:appcompat:1.4.1' - implementation "com.google.firebase:firebase-config-ktx:21.0.2" - implementation "com.google.firebase:firebase-perf-ktx:20.0.6" + implementation "com.google.firebase:firebase-config-ktx:21.1.0" + implementation "com.google.firebase:firebase-perf-ktx:20.1.0" } diff --git a/perf/build.gradle b/perf/build.gradle index 27d603dd2..e662653e6 100644 --- a/perf/build.gradle +++ b/perf/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' + classpath 'com.android.tools.build:gradle:7.2.1' classpath 'com.google.gms:google-services:4.3.10' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" } diff --git a/predictions/.gitignore b/predictions/.gitignore deleted file mode 100644 index 39fb081a4..000000000 --- a/predictions/.gitignore +++ /dev/null @@ -1,9 +0,0 @@ -*.iml -.gradle -/local.properties -/.idea/workspace.xml -/.idea/libraries -.DS_Store -/build -/captures -.externalNativeBuild diff --git a/predictions/app/.gitignore b/predictions/app/.gitignore deleted file mode 100644 index 796b96d1c..000000000 --- a/predictions/app/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/build diff --git a/predictions/app/build.gradle b/predictions/app/build.gradle deleted file mode 100644 index 8f3d073c4..000000000 --- a/predictions/app/build.gradle +++ /dev/null @@ -1,32 +0,0 @@ -apply plugin: 'com.android.application' -apply plugin: 'kotlin-android' - -android { - compileSdkVersion 32 - - defaultConfig { - applicationId "com.google.firebase.example.predictions" - minSdkVersion 19 - targetSdkVersion 32 - versionCode 1 - versionName "1.0" - multiDexEnabled true - testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" - } - buildTypes { - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' - } - } -} - -dependencies { - implementation 'androidx.legacy:legacy-support-v4:1.0.0' - implementation 'androidx.browser:browser:1.0.0' - implementation 'androidx.appcompat:appcompat:1.4.1' - - implementation "com.google.firebase:firebase-ads:20.6.0" - implementation "com.google.firebase:firebase-analytics:20.1.2" - implementation "com.google.firebase:firebase-config-ktx:21.0.2" -} diff --git a/predictions/app/google-services.json b/predictions/app/google-services.json deleted file mode 100644 index a7df91c62..000000000 --- a/predictions/app/google-services.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "project_info": { - "project_id": "mockproject-1234", - "project_number": "123456789000", - "name": "FirebaseQuickstarts", - "firebase_url": "https://mockproject-1234.firebaseio.com" - }, - "client": [ - { - "client_info": { - "mobilesdk_app_id": "1:123456789000:android:f1bf012572b04065", - "client_id": "android:com.google.firebase.example.predictions", - "client_type": 1, - "android_client_info": { - "package_name": "com.google.firebase.example.predictions", - "certificate_hash": [] - } - }, - "oauth_client": [ - { - "client_id": "123456789000-hjugbg6ud799v4c49dim8ce2usclthar.apps.googleusercontent.com", - "client_type": 1, - "android_info": { - "package_name": "com.google.firebase.example.predictions", - "certificate_hash": "4C20644DE36B8F89D25650C7D1FF9FBAE650FDF7" - } - }, - { - "client_id": "123456789000-e4uksm38sne0bqrj6uvkbo4oiu4hvigl.apps.googleusercontent.com", - "client_type": 3 - } - ], - "api_key": [ - { - "current_key": "AIzbSzCn1N6LWIe6wthYyrgUUSAlUsdqMb-wvTo" - } - ], - "services": { - "analytics_service": { - "status": 1 - }, - "cloud_messaging_service": { - "status": 2, - "apns_config": [] - }, - "appinvite_service": { - "status": 2, - "other_platform_oauth_client": [ - { - "client_id": "123456789000-e4uksm38sne0bqrj6uvkbo4oiu4hvigl.apps.googleusercontent.com", - "client_type": 3 - } - ] - }, - "google_signin_service": { - "status": 2 - }, - "ads_service": { - "status": 2, - "test_banner_ad_unit_id": "ca-app-pub-3940256099942544/6300978111", - "test_interstitial_ad_unit_id": "ca-app-pub-3940256099942544/1033173712" - } - } - } - ], - "client_info": [], - "ARTIFACT_VERSION": "1" -} diff --git a/predictions/app/proguard-rules.pro b/predictions/app/proguard-rules.pro deleted file mode 100644 index af6097fd5..000000000 --- a/predictions/app/proguard-rules.pro +++ /dev/null @@ -1,17 +0,0 @@ -# Add project specific ProGuard rules here. -# By default, the flags in this file are appended to flags specified -# in /Users/ianbarber/Library/Android/sdk/tools/proguard/proguard-android.txt -# You can edit the include path and order by changing the proguardFiles -# directive in build.gradle. -# -# For more details, see -# http://developer.android.com/guide/developing/tools/proguard.html - -# Add any project specific keep options here: - -# 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 *; -#} diff --git a/predictions/app/src/main/AndroidManifest.xml b/predictions/app/src/main/AndroidManifest.xml deleted file mode 100644 index c38d3a1b3..000000000 --- a/predictions/app/src/main/AndroidManifest.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - - - - - - - - - - diff --git a/predictions/app/src/main/java/com/google/firebase/example/predictions/ConditionalAdsActivity.java b/predictions/app/src/main/java/com/google/firebase/example/predictions/ConditionalAdsActivity.java deleted file mode 100644 index 77a37596c..000000000 --- a/predictions/app/src/main/java/com/google/firebase/example/predictions/ConditionalAdsActivity.java +++ /dev/null @@ -1,81 +0,0 @@ -package com.google.firebase.example.predictions; - -import android.os.Bundle; -import androidx.annotation.NonNull; -import androidx.appcompat.app.AppCompatActivity; -import android.view.View; - -import com.google.android.gms.ads.AdRequest; -import com.google.android.gms.ads.AdView; -import com.google.android.gms.tasks.OnCompleteListener; -import com.google.android.gms.tasks.Task; -import com.google.firebase.remoteconfig.FirebaseRemoteConfig; - -import java.util.HashMap; -import java.util.Map; - -public class ConditionalAdsActivity extends AppCompatActivity { - - private FirebaseRemoteConfig mFirebaseRemoteConfig; - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - } - - public void initRemoteConfig() { - // [START pred_conditional_ads_init] - mFirebaseRemoteConfig = FirebaseRemoteConfig.getInstance(); - - Map remoteConfigDefaults = new HashMap<>(); - remoteConfigDefaults.put("ads_enabled", true); - mFirebaseRemoteConfig.setDefaultsAsync(remoteConfigDefaults) - .addOnCompleteListener(new OnCompleteListener() { - @Override - public void onComplete(@NonNull Task task) { - if (task.isSuccessful()) { - // Default value successfully set - } else { - // Failed to set default value - } - } - }); - // [END pred_conditional_ads_init] - } - - public void fetchRemoteConfig() { - // [START pred_conditional_ads_fetch] - mFirebaseRemoteConfig.fetchAndActivate() - .addOnCompleteListener(new OnCompleteListener() { - @Override - public void onComplete(@NonNull Task task) { - if (task.isSuccessful()) { - // Act on the retrieved parameters - - // Show ads based on the ad policy retrieved with Remote Config - executeAdsPolicy(); - - // ... - } else { - // Handle errors - } - } - }); - // [END pred_conditional_ads_fetch] - } - - // [START pred_conditional_ads_policy] - private void executeAdsPolicy() { - boolean showAds = mFirebaseRemoteConfig.getBoolean("ads_enabled"); - AdView mAdView = findViewById(R.id.adView); - - if (showAds) { - AdRequest adRequest = new AdRequest.Builder().build(); - mAdView.loadAd(adRequest); - mAdView.setVisibility(View.VISIBLE); - } else { - mAdView.setVisibility(View.GONE); - } - } - // [END pred_conditional_ads_policy] -} diff --git a/predictions/app/src/main/java/com/google/firebase/example/predictions/MainActivity.java b/predictions/app/src/main/java/com/google/firebase/example/predictions/MainActivity.java deleted file mode 100644 index 2780d77af..000000000 --- a/predictions/app/src/main/java/com/google/firebase/example/predictions/MainActivity.java +++ /dev/null @@ -1,181 +0,0 @@ -package com.google.firebase.example.predictions; - -import android.os.Bundle; -import androidx.annotation.NonNull; -import androidx.appcompat.app.AppCompatActivity; -import android.view.View; - -import com.google.android.gms.ads.AdRequest; -import com.google.android.gms.ads.AdView; -import com.google.android.gms.tasks.Continuation; -import com.google.android.gms.tasks.OnCompleteListener; -import com.google.android.gms.tasks.Task; -import com.google.firebase.analytics.FirebaseAnalytics; -import com.google.firebase.remoteconfig.FirebaseRemoteConfig; - -import java.util.HashMap; -import java.util.Map; - -public class MainActivity extends AppCompatActivity { - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - } - - public void configShowAds() { - // [START pred_config_show_ads] - final FirebaseRemoteConfig config = FirebaseRemoteConfig.getInstance(); - - Map remoteConfigDefaults = new HashMap<>(); - remoteConfigDefaults.put("ads_policy", "ads_never"); - config.setDefaultsAsync(remoteConfigDefaults) - .continueWithTask(new Continuation>() { - @Override - public Task then(@NonNull Task task) throws Exception { - if (!task.isSuccessful()) { - throw task.getException(); - } - return config.fetchAndActivate(); - } - }) - .addOnCompleteListener(new OnCompleteListener() { - @Override - public void onComplete(@NonNull Task task) { - if (task.isSuccessful()) { - // Act on the retrieved parameters - - // Show ads based on the ad policy retrieved with Remote Config - executeAdsPolicy(); - - // ... - } else { - // Handle errors - } - } - }); - // [END pred_config_show_ads] - } - - public void executeAdsPolicy() { - // [START pred_ads_policy] - FirebaseRemoteConfig config = FirebaseRemoteConfig.getInstance(); - String adPolicy = config.getString("ads_policy"); - boolean will_not_spend = config.getBoolean("will_not_spend"); - AdView mAdView = findViewById(R.id.adView); - - if (adPolicy.equals("ads_always") || - (adPolicy.equals("ads_nonspenders") && will_not_spend)) { - AdRequest adRequest = new AdRequest.Builder().build(); - mAdView.loadAd(adRequest); - mAdView.setVisibility(View.VISIBLE); - } else { - mAdView.setVisibility(View.GONE); - } - - FirebaseAnalytics.getInstance(this).logEvent("ads_policy_set", new Bundle()); - // [END pred_ads_policy] - } - - public void configPromoStrategy() { - // [START config_promo_strategy] - final FirebaseRemoteConfig config = FirebaseRemoteConfig.getInstance(); - - Map remoteConfigDefaults = new HashMap<>(); - remoteConfigDefaults.put("promoted_bundle", "basic"); - config.setDefaultsAsync(remoteConfigDefaults) - .continueWithTask(new Continuation>() { - @Override - public Task then(@NonNull Task task) throws Exception { - if (!task.isSuccessful()) { - throw task.getException(); - } - return config.fetchAndActivate(); - } - }) - .addOnCompleteListener(this, new OnCompleteListener() { - @Override - public void onComplete(@NonNull Task task) { - if (task.isSuccessful()) { - // Act on the retrieved parameters - String promotedBundle = getPromotedBundle(); - // ... - } else { - // Handle errors - } - } - }); - // [END config_promo_strategy] - } - - // [START pred_get_promoted_bundle] - public String getPromotedBundle() { - FirebaseAnalytics.getInstance(this).logEvent("promotion_set", new Bundle()); - - FirebaseRemoteConfig config = FirebaseRemoteConfig.getInstance(); - String promotedBundle = config.getString("promoted_bundle"); - boolean will_spend = config.getBoolean("predicted_will_spend"); - - if (promotedBundle.equals("predicted") && will_spend) { - return "premium"; - } else { - return promotedBundle; - } - } - // [END pred_get_promoted_bundle] - - public void configPreventChurn() { - // [START pred_config_prevent_churn] - final FirebaseRemoteConfig config = FirebaseRemoteConfig.getInstance(); - - Map remoteConfigDefaults = new HashMap<>(); - remoteConfigDefaults.put("gift_policy", "gift_never"); - config.setDefaultsAsync(remoteConfigDefaults) - .continueWithTask(new Continuation>() { - @Override - public Task then(@NonNull Task task) throws Exception { - if (!task.isSuccessful()) { - throw task.getException(); - } - return config.fetchAndActivate(); - } - }) - .addOnCompleteListener(this, new OnCompleteListener() { - @Override - public void onComplete(@NonNull Task task) { - if (task.isSuccessful()) { - // Act on the retrieved parameters - executeGiftPolicy(); - // ... - } else { - // Handle errors - } - } - }); - // [END pred_config_prevent_churn] - } - - // [START pred_execute_gift_policy] - public void executeGiftPolicy() { - FirebaseRemoteConfig config = FirebaseRemoteConfig.getInstance(); - String giftPolicy = config.getString("gift_policy"); - boolean willChurn = config.getBoolean("will_churn"); - - if (giftPolicy.equals("gift_achievement")) { - grantGiftOnLevel2(); - } else if (giftPolicy.equals("gift_likelychurn") && willChurn) { - grantGiftNow(); - } - - FirebaseAnalytics.getInstance(this).logEvent("gift_policy_set", new Bundle()); - } - // [END pred_execute_gift_policy] - - public void grantGiftOnLevel2() { - // Nothing - } - - public void grantGiftNow() { - // Nothing - } -} diff --git a/predictions/app/src/main/java/com/google/firebase/example/predictions/OptimizePromotionsActivity.java b/predictions/app/src/main/java/com/google/firebase/example/predictions/OptimizePromotionsActivity.java deleted file mode 100644 index c532d22e2..000000000 --- a/predictions/app/src/main/java/com/google/firebase/example/predictions/OptimizePromotionsActivity.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.google.firebase.example.predictions; - -import android.os.Bundle; -import androidx.annotation.NonNull; -import androidx.appcompat.app.AppCompatActivity; - -import com.google.android.gms.tasks.OnCompleteListener; -import com.google.android.gms.tasks.Task; -import com.google.firebase.remoteconfig.FirebaseRemoteConfig; - -import java.util.HashMap; -import java.util.Map; - -public class OptimizePromotionsActivity extends AppCompatActivity { - - private FirebaseRemoteConfig mConfig; - private String mPromotedBundle; - - @Override - protected void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - } - - private void initConfig() { - // [START pred_optimize_promotions_init] - mConfig = FirebaseRemoteConfig.getInstance(); - - Map remoteConfigDefaults = new HashMap<>(); - remoteConfigDefaults.put("promoted_bundle", "basic"); - mConfig.setDefaultsAsync(remoteConfigDefaults) - .addOnCompleteListener(new OnCompleteListener() { - @Override - public void onComplete(@NonNull Task task) { - if (task.isSuccessful()) { - // Default value successfully set - } else { - // Failed to set default value - } - } - }); - // [END pred_optimize_promotions_init] - } - - private void fetchConfig() { - // [START pred_optimize_promotions_fetch] - mConfig.fetchAndActivate() - .addOnCompleteListener(this, new OnCompleteListener() { - @Override - public void onComplete(@NonNull Task task) { - if (task.isSuccessful()) { - // Act on the retrieved parameters - - // Set the bundle to promote based on parameters retrieved with - // Remote Config. This depends entirely on your app, but for - // example, you might retrieve and use image assets based on the - // specified bundle name. - mPromotedBundle = mConfig.getString("promoted_bundle"); - // ... - } - } - }); - // [END pred_optimize_promotions_fetch] - } -} diff --git a/predictions/app/src/main/java/com/google/firebase/example/predictions/PreventChurnActivity.java b/predictions/app/src/main/java/com/google/firebase/example/predictions/PreventChurnActivity.java deleted file mode 100644 index e9ce3a750..000000000 --- a/predictions/app/src/main/java/com/google/firebase/example/predictions/PreventChurnActivity.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.google.firebase.example.predictions; - -import androidx.annotation.NonNull; -import androidx.appcompat.app.AppCompatActivity; - -import com.google.android.gms.tasks.Continuation; -import com.google.android.gms.tasks.OnCompleteListener; -import com.google.android.gms.tasks.Task; -import com.google.firebase.remoteconfig.FirebaseRemoteConfig; - -import java.util.HashMap; -import java.util.Map; - -public class PreventChurnActivity extends AppCompatActivity { - - private void preventChurn() { - // [START pred_prevent_churn] - final FirebaseRemoteConfig config = FirebaseRemoteConfig.getInstance(); - - Map remoteConfigDefaults = new HashMap<>(); - remoteConfigDefaults.put("grant_retention_gift", false); - config.setDefaultsAsync(remoteConfigDefaults) - .continueWithTask(new Continuation>() { - @Override - public Task then(@NonNull Task task) throws Exception { - if (!task.isSuccessful()) { - throw task.getException(); - } - return config.fetchAndActivate(); - } - }) - .addOnCompleteListener(this, new OnCompleteListener() { - @Override - public void onComplete(@NonNull Task task) { - if (task.isSuccessful()) { - // Act on the retrieved parameters. For example, grant the - // retention gift to players who haven't yet received one. - boolean shouldGrantGift = config.getBoolean("grant_retention_gift"); - if (shouldGrantGift && !playerAlreadyReceivedGift()) { - grantGiftToPlayer(); - } - } - } - }); - // [END pred_prevent_churn] - } - - private boolean playerAlreadyReceivedGift() { - // Dummy method - return false; - } - - private void grantGiftToPlayer() { - // Dummy method - } - -} diff --git a/predictions/app/src/main/java/com/google/firebase/example/predictions/kotlin/ConditionalAdsActivity.kt b/predictions/app/src/main/java/com/google/firebase/example/predictions/kotlin/ConditionalAdsActivity.kt deleted file mode 100644 index 06e0ee9e7..000000000 --- a/predictions/app/src/main/java/com/google/firebase/example/predictions/kotlin/ConditionalAdsActivity.kt +++ /dev/null @@ -1,67 +0,0 @@ -package com.google.firebase.example.predictions.kotlin - -import android.view.View -import androidx.appcompat.app.AppCompatActivity -import com.google.android.gms.ads.AdRequest -import com.google.android.gms.ads.AdView -import com.google.firebase.example.predictions.R -import com.google.firebase.ktx.Firebase -import com.google.firebase.remoteconfig.FirebaseRemoteConfig -import com.google.firebase.remoteconfig.ktx.get -import com.google.firebase.remoteconfig.ktx.remoteConfig - -class ConditionalAdsActivity : AppCompatActivity() { - - private lateinit var firebaseRemoteConfig: FirebaseRemoteConfig - - fun initRemoteConfig() { - // [START pred_conditional_ads_init] - firebaseRemoteConfig = Firebase.remoteConfig - - val remoteConfigDefaults = hashMapOf( - "ads_enabled" to true - ) - firebaseRemoteConfig.setDefaultsAsync(remoteConfigDefaults) - .addOnCompleteListener { task -> - if (task.isSuccessful) { - // Default value successfully set - } else { - // Failed to set default value - } - } - // [END pred_conditional_ads_init] - } - - fun fetchRemoteConfig() { - // [START pred_conditional_ads_fetch] - firebaseRemoteConfig.fetchAndActivate() - .addOnCompleteListener(this) { task -> - if (task.isSuccessful) { - // Act on the retrieved parameters - - // Show ads based on the ad policy retrieved with Remote Config - executeAdsPolicy() - - // ... - } else { - // Handle errors - } - } - // [END pred_conditional_ads_fetch] - } - - // [START pred_conditional_ads_policy] - private fun executeAdsPolicy() { - val showAds = firebaseRemoteConfig["ads_enabled"].asBoolean() - val adView = findViewById(R.id.adView) - - if (showAds) { - val adRequest = AdRequest.Builder().build() - adView.loadAd(adRequest) - adView.visibility = View.VISIBLE - } else { - adView.visibility = View.GONE - } - } - // [END pred_conditional_ads_policy] -} diff --git a/predictions/app/src/main/java/com/google/firebase/example/predictions/kotlin/MainActivity.kt b/predictions/app/src/main/java/com/google/firebase/example/predictions/kotlin/MainActivity.kt deleted file mode 100644 index e832d64fd..000000000 --- a/predictions/app/src/main/java/com/google/firebase/example/predictions/kotlin/MainActivity.kt +++ /dev/null @@ -1,164 +0,0 @@ -package com.google.firebase.example.predictions.kotlin - -import android.os.Bundle -import android.view.View -import androidx.appcompat.app.AppCompatActivity -import com.google.android.gms.ads.AdRequest -import com.google.android.gms.ads.AdView -import com.google.firebase.analytics.FirebaseAnalytics -import com.google.firebase.example.predictions.R -import com.google.firebase.ktx.Firebase -import com.google.firebase.remoteconfig.ktx.get -import com.google.firebase.remoteconfig.ktx.remoteConfig - -class MainActivity : AppCompatActivity() { - - fun configShowAds() { - // [START pred_config_show_ads] - val config = Firebase.remoteConfig - - val remoteConfigDefaults = hashMapOf( - "ads_policy" to "ads_never" - ) - config.setDefaultsAsync(remoteConfigDefaults) - .continueWithTask { task -> - if (!task.isSuccessful) { - task.exception?.let { - throw it - } - } - config.fetchAndActivate() - } - .addOnCompleteListener(this) { task -> - if (task.isSuccessful) { - // Act on the retrieved parameters - - // Show ads based on the ad policy retrieved with Remote Config - executeAdsPolicy() - - // ... - } else { - // Handle errors - } - } - // [END pred_config_show_ads] - } - - private fun executeAdsPolicy() { - val adView = findViewById(R.id.adView) - // [START pred_ads_policy] - val config = Firebase.remoteConfig - val adPolicy = config["ads_policy"].asString() - val willNotSpend = config["will_not_spend"].asBoolean() - - if (adPolicy == "ads_always" || adPolicy == "ads_nonspenders" && willNotSpend) { - val adRequest = AdRequest.Builder().build() - adView.loadAd(adRequest) - adView.visibility = View.VISIBLE - } else { - adView.visibility = View.GONE - } - - FirebaseAnalytics.getInstance(this).logEvent("ads_policy_set", Bundle()) - // [END pred_ads_policy] - } - - fun configPromoStrategy() { - // [START config_promo_strategy] - val config = Firebase.remoteConfig - - val remoteConfigDefaults = hashMapOf( - "promoted_bundle" to "basic" - ) - config.setDefaultsAsync(remoteConfigDefaults) - .continueWithTask { task -> - if (!task.isSuccessful) { - task.exception?.let { - throw it - } - } - config.fetchAndActivate() - } - .addOnCompleteListener(this) { task -> - if (task.isSuccessful) { - // Act on the retrieved parameters - - // Show ads based on the ad policy retrieved with Remote Config - executeAdsPolicy() - - // ... - } else { - // Handle errors - } - } - // [END config_promo_strategy] - } - - // [START pred_get_promoted_bundle] - private fun getPromotedBundle(): String { - FirebaseAnalytics.getInstance(this).logEvent("promotion_set", Bundle()) - - val config = Firebase.remoteConfig - val promotedBundle = config["promoted_bundle"].asString() - val willSpend = config["predicted_will_spend"].asBoolean() - - return if (promotedBundle == "predicted" && willSpend) { - "premium" - } else { - promotedBundle - } - } - // [END pred_get_promoted_bundle] - - fun configPreventChurn() { - // [START pred_config_prevent_churn] - val config = Firebase.remoteConfig - - val remoteConfigDefaults = hashMapOf( - "gift_policy" to "gift_never" - ) - config.setDefaultsAsync(remoteConfigDefaults) - .continueWithTask { task -> - if (!task.isSuccessful) { - task.exception?.let { - throw it - } - } - config.fetchAndActivate() - } - .addOnCompleteListener { task -> - if (task.isSuccessful) { - // Act on the retrieved parameters - executeGiftPolicy() - // ... - } else { - // Handle errors - } - } - // [END pred_config_prevent_churn] - } - - // [START pred_execute_gift_policy] - private fun executeGiftPolicy() { - val config = Firebase.remoteConfig - val giftPolicy = config["gift_policy"].asString() - val willChurn = config["will_churn"].asBoolean() - - if (giftPolicy == "gift_achievement") { - grantGiftOnLevel2() - } else if (giftPolicy == "gift_likelychurn" && willChurn) { - grantGiftNow() - } - - FirebaseAnalytics.getInstance(this).logEvent("gift_policy_set", Bundle()) - } - // [END pred_execute_gift_policy] - - private fun grantGiftOnLevel2() { - // Nothing - } - - private fun grantGiftNow() { - // Nothing - } -} diff --git a/predictions/app/src/main/java/com/google/firebase/example/predictions/kotlin/OptimizePromotionsActivity.kt b/predictions/app/src/main/java/com/google/firebase/example/predictions/kotlin/OptimizePromotionsActivity.kt deleted file mode 100644 index 3cf62147a..000000000 --- a/predictions/app/src/main/java/com/google/firebase/example/predictions/kotlin/OptimizePromotionsActivity.kt +++ /dev/null @@ -1,49 +0,0 @@ -package com.google.firebase.example.predictions.kotlin - -import androidx.appcompat.app.AppCompatActivity -import com.google.firebase.ktx.Firebase -import com.google.firebase.remoteconfig.FirebaseRemoteConfig -import com.google.firebase.remoteconfig.ktx.get -import com.google.firebase.remoteconfig.ktx.remoteConfig - -class OptimizePromotionsActivity : AppCompatActivity() { - - private lateinit var config: FirebaseRemoteConfig - private var promotedBundle: String? = null - - private fun initConfig() { - // [START pred_optimize_promotions_init] - config = Firebase.remoteConfig - - val remoteConfigDefaults = hashMapOf( - "promoted_bundle" to "basic" - ) - config.setDefaultsAsync(remoteConfigDefaults) - .addOnCompleteListener { task -> - if (task.isSuccessful) { - // Default value successfully set - } else { - // Failed to set default value - } - } - // [END pred_optimize_promotions_init] - } - - private fun fetchConfig() { - // [START pred_optimize_promotions_fetch] - config.fetchAndActivate() - .addOnCompleteListener(this) { task -> - if (task.isSuccessful) { - // Act on the retrieved parameters - - // Set the bundle to promote based on parameters retrieved with - // Remote Config. This depends entirely on your app, but for - // example, you might retrieve and use image assets based on the - // specified bundle name. - promotedBundle = config["promoted_bundle"].asString() - // ... - } - } - // [END pred_optimize_promotions_fetch] - } -} diff --git a/predictions/app/src/main/java/com/google/firebase/example/predictions/kotlin/PreventChurnActivity.kt b/predictions/app/src/main/java/com/google/firebase/example/predictions/kotlin/PreventChurnActivity.kt deleted file mode 100644 index f7b480d8f..000000000 --- a/predictions/app/src/main/java/com/google/firebase/example/predictions/kotlin/PreventChurnActivity.kt +++ /dev/null @@ -1,49 +0,0 @@ -package com.google.firebase.example.predictions.kotlin - -import androidx.appcompat.app.AppCompatActivity -import com.google.firebase.ktx.Firebase -import com.google.firebase.remoteconfig.ktx.get -import com.google.firebase.remoteconfig.ktx.remoteConfig - -class PreventChurnActivity : AppCompatActivity() { - - private fun preventChurn() { - // [START pred_prevent_churn] - val config = Firebase.remoteConfig - - val remoteConfigDefaults = hashMapOf( - "grant_retention_gift" to false - ) - config.setDefaultsAsync(remoteConfigDefaults) - .continueWithTask { task -> - if (!task.isSuccessful) { - task.exception?.let { - throw it - } - } - config.fetchAndActivate() - } - .addOnCompleteListener(this) { task -> - if (task.isSuccessful) { - // Act on the retrieved parameters. For example, grant the - // retention gift to players who haven't yet received one. - val shouldGrantGift = config["grant_retention_gift"].asBoolean() - if (shouldGrantGift && !playerAlreadyReceivedGift()) { - grantGiftToPlayer() - } - } else { - // Handle errors - } - } - // [END pred_prevent_churn] - } - - private fun playerAlreadyReceivedGift(): Boolean { - // Dummy method - return false - } - - private fun grantGiftToPlayer() { - // Dummy method - } -} diff --git a/predictions/app/src/main/res/layout/activity_main.xml b/predictions/app/src/main/res/layout/activity_main.xml deleted file mode 100644 index 16e8a2121..000000000 --- a/predictions/app/src/main/res/layout/activity_main.xml +++ /dev/null @@ -1,23 +0,0 @@ - - - - - - - diff --git a/predictions/app/src/main/res/mipmap-hdpi/ic_launcher.png b/predictions/app/src/main/res/mipmap-hdpi/ic_launcher.png deleted file mode 100644 index cde69bccc..000000000 Binary files a/predictions/app/src/main/res/mipmap-hdpi/ic_launcher.png and /dev/null differ diff --git a/predictions/app/src/main/res/mipmap-mdpi/ic_launcher.png b/predictions/app/src/main/res/mipmap-mdpi/ic_launcher.png deleted file mode 100644 index c133a0cbd..000000000 Binary files a/predictions/app/src/main/res/mipmap-mdpi/ic_launcher.png and /dev/null differ diff --git a/predictions/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/predictions/app/src/main/res/mipmap-xhdpi/ic_launcher.png deleted file mode 100644 index bfa42f0e7..000000000 Binary files a/predictions/app/src/main/res/mipmap-xhdpi/ic_launcher.png and /dev/null differ diff --git a/predictions/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/predictions/app/src/main/res/mipmap-xxhdpi/ic_launcher.png deleted file mode 100644 index 324e72cdd..000000000 Binary files a/predictions/app/src/main/res/mipmap-xxhdpi/ic_launcher.png and /dev/null differ diff --git a/predictions/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/predictions/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png deleted file mode 100644 index aee44e138..000000000 Binary files a/predictions/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png and /dev/null differ diff --git a/predictions/app/src/main/res/values-w820dp/dimens.xml b/predictions/app/src/main/res/values-w820dp/dimens.xml deleted file mode 100644 index 63fc81644..000000000 --- a/predictions/app/src/main/res/values-w820dp/dimens.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - 64dp - diff --git a/predictions/app/src/main/res/values/colors.xml b/predictions/app/src/main/res/values/colors.xml deleted file mode 100644 index 3ab3e9cbc..000000000 --- a/predictions/app/src/main/res/values/colors.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - #3F51B5 - #303F9F - #FF4081 - diff --git a/predictions/app/src/main/res/values/dimens.xml b/predictions/app/src/main/res/values/dimens.xml deleted file mode 100644 index 47c822467..000000000 --- a/predictions/app/src/main/res/values/dimens.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - 16dp - 16dp - diff --git a/predictions/app/src/main/res/values/strings.xml b/predictions/app/src/main/res/values/strings.xml deleted file mode 100644 index d96e601ff..000000000 --- a/predictions/app/src/main/res/values/strings.xml +++ /dev/null @@ -1,3 +0,0 @@ - - Firebase Options - diff --git a/predictions/app/src/main/res/values/styles.xml b/predictions/app/src/main/res/values/styles.xml deleted file mode 100644 index 5885930df..000000000 --- a/predictions/app/src/main/res/values/styles.xml +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - diff --git a/predictions/build.gradle b/predictions/build.gradle deleted file mode 100644 index 27d603dd2..000000000 --- a/predictions/build.gradle +++ /dev/null @@ -1,25 +0,0 @@ -// Top-level build file where you can add configuration options common to all sub-projects/modules. - -buildscript { - repositories { - google() - mavenCentral() - } - dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' - classpath 'com.google.gms:google-services:4.3.10' - classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" - } -} - -allprojects { - repositories { - google() - mavenLocal() - mavenCentral() - } -} - -task clean(type: Delete) { - delete rootProject.buildDir -} diff --git a/predictions/gradle.properties b/predictions/gradle.properties deleted file mode 100644 index aac7c9b46..000000000 --- a/predictions/gradle.properties +++ /dev/null @@ -1,17 +0,0 @@ -# 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=-Xmx1536m - -# 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 diff --git a/predictions/gradle/wrapper/gradle-wrapper.jar b/predictions/gradle/wrapper/gradle-wrapper.jar deleted file mode 100644 index 5c2d1cf01..000000000 Binary files a/predictions/gradle/wrapper/gradle-wrapper.jar and /dev/null differ diff --git a/predictions/gradle/wrapper/gradle-wrapper.properties b/predictions/gradle/wrapper/gradle-wrapper.properties deleted file mode 100644 index bb8b2fc26..000000000 --- a/predictions/gradle/wrapper/gradle-wrapper.properties +++ /dev/null @@ -1,5 +0,0 @@ -distributionBase=GRADLE_USER_HOME -distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.5.1-bin.zip -zipStoreBase=GRADLE_USER_HOME -zipStorePath=wrapper/dists diff --git a/predictions/gradlew b/predictions/gradlew deleted file mode 100755 index 83f2acfdc..000000000 --- a/predictions/gradlew +++ /dev/null @@ -1,188 +0,0 @@ -#!/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=$((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" - -# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong -if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then - cd "$(dirname "$0")" -fi - -exec "$JAVACMD" "$@" diff --git a/predictions/gradlew.bat b/predictions/gradlew.bat deleted file mode 100644 index 24467a141..000000000 --- a/predictions/gradlew.bat +++ /dev/null @@ -1,100 +0,0 @@ -@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 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 -"%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/predictions/settings.gradle b/predictions/settings.gradle deleted file mode 100644 index e7b4def49..000000000 --- a/predictions/settings.gradle +++ /dev/null @@ -1 +0,0 @@ -include ':app' diff --git a/settings.gradle b/settings.gradle index 37d89d418..31969a99c 100644 --- a/settings.gradle +++ b/settings.gradle @@ -10,13 +10,11 @@ include ':auth:app', ':tasks:app', ':inappmessaging:app', ':admob:app', - ':appindexing:app', ':messaging:app', ':crashlytics:app', ':mlkit:app', ':perf:app', ':test-lab:app', - ':predictions:app', ':analytics:app', ':installations:app' diff --git a/storage/app/build.gradle b/storage/app/build.gradle index 4cefa4460..9c4941969 100644 --- a/storage/app/build.gradle +++ b/storage/app/build.gradle @@ -26,11 +26,11 @@ dependencies { implementation "com.google.firebase:firebase-storage-ktx:20.0.1" implementation 'com.firebaseui:firebase-ui-storage:8.0.1' - implementation 'com.github.bumptech.glide:glide:4.13.1' - annotationProcessor 'com.github.bumptech.glide:compiler:4.13.1' - kapt 'com.github.bumptech.glide:compiler:4.13.1' + implementation 'com.github.bumptech.glide:glide:4.13.2' + annotationProcessor 'com.github.bumptech.glide:compiler:4.13.2' + kapt 'com.github.bumptech.glide:compiler:4.13.2' - implementation 'androidx.constraintlayout:constraintlayout:2.1.3' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' } apply plugin: 'com.google.gms.google-services' diff --git a/storage/build.gradle b/storage/build.gradle index b68f72227..910d36293 100644 --- a/storage/build.gradle +++ b/storage/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' + classpath 'com.android.tools.build:gradle:7.2.1' classpath 'com.google.gms:google-services:4.3.10' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" } diff --git a/tasks/app/build.gradle b/tasks/app/build.gradle index 6e41d5ac6..672885fa8 100644 --- a/tasks/app/build.gradle +++ b/tasks/app/build.gradle @@ -25,5 +25,5 @@ dependencies { implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'androidx.appcompat:appcompat:1.4.1' - implementation "com.google.firebase:firebase-auth-ktx:21.0.3" + implementation "com.google.firebase:firebase-auth-ktx:21.0.5" } diff --git a/tasks/build.gradle b/tasks/build.gradle index b68f72227..910d36293 100644 --- a/tasks/build.gradle +++ b/tasks/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' + classpath 'com.android.tools.build:gradle:7.2.1' classpath 'com.google.gms:google-services:4.3.10' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" } diff --git a/test-lab/build.gradle b/test-lab/build.gradle index 27d603dd2..e662653e6 100644 --- a/test-lab/build.gradle +++ b/test-lab/build.gradle @@ -6,7 +6,7 @@ buildscript { mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:7.1.3' + classpath 'com.android.tools.build:gradle:7.2.1' classpath 'com.google.gms:google-services:4.3.10' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.6.21" }