firebase / firebase-cpp-sdk Goto Github PK
View Code? Open in Web Editor NEWFirebase C++ SDK
Home Page: http://firebase.google.com
License: Apache License 2.0
Firebase C++ SDK
Home Page: http://firebase.google.com
License: Apache License 2.0
What library should be linked to fix below error?
xcode: 10.3
macos: 10.14.5
I would like to stay with command line and cmake and do not use CocoaPods and open xcode.
In documentation I see "Integrate without CocoaPods"
https://firebase.google.com/docs/ios/setup#frameworks
This is my cmake:
# Add Firebase libraries to the target using the function from the SDK.
add_subdirectory(${EXTERNAL_DIR}/firebase_cpp_sdk bin/ EXCLUDE_FROM_ALL)
# The core Firebase library (firebase_app) is required to use any Firebase product,
# and it must always be listed last.
target_link_libraries(${PROJECT_NAME}
firebase_analytics
firebase_remote_config
firebase_app)
Error:
Undefined symbols for architecture arm64:
"_OBJC_CLASS_$_FIROptions", referenced from:
objc-class-ref in firebase(app_ios_814e1620d4f88024cea4bade26623a67.o)
"_OBJC_CLASS_$_FIRConfiguration", referenced from:
objc-class-ref in firebase(log_ios_dd26aec5b8537064a4c15d38b58b4640.o)
"_OBJC_CLASS_$_FIRRemoteConfigSettings", referenced from:
objc-class-ref in firebase_remote_config(remote_config_ios_e6d2ed559f32c182ac8412737f5fb36a.o)
"_OBJC_CLASS_$_FIRRemoteConfig", referenced from:
objc-class-ref in firebase_remote_config(remote_config_ios_e6d2ed559f32c182ac8412737f5fb36a.o)
"_OBJC_CLASS_$_FIRApp", referenced from:
objc-class-ref in firebase(app_ios_814e1620d4f88024cea4bade26623a67.o)
"_OBJC_CLASS_$_FIRAnalytics", referenced from:
objc-class-ref in libfirebase_analytics.a(analytics_ios_d28a0e676a7367b8f2d91944bb505d87.o)
"_FIRRemoteConfigThrottledEndTimeInSecondsKey", referenced from:
____ZN8firebase13remote_config5FetchEy_block_invoke in firebase_remote_config(remote_config_ios_e6d2ed559f32c182ac8412737f5fb36a.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I would like to setUserId
via cpp api because I would like to use SSV (server-side verification).
Is it possible via firebase-cpp-sdk?
Thanks
Pre-built SDK from the website
Firebase C++ SDK version: 6.8.0
Firebase plugins in use (Auth, Database, etc.): App, Auth, Realtime Database
Additional SDKs you are using (Facebook, AdMob, etc.): Qt 5.12.5
Platform you are using the C++ SDK on (Mac, Windows, or Linux): Windows 10
Platform you are targeting (iOS, Android, and/or desktop): Desktop
Q: What is the best practice to always get the new child nodes on desktop? How long is the connection alive?
Have you been able to reproduce this issue with just the Firebase C++ quickstarts ?
Did not tried.
I'm trying to use Firebase Authentication to sign in a user by sending them an email containing a link. The feature is supported and documented for Android, iOS and Web, but is nowhere to be found for the C++ SDK.
Is this possible with the C++ SDK?
The release builds available at https://firebase.google.com/download/cpp contain universal builds for iOS, supporting both arm64 and x86_64, among others.
For easier debugging of a firebase-based app in the iOS simulator, I'd like to do an x86_64 or even better "universal" debug build of firebase-cpp-sdk. The iOS instructions in the README are using a CMake toolchain file that only builds for arm64. Trying to replace "arm64" by "x86_64" in the toolchain file already fails when building flatbuffers.
Could you please document how to compile firebase-cpp-sdk for iOS/x86_64?
Ideally I would like to be able to reproduce the iOS part of the official .zip, just with -DCMAKE_BUILD_TYPE=Debug
open-source from this repo:
Firebase C++ SDK version: master
Firebase plugins in use (Auth, Database, etc.): None
Additional SDKs you are using (Facebook, AdMob, etc.):None
Platform you are using the C++ SDK on (Mac, Windows, or Linux): Windows
Platform you are targeting (iOS, Android, and/or desktop): Windows Desktop
I have downloaded the SDK from github and trying to compile it as per the mentioned instructions using Visual studio code .But I am facing compiler missing issue below
$ cmake ..
-- Building for: NMake Makefiles
-- The C compiler identification is unknown
CMake Error at CMakeLists.txt:75 (enable_language):
The CMAKE_C_COMPILER:
cl
is not a full path and was not found in the PATH.
To use the NMake generator with Visual C++, cmake must be run from a shell
that can use the compiler cl from the command line. This environment is
unable to invoke the cl compiler. To fix this problem, run cmake from the
Visual Studio Command Prompt (vcvarsall.bat).
Tell CMake where to find the compiler by setting either the environment
variable "CC" or the CMake cache entry CMAKE_C_COMPILER to the full path to
the compiler, or to the compiler name if it is in the PATH.
-- Configuring incomplete, errors occurred!
See also "C:/Users/shiva/Downloads/Sandeep/firebase-cpp-sdk-master/fcm_build/CMakeFiles/CMakeOutput.log".
See also "C:/Users/shiva/Downloads/Sandeep/firebase-cpp-sdk-master/fcm_build/CMakeFiles/CMakeError.log".
Actually , I want to understand that Messaging can be used with Desktop applications in Linux or not. If yes, could you please share me the steps to compile the sdk and sample app to receive Firebase Cloud Messaging in linux.
Also let me know if this is not the SDK meant for Desktops ,how can I achieve Messaging for Desktops?
Pre-built SDK from the website or open-source from this repo:
Firebase C++ SDK version:
Firebase plugins in use (Auth, Database, etc.):
Additional SDKs you are using (Facebook, AdMob, etc.):
Platform you are using the C++ SDK on (Mac, Windows, or Linux):
Platform you are targeting (iOS, Android, and/or desktop):
(Please list the full steps to reproduce the issue. Include device logs, Unity logs, and stack traces if available.)
Code to repro:
settings.set_persistence_enabled(false);
settings.set_host("Invalid gcp oneplatform host url");
Future<DocumentReference> doc_ref =
db->Collection("users").Add({{"first", FieldValue::FromString("Ada")},
{"last", FieldValue::FromString("Lovelace")},
{"born", FieldValue::FromInteger(1815)}});
while(doc_ref.status() != firebase::kFutureStatusComplete) {
absl::SleepFor(absl::Seconds(5));
LOG(INFO) << "HAHA?";
}
// Never reach here.
Firestore SDK supports retry and exponential backoff when it fails to connect the backend. However, there is no limit on the total retry times or timeout. So when there is something wrong with the server side, e.g. backend is down, the end user will hang forever for the future completion callback. And this could cause OOM in the client side because client might keep adding more operations and callbacks. Could we set up a maximum retry timeout?
Have you been able to reproduce this issue with just the Firebase C++ quickstarts ?
What's the issue repro rate? (eg 100%, 1/5 etc) 100%
Hello I am trying to compile my project with Firebase SDK integrated.
but getting these errors
error: no template named 'function' in namespace 'std' at the following code sections
this is from future_impl.h
#if defined(FIREBASE_USE_STD_FUNCTION) /// Register a callback that will be called when this future's status is set /// to Complete. /// /// If
clear_existing_callbacksis true, then the new callback /// will replace any existing callbacks, otherwise it will be added to the /// list of callbacks. /// /// The future's result data will be passed back when the callback is /// called. /// /// @return A handle that can be passed to
FutureBase::RemoveCompletion. virtual CompletionCallbackHandle AddCompletionCallbackLambda( FutureHandle handle, std::function<void(const FutureBase&)> callback, bool clear_existing_callbacks) = 0; #endif // defined(FIREBASE_USE_STD_FUNCTION)
and also at every place where std::function is used
I have made sure that we are using CXX STD greater than 11 and also we are including
There are some other errors like
/Users/Developer/MyProject/External/Firebase/iOS/firebase/internal/future_impl.h:303: error: variable has incomplete type 'void' inline void FutureBase::OnCompletion(std::function<void(const FutureBase&)> callback) const ^
Can you please help?
Firebase C++ SDK version: 6.7.0
Firebase plugins in use (Auth, Database, etc.):Storage
Additional SDKs you are using (Facebook, AdMob, etc.):
Platform you are using the C++ SDK on (Mac, Windows, or Linux): Linux
Platform you are targeting (iOS, Android, and/or desktop): decktop
after adding storage.h include getting linking error, but I am linking all libs to executable.
here is the code to reproduce the issue.
#include "firebase/storage.h"
int main()
{
return 0;
}
Have you been able to reproduce this issue with just the Firebase C++ quickstarts ?
What's the issue repro rate? (eg 100%, 1/5 etc)
Pre-built SDK from the website or open-source from this repo:
Firebase C++ SDK version: 6.12.0
Firebase plugins in use (Auth, Database, etc.): Auth, Realtime
Additional SDKs you are using (Facebook, AdMob, etc.): �Facebook
Platform you are using the C++ SDK on (Mac, Windows, or Linux): MAC
Platform you are targeting (iOS, Android, and/or desktop): MAC OS
Hi firebase team!
Currently, I'm querying the data on the MAC OS platform. I'm facing the problem as follows :
The query takes a long time (1 to 3 minutes) to return a response. So This affects the user experience of my app.
On the IOS, Android and Windows platforms all work very well. I only have this problem on MAC OS.
I also tested both link options x86_64 and universal. But this also could not help me solve this problem.
Here is the information regarding my project :
Xcode: 11.3.1
Firebase_cpp_sdk: [ as above ]
My query : ( same as on the IOS, Android and Windows platforms)
auto user = ap::Database::getInstance().getUserInfo();
firebase::database::DatabaseReference dbref = database->GetReference();
std::string path = cocos2d::StringUtils::format("users/%d/%s/", user._id, USER_REALTIME_VARIABLE);
auto result = dbref.Child(path).GetValue();
result.OnCompletion([callback](const Future<firebase::database::DataSnapshot>& result_data) {
//my codes
});
As I know, MACOS doesn't officially support from firebase team, right?
Could the firebase team help me solve this issue?
Hopefully, I can get answers soon from your side.
Have you been able to reproduce this issue with just the Firebase C++ quickstarts? No, I have not tried.
What's the issue repro rate? 100%
Feature request: disable auto logging of in_app_purchase. Now it logs prices with taxes. It breaks analytics and iTunes/Google has different in reports.
Starting from cmake 3.14.0 there is native support for iOS:
https://cmake.org/cmake/help/latest/manual/cmake-toolchains.7.html#cross-compiling-for-ios-tvos-or-watchos
Building with CMake for iOS
https://github.com/firebase/firebase-cpp-sdk/blob/master/README.md#building-with-cmake-for-ios
Should not require -DCMAKE_TOOLCHAIN_FILE=../cmake/ios.cmake with CMake 3.14 and above
I am investigating possible solutions to add Linux and Windows support to the Flutter Firebase plugins. Aside from a pure Dart implementation, the C++ SDK seems like a good base for this effort. Concerns were raised though that it's an SDK for testing mobile games on desktop, rather than a desktop SDK. Can you please clarify?
Pre-built SDK from the website or open-source from this repo: website, retrieved 10/Mar/2010
Firebase C++ SDK version: 6.12.0
Firebase plugins in use (Auth, Database, etc.): auth, storage
Additional SDKs you are using (Facebook, AdMob, etc.): n/a
Platform you are using the C++ SDK on (Mac, Windows, or Linux): Mac
Platform you are targeting (iOS, Android, and/or desktop): iOS and desktop
(Please list the full steps to reproduce the issue. Include device logs, Unity logs, and stack traces if available.)
We use date-time stamps to create unique filenames, so it's very difficult to retrieve files afterwards without being able to list and iterate over the bucket contents.
All other APIs have storageRef.list()
and storageRef.listAll()
to list items in a storage bucket, except for C++. Getting a list of all items (rather than per "directory") would be fine, but there's currently no way to do this either.
It is possible to get some results by calling rootStorageRef.GetBytes(...)
/GetFile(...)
, which returns a JSON listing. This isn't a full list though, because it has nextPageToken
to get the next pagination but there is no way (as far as I can see) to use this token to get the next set of results in C++.
Another option would be to have the functionality to craft custom curl requests, so that missing C++ API methods could be worked around by adding things like nextPageToken
into the endpoint call. If this functionality already exists I can't find it.
Have you been able to reproduce this issue with just the Firebase C++ quickstarts ?
Not applicable, because quickstarts doesn't exercise the requested functionality.
What's the issue repro rate? (eg 100%, 1/5 etc)
100% (missing/requested feature).
Hi! I having some issue with displaying correct parameter name in Firebase console.
Here of my code example: Link
That a free firebase analytics provider for Unreal Engine 4.
So. About issue:
After sending event to firebase i looking for streamview and see event structure:
Category -> Category -> ParamValue
Expected structure:
Category -> ParamName -> ParamValue
For some reason, parameter name replaced with my category. (i know that string Category != ParamName). Any ideas what went wrong?
In CMake https://github.com/firebase/firebase-cpp-sdk/blob/master/release_build_files/CMakeLists.txt#L31 there is only :
elseif(APPLE)
set(FIREBASE_SDK_LIBDIR ${FIREBASE_CPP_SDK_DIR}/libs/darwin/universal))
Please add also ios branch
int main()
{
firebase::AppOptions app_options = firebase::AppOptions();
firebase::App* app = firebase::App::Create(app_options);
return 0;
}
below is the stack.
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff6eb519f in std::basic_string<char, std::char_traits, std::allocator >::basic_string(std::string const&) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
(gdb) bt
#0 0x00007ffff6eb519f in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#1 0x0000555555750bbf in firebase::AppOptions::AppOptions(firebase::AppOptions const&) ()
#2 0x000055555575089a in firebase::App::Create(firebase::AppOptions const&, char const*) ()
#3 0x0000555555750817 in firebase::App::Create(firebase::AppOptions const&) ()
#4 0x0000555555714be4 in main (argc=1, argv=0x7fffffffdde8) at /home/lvv/src/main.cpp:29
(gdb)
Pre-built SDK from the website
Firebase C++ SDK version: 6.12.0
Firebase plugins in use (Auth, Database, etc.): Auth, Firestore, Functions, Storage
Additional SDKs you are using (Facebook, AdMob, etc.): Qt 5.14.1 clang 64bit
Platform you are using the C++ SDK on (Mac, Windows, or Linux): Mac
Platform you are targeting (iOS, Android, and/or desktop): desktop
My application crashes when trying to call a Firebase callable function in combination with authentication:
auto pFireBaseApp = firebase::App::Create();
// No crash when I comment out the following line
auto pAuth = firebase::auth::Auth::GetAuth(pFireBaseApp);
auto pFunctions = functions::Functions::GetInstance(pFireBaseApp);
auto ref = pFunctions->GetHttpsCallable("testFunction");
auto future = ref.Call();
future.OnCompletion([](const Future<functions::HttpsCallableResult> &result) {
// Crash before this is reached but not when commenting out pAuth code
});
It does not crash, and behaves as expected, when not initializing Auth. Note that this behaves the same with a function that doesn't use authentication: testFunction
is a very simple function that returns a fixed object.
This is the call stack of the crashed thread:
1 firebase::rest::BackgroundTransportCurl::PerformBackground(firebase::rest::Request *) (x86_64) /Users/jdierckx/work/Bioracer Motion/Bioracer Aero/build-BioracerAero-Desktop_Qt_5_14_1_clang_64bit-Debug/build-output/BRMApplicationTest.app/Contents/Frameworks/libBRMData.1.dylib 0x10038143b
2 firebase::rest::CurlThread::ProcessRequests() (x86_64) /Users/jdierckx/work/Bioracer Motion/Bioracer Aero/build-BioracerAero-Desktop_Qt_5_14_1_clang_64bit-Debug/build-output/BRMApplicationTest.app/Contents/Frameworks/libBRMData.1.dylib 0x10038318e
3 void * std::__thread_proxy<std::tuple<std::unique_ptr<std::__thread_struct, std::default_delete<std::__thread_struct>>, void ( *)(void *), void *>>(void *) (x86_64) /Users/jdierckx/work/Bioracer Motion/Bioracer Aero/build-BioracerAero-Desktop_Qt_5_14_1_clang_64bit-Debug/build-output/BRMApplicationTest.app/Contents/Frameworks/libBRMData.1.dylib 0x1003a0cec
4 _pthread_start (x86_64) /usr/lib/system/libsystem_pthread.dylib 0x7fff64a29e65
5 thread_start (x86_64) /usr/lib/system/libsystem_pthread.dylib 0x7fff64a2583b
Have you been able to reproduce this issue with just the Firebase C++ quickstarts ? Did not try (the quickstart example doesn't use Auth)
What's the issue repro rate? (eg 100%, 1/5 etc) 100%
We are using Cloud Storage via the Firebase SDK and allow clients to upload files to certain paths in our bucket based on the rules we've set up. Additionally, we need to make sure that when a client overwrites a file, the overwrite happens only if the client's notion of which version it is overwriting matches that is on Cloud Storage (if the client tries to overwrite a version that is newer than what it knows about, it goes back and downloads the latest version, merges in its info, and then retries the upload).
Upload preconditions (https://cloud.google.com/storage/docs/generations-preconditions) seem like exactly what we need to solve this problem and avoid some of the race conditions, but we can't figure out how to do them via the Firebase C++ SDK.
My questions are:
Thanks!
Hello team,
I'm trying to implement Firebase CPP SDK on the Desktop version following the steps on (https://github.com/firebase/quickstart-cpp). Unfortunately, I always get the linking error on Debug mode (Release mode is ok).
First, I used the latest prebuilt package(firebase_cpp_sdk_6.7.0) but it's failed with the linking error : "LNK1143 invalid or corrupt file: no symbol for COMDAT section 0x60FF \build\firebase_app.lib(3b90730b34b9dfb9de1097092477c56f_flatbuffers.dir_Debug_idl_parser.obj)"
I'm using VS Studio 2019 to develop, your package is in VS2015 and maybe there is my problem.
Second, I follow the steps to build the source code. The thing I need is static libs in /MT format, so I changed a little big from CMake like:
if (MSVC)
# Googletest requires MSVC to compile with the static version of the runtime
# library, so define the appropriate runtime flag, before adding libraries.
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} /MTd")
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} /MT")
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MTd")
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MT")
endif()
When using these libs, i got a lot of linking error like:
Error LNK2001 unresolved external symbol "public: virtual __cdecl firebase::rest::Request::~Request(void)" (??1Request@rest@firebase@@UEAA@XZ) \build\firebase_auth-d.lib(secure_token_request.obj)
Error LNK2001 unresolved external symbol "public: bool __cdecl flatbuffers::Parser::Parse(char const *,char const * *,char const *)" (?Parse@Parser@flatbuffers@@QEAA_NPEBDPEAPEBD0@Z) \build\firebase_app-d.lib(app_options.obj)
Error LNK2001 unresolved external symbol "public: virtual bool __cdecl firebase::rest::Response::ProcessHeader(char const *,unsigned __int64)" (?ProcessHeader@Response@rest@firebase@@UEAA_NPEBD_K@Z) \build\firebase_auth-d.lib(user_desktop.obj)
Error LNK2001 unresolved external symbol "public: virtual void __cdecl firebase::rest::Response::GetBody(char const * *,unsigned __int64 *)const " (?GetBody@Response@rest@firebase@@UEBAXPEAPEBDPEA_K@Z) \build\firebase_auth-d.lib(user_desktop.obj
Could you please show me any wrong steps I made, and any thing I need to do to have the project linked correctly?
Thank you!
Firebase C++ SDK version: v6.7.0. The same error with 6.6.1
Firebase plugins in use (Auth, Database, etc.): Auth, Analytics, Admob
Additional SDKs you are using (Facebook, AdMob, etc.): Firebase Admob
Platform you are using the C++ SDK on (Mac, Windows, or Linux): Window
Platform you are targeting (iOS, Android, and/or desktop): Desktop
(Please list the full steps to reproduce the issue. Include device logs, Unity logs, and stack traces if available.)
Have you been able to reproduce this issue with just the Firebase C++ quickstarts ? No
What's the issue repro rate? 100%
Hey,
I had few cases of segmentation fault of Firebase on my ios crash log. Based on it, it was because of incorrect re-initalization of the firebase while screen was being rotated int he application.
Firebase C++ SDK version: 6.7
Firebase plugins in use (Auth, Database, etc.): FirebaseAnalytics, FirebaseCore, FirebaseInstanceID
Additional SDKs you are using (Facebook, AdMob, etc.): qt 5.13.2 + qfirebase lib to use firebase with a qml https://github.com/Larpon/QtFirebase
Platform you are using the SDK on (Mac, Windows, or Linux): Mac
Platform you are targeting (iOS, Android, and/or desktop): IOS
Looks like it is related to changing orientation of app, during that time firebase is re-initialised and mutex is not correctly handled
Termination Signal: Segmentation fault: 11
Termination Reason: Namespace SIGNAL, Code 0xb
Terminating Process: exc handler [81193]
Triggered by Thread: 0
Thread 0 name:
Thread 0 Crashed:
0 libsystem_pthread.dylib 0x0000000190a693fc pthread_mutex_lock$VARIANT$mp + 0 (pthread_mutex.c:1491)
1 app 0x00000001025fda80 std::__1::__tree_const_iterator<std::__1::__value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, flatbuffers::EnumVal*>, std::__1::__tree_node<std::__1::__value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, flatbuffers::EnumVal*>, void*>*, long> std::__1::__tree<std::__1::__value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, flatbuffers::EnumVal*>, std::__1::__map_value_compare<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, flatbuffers::EnumVal*>, std::__1::less<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::allocator<std::__1::__value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, flatbuffers::EnumVal*> > >::find<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >+ 1694336 (std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) const + 12
2 app 0x0000000102601110 std::__1::enable_if<(__is_forward_iterator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*>::value) && (is_constructible<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::iterator_traits<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*>::reference>::value), void>::type std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >::assign<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*>+ 1708304 (std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*) + 36
3 app 0x00000001025fcc18 firebase::analytics::Initialize+ 1690648 (firebase::App const&) + 84
4 app 0x000000010252bb9c QtFirebaseAnalytics::init() + 834460 (qtfirebaseanalytics.cpp:0)
5 app 0x00000001034ca364 QQmlExpression::QQmlExpression+ 17212260 () + 2224
6 app 0x000000010252ab5c QtFirebase::requestInit() + 830300 (qtfirebase.cpp:0)
7 app 0x00000001034ca364 QQmlExpression::QQmlExpression+ 17212260 () + 2224
8 app 0x00000001034cec90 QWindowSystemInterfacePrivate::GeometryChangeEvent::GeometryChangeEvent+ 17230992 (QWindow*, QRect const&) + 120
9 app 0x00000001034c2e9c QObject::event+ 17182364 (QEvent*) + 80
10 app 0x00000001034a26f8 QObject::userData+ 17049336 (unsigned int) const + 124
11 app 0x00000001034a22cc QVector<QObjectUserData*>::resize+ 17048268 (int) + 204
12 app 0x00000001034e7bc4 QEucJpCodec::QEucJpCodec+ 17333188 () + 932
13 app 0x000000010353c9d8 QIPAddressUtils::parseIp4Internal+ 17680856 (unsigned int&, char const*, bool) + 620
14 CoreFoundation 0x0000000190cd0e1c __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 28 (CFRunLoop.c:1766)
15 CoreFoundation 0x0000000190cd0b58 __CFRunLoopDoTimer + 880 (CFRunLoop.c:2357)
16 CoreFoundation 0x0000000190cd0228 __CFRunLoopDoTimers + 276 (CFRunLoop.c:2512)
17 CoreFoundation 0x0000000190ccb364 __CFRunLoopRun + 1920 (CFRunLoop.c:0)
18 CoreFoundation 0x0000000190cca8bc CFRunLoopRunSpecific + 464 (CFRunLoop.c:3192)
19 GraphicsServices 0x000000019ab36328 GSEventRunModal + 104 (GSEvent.c:2246)
20 UIKitCore 0x0000000194d606d4 UIApplicationMain + 1936 (UIApplication.m:4753)
21 app 0x0000000102606df0 qt_main_wrapper + 820
22 libdyld.dylib 0x0000000190b55460 start + 4
Have you been able to reproduce this issue with just the Firebase C++ quickstarts (this GitHub project)? Crash happent to a user, but based on crash log it was during app being rotated and Fireabe was being reinitalized.
What's the issue repro rate? (eg 100%, 1/5 etc) Wasn't able to repro myself so would say "low".
What is C++ code for Java
AdSize.SMART_BANNER
https://developers.google.com/admob/android/banner
Pre-built SDK from the website or open-source from this repo: repo
Firebase C++ SDK version: latest
Firebase plugins in use (Auth, Database, etc.):
Additional SDKs you are using (Facebook, AdMob, etc.): none
Platform you are using the C++ SDK on (Mac, Windows, or Linux): Windows
Platform you are targeting (iOS, Android, and/or desktop): Android
(Please list the full steps to reproduce the issue. Include device logs, Unity logs, and stack traces if available.)
It must be something wrong with my setup, but I can't seem to compile the repo for Android using Gradle. When trying the following command: gradlew :app:assembleRelease I get the following build errors:
FAILURE: Build failed with an exception.
Build command failed.
Error while executing process C:\Users\joscott\AppData\Local\Android\Sdk\cmake\3.10.2.4988404\bin\cmake.exe with arguments {--build C:\projects\firebase-cpp-sdk\app.externalNativeBuild\cmake\release\x86_64 --target firebase_app}
[1/50] Building CXX object external/src/flatbuffers-build/CMakeFiles/flatbuffers.dir/src/idl_parser.cpp.o
FAILED: external/src/flatbuffers-build/CMakeFiles/flatbuffers.dir/src/idl_parser.cpp.o
C:\Users\joscott\AppData\Local\Android\Sdk\ndk\20.1.5948944\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe --target=x86_64-none-linux-android21 --gcc-toolchain=C:/Users/joscott/AppData/Local/Android/Sdk/ndk/20.1.5948944/toolchains/llvm/prebuilt/windows-x86_64 --sysroot=C:/Users/joscott/AppData/Local/Android/Sdk/ndk/20.1.5948944/toolchains/llvm/prebuilt/windows-x86_64/sysroot -Iexternal/src/flatbuffers/include -Iexternal/src/flatbuffers/grpc -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -fno-addrsig -Wa,--noexecstack -Wformat -Werror=format-security -O2 -DNDEBUG -fPIC /Zc:__cplusplus -std=gnu++11 -MD -MT external/src/flatbuffers-build/CMakeFiles/flatbuffers.dir/src/idl_parser.cpp.o -MF external\src\flatbuffers-build\CMakeFiles\flatbuffers.dir\src\idl_parser.cpp.o.d -o external/src/flatbuffers-build/CMakeFiles/flatbuffers.dir/src/idl_parser.cpp.o -c external/src/flatbuffers/src/idl_parser.cpp
clang++: error: no such file or directory: '/Zc:__cplusplus'
[2/50] Building CXX object external/src/flatbuffers-build/CMakeFiles/flatbuffers.dir/src/idl_gen_text.cpp.o
FAILED: external/src/flatbuffers-build/CMakeFiles/flatbuffers.dir/src/idl_gen_text.cpp.o
C:\Users\joscott\AppData\Local\Android\Sdk\ndk\20.1.5948944\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe --target=x86_64-none-linux-android21 --gcc-toolchain=C:/Users/joscott/AppData/Local/Android/Sdk/ndk/20.1.5948944/toolchains/llvm/prebuilt/windows-x86_64 --sysroot=C:/Users/joscott/AppData/Local/Android/Sdk/ndk/20.1.5948944/toolchains/llvm/prebuilt/windows-x86_64/sysroot -Iexternal/src/flatbuffers/include -Iexternal/src/flatbuffers/grpc -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -fno-addrsig -Wa,--noexecstack -Wformat -Werror=format-security -O2 -DNDEBUG -fPIC /Zc:__cplusplus -std=gnu++11 -MD -MT external/src/flatbuffers-build/CMakeFiles/flatbuffers.dir/src/idl_gen_text.cpp.o -MF external\src\flatbuffers-build\CMakeFiles\flatbuffers.dir\src\idl_gen_text.cpp.o.d -o external/src/flatbuffers-build/CMakeFiles/flatbuffers.dir/src/idl_gen_text.cpp.o -c external/src/flatbuffers/src/idl_gen_text.cpp
clang++: error: no such file or directory: '/Zc:__cplusplus'
[3/50] Building CXX object external/src/flatbuffers-build/CMakeFiles/flatbuffers.dir/src/code_generators.cpp.o
FAILED: external/src/flatbuffers-build/CMakeFiles/flatbuffers.dir/src/code_generators.cpp.o
C:\Users\joscott\AppData\Local\Android\Sdk\ndk\20.1.5948944\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe --target=x86_64-none-linux-android21 --gcc-toolchain=C:/Users/joscott/AppData/Local/Android/Sdk/ndk/20.1.5948944/toolchains/llvm/prebuilt/windows-x86_64 --sysroot=C:/Users/joscott/AppData/Local/Android/Sdk/ndk/20.1.5948944/toolchains/llvm/prebuilt/windows-x86_64/sysroot -Iexternal/src/flatbuffers/include -Iexternal/src/flatbuffers/grpc -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -fno-addrsig -Wa,--noexecstack -Wformat -Werror=format-security -O2 -DNDEBUG -fPIC /Zc:__cplusplus -std=gnu++11 -MD -MT external/src/flatbuffers-build/CMakeFiles/flatbuffers.dir/src/code_generators.cpp.o -MF external\src\flatbuffers-build\CMakeFiles\flatbuffers.dir\src\code_generators.cpp.o.d -o external/src/flatbuffers-build/CMakeFiles/flatbuffers.dir/src/code_generators.cpp.o -c external/src/flatbuffers/src/code_generators.cpp
clang++: error: no such file or directory: '/Zc:__cplusplus'
[4/50] Building CXX object external/src/flatbuffers-build/CMakeFiles/flatbuffers.dir/src/reflection.cpp.o
FAILED: external/src/flatbuffers-build/CMakeFiles/flatbuffers.dir/src/reflection.cpp.o
C:\Users\joscott\AppData\Local\Android\Sdk\ndk\20.1.5948944\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe --target=x86_64-none-linux-android21 --gcc-toolchain=C:/Users/joscott/AppData/Local/Android/Sdk/ndk/20.1.5948944/toolchains/llvm/prebuilt/windows-x86_64 --sysroot=C:/Users/joscott/AppData/Local/Android/Sdk/ndk/20.1.5948944/toolchains/llvm/prebuilt/windows-x86_64/sysroot -Iexternal/src/flatbuffers/include -Iexternal/src/flatbuffers/grpc -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -fno-addrsig -Wa,--noexecstack -Wformat -Werror=format-security -O2 -DNDEBUG -fPIC /Zc:__cplusplus -std=gnu++11 -MD -MT external/src/flatbuffers-build/CMakeFiles/flatbuffers.dir/src/reflection.cpp.o -MF external\src\flatbuffers-build\CMakeFiles\flatbuffers.dir\src\reflection.cpp.o.d -o external/src/flatbuffers-build/CMakeFiles/flatbuffers.dir/src/reflection.cpp.o -c external/src/flatbuffers/src/reflection.cpp
clang++: error: no such file or directory: '/Zc:__cplusplus'
[5/50] Building CXX object external/src/flatbuffers-build/CMakeFiles/flatbuffers.dir/src/util.cpp.o
FAILED: external/src/flatbuffers-build/CMakeFiles/flatbuffers.dir/src/util.cpp.o
C:\Users\joscott\AppData\Local\Android\Sdk\ndk\20.1.5948944\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe --target=x86_64-none-linux-android21 --gcc-toolchain=C:/Users/joscott/AppData/Local/Android/Sdk/ndk/20.1.5948944/toolchains/llvm/prebuilt/windows-x86_64 --sysroot=C:/Users/joscott/AppData/Local/Android/Sdk/ndk/20.1.5948944/toolchains/llvm/prebuilt/windows-x86_64/sysroot -Iexternal/src/flatbuffers/include -Iexternal/src/flatbuffers/grpc -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -fno-addrsig -Wa,--noexecstack -Wformat -Werror=format-security -O2 -DNDEBUG -fPIC /Zc:__cplusplus -std=gnu++11 -MD -MT external/src/flatbuffers-build/CMakeFiles/flatbuffers.dir/src/util.cpp.o -MF external\src\flatbuffers-build\CMakeFiles\flatbuffers.dir\src\util.cpp.o.d -o external/src/flatbuffers-build/CMakeFiles/flatbuffers.dir/src/util.cpp.o -c external/src/flatbuffers/src/util.cpp
clang++: error: no such file or directory: '/Zc:__cplusplus'
[6/50] Building flatc (the FlatBuffer schema compiler)
-- Configuring done
-- Generating done
-- Build files have been written to: C:/projects/firebase-cpp-sdk/app/.externalNativeBuild/cmake/release/x86_64/external/src/flatbuffers-build-flatc
Microsoft (R) Build Engine version 15.9.21+g9802d43bc3 for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.
flatc.vcxproj -> C:\projects\firebase-cpp-sdk\app\.externalNativeBuild\cmake\release\x86_64\external\src\flatbuffers-build-flatc\Debug\flatc.exe
ninja: build stopped: subcommand failed.
Have you been able to reproduce this issue with just the Firebase C++ quickstarts ?
What's the issue repro rate? (eg 100%, 1/5 etc)
100%
Hello Firebase SDK Team !
In my game , I used Firebase Sdk V6.0.0 with Facebook Firebase Auth feature !
It works fine on all android versions !
Now, When I updated Firebase C++ Sdk to new version 6.2.0 , I found a bug on Android 4.4.2 ( Galaxy S5 ) ! I think it can also occur on older version ( 4.x ) !
I also tested the new sdk version on some devices with android 8.x ,5.x.. versions ! All works fine except android 4.4.2 ( Galaxy S5 ) !
Here is the log from firebase :
The supplied auth credential is malformed or has expired. [ Bad access token: {"code":190,"message":"Invalid OAuth access token."}
I/AuthChimeraService: Error description received from server: INVALID_IDP_RESPONSE : Bad access token: {"code":190,"message":"Invalid OAuth access token."}
I think this bug from firebase sdk because I checked the facebook login status , It was successful !
I tested on some facebook accounts , but it's the same ! It does not occur this problem on android 8.1 (Vivo V9) , android 5.x (LG F460) ...!
Does this problem only occurs on older versions ?
Eg : android 4.x
Could Firebase SDK Team help me consider this issue ?
Thanks !
Pre-built SDK from the website or open-source from this repo: prebuild
Firebase C++ SDK version: firebase_cpp_sdk_6.12.0
Firebase plugins in use (Auth, Database, etc.): Auth
Additional SDKs you are using (Facebook, AdMob, etc.): None
Platform you are using the C++ SDK on (Mac, Windows, or Linux): Any
Platform you are targeting (iOS, Android, and/or desktop): Any
MSVC compile with: /W4
compilation warning
firebase_cpp_sdk\include\firebase/app.h(232,5): warning C4668: 'INTERNAL_EXPERIMENTAL' is not defined as a preprocessor macro, replacing with '0' for '#if/#elif'
This is regression compare to 6.2.0
Problem:
Below line
#if INTERNAL_EXPERIMENTAL
Should be replaced with
#ifdef INTERNAL_EXPERIMENTAL
Have you been able to reproduce this issue with just the Firebase C++ quickstarts ? yes
What's the issue repro rate? 100%
This error is likely to be related to https://stackoverflow.com/questions/44014877/firebase-id-token-has-invalid-signature in 2017.
admin.auth().verifyIdToken()
Firebase ID token has invalid signature. See https://firebase.google.com/docs/auth/admin/verify-id-tokens for details on how to retrieve an ID token.
I have tried to manually verify the token, and I could not verify the token to match any keys I could find. I have tried the following keys:
I believe this is a bug, not a temporary issue. And I also believe this is a supported use-case, so it needs to be fixed. As reported by the StackOverflow question, this also applies to Unity.
Thanks.
https://github.com/firebase/firebase-cpp-sdk#prerequisites requires Python2. Python2 is deprecated and has run out of support. It's not available on my system anymore (debian bullseye). Please switch to python3 which also has abseil-py and protobuf available.
When i run sample code remote_config in quickstart-cpp-master repository, i caught "A/firebase: Unable to find Method com/google/firebase/remoteconfig/FirebaseRemoteConfig.setDefaults (signature '(ILjava/lang/String;)V', instance). Please verify the AAR which contains the com/google/firebase/remoteconfig/FirebaseRemoteConfig class is included in your app." error.
Anyone have idea to fix that ? Tks
Under Android replace:
firebase::admob::Initialize(*app, kAdMobAppID);
with
firebase::admob::Initialize(GetJniEnv(), GetActivity(), kAdMobAppID);
and you get crash, as there is no such method on Android side.
Will there be a firebase version for sailfish?
Pre-built SDK from the website or open-source from this repo:
Firebase C++ SDK version: latest
Firebase plugins in use (Auth, Database, etc.): Auth
Additional SDKs you are using (Facebook, AdMob, etc.):
Platform you are using the C++ SDK on (Mac, Windows, or Linux): Mac
Platform you are targeting (iOS, Android, and/or desktop): Desktop
Currently the way to authenticate api access is to set api-key in AppOptions. Is it possible that we could also have support for initialization based on service account like Java, Go and python sdk?
Have you been able to reproduce this issue with just the Firebase C++ quickstarts ?
Yes
What's the issue repro rate? (eg 100%, 1/5 etc)
100%
Address sanitizer (android x86, NDK19) reports an error in Variant's move constructor:
07-17 07:37:03.890 31772 31772 I fbuserapp:
07-17 07:37:03.890 31772 31772 I fbuserapp: 0xa0f02b40 is located 0 bytes inside of 60-byte region [0xa0f02b40,0xa0f02b7c)
07-17 07:37:03.890 31772 31772 I fbuserapp:
07-17 07:37:03.890 31772 31772 I fbuserapp: ==31772==AddressSanitizer CHECK failed: /usr/local/google/buildbot/src/android/llvm-toolchain/toolchain/compiler-rt/lib/asan/asan_descriptions.cc:176 "((id)) != (0)" (0x0, 0x0)
Any ideas of how to handle this?
This is the relevant backtrace:
********** Crash dump: **********
Build fingerprint: 'google/sdk_gphone_x86/generic_x86:9/PSR1.180720.093/5456446:userdebug/dev-keys'
#00 0x00000b39 [vdso:ec404000] (__kernel_vsyscall+9)
#01 0x0001fdf8 /system/lib/libc.so (syscall+40)
#02 0x00022ed3 /system/lib/libc.so (abort+115)
#03 0x0005d451 /data/app/fbuserapp-tW8SRDlmxN88zZO-DIwvmQ==/lib/x86/libclang_rt.asan-i686-android.so (offset 0x52000)
??
??:0:0
#04 0x0005c0bd /data/app/fbuserapp-tW8SRDlmxN88zZO-DIwvmQ==/lib/x86/libclang_rt.asan-i686-android.so (offset 0x52000)
??
??:0:0
#05 0x000dbb09 /data/app/fbuserapp-tW8SRDlmxN88zZO-DIwvmQ==/lib/x86/libclang_rt.asan-i686-android.so (offset 0x52000)
??
??:0:0
#06 0x0005c143 /data/app/fbuserapp-tW8SRDlmxN88zZO-DIwvmQ==/lib/x86/libclang_rt.asan-i686-android.so (offset 0x52000)
??
??:0:0
#07 0x00071152 /data/app/fbuserapp-tW8SRDlmxN88zZO-DIwvmQ==/lib/x86/libclang_rt.asan-i686-android.so (offset 0x52000)
??
??:0:0
#08 0x0007269d /data/app/fbuserapp-tW8SRDlmxN88zZO-DIwvmQ==/lib/x86/libclang_rt.asan-i686-android.so (offset 0x52000)
??
??:0:0
#09 0x000743c6 /data/app/fbuserapp-tW8SRDlmxN88zZO-DIwvmQ==/lib/x86/libclang_rt.asan-i686-android.so (offset 0x52000)
??
??:0:0
#10 0x000d98e4 /data/app/fbuserapp-tW8SRDlmxN88zZO-DIwvmQ==/lib/x86/libclang_rt.asan-i686-android.so (offset 0x52000)
??
??:0:0
#11 0x000d72e5 /data/app/fbuserapp-tW8SRDlmxN88zZO-DIwvmQ==/lib/x86/libclang_rt.asan-i686-android.so (offset 0x52000)
??
??:0:0
#12 0x000d929a /data/app/fbuserapp-tW8SRDlmxN88zZO-DIwvmQ==/lib/x86/libclang_rt.asan-i686-android.so (offset 0x52000)
??
??:0:0
#13 0x000d9f38 /data/app/fbuserapp-tW8SRDlmxN88zZO-DIwvmQ==/lib/x86/libclang_rt.asan-i686-android.so (offset 0x52000) (__asan_report_store4+40)
__asan_report_store4
??:0:0
#14 0x00338e66 /data/app/fbuserapp-tW8SRDlmxN88zZO-DIwvmQ==/lib/x86/libFBUserApp.so (firebase::Variant::Variant(firebase::Variant&&)+118)
firebase::Variant::Variant(firebase::Variant&&)
??:0:0
#15 0x007f182c /data/app/fbuserapp-tW8SRDlmxN88zZO-DIwvmQ==/lib/x86/libFBUserApp.so
??
??:0:0
#16 0x007f0dad /data/app/fbuserapp-tW8SRDlmxN88zZO-DIwvmQ==/lib/x86/libFBUserApp.so (firebase::database::internal::JavaObjectToVariant(_JNIEnv*, _jobject*)+1037)
firebase::database::internal::JavaObjectToVariant(_JNIEnv*, _jobject*)
??:0:0
#17 0x007f1c42 /data/app/fbuserapp-tW8SRDlmxN88zZO-DIwvmQ==/lib/x86/libFBUserApp.so
??
??:0:0
#18 0x007f0ec4 /data/app/fbuserapp-tW8SRDlmxN88zZO-DIwvmQ==/lib/x86/libFBUserApp.so (firebase::database::internal::JavaObjectToVariant(_JNIEnv*, _jobject*)+1316)
firebase::database::internal::JavaObjectToVariant(_JNIEnv*, _jobject*)
??:0:0
Hello Firebase-Team,
It seems like that when clicking on a Dynamic Link while not having a (stable) internet connection, the link just gets completely ignored and also does not come back later when the connection is stable again.
Can we do something to make Firebase remember the dynamic links for later?
What library should be linked to fix below error?
xcode: 10.3
macos: 10.14.5
I added libraries from here:
https://firebase.google.com/docs/cpp/setup#os_x_libraries
Undefined symbols for architecture x86_64:
"_GSS_C_NT_HOSTBASED_SERVICE", referenced from:
_f_b_Curl_auth_decode_spnego_message in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_spnego_gssapi.o)
_f_b_Curl_SOCKS5_gssapi_negotiate in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_socks_gssapi.o)
"_gss_delete_sec_context", referenced from:
_f_b_Curl_auth_decode_spnego_message in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_spnego_gssapi.o)
_f_b_Curl_auth_spnego_cleanup in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_spnego_gssapi.o)
_f_b_Curl_SOCKS5_gssapi_negotiate in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_socks_gssapi.o)
"_gss_display_name", referenced from:
_f_b_Curl_SOCKS5_gssapi_negotiate in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_socks_gssapi.o)
"_gss_display_status", referenced from:
_f_b_check_gss_err in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_socks_gssapi.o)
_f_b_Curl_gss_log_error in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_curl_gssapi.o)
"_gss_import_name", referenced from:
_f_b_Curl_auth_decode_spnego_message in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_spnego_gssapi.o)
_f_b_Curl_SOCKS5_gssapi_negotiate in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_socks_gssapi.o)
"_gss_init_sec_context", referenced from:
_f_b_Curl_gss_init_sec_context in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_curl_gssapi.o)
(maybe you meant: _f_b_Curl_gss_init_sec_context)
"_gss_inquire_context", referenced from:
_f_b_Curl_SOCKS5_gssapi_negotiate in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_socks_gssapi.o)
"_gss_release_buffer", referenced from:
_f_b_Curl_auth_decode_spnego_message in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_spnego_gssapi.o)
_f_b_Curl_auth_spnego_cleanup in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_spnego_gssapi.o)
_f_b_Curl_auth_create_spnego_message in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_spnego_gssapi.o)
_f_b_Curl_SOCKS5_gssapi_negotiate in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_socks_gssapi.o)
_f_b_check_gss_err in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_socks_gssapi.o)
_f_b_Curl_gss_log_error in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_curl_gssapi.o)
"_gss_release_name", referenced from:
_f_b_Curl_auth_decode_spnego_message in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_spnego_gssapi.o)
_f_b_Curl_auth_spnego_cleanup in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_spnego_gssapi.o)
_f_b_Curl_SOCKS5_gssapi_negotiate in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_socks_gssapi.o)
"_gss_unwrap", referenced from:
_f_b_Curl_SOCKS5_gssapi_negotiate in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_socks_gssapi.o)
"_gss_wrap", referenced from:
_f_b_Curl_SOCKS5_gssapi_negotiate in libfirebase_app.a(33677b163c7b4eb0de6ea9393e320c84_socks_gssapi.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I'm developing a desktop program with Firebase, and the following code makes different result in Windows and Ubuntu.
#include <firebase/database.h>
#include <firebase/auth.h>
#include <cstdio>
int main() {
auto app = firebase::App::Create();
auto email = "...";
auto pwd = "...";
auto auth = firebase::auth::Auth::GetAuth(app);
auto value = auth->SignInWithEmailAndPassword(email, pwd);
while (value.status() == firebase::kFutureStatusPending);
if (value.status() != firebase::kFutureStatusComplete) {
printf("Invalid Result.\n");
return 1;
} else if (value.error() != firebase::database::kErrorNone) {
printf("Error %d: %s\n",
value.error(), value.error_message());
return 1;
} else {
return 0;
}
}
While in Windows, the program returns 0, in Ubuntu, the program prints Error 1: An internal error has occurred.
google-services.json is in the working directory.
I have tried to look for the answers how add firebase-cpp-sdk to visual studio 2019 project but i can't find anything useful.
when will there be support for Firestore?
Firebase C++ SDK version: 6.7.0
Firebase plugins in use (Auth, Database, etc.): app
Additional SDKs you are using (Facebook, AdMob, etc.):
Platform you are using the C++ SDK on (Mac, Windows, or Linux): Linux
Platform you are targeting (iOS, Android, and/or desktop): decktop
added include to project
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/firebase/)
Here is the code to reproduce
#include "firebase/app.h"
int main()
{
return 0;
}
firebase/firebase/variant.h:357:18: error: expected unqualified-id before numeric constant
static Variant False() { return Variant::FromBool(false); }
^
firebase/firebase/variant.h:362:18: error: expected unqualified-id before numeric constant
static Variant True() { return Variant::FromBool(true); }
What's the issue repro rate? (eg 100%, 1/5 etc) 5
If I add firebase cpp sdk into my project and bundle this project for ios, my applicationDidBecomeActive in UIApplicationDelegate doesn't work anymore (even without sdk initialization).
ios sdk version 5.20.2 Analytics
firebase_cpp_sdk 5.7.0
According to https://clang.llvm.org/extra/clang-tidy/checks/performance-noexcept-move-constructor.html
Move constructors of all the types used with STL containers, for example, need to be declared noexcept. Otherwise STL will choose copy constructors instead. The same is valid for move assignment operations.
I think this is particularly important for Variant itself that sometimes is a vector of Variant
Do You plan to add official support for Arduino/ESP8266/ESP32?
There is library that is created by people from Google, but it isn't supported by Google - https://github.com/FirebaseExtended/firebase-arduino
Because database secrets are deprecated this library is missing new auth schema - FirebaseExtended/firebase-arduino#224
If this library would support Arduino/ESP8266/ESP32 then Firebase could be used widely with IOT devices.
Please consider this. The most important fearure is Realtime database support.
Pre-built SDK from the website or open-source from this repo: Pre-built SDK
Firebase C++ SDK version: 6.12.0
Firebase plugins in use (Auth, Database, etc.): Storage
Additional SDKs you are using (Facebook, AdMob, etc.): None
Platform you are using the C++ SDK on (Mac, Windows, or Linux): Linux
Platform you are targeting (iOS, Android, and/or desktop): Desktop (Linux)
(Please list the full steps to reproduce the issue. Include device logs, Unity logs, and stack traces if available.)
When I include Firebase Storage in my program, the imported libraries can't find their own imports. I have put the firebase_cpp_sdk
directory next to my source file in src/
. This is the directory structure of my program:
├── CMakeLists.txt
├── README.md
├── src
│ ├── firebase_cpp_sdk
│ │ ├── Android, frameworks, include, libs etc
│ └── main.cpp
1115 directories, 4058 files
Here is the relevant bit of my main.cpp (nothing else in it relates to Firebase at all):
#include "iostream"
#include "firebase_cpp_sdk/include/app.h"
#include "firebase_cpp_sdk/include/storage.h"
int main(int, char**) {
// Initialise the Firebase app
firebase::App * firebaseApp = firebase::App::Create(firebase::AppOptions());
firebase::storage::Storage* firebaseStorage = firebase::storage::Storage::GetInstance(firebaseApp);
// Creates a reference to the bucket
firebase::storage::StorageReference bucketReference = firebaseStorage->GetReferenceFromUrl("gs://arduino-project-234f5.appspot.com");
Here is my CMakeLists.txt, although the same error still occurs when just doing g++ main.cpp
:
cmake_minimum_required(VERSION "3.17.0")
project("camera-software")
file(GLOB camera-software_SRC
"src/*"
)
# Sets the flags to include OpenCV. Should probably remove the unused ones
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -I/usr/include/opencv -lopencv_core -lopencv_highgui")
add_executable("${PROJECT_NAME}" "${camera-software_SRC}")
install(TARGETS "${PROJECT_NAME}" DESTINATION bin)
install(FILES "main.cpp" DESTINATION src)
Here is the error:
In file included from firebase_cpp_sdk/include/storage.h:23,
from main.cpp:4:
firebase_cpp_sdk/include/firebase/storage/controller.h:18:10: fatal error: firebase/storage/storage_reference.h: No such file or directory
18 | #include "firebase/storage/storage_reference.h"
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
Pre-built SDK from the website:
Firebase C++ SDK version: 6.8.0
Firebase plugins in use (Auth, Database, etc.): Analytics, Remote Config, Dynamic Links
Additional SDKs you are using (Facebook, AdMob, etc.): Cocos2d-x 3.17
Platform you are using the C++ SDK on (Mac, Windows, or Linux): Mac
Platform you are targeting (iOS, Android, and/or desktop): Desktop
I am trying to upgrade Firebase in my Cocos2d-x project from version 5.6.0 to 6.8.0. Everything was building fine with 5.6.0 however after substituting Firebase sources with 6.8.0 ones and resolving missing dependencies I get the following symbol conflict with the prebuilt version of cocos2d-x static lib:
duplicate symbol 'flatbuffers::MakeCamel(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, bool)' in:
/Applications/Cocos/Cocos2d-x/cocos2d-x-3.17/prebuilt/mac/libcocos2d Mac.a(idl_gen_general.o)
/Users/user/Projects/Cocos/TileGame/external/firebase_cpp_sdk/frameworks/darwin/x86_64/firebase.framework/firebase(6eeb4ec1b7654fac8ff5c92573f1d7a3_idl_parser.o)
ld: 1 duplicate symbol for architecture x86_64
libcocos2d Mac.a
includes flatbuffers verbatim and it seems that interaction with Firebase 5.6.0 was possible because of some kind of renaming scheme in place in the Firebase sources (note the namespace is f_b_flatbuffers in 5.6.0 vs flatbuffers in 6.8.0):
external/firebase_cpp_sdk-old/frameworks/darwin/universal/firebase.framework/firebase(bc365d2402c329b3ab8113d22eb92bb5_idl_parser.o):
0000000000000000 T f_b_flatbuffers::MakeCamel(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, bool)
In the 6.8.0 flatbuffers is included verbatim just like in cocos2d-x lib, causing the linker to report duplicate symbol when both libraries are used together:
external/firebase_cpp_sdk/frameworks/darwin/universal/firebase.framework/firebase(6eeb4ec1b7654fac8ff5c92573f1d7a3_idl_parser.o):
0000000000000000 T flatbuffers::MakeCamel(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, bool)
I was wondering in what version of Firebase was the renaming dropped and whether you guys plan on keeping it that way? I am not super familiar with Xcode's build system, do I need any additional flags to link against Firebase 6.8.0 framework on Mac OS to avoid these conflicts? I don't get this issue when targeting iOS while I also don't see any renaming in place on iOS in the 5.6.0, so I'm not sure what's happening.
Have you been able to reproduce this issue with just the Firebase C++ quickstarts ? N/A
What's the issue repro rate? (eg 100%, 1/5 etc) 100%
When I follow the download link on https://firebase.google.com/download/cpp, I get firebase_cpp_sdk_6.6.1.zip, but I don't see a tag for it. Am I'm missing something, is the zip wrongly named, or did someone forget to push the tag?
The first interstitial (loaded after InitializeLastResult() completes) works fine, but if I try to load another ad on OnPresentationStateChanged(ad, kPresentationStateHidden) it fails with InternalSDKError
Only way I could make it work was by creating a new firebase::admob::InterstitialAd and load there, but it's a bit of a hassle. Is this intended behaviour?
Pre-built SDK from the website or open-source from this repo:
Open source from: https://github.com/firebase/firebase-cpp-sdk.git
Firebase C++ SDK version: firebase_cpp_sdk_6.12.0
Firebase plugins in use (Auth, Database, etc.): Auth
Additional SDKs you are using (Facebook, AdMob, etc.): none
Platform you are using the C++ SDK on (Mac, Windows, or Linux): Mac
Platform you are targeting (iOS, Android, and/or desktop): iOS
(Please list the full steps to reproduce the issue. Include device logs, Unity logs, and stack traces if available.)
I am trying to build firebase-cpp-sdk using CMake on MacOSX, targeting iOS.
When I run: cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchains/ios.cmake ..
I get the following error:
[100%] Built target protobuf
-- Failed to find LLVM FileCheck
-- git Version: v0.0.0
-- Version: 0.0.0
-- Performing Test HAVE_THREAD_SAFETY_ATTRIBUTES -- failed to compile
-- Performing Test HAVE_STD_REGEX -- compiled but failed to run
-- Performing Test HAVE_GNU_POSIX_REGEX -- failed to compile
-- Performing Test HAVE_POSIX_REGEX -- compiled but failed to run
CMake Error at ios_build/external/src/firestore-build/external/src/benchmark/CMakeLists.txt:251 (message):
Failed to determine the source files for the regular expression backend
From the CMakeError.log:
Run Build Command(s):/usr/bin/make cmTC_fe8f5/fast && /Applications/Xcode.app/Contents/Developer/usr/bin/make -f CMakeFiles/cmTC_fe8f5.dir/build.make CMakeFiles/cmTC_fe8f5.dir/build
Building CXX object CMakeFiles/cmTC_fe8f5.dir/src.cxx.o
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -std=c++11 -Wall -Wextra -Wshadow -pedantic -pedantic-errors -Wshorten-64-to-32 -fstrict-aliasing -Wno-deprecated-declarations -fno-exceptions -Wstrict-aliasing -DHAVE_CXX_FLAG_WD654 -wd654 -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.2.sdk -wd654 -o CMakeFiles/cmTC_fe8f5.dir/src.cxx.o -c /Users/schramm/Desktop/firebase-cpp-sdk/ios_build/CMakeFiles/CMakeTmp/src.cxx
clang: error: unknown argument: '-wd654'
clang: error: unknown argument: '-wd654'
make[1]: *** [CMakeFiles/cmTC_fe8f5.dir/src.cxx.o] Error 1
make: *** [cmTC_fe8f5/fast] Error 2
Can anyone help me?
We have increased ANR in our app for some time now. When executing the destructor of ~BannerView() there seems to be a deadlock in the mutex of BannerViewInternalAndroid
It is noticeable that these ANR only occur on Android 9.
Do you have any ideas on cause? How can we help you narrow down the problem?
We using firebase-cpp version 5.6.1
"qtMainLoopThread" prio=5 tid=14 Native
| group="main" sCount=1 dsCount=0 flags=1 obj=0x13000708 self=0xd2f08600
| sysTid=22096 nice=0 cgrp=default sched=0/0 handle=0xd2dff970
| state=S schedstat=( 9056905915 6631793329 5093 ) utm=737 stm=168 core=0 HZ=100
| stack=0xd2cfc000-0xd2cfe000 stackSize=1042KB
| held mutexes=
#00 pc 0000000000019e0c /system/lib/libc.so (syscall+28)
#1 pc 000000000001d527 /system/lib/libc.so (__futex_wait_ex(void volatile*, bool, int, bool, timespec const*)+86)
#2 pc 000000000006538b /system/lib/libc.so (NonPI::MutexLockWithTimeout(pthread_mutex_internal_t*, bool, timespec const*)+154)
#3 pc 00000000001c0f67 /data/app/de.bitspree.pico.islands-wctmlti9_uuQI6dNFFX5Hw==/lib/arm/libpico-islands.so (firebase::admob::internal::BannerViewInternalAndroid::~BannerViewInternalAndroid()+126)
#4 pc 00000000001c103d /data/app/de.bitspree.pico.islands-wctmlti9_uuQI6dNFFX5Hw==/lib/arm/libpico-islands.so (firebase::admob::internal::BannerViewInternalAndroid::~BannerViewInternalAndroid()+4)
#5 pc 00000000001c2a91 /data/app/de.bitspree.pico.islands-wctmlti9_uuQI6dNFFX5Hw==/lib/arm/libpico-islands.so (firebase::admob::BannerView::~BannerView()+24)
#6 pc 000000000014d07b /data/app/de.bitspree.pico.islands-wctmlti9_uuQI6dNFFX5Hw==/lib/arm/libpico-islands.so (Logic::FirebaseBanner::~FirebaseBanner()+278)
at org.qtproject.qt5.android.QtNative.startQtApplication (Native method)
at org.qtproject.qt5.android.QtNative$7.run (QtNative.java:374)
at org.qtproject.qt5.android.QtThread$1.run (QtThread.java:61)
at java.lang.Thread.run (Thread.java:764)
According to
https://firebase.google.com/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html#public-void-setconfigsettings-firebaseremoteconfigsettings-settings
C++ SDK uses deprecated methods activateFetched, setConfigSettings
When I'm trying to build Firebase SDK 5.7.0 I'm receiving next error (with 5.6.1 everything works fine).
armeabi-v7a/gnustl
Android:GCC 4.8
Android: NDK 10e, Build Tools 23.0.2, Api Level 14
Log:
/opt/android-ndk-r16b/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:878: error: undefined reference to 'std::__throw_out_of_range_fmt(char const*, ...)'
collect2: error: ld returned 1 exit status
After I finally managed to build my Qt App for iOS (it works fine on Android already) with qmake (didn't know that I have to link to Analytics) the call to:
PhoneAuthProvider.VerifyPhoneNumber("+5511912344321", 2000, nullptr, listener);
Is crashing, is there a debug version of the CPP or IOS SDKs?
All I get is:
libc++abi.dylib: terminating with uncaught exception of type NSException
Any tips?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.