Reputation: 36672
I have this mainActivity
public class MainActivity extends RoboFragmentActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Crashlytics.start(this);
//setContentView(R.layout.activity_main);
Intent intent = new Intent(this, MainActivity_with_Fragment.class);
startActivity(intent);
finish();
}
}
this is my gradle.build
buildscript {
repositories {
jcenter()
maven { url 'http://download.crashlytics.com/maven' }
}
dependencies {
classpath 'com.android.tools.build:gradle:0.14.2'
classpath 'com.crashlytics.tools.gradle:crashlytics-gradle:1.+'
}
}
apply plugin: 'com.android.application'
apply plugin: 'crashlytics'
repositories {
jcenter()
maven { url 'http://download.crashlytics.com/maven' }
}
android {
compileSdkVersion 19
buildToolsVersion "19.1.0"
defaultConfig {
applicationId "com.example.stopcall.app"
minSdkVersion 14
targetSdkVersion 19
versionCode 1
versionName "1.0"
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
buildTypes {
release {
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
lintOptions {
abortOnError false
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:support-v4:21.0.3'
compile 'org.roboguice:roboguice:3.+'
provided 'org.roboguice:roboblender:3.+'
compile 'com.crashlytics.android:crashlytics:1.+'
}
When I run project build I get this compilation error:
Error:Gradle: Execution failed for task ':app:crashlyticsCleanupResourcesDebug'.
> Crashlytics Developer Tools error.
how can I fix this?
Upvotes: 50
Views: 48023
Reputation: 832
Your key may have been entered on the wrong Android Manifest
<meta-data
android:name="io.fabric.ApiKey"
android:value="yourApiKey" /> //You must have 40 words
You can get the code after registering and entering the project
Upvotes: 0
Reputation: 679
Please make sure you added
apply plugin: 'com.google.gms.google-services'
at the end of your build.gradle file.
Upvotes: 4
Reputation: 1031
I also got the issue and resolved it by putting string directly in meta tag without defining the api key into string resources.
e.g.
Replace
<meta-data
android:name="io.fabric.ApiKey"
android:value="@string/string_res_name_of_your_api_key" />
to
<meta-data
android:name="io.fabric.ApiKey"
android:value="your_api_key_string" />
Upvotes: 18
Reputation: 403
When you follow the steps for adding an application in your Crashlytics dashboard, they have mentioned a step to add the api key. In my case I was getting the same error when I would try to fetch the key from the strings.xml file. The problem was that crashlytics plugin uses a runtime api key insertion method and hence the build fails as it is not able to get the key from the strings file.
I tried below step:
defaultConfig {
manifestPlaceholders = [ api_key_crashlytics:"xxxx__your_api_key"]}
<meta-data
android:name="io.fabric.ApiKey"
android:value="${api_key_crashlytics}" />
This worked for me.
Upvotes: 8
Reputation: 3922
Most likely the ApiKey is not correct just check it out. Worked for me.
Upvotes: 0
Reputation: 6839
If you use distribution with Gradle you may have checked some properties like
ext.betaDistributionReleaseNotesFilePath=”path/to/release_notes.txt”
In our case we didn't have this file and the task crashed. To see the problem, go to Gradle console and check logs:
Upvotes: 1
Reputation: 807
This method solved my problem:
Remove or Comment this line (build.gradle):
// apply plugin: 'io.fabric'
or if you have an ApiKey, define fabric ApiKey (AndroidManifest.xml)
<meta-data
android:name="io.fabric.ApiKey"
android:value="yourApiKey012356465654" />
Upvotes: 36
Reputation: 395
Open the Fabric Plugin which is already installed and update the Crashlytics, your problem gets solved
Upvotes: 3
Reputation: 1506
I tried all of your solution suggests under that question and others. But all of them did not solve my problem. I solved my problem. My solution may solve your problem. I created empty res folder under main folder. project->src->main->res
Upvotes: 0
Reputation: 5998
If you only want to compose a tweet with the SDK you can remove the line
apply plugin: 'io.fabric'
And the gradle build will work correctly
Upvotes: 25
Reputation: 3061
I faced with this issue for sometimes, although I already had api key in manifest. Then I try assemble release apk before try to assemble to upload to Fabric. So let execute:
$ ./gradlew assembleRelease
then
$ ./gradlew assembleRelease crashlyticsUploadDistributionRelease
and it works well.
Upvotes: 1
Reputation: 12823
You need to add your API Key to the Android Manifest:
<application>
<meta-data
android:name="com.crashlytics.ApiKey"
android:value="your key here" />
</application>
Upvotes: 67