android - Crashlytics Answers Android 即时应用程序抛出错误

标签 android twitter-fabric android-instant-apps crashlytics-android

我正在为我的 Android 应用程序使用 Crashlytics 2.6.8 版。我在回答 here 后的基础功能中配置了 Crashlytics .使用以下代码 fragment 使用 Fabric 初始化 Crashlystics

Fabric.with(context, crashlyticsKit);

Crashlytics Answers 在启动 Android 免安装应用时抛出此异常

E/Answers: Failed to enable events
java.io.IOException: ftruncate failed: EACCES (Permission denied)
    at java.io.RandomAccessFile.setLength(RandomAccessFile.java:630)
    at io.fabric.sdk.android.services.common.QueueFile.initialize(QueueFile.java:213)
    at io.fabric.sdk.android.services.common.QueueFile.<init>(QueueFile.java:130)
    at io.fabric.sdk.android.services.events.QueueFileEventStorage.<init>(QueueFileEventStorage.java:58)
    at io.fabric.sdk.android.services.events.GZIPQueueFileEventStorage.<init>(GZIPQueueFileEventStorage.java:32)
    at com.crashlytics.android.answers.AnswersFilesManagerProvider.getAnalyticsFilesManager(AnswersFilesManagerProvider.java:44)
    at com.crashlytics.android.answers.AnswersEventsHandler$4.run(AnswersEventsHandler.java:121)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:423)
    at java.util.concurrent.FutureTask.run(FutureTask.java:237)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:269)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
    at io.fabric.sdk.android.services.common.ExecutorUtils$1$1.onRun(ExecutorUtils.java:75)
    at io.fabric.sdk.android.services.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:30)
    at java.lang.Thread.run(Thread.java:818)
 Caused by: android.system.ErrnoException: ftruncate failed: EACCES (Permission denied)
    at libcore.io.Posix.ftruncate(Native Method)
    at libcore.io.BlockGuardOs.ftruncate(BlockGuardOs.java:148)
    at java.io.RandomAccessFile.setLength(RandomAccessFile.java:628)

是存储访问引起的吗?如果是这样,是否可以配置 Crashlytics 在 Instant 应用程序的情况下访问存储?

最佳答案

您好像没有初始化 Answers 本身,只有 Crashlytics?

如果您想要来自 Fabric 的 Crashlytics 和 Answers,请尝试这样的操作:

    final Fabric fabric = new Fabric.Builder(this)
            .kits(new Crashlytics(), new Answers())
            .debuggable(true)
            .build();
    Fabric.with(fabric);

关于android - Crashlytics Answers Android 即时应用程序抛出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45523107/

相关文章:

java - 未从项目单击监听器上的 gridview 获取所有图像

android - IllegalStateException : Expected configuration ':module:debugFeatureCompileClasspath' to contain exactly one file, 但是,它包含 2 个文件

java - 即时库的 Android Studio 3.5 索引问题

android - 为什么我的 APP 不支持三星 Galaxy Note 3

android - 无法为 Android 教程构建 GStreamer

php - Android 图片上传到服务器,HTTP 响应为 200,但文件未上传

ios - 无法使用 Fabric/Crashlytics 上传构建

android - Twitter 结构获取带有标签的推文

ios - 无法安装 Crashlytics

android - Android Instant App 权限的限制