Reputation:
I am getting struggled with errors and warnings whenever I try to remove fabric and firebase from my android studio project. I almost deleted every implementation of those from project but I still see some crashlytics in my gradle. How can I clean up these fully. I don't want any firebase/fabric in my project.
My app level Gradle:
buildscript {
repositories {
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
classpath 'io.fabric.tools:gradle:1.+'
}
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'
repositories {
maven { url 'https://maven.fabric.io/public' }
}
android {
compileSdkVersion 26
defaultConfig {
applicationId 'drpg.ddkeys'
minSdkVersion 19
targetSdkVersion 26
versionCode 4
versionName '4.4.42'
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
lintOptions {
checkReleaseBuilds false
abortOnError false
}
versionNameSuffix 'blaze'
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
productFlavors {
}
buildToolsVersion '27.0.3'
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support:design:26.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
implementation 'com.android.support:support-v4:26.1.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-
core:3.0.2'
}
apply plugin: 'com.google.gms.google-services'
My Project level gradle:
buildscript {
repositories {
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
classpath 'io.fabric.tools:gradle:1.+'
}
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'
repositories {
maven { url 'https://maven.fabric.io/public' }
}
android {
compileSdkVersion 26
defaultConfig {
applicationId 'drpg.ddkeys'
minSdkVersion 19
targetSdkVersion 26
versionCode 4
versionName '4.4.42'
testInstrumentationRunner
"android.support.test.runner.AndroidJUnitRunner"
lintOptions {
checkReleaseBuilds false
abortOnError false
}
versionNameSuffix 'blaze'
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'),
'proguard-rules.pro'
}
}
productFlavors {
}
buildToolsVersion '27.0.3'
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support:design:26.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
implementation 'com.android.support:support-v4:26.1.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-
core:3.0.2'
}
apply plugin: 'com.google.gms.google-services'
Upvotes: 0
Views: 4134
Reputation: 599
You can also check the Upgrade to the Firebase Crashlytics SDK. It gives you detailed instructions for removing the Fabric Crashlytics SDK and replacing it with Firebase Crashlytics.
This page gives also an overview about Fabric Crashlytics methods and their replacements in the new Firebase SDK.
Upvotes: 3
Reputation: 16249
Mike from Fabric here. Sorry to hear you're removing Fabric and if you have feedback, please email support(at)fabric(dot)io.
From your app's build.gradle, remove:
buildscript {
repositories {
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
classpath 'io.fabric.tools:gradle:1.+'
}
}
apply plugin: 'io.fabric'
repositories {
maven { url 'https://maven.fabric.io/public' }
}
From your project's build.gradle, remove:
buildscript {
repositories {
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
classpath 'io.fabric.tools:gradle:1.+'
}
}
apply plugin: 'io.fabric'
repositories {
maven { url 'https://maven.fabric.io/public' }
}
If you see a Fabric API key in your AndroidManifest.xml, remove that value:
<meta-data
android:name="io.fabric.ApiKey"
android:value="YourKey"
/>
If you have a crashlytics.properties
or fabric.properties
file, remove that file.
If you see a Fabric init statement in your app, remove it. An example:
Fabric.with(this, new Crashlytics(), new CrashlyticsNdk());
If you have a google-services.json file that you've used with Firebase, remove that. The beginning of the file would look like this:
"project_info": {
"project_number": "number",
"firebase_url": "firebase_url",
"project_id": "your-project-id",
}
Ultimately, the best choice is to look at your commit history when the dependencies were added and remove those. I can't give a perfect answer since Firebase and Fabric are both modular.
Upvotes: 4