当您在Android应用中处理Firebase数据(读,写…)时,您需要获取Firebase引用才能进行数据处理。
由于Firebase引用是一棵JSON树,因此,如果您指向树的根,则可以随时访问子级,而无论深度如何。
问题:从内存和延迟角度来看,在代码中处理此引用的最佳方法是什么?
1 /在应用程序的根目录中创建静态Firebase引用。
MyApplication.getFirebaseRootRef().chid(C1).chid(C11).setValue(...);
2 /为子C11创建一个新的Firebase引用
Firebase ref = new Firebase("https://your.firebaseio.com/C1/C11");
ref..setValue(...);
3 /混合
Firebase ref = new Firebase("https://your.firebaseio.com");
ref.child(C1).child(C11).setValue(...);
4 /混合2
Firebase ref = new Firebase("https://your.firebaseio.com").child(C1).child(C11);
ref.setValue(...);
性能上有什么区别吗?
也许您对可读性和维护有一些建议?
Firebase查询和引用是轻量级对象。繁重的工作是由Firebase SDK本身内部(并由Firebase SDK本身管理)的类在后台完成的。
因此,您建议的任何方法之间的性能都不会有显着差异。
以下个人喜好
我通常在每个活动中都保留一个引用作为成员。
class MainActivity extends AppCompatActivity {
Firebase mRef;
如果我有更多的主要列表类型,则将添加这些成员:
class MainActivity extends AppCompatActivity {
Firebase mRef;
Firebase mUsersRef;
Firebase mPostsRef;
...
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(...);
...
mRef = new Firebase("https://yours.firebaseio.com");
mUsersRef = mRef.child("users");
mPostsRef = mRef.child("posts");
...
}
通过将所有内容都放在每个活动中,它们可以很好地实现独立。
我的recyclerview项目中有这样的场景: 一旦我从我的RecolyerView中单击了一个项目,我想要向另一个activity显示该项目的详细信息(比如DetailsActivity),同时利用该RecolyerViewItem上的视图(API21)的新activity转换。 通过在recyclerAdapter的视图上设置itemclick侦听器,我找到了一些方法,但我并不确定由此可能产
问题内容: 我正在使用Spring批处理下载一个大文件来处理它。场景很简单: 无需保存输入文件数据。 我们可能同时运行多个(相同场景的)作业实例 我正在寻找最佳实践来处理这种情况。 我是否应该创建Tasklet以便在本地下载文件,而不是通过常规步骤开始处理它? 在这种情况下,我需要考虑一些临时文件问题(确保删除了该文件,确保不覆盖其他临时文件,等等。) 另一方面,我可以下载它并将其保留在内存中,但
我有一个rest服务,它将抛出一个异常,我想知道什么将是最好的方式来处理这一点。 我想知道这是rest服务中处理异常的正确方式吗? 我在用泽西。
因为有人把他们自己的问题和我的问题连在一起,我想: 运行表单验证 检查该图像实际上是图像(使用image_validation?) 如果表单验证返回true,则上传图像。 现在,即使我的图像是正确的,但表单验证返回false,我的图像也会被上传。我想阻止这一切。 目前我正在尝试创建一个表单,允许用户选择要上载的文件。我已经为其他输入设置了规则,也为我的图像上传设置了回调。 问题是,不管怎样,只要图
问题内容: 我想知道在Doctrine2中处理多对多关系的最佳,最简洁和最简单的方法是什么。 因此,我需要的是专辑和曲目之间的多对多关系,使用带有附加列的第三张表(例如曲目在指定专辑中的位置)。实际上,正如Doctrine的文档所建议的那样,我必须使用双重一对多关系来实现该功能。 样本数据: 现在,我可以显示专辑列表和与其相关的曲目: 结果就是我所期望的,即:专辑列表,其曲目以适当的顺序排列,并且
问题内容: 如果我的应用程序崩溃了,它会挂起几秒钟,然后Android告诉我该应用程序崩溃了,需要关闭。所以我当时想用通用的方式捕获应用程序中的所有异常: 并做一个新的解释,说明应用程序立即崩溃(并且还使用户有机会发送包含错误详细信息的邮件),而不是由于Android而造成了延迟。是否有更好的方法来实现这一目标? 更新: 我使用的是启用了ART的Nexus 5,但我没有注意到我以前遇到的崩溃(我最