Некоторое время я использую последнюю версию Crashlytics (интеграция с Fabric). Но недавно я столкнулся со следующей ошибкой сбоя из-за отсутствия зависимости, хотя я ничего не менял в конфигурациях Crashlytics.
любая идея?
02-08 22:18:00.935 18887-18887/? E/Fabric﹕ .
02-08 22:18:00.935 18887-18887/? E/Fabric﹕ . | |
02-08 22:18:00.935 18887-18887/? E/Fabric﹕ . | |
02-08 22:18:00.935 18887-18887/? E/Fabric﹕ . | |
02-08 22:18:00.935 18887-18887/? E/Fabric﹕ . \ | | /
02-08 22:18:00.935 18887-18887/? E/Fabric﹕ . \ /
02-08 22:18:00.935 18887-18887/? E/Fabric﹕ . \ /
02-08 22:18:00.935 18887-18887/? E/Fabric﹕ . \/
02-08 22:18:00.935 18887-18887/? E/Fabric﹕ .
02-08 22:18:00.935 18887-18887/? E/Fabric﹕ This app relies on Crashlytics. Please sign up for access at https://fabric.io/sign_up,
install an Android build tool and ask a team member to invite you to this app's organization.
02-08 22:18:00.935 18887-18887/? E/Fabric﹕ .
02-08 22:18:00.935 18887-18887/? E/Fabric﹕ . /\
02-08 22:18:00.935 18887-18887/? E/Fabric﹕ . / \
02-08 22:18:00.935 18887-18887/? E/Fabric﹕ . / \
02-08 22:18:00.935 18887-18887/? E/Fabric﹕ . / | | \
02-08 22:18:00.935 18887-18887/? E/Fabric﹕ . | |
02-08 22:18:00.935 18887-18887/? E/Fabric﹕ . | |
02-08 22:18:00.935 18887-18887/? E/Fabric﹕ . | |
02-08 22:18:00.935 18887-18887/? E/Fabric﹕ .
02-08 22:18:00.935 18887-18887/? E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.example.android.staging, PID: 18887
java.lang.RuntimeException: Unable to create application com.example.android.App: io.fabric.sdk.android.services.concurrency.UnmetDependencyException: com.crashlytics.android.CrashlyticsMissingDependencyException:
This app relies on Crashlytics. Please sign up for access at https://fabric.io/sign_up,
install an Android build tool and ask a team member to invite you to this app's organization.
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4734)
at android.app.ActivityThread.access$1600(ActivityThread.java:171)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1357)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:157)
at android.app.ActivityThread.main(ActivityThread.java:5506)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
at dalvik.system.NativeStart.main(Native Method)
android
crashlytics
twitter-fabric
сиалин
источник
источник
Ответы:
Единственный обходной путь на данный момент, если вам действительно нужно опубликовать свое приложение (как я), - это изменить динамические номера версий на статические:
РЕДАКТИРОВАТЬ:
опубликована обновленная версия Fabric SDK; вы можете получить его, изменив строку на эту:
источник
https://maven.fabric.io/repo
иhttps://maven.fabric.io/public
Я добавил следующие коды до того, как фактически установил Fabric / Crashlytics:
Удаление его перед первым запуском с Crashlytics решило проблему. Проблема больше не возникает после первого запуска.
источник
com.crashlytics.sdk.android:crashlytics:2.6.8@aar
Я закомментировал это в градиенте
нужно раскомментировать это
Или, если у вас его нет, добавьте!
источник
Похоже на указание версии плагина как:
подхватывает 1.15.1, в котором есть проблема.
Указание major и minor к предыдущему
1.14
кажется стабильным:источник
У меня была такая же проблема после обновления плагина. для решения необходимо удалить из AndroidManifest.xml:
и добавьте в fabric.properties:
ОБНОВИТЬ:
Теперь вам нужно использовать:
источник
<meta-data android:name="io.fabric.ApiKey" android:value="YOUR_API_KEY"/>
в файле AM. Имя было изменено с com.crashlytics.ApiKey на io.fabric.ApiKey.Если вы используете функцию отключения во время отладки, как показано
Что происходит при обновлении версии crashlytics, так это то, что
обращается к
Так что не забудьте снова сменить его на crashlyticskit. Если вы делаете это правильно, но ошибка по-прежнему появляется, убедитесь, что у вас есть
под android {buildtypes {}}
источник
Майк из Crashlytics здесь. Ранее сегодня мы отправили обновленную версию 1.15.2, которая включает исправление этого поведения. Если вы запустите:
что потянет в последней версии. Вы также можете увидеть более подробную информацию об исправлении здесь.
источник
Исправить для меня Из официального источника
Отключить Crashlytics для отладочных сборок
Если вам не нужны отчеты о сбоях Crashlytics или бета-версия для отладочных сборок, вы можете безопасно ускорить свои отладочные сборки, полностью отключив плагин с помощью следующих двух шагов:
Сначала добавьте это в build.gradle вашего приложения:
Затем отключите комплект Crashlytics во время выполнения. В противном случае комплект Crashlytics выдаст следующую ошибку:
Вы можете отключить комплект во время выполнения для отладочных сборок только с помощью следующего кода:
источник
Проблема также возникает, если вы случайно включили Crashlytics BuildConfig - это очень легко сделать с помощью автоматического импорта Android Studio / IntelliJ.
Я импортировал
import com.crashlytics.android.core.BuildConfig;
Вместо моего собственного
import <package_name>.BuildConfig;
источник
Для меня это было из-за
dataBinding = true
. Обновление плагина Fabric Gradle до 1.21.0 устранило проблему: https://twittercommunity.com/t/fabric-gradle-plugin-1-21-0-add-support-for-android-databinding-true/57474источник
В моем случае я использовал структуру в модуле «CommonLib», который был добавлен как зависимость во все другие модули (включая приложение). Итак, я добавил
apply plugin: 'io.fabric'
послеbuildscript {}
блока. Итак, я поместил два плагина вместе:И проблема решена!
источник
Обязательно добавьте
apply plugin: 'io.fabric'
в свой проект приложенияbuild.gradle
. В моем случае у меня был общийbuild.gradle
сapply plugin: 'io.fabric'
. Перенос его в проект приложения решил проблему.источник
Если это поможет кому-то другому, у меня была аналогичная проблема при обновлении Crashlytics до Fabric. В моем случае плагин оставил 2 строки от Crashlytics, которые мне нужно было вручную удалить, прежде чем он заработает.
В файле gradle в зависимостях buildscript мне пришлось вручную удалить:
Кроме того, в зависимостях мне пришлось вручную удалить:
источник
Проверьте, отключена ли функция сбоев в файле build.gradle
Вместо этого используйте
источник
Возможно, я опаздываю с ответом. Но это может произойти по еще одной причине, помимо всех приведенных выше ответов.
Если вы пропустите добавить
Это может показаться странным, но это приведет к той же проблеме.
Это по умолчанию добавляется фабрикой, когда мы регистрируемся и добавляем код из окна Fabric с помощью IDE, но случайно его можно удалить.
источник
Исправлено удаление значка приложения Crashylitics, дааааааааааааааааааааут?
У меня все было сделано на основе руководства по адаптации, с использованием последних версий и т. Д.
Просто потратил час на то, чтобы понять это. Оказывается, кто-то подумал, что было бы неплохо прочитать имя пакета на значке приложения, а не
context.packageName
получать ресурсы приложения с учетом контекста. Это делается таким способом:io.fabric.sdk.android.services.common.CommonUtils#getResourcePackageName
Это , очевидно , взрывает если вы будете использовать значок, это не внутри APK, например:
android:icon="@android:drawable/sym_def_app_icon"
. Вероятно, в то время это была хорошая идея, интересно, какую странную ошибку они пытались обойти ?!источник
Добавьте это в
AndroidManifest.xml
.источник