gpt4 book ai didi

android - Firebase 实时数据库未在 Android 调试 APK 版本上返回所有值

转载 作者:行者123 更新时间:2023-11-29 01:16:45 24 4
gpt4 key购买 nike

当我从 Android Studio 安装时,我的应用程序运行良好,但是当使用调试 APK 版本时,Firebase 出于某种原因不会从实时数据库下载所有值。我不知道为什么它只发生在 APK 版本上。

为了了解什么不起作用,我有如下监听器:

ValueEventListener questionListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
GenericTypeIndicator<List<Question>> t = new GenericTypeIndicator<List<Question>>() {};
mQuestions = (ArrayList<Question>) dataSnapshot.getValue(t);

...

mDatabase.child("surveys").child("surveyName").child("questions").addValueEventListener(questionListener);

问题是在一个问题中有问题选项,每个选项都有几个参数。当我通过 Android Studio 安装应用程序时,它会收到所有参数并且运行良好。但是,当我构建调试 APK 并安装它时,其中一个参数丢失(在所有问题上)。更奇怪的是,它似乎只发生在一个领域。该字段曾经是一个 bool 值,但我将其更改为一个字符串,只是为了看看它是否会有所不同。遗憾的是,它仍然存在同样的问题。

有没有人知道为什么会发生这种情况,或者我可以在哪里查看?

数据库中的每个问题选项都有这个字段集。为什么用APK版下载不了?是错误吗?

谢谢。

最佳答案

看来我解决了自己的问题。我在文档页面上没有看到它的提及 https://firebase.google.com/docs/database/android/retrieve-data但它确实应该说点什么。

Firebase 似乎要求每个参数都有一个 getter,精确拼写为“get<参数名称>”。如果你有类似“public Boolean HasExtraInput”的东西,它就不会工作。

我测试了“get<参数名称>”,然后是“goingToGet<参数名称>”。第一个有效,第二个失败,其他一切都相同。而且根据 Android Studio 甚至没有使用该方法,因此它只能是 Firebase。

有趣的是,无论如何它在从 Android Studio 运行时都能正常工作,但在使用 APK 时它会因拼写不同而崩溃。不知道为什么会这样,但至少我知道如何让它发挥作用。

关于android - Firebase 实时数据库未在 Android 调试 APK 版本上返回所有值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39051293/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com