capacitor-community / firebase-crashlytics Goto Github PK
View Code? Open in Web Editor NEW⚡️ Capacitor plugin for Firebase Crashlytics.
License: MIT License
⚡️ Capacitor plugin for Firebase Crashlytics.
License: MIT License
Is your feature request related to a problem? Please describe.
I've followed the readme instructions and it works for Android but not for iOS. I don't see any crash reports in firebase (I.did crash the app several times). I've tried to follow the instructions from google, but still no luck
Describe the solution you'd like
just some tips about how to make it work in iOS
with breaking changes
Current behavior:
BOM setup causing app to crash on load. Anyone suggest a workaround?
https://firebase.google.com/docs/crashlytics/get-started?platform=android#add-plugin
implementation platform('com.google.firebase:firebase-bom:28.4.0')
Expected behavior:
Not crashing
Steps to reproduce:
Related code:
MainActivity.java
registerPlugin(FirebaseCrashlyticsPlugin.class);
build.gradle (project level)
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:4.2.2'
classpath 'com.google.gms:google-services:4.3.5'
// Add the Crashlytics Gradle plugin
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.7.1'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
apply from: "variables.gradle"
allprojects {
repositories {
google()
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
app\build.gradle
apply from: 'capacitor.build.gradle'
try {
def servicesJSON = file('google-services.json')
if (servicesJSON.text) {
apply plugin: 'com.google.gms.google-services'
// Apply the Crashlytics Gradle plugin
apply plugin: 'com.google.firebase.crashlytics'
dependencies {
// Import the BoM for the Firebase platform
implementation platform('com.google.firebase:firebase-bom:28.4.0')
// Declare the dependencies for the Crashlytics and Analytics libraries
// When using the BoM, you don't specify versions in Firebase library dependencies
implementation 'com.google.firebase:firebase-crashlytics'
implementation 'com.google.firebase:firebase-analytics'
}
}
} catch(Exception e) {
logger.warn("google-services.json not found, google-services plugin not applied. Push Notifications won't work")
}
Other information:
Capacitor doctor:
λ npx cap doctor android
Capacitor Doctor
Latest Dependencies:
@capacitor/cli: 3.2.0
@capacitor/core: 3.2.0
@capacitor/android: 3.2.0
@capacitor/ios: 3.2.0
Installed Dependencies:
@capacitor/cli: 3.0.0
@capacitor/core: 3.0.0
@capacitor/android: 3.0.0
@capacitor/ios: 3.0.0
[success] Android looking great! �
Is your feature request related to a problem? Please describe:
Currently, if you pass a stracktrace, the name is automatically set to "Unhandled Javascript exception". This makes it quite difficult to differentiate errors in the Crashlytics portal.
Describe the solution you'd like:
It would be great if we could optionally specify a custom name.
Describe alternatives you've considered:
Dropping stack trace and using domain and code, but this is only available on iOS.
Hi,
I installed capacitor-crashlytics , npm install --save capacitor-crashlytics,trying to track the crashlytics but its not showing in firebase crashlytics account,can you help on this how to integrate using capacitor
Plugin version:
1.2.0
Platform(s):
ios
Current behavior:
After installing @capacitor-community/firebase-crashlytics , running npx cap sync
generates this error:
✖ Updating iOS native dependencies with pod install - failed!
✖ update ios - failed!
[error] Analyzing dependencies
[!] CocoaPods could not find compatible versions for pod
"GoogleUtilities/Environment":
In Podfile:
CapacitorCommunityFirebaseCrashlytics (from
../../node_modules/@capacitor-community/firebase-crashlytics
) was
resolved to 1.2.0, which depends on
Firebase/Crashlytics (= 8.4.0) was resolved to 8.4.0, which depends on
FirebaseCrashlytics ( ~> 8.4.0) was resolved to 8.4.0, which depends on
GoogleUtilities/Environment ( ~> 7.4)
CordovaPluginsStatic (from../capacitor-cordova-ios-plugins
) was
resolved to 3.3.3, which depends on
GoogleUtilities ( ~> 7.2.2) was resolved to 7.2.2, which depends on
GoogleUtilities/Environment (= 7.2.2)
Steps to reproduce:
On a capacitor project run:
npm install @capacitor/ios
npx cap add ios
npm install @capacitor-community/firebase-crashlytics
npx cap sync
Capacitor doctor:
💊 Capacitor Doctor 💊
Latest Dependencies:
@capacitor/cli: 3.4.0
@capacitor/core: 3.4.0
@capacitor/android: 3.4.0
@capacitor/ios: 3.4.0
Installed Dependencies:
@capacitor/cli: 3.3.3
@capacitor/core: 3.3.3
@capacitor/ios: 3.3.4
@capacitor/android: 3.3.3
[success] iOS looking great! 👌
[success] Android looking great! 👌
Plugin version:
"@capacitor-community/firebase-crashlytics": "^1.1.0"
Platform(s):
android/ios
Current behavior:
npx cap sync
I get this error
✖ Updating iOS native dependencies with pod install - failed!
✖ update ios - failed!
[error] Analyzing dependencies
[!] CocoaPods could not find compatible versions for pod "Firebase/Crashlytics":
In Podfile:
CapacitorCommunityFirebaseCrashlytics (from `../../node_modules/@capacitor-community/firebase-crashlytics`) was
resolved to 1.1.0, which depends on
Firebase/Crashlytics (= 8.4.0)
None of your spec sources contain a spec satisfying the dependency: `Firebase/Crashlytics (= 8.4.0)`.
You have either:
* out-of-date source repos which you can update with `pod repo update` or with `pod install --repo-update`.
* mistyped the name or version.
* not added the source repo that hosts the Podspec to your Podfile.
Capacitor doctor:
💊 Capacitor Doctor 💊
Latest Dependencies:
@capacitor/cli: 3.2.3
@capacitor/core: 3.2.3
@capacitor/android: 3.2.3
@capacitor/ios: 3.2.3
Installed Dependencies:
@capacitor/cli: 3.1.2
@capacitor/core: 3.1.2
@capacitor/android: 3.1.2
@capacitor/ios: 3.1.2
Are you planing on doing a new release?
Plugin version:
Version 3.0.0
Platform(s):
iOS 17.0.1
Current behavior:
My Ionic app crash at compile time with the following errors:
Expected behavior:
The app should not crash.
Steps to reproduce:
Add the firebase-ios-sdk
dependency as stated by the Firebase documentation.
Workaround:
Just don't add the firebase-ios-sdk
dependency and it will work fine without it.
Capacitor doctor:
💊 Capacitor Doctor 💊
Latest Dependencies:
@capacitor/cli: 5.4.1
@capacitor/core: 5.4.1
@capacitor/android: 5.4.1
@capacitor/ios: 5.4.1
Installed Dependencies:
@capacitor/cli: 5.0.1
@capacitor/core: 5.0.5
@capacitor/android: 5.0.5
@capacitor/ios: 5.0.5
[success] iOS looking great! 👌
[error] Missing <manifest package=""> attribute in app/src/main
Describe the bug
calling setEnabled does finished without exception but it does not set it enabled.
Logging is not working afterward.
To Reproduce
Steps to reproduce the behavior:
await this.platform.ready();
await FirebaseCrashlytics.setEnabled({
enabled: true
});
const test = await FirebaseCrashlytics.isEnabled();
Versions
"@capacitor-community/firebase-crashlytics": "^0.3.0"
"@capacitor/android": "^2.4.1",
"@capacitor/core": "^2.4.1",
"@angular/fire": "^6.0.2",
"firebase": "^7.20.0",
Phone
API 30
Hello,
I installed the package without any error but when I launch the command npx cap sync
, I get an error with Cocoapods:
LoadError - dlopen(/Library/Ruby/Gems/2.6.0/gems/ffi-1.15.5/lib/ffi_c.bundle, 0x0009): tried:
'/Library/Ruby/Gems/2.6.0/gems/ffi-1.15.5/lib/ffi_c.bundle' (mach-o file, but is an incompatible architecture
(have 'arm64', need 'x86_64')),
'/System/Volumes/Preboot/Cryptexes/OS/Library/Ruby/Gems/2.6.0/gems/ffi-1.15.5/lib/ffi_c.bundle' (no such file),
'/Library/Ruby/Gems/2.6.0/gems/ffi-1.15.5/lib/ffi_c.bundle' (mach-o file, but is an incompatible architecture
(have 'arm64', need 'x86_64')) - /Library/Ruby/Gems/2.6.0/gems/ffi-1.15.5/lib/ffi_c.bundle
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in
`require'
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in
`require'
/Library/Ruby/Gems/2.6.0/gems/ffi-1.15.5/lib/ffi.rb:5:in `rescue in <top (required)>'
/Library/Ruby/Gems/2.6.0/gems/ffi-1.15.5/lib/ffi.rb:2:in `<top (required)>'
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in
`require'
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in
`require'
/Library/Ruby/Gems/2.6.0/gems/ethon-0.12.0/lib/ethon.rb:2:in `<top (required)>'
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in
`require'
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in
`require'
/Library/Ruby/Gems/2.6.0/gems/typhoeus-1.4.0/lib/typhoeus.rb:2:in `<top (required)>'
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in
`require'
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in
`require'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.14.3/lib/cocoapods-core/cdn_source.rb:440:in
`download_typhoeus_impl_async'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.14.3/lib/cocoapods-core/cdn_source.rb:372:in
`download_and_save_with_retries_async'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.14.3/lib/cocoapods-core/cdn_source.rb:365:in
`download_file_async'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.14.3/lib/cocoapods-core/cdn_source.rb:338:in `download_file'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.14.3/lib/cocoapods-core/cdn_source.rb:284:in
`ensure_versions_file_loaded'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.14.3/lib/cocoapods-core/cdn_source.rb:208:in `search'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.14.3/lib/cocoapods-core/source/aggregate.rb:83:in `block in
search'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.14.3/lib/cocoapods-core/source/aggregate.rb:83:in `select'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.14.3/lib/cocoapods-core/source/aggregate.rb:83:in `search'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/lib/cocoapods/resolver.rb:416:in `create_set_from_sources'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/lib/cocoapods/resolver.rb:385:in `find_cached_set'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/lib/cocoapods/resolver.rb:360:in `specifications_for_dependency'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/lib/cocoapods/resolver.rb:165:in `search_for'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/lib/cocoapods/resolver.rb:274:in `block in sort_dependencies'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/lib/cocoapods/resolver.rb:267:in `each'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/lib/cocoapods/resolver.rb:267:in `sort_by'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/lib/cocoapods/resolver.rb:267:in `sort_by!'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/lib/cocoapods/resolver.rb:267:in `sort_dependencies'
/Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/delegates/specification_provider.rb:60:in `block in
sort_dependencies'
/Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/delegates/specification_provider.rb:77:in
`with_no_such_dependency_error_handling'
/Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/delegates/specification_provider.rb:59:in
`sort_dependencies'
/Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:754:in `push_state_for_requirements'
/Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:744:in
`require_nested_dependencies_for'
/Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:727:in `activate_new_spec'
/Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:684:in `attempt_to_activate'
/Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:254:in `process_topmost_state'
/Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:182:in `resolve'
/Library/Ruby/Gems/2.6.0/gems/molinillo-0.8.0/lib/molinillo/resolver.rb:43:in `resolve'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/lib/cocoapods/resolver.rb:94:in `resolve'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/lib/cocoapods/installer/analyzer.rb:1082:in `block in
resolve_dependencies'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/lib/cocoapods/user_interface.rb:64:in `section'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/lib/cocoapods/installer/analyzer.rb:1080:in
`resolve_dependencies'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/lib/cocoapods/installer/analyzer.rb:125:in `analyze'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/lib/cocoapods/installer.rb:422:in `analyze'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/lib/cocoapods/installer.rb:244:in `block in resolve_dependencies'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/lib/cocoapods/user_interface.rb:64:in `section'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/lib/cocoapods/installer.rb:243:in `resolve_dependencies'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/lib/cocoapods/installer.rb:162:in `install!'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/lib/cocoapods/command/install.rb:52:in `run'
/Library/Ruby/Gems/2.6.0/gems/claide-1.0.3/lib/claide/command.rb:334:in `run'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/lib/cocoapods/command.rb:52:in `run'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.14.3/bin/pod:55:in `<top (required)>'
/usr/local/bin/pod:23:in `load'
/usr/local/bin/pod:23:in `<main>'
When I uninstall the package and run the command npx cap sync
, I don't have any error.
Should I update something to use this package?
I am working on macos Sonoma 14.1.1 with an Apple M2 processor and the project is an Ionic/Capacitor project at the latest major updates.
Thanks for your help,
Loïc
Plugin version:
1.3.0 (latest)
Platform(s):
Android
Current behavior:
sendUnsentReports does not send unsent reports, see code snippet
Expected behavior:
Steps to reproduce:
Call code snippet with an string
const recordExceptionWithStacktrace = async (error) => {
FirebaseCrashlytics.recordException({
message: 'This is a non-fatal message.',
error
}).then(()=>{
console.log('sending unsent reports')
FirebaseCrashlytics.sendUnsentReports().then(()=>{
console.log('reports succesfully sent');
});
})
};
Capacitor doctor:
💊 Capacitor Doctor 💊
Latest Dependencies:
@capacitor/cli: 4.4.0
@capacitor/core: 4.4.0
@capacitor/android: 4.4.0
@capacitor/ios: 4.4.0
Installed Dependencies:
@capacitor/cli: 3.9.0
@capacitor/core: 3.9.0
@capacitor/android: 3.9.0
@capacitor/ios: 3.9.0
[success] Android looking great! 👌
[error] Xcode is not installed```
Is your feature request related to a problem? Please describe:
When I view my crashlytic events, the stack trace does not reveal the actual stack trace of where it occurred in my angular application.
Describe the solution you'd like:
I'd like to be able to see the stack trace of where the crash or non-fatal exception occurred in my angular code, or at least some information to help me track it down.
Describe alternatives you've considered:
Not sure if there are other alternatives?
Additional context:
Here is an image of the stack trace on the main dashboard:
Plugin version:
1.3.0
Platform(s):
Capacitor v3
Android API 30
Current behavior:
Android app crashes on Launch, with an error:
java.lang.IllegalStateException: Default FirebaseApp is not initialized in this process com.my.appbundle. Make sure to call FirebaseApp.initializeApp(Context) first.
Expected behavior:
Everything works fine on iOS, issue is only on Android.
Related code:
Here's my android/build.gradle:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:4.2.1'
classpath 'com.google.gms:google-services:4.3.5'
// Add the Crashlytics Gradle plugin
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.8.1'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
apply from: "variables.gradle"
allprojects {
repositories {
google()
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Here's my android/app/build.gradle:
apply plugin: 'com.android.application'
// Apply the Crashlytics Gradle plugin
apply plugin: 'com.google.firebase.crashlytics'
android {
compileSdkVersion rootProject.ext.compileSdkVersion
defaultConfig {
applicationId "com.my.appbundle"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode rootProject.ext.versionCode
versionName rootProject.ext.versionName
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
aaptOptions {
// Files and dirs to omit from the packaged assets dir, modified to accommodate modern web apps.
// Default: https://android.googlesource.com/platform/frameworks/base/+/282e181b58cf72b6ca770dc7ca5f91f135444502/tools/aapt/AaptAssets.cpp#61
ignoreAssetsPattern '!.svn:!.git:!.ds_store:!*.scc:.*:!CVS:!thumbs.db:!picasa.ini:!*~'
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
repositories {
flatDir{
dirs '../capacitor-cordova-android-plugins/src/main/libs', 'libs'
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation "androidx.appcompat:appcompat:$androidxAppCompatVersion"
implementation project(':capacitor-android')
testImplementation "junit:junit:$junitVersion"
androidTestImplementation "androidx.test.ext:junit:$androidxJunitVersion"
androidTestImplementation "androidx.test.espresso:espresso-core:$androidxEspressoCoreVersion"
implementation project(':capacitor-cordova-android-plugins')
}
apply from: 'capacitor.build.gradle'
try {
def servicesJSON = file('google-services.json')
if (servicesJSON.text) {
apply plugin: 'com.google.gms.google-services'
}
} catch(Exception e) {
logger.info("google-services.json not found, google-services plugin not applied. Push Notifications won't work")
}
Other information:
I installed this plugin after I already had:
"@capacitor-community/firebase-analytics": "^1.0.1",
```
**Capacitor doctor:**
```
💊 Capacitor Doctor 💊
Latest Dependencies:
@capacitor/cli: 3.5.1
@capacitor/core: 3.5.1
@capacitor/android: 3.5.1
@capacitor/ios: 3.5.1
Installed Dependencies:
@capacitor/cli: 3.4.3
@capacitor/android: 3.4.3
@capacitor/ios: 3.4.3
@capacitor/core: 3.4.3
[success] iOS looking great! 👌
[success] Android looking great! 👌
```
There is a type error in:
import com.getcapacitor.community.firebasecrashlytic.FirebaseCrashlytics;
It should be:
import com.getcapacitor.community.firebasecrashlytics.FirebaseCrashlytics;
Plugin version:
@capacitor-community/[email protected]
npm
@capacitor/[email protected]
@capacitor/android": "^4.6.1
Dev dependency
"@capacitor/cli": "^4.6.1
Platform(s):
Android
Current behavior:
Expected behavior:
Steps to reproduce:
Install @capacitor/[email protected] and try to install latest firebase-crashlytics plugin.
Related code:
insert short code snippets here
Other information:
Capacitor doctor:
insert the output from `npx cap doctor` here
Plugin version:
"@capacitor-community/firebase-crashlytics": "^2.0.0",
Platform(s):
ionic 6
capacitor 4
Creating a build for ios app.
Current behavior:
After installing firebase-crashlytics package. try to build my app on ios, getting above error.
Expected behavior:
Build should be successful after installing this package.
Steps to reproduce:
1- install the package using npm.
2- run ionic build cmd for ios
3- open xcode and click to create build for emulator iphone 14
Other information:
NOTE: try to execute pod install inside ios/App folder. returning a warning
Unable to read the license file LICENSE
for the spec GoogleUtilities (7.11.1)
Generated duplicate UUIDs
Capacitor doctor:
Latest Dependencies:
@capacitor/cli: 5.0.5
@capacitor/core: 5.0.5
@capacitor/android: 5.0.5
@capacitor/ios: 5.0.5
Installed Dependencies:
@capacitor/cli: 4.6.2
@capacitor/core: 4.6.2
@capacitor/android: 4.6.2
@capacitor/ios: 4.6.2
Please help, stuck because of it, couldn't publish new build
ERROR in node_modules/@capacitor-community/firebase-crashlytics/dist/esm/index.d.ts:1:13 - error TS1005: '=' expected.
1 import type { FirebaseCrashlyticsPlugin } from './definitions';
~
node_modules/@capacitor-community/firebase-crashlytics/dist/esm/index.d.ts:1:48 - error TS1005: ';' expected.
1 import type { FirebaseCrashlyticsPlugin } from './definitions';
After installing this latest(V1.0.0) in Capacitor 3 app. It getting crashed while running in emulator. Getting below error in logcat;
2021-06-16 14:24:25.215 1730-1730/com.wipro.mycommunication E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.wipro.mycommunication, PID: 1730
java.lang.RuntimeException: Unable to get provider com.google.firebase.provider.FirebaseInitProvider: java.lang.IllegalStateException: The Crashlytics build ID is missing. This occurs when Crashlytics tooling is absent from your app's build configuration. Please review Crashlytics onboarding instructions and ensure you have a valid Crashlytics account.
at android.app.ActivityThread.installProvider(ActivityThread.java:6988)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:6528)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6445)
at android.app.ActivityThread.access$1300(ActivityThread.java:219)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1859)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:7356)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
Caused by: java.lang.IllegalStateException: The Crashlytics build ID is missing. This occurs when Crashlytics tooling is absent from your app's build configuration. Please review Crashlytics onboarding instructions and ensure you have a valid Crashlytics account.
at com.google.firebase.crashlytics.internal.common.CrashlyticsCore.onPreExecute(CrashlyticsCore.java:125)
at com.google.firebase.crashlytics.FirebaseCrashlytics.init(FirebaseCrashlytics.java:142)
at com.google.firebase.crashlytics.CrashlyticsRegistrar.buildCrashlytics(CrashlyticsRegistrar.java:58)
at com.google.firebase.crashlytics.CrashlyticsRegistrar.lambda$Pfd5XmDCFzNyAT9o9H6rDnTBQE4(Unknown Source:0)
at com.google.firebase.crashlytics.-$$Lambda$CrashlyticsRegistrar$Pfd5XmDCFzNyAT9o9H6rDnTBQE4.create(Unknown Source:2)
at com.google.firebase.components.ComponentRuntime.lambda$discoverComponents$0$ComponentRuntime(ComponentRuntime.java:132)
at com.google.firebase.components.-$$Lambda$ComponentRuntime$4FqOW9eOQsvFYo-HpMfxCOnPQr0.get(Unknown Source:4)
at com.google.firebase.components.Lazy.get(Lazy.java:53)
at com.google.firebase.components.ComponentRuntime.doInitializeEagerComponents(ComponentRuntime.java:291)
at com.google.firebase.components.ComponentRuntime.initializeEagerComponents(ComponentRuntime.java:281)
at com.google.firebase.FirebaseApp.initializeAllApis(FirebaseApp.java:584)
at com.google.firebase.FirebaseApp.initializeApp(FirebaseApp.java:303)
at com.google.firebase.FirebaseApp.initializeApp(FirebaseApp.java:267)
at com.google.firebase.FirebaseApp.initializeApp(FirebaseApp.java:252)
at com.google.firebase.provider.FirebaseInitProvider.onCreate(FirebaseInitProvider.java:51)
at android.content.ContentProvider.attachInfo(ContentProvider.java:2092)
at android.content.ContentProvider.attachInfo(ContentProvider.java:2066)
at com.google.firebase.provider.FirebaseInitProvider.attachInfo(FirebaseInitProvider.java:45)
at android.app.ActivityThread.installProvider(ActivityThread.java:6983)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:6528)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6445)
at android.app.ActivityThread.access$1300(ActivityThread.java:219)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1859)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:7356)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
Can anyone suggest what i am lacking for this?
Current behavior:
When i run my code in angular ionic, it produce only none fatal errors, but, crash looks like not work.
Expected behavior:
I wish to see crash as well
Steps to reproduce:
i installed version 0.4.0, i use capacitor 2.
Related code:
import { Plugins, Capacitor } from '@capacitor/core';
const { FirebaseCrashlytics } = Plugins;
FirebaseCrashlytics.recordException({
message: "This is a non-fatal message",
code: 403, // optional, default is -1001
domain: "capacitor", // optional
}).then( () => {
FirebaseCrashlytics.crash();
});
Other information:
Capacitor doctor:
Latest Dependencies:
@capacitor/cli: 3.1.1
@capacitor/core: 3.1.1
@capacitor/android: 3.1.1
@capacitor/electron: 3.1.1
@capacitor/ios: 3.1.1
Installed Dependencies:
@capacitor/cli 2.4.8
@capacitor/android 2.4.8
@capacitor/core 2.4.8
@capacitor/ios 2.4.8
@capacitor/electron not installed
[success] Android looking great! 👌
Found 10 Capacitor plugins for ios:
@capacitor-community/firebase-crashlytics (0.4.0)
call-number (1.0.1)
cordova-plugin-advanced-http (3.1.1)
cordova-plugin-android-fingerprint-auth (1.5.0)
cordova-plugin-android-permissions (1.1.2)
cordova-plugin-email-composer (0.9.2)
cordova-plugin-file (6.0.2)
cordova-plugin-file-opener2 (3.0.5)
cordova-plugin-nativestorage (2.3.2)
cordova-plugin-touch-id (3.4.0)
[success] iOS looking great! 👌```
Description
Starting with Spring 2024 Apple requires third-party SDKs to add a Privacy Manifest file (similar to the privacy nutrition labels in the store). Apple specifically lists Capacitor as one of the SDKs that must include this manifest otherwise any App that includes it is not allowed to release an update (or new app) to the store.
https://developer.apple.com/support/third-party-SDK-requirements/
Platform(s)
iOS
Additional Context
https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_data_use_in_privacy_manifests
https://developer.apple.com/videos/play/wwdc2023/10060/
In addition to the settings mentioned in the README do I need to add the plugin to MainActivity
on Android like the FirebaseAnalytics and another native plugins?
import com.getcapacitor.community.firebaseanalytics.FirebaseAnalytics;
import path.to.firebase.crashlytics.file; ???
// Initializes the Bridge
this.init(savedInstanceState, new ArrayList<Class<? extends Plugin>>() {{
// Additional plugins you've installed go here
add(FirebaseAnalytics.class);
add(FirebaseCrashlytics.class); ???
...
}});
And once installed, this plugin catch any errors that crash my app automatically with no need to import the plugin in any module or file like app.module.ts/app.component.ts
?
Is your feature request related to a problem? Please describe.
I want to report an error to the dashboard but I don't want the application crash.
Describe the solution you'd like
There is a method provided by the APIs :
https://developers.google.com/android/reference/com/google/firebase/crashlytics/FirebaseCrashlytics#recordException(java.lang.Throwable)
Maybe you can just instanciate a new Exception(errormessage) and pass it to the recordException method ?
Hi @priyankpat , @stewwan , @dwieeb , @thibaud-sanchez
Describe the bug
App is crashing in below two scenarios:
To Reproduce
Steps to reproduce the behavior:
Expected behavior
App must not crash while receiving push notification.
Smartphone (please complete the following information):
Additional context
Android Studio IDE - 4.1.1
** First time App launch crash log**
FATAL EXCEPTION: main Process: com.pg.you, PID: 28148 java.lang.InstantiationError: com.google.firebase.iid.zzbe at com.google.firebase.messaging.zzc.onBind(com.google.firebase:firebase-messaging@@20.1.2:11) at android.app.ActivityThread.handleBindService(ActivityThread.java:4097) at android.app.ActivityThread.access$1900(ActivityThread.java:231) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1973) at android.os.Handler.dispatchMessage(Handler.java:107) at android.os.Looper.loop(Looper.java:214) at android.app.ActivityThread.main(ActivityThread.java:7682) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:516) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950)
While receiving push notification, App crash logs
java.lang.NoSuchMethodError: No static method zza()Lcom/google/firebase/iid/zzaz; in class Lcom/google/firebase/iid/zzaz; or its super classes (declaration of 'com.google.firebase.iid.zzaz' appears in /data/app/com.pg.you-CXfkZKHd9QnYbA0XHEi7Fw==/base.apk) at com.google.firebase.messaging.FirebaseMessagingService.zza(com.google.firebase:firebase-messaging@@20.1.2:7) at com.google.firebase.messaging.zzc.onStartCommand(com.google.firebase:firebase-messaging@@20.1.2:22) at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:4204) at android.app.ActivityThread.access$2100(ActivityThread.java:231) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1984) at android.os.Handler.dispatchMessage(Handler.java:107) at android.os.Looper.loop(Looper.java:214) at android.app.ActivityThread.main(ActivityThread.java:7682) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:516) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950)
Hello
I know you mentioned android support coming soon, just wondering why? is it a technical issue with Capacitor?
Is your feature request related to a problem? Please describe:
Need to show in logs version of firebase and plugin for analyses
Describe the solution you'd like:
add 2 functions which will be return plugin version and firebase version
Describe alternatives you've considered:
no alternatives
Additional context:
nothing
Plugin version:
Crashlytics gradle version - 'com.google.firebase:firebase-crashlytics-gradle:2.8.1',
Android gradle version - 'com.android.tools.build:gradle:4.2.2',
Firebase Bom version - 'com.google.firebase:firebase-bom:29.0.2'
Firebase Core version - 'com.google.firebase:firebase-core:17.5.0'
firebaseCrashlyticsVersion - '18.1.0'
npm package - "@capacitor-community/firebase-crashlytics": "^1.2.0"
Platform(s):
Android
Current behavior:
App is closing automatically just after the splash screen after implementing the firebase Crashlytics.
Expected behavior:
App must use the force crash method and must send the report to the firebase crashlytics console.
Steps to reproduce:
Install all the dependencies with the versions mentioned above.
Related code:
Exactly followed the steps provided in docs.
Capacitor doctor:
Latest Dependencies:
@capacitor/cli: 3.3.3
@capacitor/core: 3.3.3
@capacitor/android: 3.3.3
@capacitor/ios: 3.3.3
Installed Dependencies:
@capacitor/cli: 3.1.1
@capacitor/core: 3.1.1
@capacitor/android: 3.1.1
@capacitor/ios: 3.1.1
[success] iOS looking great! 👌
[success] Android looking great! 👌
Firebase Version
8.8.0
Platform(s):
IOS 15.1
Current behavior:
Not getting realtime crashes on release build uploaded on testflight in firebase crashlytics dashboard
Expected behavior:
Gets realtime crasehes on firebase crashlytics dashboard
Enviorment:
"Testflight build"
Describe the solution you'd like:
Ionic with React
I tried to implement capacitor community firebase crashlytics and the bug is.
2020-09-06 13:38:55.946 13535-13535/? E/SchedPolicy: open of /dev/cpuctl/bg_non_interactive/tasks failed: No such file or directory
2020-09-06 13:38:56.583 13535-13535/com.xxx.xxx E/chromium: [ERROR:filesystem_posix.cc(62)] mkdir /data/user/0/com.xxx.xxx/cache/WebView/Crashpad: No such file or directory (2)
2020-09-06 13:38:59.365 13535-13535/com.xxx.xxx E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.xxx.xxx, PID: 13535
java.lang.InstantiationError: com.google.firebase.iid.zzbe
at com.google.firebase.messaging.zzc.onBind(com.google.firebase:firebase-messaging@@20.1.2:11)
at android.app.ActivityThread.handleBindService(ActivityThread.java:3457)
at android.app.ActivityThread.-wrap2(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1729)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6626)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:811)
To Reproduce
Steps to reproduce the behavior:
Screenshots
Smartphone:
Plugin version:
"@capacitor-community/firebase-crashlytics": "^1.1.0",
Platform(s):
IOS
Current behavior:
Build Failed with an Error:
Expected behavior:
Build Should work as Expected
Steps to reproduce:
https://github.com/Saqib92/capacitor-firebase-plugins
Related code:
insert short code snippets here
Other information:
I am also using Capacitor FCM Push notification might be a conflict in them.
Capacitor doctor:
💊 Capacitor Doctor 💊
Latest Dependencies:
@capacitor/cli: 3.2.4
@capacitor/core: 3.2.4
@capacitor/android: 3.2.4
@capacitor/ios: 3.2.4
Installed Dependencies:
@capacitor/cli: 3.2.2
@capacitor/core: 3.2.2
@capacitor/android: 3.2.2
@capacitor/ios: 3.2.2
[success] iOS looking great! 👌
[success] Android looking great! 👌
Capacitor 3 is being built and is already in beta. In this new version the native plugins have been removed from the core and there are some changes that are necessary in the existing plugins.
Example: Plugin Imports
The Plugins object is deprecated, but will continue to work in Capacitor 3. Capacitor plugins should be updated to use the new plugin registration APIs (see the Upgrade Guide for plugins), which will allow them to be imported directly from the plugin’s package.
Going forward, the Plugins object from @capacitor/core should not be used.
// OLD
import { Plugins } from '@capacitor/core';
const { AnyPlugin } = Plugins;
Importing the plugin directly from the plugin’s package is preferred, but the plugin must be updated to work with Capacitor 3 for this to be possible.
// NEW
import { AnyPlugin } from 'any-plugin';
References:
Describe the bug
Firstly there is a mismatch between Readme and the code. the crash() method doesn't accept any arguments as opposed to an object in Readme.
Secondly, when I run it without any arguments I get the following error: Method not implemented.
PS: This also happens for FirebaseCrashlytics.recordException method.
I'm running on Android
Current behavior:
I see the module uses 3.0-rc version of capacitor core.
Expected behavior:
Is there any plans to support capacitor 2.x till the stable version of core is released?
Steps to reproduce:
My Sample app with the capacitor (core-2.x) doesn't build with 1.0 version of firebase crashlytics.
Logs:
Error: ./node_modules/@capacitor-community/firebase-crashlytics/dist/esm/index.js 2:28-42
"export 'registerPlugin' was not found in '@capacitor/core'
at HarmonyImportSpecifierDependency._getErrors (/Users/sekars/workspace/firebase-example/node_modules/webpack/lib/dependencies/HarmonyImportSpecifierDependency.js:109:11)
at HarmonyImportSpecifierDependency.getErrors (/Users/sekars/workspace/firebase-example/node_modules/webpack/lib/dependencies/HarmonyImportSpecifierDependency.js:68:16)
at Compilation.reportDependencyErrorsAndWarnings (/Users/sekars/workspace/firebase-example/node_modules/webpack/lib/Compilation.js:1463:22)
at /Users/sekars/workspace/firebase-example/node_modules/webpack/lib/Compilation.js:1258:10
at _next0 (eval at create (/Users/sekars/workspace/firebase-example/node_modules/webpack/node_modules/tapable/lib/HookCodeFactory.js:33:10), <anonymous>:30:1)
at eval (eval at create (/Users/sekars/workspace/firebase-example/node_modules/webpack/node_modules/tapable/lib/HookCodeFactory.js:33:10), <anonymous>:43:1)
at runMicrotasks (<anonymous>)
at processTicksAndRejections (internal/process/task_queues.js:97:5)
Capacitor doctor:
➜ firebase-example git:(master) ✗ npx cap doctor
💊 Capacitor Doctor 💊
Latest Dependencies:
@capacitor/cli: 2.4.7
@capacitor/core: 2.4.7
@capacitor/android: 2.4.7
@capacitor/electron: 2.4.7
@capacitor/ios: 2.4.7
Installed Dependencies:
@capacitor/android not installed
@capacitor/cli 2.4.7
@capacitor/core 2.4.7
@capacitor/ios 2.4.7
@capacitor/electron not installed
Describe the bug
In console.firebase => crashlytics I get the following warning message:
Please upgrade to the generally available Firebase Crashlytics SDK to continue receiving crash reports in the Firebase console after 15 November 2020
I think it is because this plugin is using Fabric which is deprecated and will be removed November.
Smartphone (please complete the following information):
"@capacitor-community/firebase-crashlytics": "^0.3.0",
minSdkVersion = 21
compileSdkVersion = 29
targetSdkVersion = 29
androidxAppCompatVersion = '1.1.0'
androidxCoreVersion = '1.2.0'
androidxMaterialVersion = '1.1.0-rc02'
androidxBrowserVersion = '1.2.0'
androidxLocalbroadcastmanagerVersion = '1.0.0'
firebaseMessagingVersion = '20.1.2'
playServicesLocationVersion = '17.0.0'
junitVersion = '4.12'
androidxJunitVersion = '1.1.1'
androidxEspressoCoreVersion = '3.2.0'
cordovaAndroidVersion = '7.0.0'
classpath 'com.android.tools.build:gradle:4.0.1'
classpath 'com.google.gms:google-services:4.3.3'
// Add the Crashlytics Gradle plugin.
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.3.0'
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.