Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit bc7fb54

Browse files
jonsimantovgoogle-labs-jules[bot]a-maurice
authored
Remove deprecated Google Mobile Ads (GMA) C++ SDK (#1768)
* Remove deprecated Google Mobile Ads (GMA) C++ SDK This commit removes the entire GMA C++ SDK from the Firebase C++ SDK, including all references to it across all platforms (iOS, Desktop, and Android). Changes include: - Deletion of the core `gma` directory and its contents. - Removal of GMA from CMakeLists.txt files. - Removal of GMA from Gradle build files. - Removal of GMA from iOS Podfiles. - Removal of GMA from integration tests and UI tests. - Removal of GMA from build scripts and CI workflows. - Updates to documentation (README.md, Doxyfile) to reflect the removal, while preserving release notes related to past GMA versions and adding a new note about its removal. * Refine: Silently skip GMA secrets in restore_secrets.py This commit removes the explicit print statement when skipping GMA-related encrypted files in `scripts/gha/restore_secrets.py`. The script will now silently ignore these files, aligning with the complete removal of the GMA SDK and avoiding unnecessary log output. * Ensure restore_secrets.py skips GMA paths This commit ensures that `scripts/gha/restore_secrets.py` correctly skips processing for any GMA-related encrypted files. The existing check `if api == "gma": continue` should prevent attempts to write decrypted secrets to the `gma/integration_test` directory, which no longer exists after the removal of the GMA SDK. This submission is to confirm the CI tests against this version of the script. * Fix: Strengthen GMA skip logic in restore_secrets.py This commit further refines `scripts/gha/restore_secrets.py` to prevent attempts to write to the deleted `gma/integration_test` directory. Changes include: - Initializing `dest_paths` as an empty list. - More careful construction of `dest_paths` based on whether `FLAGS.artifact` is set, ensuring that GMA paths are not inadvertently created. - Explicitly continuing the loop if no valid destination path is determined for a file, preventing unnecessary decryption or write attempts. - Adding redundant checks to ensure GMA paths are not processed before file write operations as a final safeguard. This should robustly address the `FileNotFoundError` previously observed in CI. * Fix: Remove sensitive logging from restore_secrets.py This commit removes print statements from `scripts/gha/restore_secrets.py` that were logging potentially sensitive file paths. This addresses security alerts raised by the GitHub Advanced Security bot regarding clear-text logging of sensitive information. * Refactor: Remove GMA secrets directory instead of adding skip logic This commit simplifies the removal of the GMA SDK by deleting the `scripts/gha-encrypted/gma` directory entirely. This is a cleaner solution than adding skip logic to `restore_secrets.py` and resolves the `FileNotFoundError` in the CI by removing the source of the problem. The `restore_secrets.py` script has been reverted to its original state. * Fix: Forcefully remove gma secrets directory This commit ensures the complete removal of the GMA SDK by forcefully deleting the `scripts/gha-encrypted/gma` directory. This is the root cause of the `FileNotFoundError` in the CI and is the cleanest solution. The `restore_secrets.py` script remains in its original state, as the problem is resolved by removing the gma secrets it was attempting to process. * Address feedback and update readmes * Remove the GMA source code --------- Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com> Co-authored-by: a-maurice <amaurice@google.com>
1 parent 664b2a2 commit bc7fb54

File tree

170 files changed

+31
-24305
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

170 files changed

+31
-24305
lines changed

‎.github/workflows/integration_tests.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ on:
1717
required: true
1818
apis:
1919
description: 'CSV of apis to build and test'
20-
default: 'analytics,app_check,auth,database,dynamic_links,firestore,functions,gma,installations,messaging,remote_config,storage,ump'
20+
default: 'analytics,app_check,auth,database,dynamic_links,firestore,functions,installations,messaging,remote_config,storage,ump'
2121
required: true
2222
operating_systems:
2323
description: 'CSV of VMs to run on'
@@ -186,7 +186,7 @@ jobs:
186186
# list. Then we can use fromJson to define the field in the matrix for the tests job.
187187
if [[ "${{ github.event.schedule }}" == "0 9 * * *" ]]; then
188188
# at 1am PST/2am PDT. Running integration tests and generate test report for all testapps except firestore
189-
apis="analytics,app_check,auth,database,dynamic_links,functions,gma,installations,messaging,remote_config,storage,ump"
189+
apis="analytics,app_check,auth,database,dynamic_links,functions,installations,messaging,remote_config,storage,ump"
190190
echo "::warning ::Running main nightly tests"
191191
elif [[ "${{ github.event.schedule }}" == "0 10 * * *" || "${{ github.event.schedule }}" == "0 11 * * *" ]]; then
192192
# at 2am PST/3am PDT and 3am PST/4am PDT. Running integration tests for firestore and generate test report.

‎.github/workflows/update-dependencies.yml

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,6 @@ on:
88
updateiOS:
99
description: 'update iOS dependencies?'
1010
default: 1
11-
includeGMA:
12-
description: 'include GMA?'
13-
default: 0
1411
triggerTests:
1512
description: 'trigger tests on PR?'
1613
default: 1
@@ -68,20 +65,16 @@ jobs:
6865
6966
- name: Run update script
7067
run: |
71-
gma_flag=
72-
if [[ ${{ github.event.inputs.includeGMA }} -eq 1 ]]; then
73-
gma_flag="--include_gma"
74-
fi
7568
if [[ ${{ github.event.inputs.updateiOS }} -eq 1 ]]; then
7669
if [[ ${{ github.event.inputs.updateAndroid }} -eq 1 ]]; then
7770
# Update both
7871
echo "Updating all dependencies"
79-
python scripts/update_android_ios_dependencies.py --logfile=${UPDATE_LOGFILE} ${gma_flag}
72+
python scripts/update_android_ios_dependencies.py --logfile=${UPDATE_LOGFILE}
8073
echo "CHOSEN_DEPS=mobile" >> $GITHUB_ENV
8174
else
8275
# Update iOS only
8376
echo "Updating iOS dependencies only"
84-
python scripts/update_android_ios_dependencies.py --skip_android --logfile=${UPDATE_LOGFILE} ${gma_flag}
77+
python scripts/update_android_ios_dependencies.py --skip_android --logfile=${UPDATE_LOGFILE}
8578
echo "CHOSEN_DEPS=iOS" >> $GITHUB_ENV
8679
fi
8780
# iOS: Update Firestore external version to match Firestore Cocoapod version.
@@ -165,7 +158,7 @@ jobs:
165158
elif [[ ${{ github.event.inputs.updateAndroid }} -eq 1 ]]; then
166159
# Update Android only
167160
echo "Updating Android dependencies only"
168-
python scripts/update_android_ios_dependencies.py --skip_ios --logfile=${UPDATE_LOGFILE} ${gma_flag}
161+
python scripts/update_android_ios_dependencies.py --skip_ios --logfile=${UPDATE_LOGFILE}
169162
echo "CHOSEN_DEPS=Android" >> $GITHUB_ENV
170163
else
171164
echo "::error ::Neither Android nor iOS selected. Exiting."

‎Android/firebase_dependencies.gradle

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,6 @@ def firebaseDependenciesMap = [
2727
'dynamic_links' : ['com.google.firebase:firebase-dynamic-links'],
2828
'firestore' : ['com.google.firebase:firebase-firestore'],
2929
'functions' : ['com.google.firebase:firebase-functions'],
30-
'gma' : ['com.google.android.gms:play-services-ads:23.0.0',
31-
'com.google.android.ump:user-messaging-platform:2.2.0'],
3230
'installations' : ['com.google.firebase:firebase-installations'],
3331
'invites' : ['com.google.firebase:firebase-invites'],
3432
// Messaging has an additional local dependency to include.
@@ -52,7 +50,6 @@ def firebaseResourceDependenciesMap = [
5250
'auth' : [':auth:auth_resources'],
5351
'database' : [':database:database_resources'],
5452
'firestore' : [':firestore:firestore_resources'],
55-
'gma' : [':gma:gma_resources'],
5653
'remote_config' : [':remote_config:remote_config_resources'],
5754
'storage' : [':storage:storage_resources'],
5855
'ump' : [':ump:ump_resources']
@@ -94,9 +91,6 @@ class Dependencies {
9491
def getFirestore() {
9592
libSet.add('firestore')
9693
}
97-
def getGma() {
98-
libSet.add('gma')
99-
}
10094
def getFunctions() {
10195
libSet.add('functions')
10296
}

‎CMakeLists.txt

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,6 @@ option(FIREBASE_INCLUDE_FIRESTORE
4848
option(FIREBASE_INCLUDE_FUNCTIONS
4949
"Include the Cloud Functions for Firebase library."
5050
${FIREBASE_INCLUDE_LIBRARY_DEFAULT})
51-
option(FIREBASE_INCLUDE_GMA "Include the GMA library."
52-
${FIREBASE_INCLUDE_LIBRARY_DEFAULT})
5351
option(FIREBASE_INCLUDE_UMP "Include the UMP library."
5452
${FIREBASE_INCLUDE_LIBRARY_DEFAULT})
5553
option(FIREBASE_INCLUDE_INSTALLATIONS
@@ -125,9 +123,8 @@ if(FIREBASE_CPP_BUILD_TESTS OR FIREBASE_CPP_BUILD_STUB_TESTS)
125123
endif()
126124

127125
if (PLATFORM STREQUAL TVOS OR PLATFORM STREQUAL SIMULATOR_TVOS)
128-
# GMA, UMP, and FDL are not supported on tvOS.
126+
# UMP and FDL are not supported on tvOS.
129127
set(FIREBASE_INCLUDE_DYNAMIC_LINKS OFF)
130-
set(FIREBASE_INCLUDE_GMA OFF)
131128
set(FIREBASE_INCLUDE_UMP OFF)
132129
endif()
133130

@@ -635,9 +632,6 @@ endif()
635632
if (FIREBASE_INCLUDE_FUNCTIONS)
636633
add_subdirectory(functions)
637634
endif()
638-
if (FIREBASE_INCLUDE_GMA)
639-
add_subdirectory(gma)
640-
endif()
641635
if (FIREBASE_INCLUDE_UMP)
642636
add_subdirectory(ump)
643637
endif()

‎README.md

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,8 @@ iOS, and desktop platforms. It includes the following Firebase libraries:
1010
|[Google Analytics for Firebase](https://firebase.google.com/docs/analytics/)|
1111
|[Firebase Authentication](https://firebase.google.com/docs/auth/)|[Firebase Realtime Database](https://firebase.google.com/docs/database/)|
1212
|[Firebase Dynamic Links](https://firebase.google.com/docs/dynamic-links/)|[Cloud Firestore](https://firebase.google.com/docs/firestore/)|
13-
|[Cloud Functions for Firebase](https://firebase.google.com/docs/functions/)|[Firebase Invites](https://firebase.google.com/docs/invites/)|
14-
|[Firebase Cloud Messaging](https://firebase.google.com/docs/cloud-messaging/)|[Firebase Remote Config](https://firebase.google.com/docs/remote-config/)|
15-
|[Cloud Storage for Firebase](https://firebase.google.com/docs/storage/)|
13+
|[Cloud Functions for Firebase](https://firebase.google.com/docs/functions/)|[Firebase Cloud Messaging](https://firebase.google.com/docs/cloud-messaging/)|
14+
|[Firebase Remote Config](https://firebase.google.com/docs/remote-config/)|[Cloud Storage for Firebase](https://firebase.google.com/docs/storage/)|
1615

1716
<br>
1817

@@ -117,7 +116,6 @@ The CMake following targets are available to build and link with:
117116
| Firebase Dynamic Links | firebase_dynamic_links |
118117
| Cloud Firestore | firebase_firestore |
119118
| Cloud Functions for Firebase | firebase_functions |
120-
| Firebase Invites | firebase_invites |
121119
| Firebase Cloud Messaging | firebase_messaging |
122120
| Firebase Remote Config | firebase_remote_config |
123121
| Cloud Storage for Firebase | firebase_storage |
@@ -222,7 +220,6 @@ release version of each Firebase library is:
222220
| Firebase Dynamic Links | :dynamic_links:assembleRelease |
223221
| Cloud Firestore | :firestore:assembleRelease |
224222
| Cloud Functions for Firebase | :functions:assembleRelease |
225-
| Firebase Invites | :invites:assembleRelease |
226223
| Firebase Cloud Messaging | :messaging:assembleRelease |
227224
| Firebase Remote Config | :remote_config:assembleRelease |
228225
| Cloud Storage for Firebase | :storage:assembleRelease |

‎app/CMakeLists.txt

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -541,17 +541,6 @@ if (IOS)
541541
${FIREBASE_SOURCE_DIR}/functions/src/include/firebase/functions/callable_reference.h
542542
${FIREBASE_SOURCE_DIR}/functions/src/include/firebase/functions/callable_result.h
543543
${FIREBASE_SOURCE_DIR}/functions/src/include/firebase/functions/common.h)
544-
set(gma_HDRS
545-
${FIREBASE_SOURCE_DIR}/gma/src/include/firebase/gma.h
546-
${FIREBASE_SOURCE_DIR}/gma/src/include/firebase/gma/ad_view.h
547-
${FIREBASE_SOURCE_DIR}/gma/src/include/firebase/gma/interstitial_ad.h
548-
${FIREBASE_SOURCE_DIR}/gma/src/include/firebase/gma/internal/native_ad.h
549-
${FIREBASE_SOURCE_DIR}/gma/src/include/firebase/gma/internal/query_info.h
550-
${FIREBASE_SOURCE_DIR}/gma/src/include/firebase/gma/rewarded_ad.h
551-
${FIREBASE_SOURCE_DIR}/gma/src/include/firebase/gma/types.h
552-
${FIREBASE_SOURCE_DIR}/gma/src/include/firebase/gma/ump.h
553-
${FIREBASE_SOURCE_DIR}/gma/src/include/firebase/gma/ump/consent_info.h
554-
${FIREBASE_SOURCE_DIR}/gma/src/include/firebase/gma/ump/types.h)
555544
set(installations_HDRS
556545
${FIREBASE_SOURCE_DIR}/installations/src/include/firebase/installations.h)
557546
set(messaging_HDRS
@@ -580,7 +569,6 @@ if (IOS)
580569
${dynamic_links_HDRS}
581570
${firestore_HDRS}
582571
${functions_HDRS}
583-
${gma_HDRS}
584572
${installations_HDRS}
585573
${messaging_HDRS}
586574
${remote_config_HDRS}

‎build_scripts/ios/build.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ readonly SUPPORTED_PLATFORMS=(device simulator)
2727
readonly SUPPORTED_ARCHITECTURES=(arm64 x86_64)
2828
readonly DEVICE_ARCHITECTURES=(arm64)
2929
readonly SIMULATOR_ARCHITECTURES=(arm64 x86_64)
30-
readonly SUPPORTED_TARGETS=(firebase_analytics firebase_auth firebase_app_check firebase_database firebase_dynamic_links firebase_firestore firebase_functions firebase_gma firebase_installations firebase_messaging firebase_remote_config firebase_storage firebase_ump)
30+
readonly SUPPORTED_TARGETS=(firebase_analytics firebase_auth firebase_app_check firebase_database firebase_dynamic_links firebase_firestore firebase_functions firebase_installations firebase_messaging firebase_remote_config firebase_storage firebase_ump)
3131

3232
# build default value
3333
buildpath="ios_build"

‎build_scripts/packaging.conf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22

33
# List of all Firebase products to include in the binary SDK package.
44
readonly -a product_list=(analytics app app_check auth database
5-
dynamic_links firestore functions gma installations messaging
5+
dynamic_links firestore functions installations messaging
66
remote_config storage ump)

‎docs/Doxyfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ SORT_GROUP_NAMES = YES
1313
JAVADOC_AUTOBRIEF = YES
1414

1515
# Firebase-specific options.
16-
PREDEFINED = DOXYGEN DOXYGEN_ADMOB FIREBASE_DEPRECATED FIREBASE_NAMESPACE=firebase
16+
PREDEFINED = DOXYGEN FIREBASE_DEPRECATED FIREBASE_NAMESPACE=firebase
1717
MACRO_EXPANSION = YES # Expand FIREBASE_DEPRECATED macros.
1818
EXPAND_ONLY_PREDEF = YES # Expand FIREBASE_DEPRECATED macros.
1919
VERBATIM_HEADERS = NO

‎gma/CMakeLists.txt

Lines changed: 0 additions & 156 deletions
This file was deleted.

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /