diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index bff08a370..e66a95211 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -47,6 +47,13 @@ test:
     - git --no-pager diff --ignore-all-space --name-only --exit-code || export EXITVALUE=1
     - exit $EXITVALUE
 
+errorprone:
+  stage: test
+  script:
+    - cat config/errorprone.gradle >> app/build.gradle
+    - ./gradlew assembleDebug
+  allow_failure: true
+
 connected10:
   stage: test
   <<: *test-template
diff --git a/app/build.gradle b/app/build.gradle
index 3c3dc7e60..572e51ecc 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -375,4 +375,4 @@ android.applicationVariants.all { variant ->
         exclude '**/BuildConfig.java'
         exclude '**/R.java'
     }
-}
+}
\ No newline at end of file
diff --git a/config/errorprone.gradle b/config/errorprone.gradle
new file mode 100644
index 000000000..ea7d7fd1e
--- /dev/null
+++ b/config/errorprone.gradle
@@ -0,0 +1,35 @@
+
+buildscript {
+    repositories {
+        maven {
+            url "https://plugins.gradle.org/m2/"
+        }
+    }
+    dependencies {
+        classpath "net.ltgt.gradle:gradle-errorprone-plugin:0.0.13"
+    }
+}
+
+apply plugin: "net.ltgt.errorprone"
+
+tasks.withType(JavaCompile) {
+    options.compilerArgs += [
+        '-XepAllDisabledChecksAsWarnings',
+        '-Xep:CatchFail:OFF',
+        '-Xep:ClassCanBeStatic:OFF',
+        '-Xep:DateFormatConstant:OFF',
+        '-Xep:DefaultCharset:OFF',
+        '-Xep:FormatString:OFF',
+        '-Xep:JavaLangClash:OFF',
+        '-Xep:MissingCasesInEnumSwitch:OFF',
+        '-Xep:MissingOverride:OFF',
+        '-Xep:NonAtomicVolatileUpdate:OFF',
+        '-Xep:OperatorPrecedence:OFF',
+        '-Xep:StringSplitter:OFF',
+        '-Xep:UnsynchronizedOverridesSynchronized:OFF',
+    ]
+}
+
+configurations.errorprone {
+    resolutionStrategy.force 'com.google.errorprone:error_prone_core:2.2.0'
+}