JCenter and Bintray is shutting down, what to do?

On February 3rd 2021, JFrog announced that they will be shutting down Bintray and JCenter. JCenter has been the main repository where we host TestFairy Android SDK since its birth. It served us really well and we appreciate all the effort put by the JFrog team which made this possible and hassle-free for years. The details of the announcement are as follows:

  1. March 31st, 2021 No more submissions will be accepted to JCenter.
    April 12th, 26th, 2021 The service will brown-outs to remind users about the services that are going away on May 1st. (Specific hours will be advertised in the Bintray status page.)
    May 1st, 2021 Bintray services will no longer be available.
    February 1st, 2022 JCenter will no longer be available for non-Artifactory clients.
  2. This means by the end of March 2021, publishing new packages to Bintray will no longer be allowed. Existing packages can still be downloaded until February 1st 2022. After that, projects that have dependencies hosted in JCenter will fail fetching packages and stop compiling.

JCenter has been hosting a great number of open source libraries which were used by almost all Android projects.

The suggested action to take for all package maintainers is moving to another maven repository.

How am I affected and what should I do?

Developers who uses packages from JCenter must point their projects to the new repositories to be able to get the latest versions. This is likely to be documented in each popular library’s project tracker.

For Android projects, you will have to edit the build.gradle script in the project root with the lines below:

buildscript {
repositories {
mavenCentral()
google()
//other repos...
}
}
buildscript { repositories { mavenCentral() google() //other repos... } }
buildscript {
    repositories {
        mavenCentral()
        google()
        
        //other repos...
    }
}

Note the missing jcenter() in the repository block. For the time being, you can still keep it there if you like but eventually all dependencies will be moved out of JCenter.

How to get latest TestFairy Android SDK updates?

Starting from version 1.12.0, TestFairy Android SDK is being hosted at https://maven.testfairy.com. The latest version hosted in JCenter is 1.11.44.

To get the latest releases, please add our maven repo to your build.gradle script located in the project root:

buildscript {
repositories {
mavenCentral()
google()
maven { url 'https://maven.testfairy.com' }
//other repos...
}
}
buildscript { repositories { mavenCentral() google() maven { url 'https://maven.testfairy.com' } //other repos... } }
buildscript {
    repositories {
        mavenCentral()
        google()
        maven { url 'https://maven.testfairy.com' }

        //other repos...
    }
}

In your app module’s build.gradle script (app/build.gradle), replace the previous dependency lines with these ones instead:

dependencies {
implementation 'com.testfairy:testfairy-android-sdk:1.+@aar'
}
dependencies { implementation 'com.testfairy:testfairy-android-sdk:1.+@aar' }
dependencies {
    implementation 'com.testfairy:testfairy-android-sdk:1.+@aar'
}

If your project uses the NDK support extension, you also need to replace its dependency line with the following:

dependencies {
implementation 'com.testfairy:testfairy-android-ndk:1.+@aar'
}
dependencies { implementation 'com.testfairy:testfairy-android-ndk:1.+@aar' }
dependencies {
    implementation 'com.testfairy:testfairy-android-ndk:1.+@aar'
}

I still have trouble compiling my project

Send us an email at support@testfairy.com and let us know how we can help you. We’ll guide you through the steps and you’ll be back online in no time.

Until then, take care and #staysafe.