Skip to content

Support of non-AndroidX firebase libs #74

@GaRaOne

Description

@GaRaOne

Please fill in the following fields:

Pre-built SDK from the website or open-source from this repo: prebuild
Firebase C++ SDK version: see text
Firebase plugins in use (Auth, Database, etc.): ads, analytics, messaging
Additional SDKs you are using (Facebook, AdMob, etc.): Qt
Platform you are using the C++ SDK on (Mac, Windows, or Linux): all
Platform you are targeting (iOS, Android, and/or desktop): iOS and Android

Please describe the issue here:

We use C++/Qt to Build an App for mobiles. Because of Qt we are limited to non Jetpack/AndroidX libs.

So we use every firebase lib before https://developers.google.com/android/guides/releases#june_17_2019

implementation "com.google.firebase:firebase-core:16.0.9"
implementation "com.google.android.gms:play-services-base:16.1.0"
implementation 'com.google.firebase:firebase-ads:17.2.1'
implementation "com.google.firebase:firebase-analytics:16.5.0"

implementation 'com.google.firebase:firebase-messaging:18.0.0'
implementation 'com.google.firebase.messaging.cpp:firebase_messaging_cpp@aar'

implementation 'com.android.support:multidex:1.0.3'
implementation 'com.android.support:appcompat-v7:27.1.1'

This libs was used as default in firebase_cpp 6.1.0.

Before we used always the latest version von firebase_cpp (6.14.1). Now we start to implement FCM into our app and get the following runtime error on Android:

W System.err: java.lang.NoSuchMethodError: no non-static method "Lcom/google/firebase/messaging/FirebaseMessaging;.deliveryMetricsExportToBigQueryEnabled()Z"
W System.err: 	at org.qtproject.qt5.android.QtNative.startQtApplication(Native Method)
W System.err: 	at org.qtproject.qt5.android.QtNative$7.run(QtNative.java:374)
W System.err: 	at org.qtproject.qt5.android.QtThread$1.run(QtThread.java:61)
W System.err: 	at java.lang.Thread.run(Thread.java:761)
E firebase: method_ids[i] || (method.optional == kMethodOptional)
F firebase: Unable to find Method com/google/firebase/messaging/FirebaseMessaging.deliveryMetricsExportToBigQueryEnabled (signature '()Z', instance).  Please verify the AAR which contains the com/google/firebase/messaging/FirebaseMessaging class is included in your app.

So now the latest working firebase_cpp version is 6.8.0 because in 6.9.0 following feature was introduced for FCM:

"(Android): Added the option to enable or disable message delivery metrics export to BigQuery. This functionality is currently only available on Android. Stubs are provided on iOS for cross platform compatibility."

So we have the following questions:

1: Which Version of firebase_cpp is the better choice for our limitations, 6.1.0 (non-AndroidX libs as default) or 6.8.0 (latest running)?

2: Is it possible and usefull to support non-AndroidX firebase in latest firebase_cpp. Because Qt seems not to support it in nearer future ( https://bugreports.qt.io/browse/QTBUG-73904 )

Please answer the following, if applicable:

What's the issue repro rate? 100%

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions