- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用以下结构将数据保存到 firebase
root
--clothing
----clothingImgDownloadUrl
------title
------category
据我了解,我需要引用数据库中要保存新数据的路径。
FirebaseApp app = FirebaseApp.getInstance();
assert app != null;
mDatabase = FirebaseDatabase.getInstance(app);
mClothingRef = mDatabase.getReference("clothing");
我想使用上面创建的服装引用添加新服装
mClothingRef.child(clothingImgDownloadUrl).setValue(clothing);
但是,只有在将服装图像上传到 Firebase 存储并且其下载网址返回到应用程序后,上面的代码才会运行,在应用程序中它可以用作 Firebase 数据库中条目的唯一标识符。以下是将图像上传到 Firebase 存储的代码。
FirebaseStorage storage = FirebaseStorage.getInstance();
StorageReference storageRef = storage.getReference(FIREBASE_STORAGE_CLOTHING_REFERENCE);
StorageReference photoRef = storageRef.child(mSelectedImageUri.getLastPathSegment());
photoRef.putFile(mSelectedImageUri)
.addOnSuccessListener(this, new OnSuccessListener<UploadTask.TaskSnapshot>() {
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
// When the image has successfully uploaded, we get its download URL
Log.d("ADMIN_ACTIVITY", "Called");
Uri downloadUrl = taskSnapshot.getDownloadUrl();
assert downloadUrl != null;
String imageUrl = downloadUrl.toString();
Clothing clothing = new Clothing(imageUrl, title, mCategory);
mClothingRepository.addClothing(clothing);
}
});
当应用程序运行并且我从应用程序的管理部分添加服装项目时,图像确实被添加到 firebase 存储中,但是最后一个代码 fragment 中的 Log 调用未被调用。当然,如果添加了图像,则应调用 onSuccess
监听器,然后应运行 addClothing
方法。
为什么 onSuccess
监听器没有被调用,我是否正确保存到实时数据库?
最佳答案
您正在使用 Activity 范围形式 addOnSuccessListener() 。该文档指出:
The listener will be automatically removed during onStop()
监听器未被调用的最可能的解释是作为第一个参数 (this
) 传递的 Activity 已完成并且调用了其 onStop()
方法。要确认情况确实如此,请删除 this
参数并查看是否调用了监听器。
关于java - 添加图像时不会调用 Firebase 存储 onSuccess,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47738294/
如果在主题上成功发布了学生,我想将StudentDto返回给控制器。但因为onSuccess是在响应返回给控制器之后调用的。如果StudentDto成功发布,我有什么方法可以将其返回到。。如果在主题上
我正在java中使用tapestry,并且在tml文件中有一个循环,每行都有一个按钮。单击按钮时,我需要将行中元素的值传递给 onSuccess() 方法。我已经在按钮中尝试过使用 t: contex
我正在尝试使用 AjaxOptions.OnSuccess 来调用 javascript 函数并将参数传递给它。我可以毫无问题地调用一个没有参数的基本函数,这只是参数传递。 这是我的 JS 函数:
是否有一个处理程序方法,与失败相对应,类似于成功,可以真正退出该异步队列并继续正常的函数调用。 让我详细说明一下。让我们说 getConnection() .then(function(connect
我是 java/android 开发新手,所以如果可以的话请提供帮助。 我想要一个从 Web 服务(异步)获取数据的方法,一旦完成(onSuccess 或 onFailure),它应该调用 Activ
我有以下表格: @using (Ajax.BeginForm("DoComment", "Publication", new { id = Model.Publication.OID, pare
这是我在控制台中得到的: onSuccess(int, Header[], JSONObject) was not overriden, but callback was received 我已验证,
我正在开发一个基于 json 的应用程序。我想将数据从一个类传递给在 onSuccess 方法中接收的另一个类。当我请求数据时,数据将被正确接收,但是当我将该数据调用到其他类时,将发生空指针错误。我的
我使用 jqGrid 进行内联行编辑,我想让用户指示行更新是否成功。 问题是 onSuccess 事件在行编辑更新后没有触发,实际上没有任何操作事件被触发。 注意:我仅使用 JSON 服务器数据,没有
我做了 google connect 让用户使用他们的 google 帐户登录。 我所做的是,创建一个按钮 然后创建onSignIn() function onSignIn(googleUse
我正在使用 BrightFutures当我运行以下代码时,sequence().onComplete 和 sequence().onSuccess 在 geoCoder completionHandl
我正在尝试使用 Future 将一些基本功能链接在一起s 从一个光滑的 Action 中返回,我遇到了一些非常微不足道的绊脚石。 两者andThen和 onSuccess方法需要一个 PartialF
在 ASP.NET MVC 3 应用程序中,我使用 Ajax.BeginForm 将写入的文本发布到 Controller 。 @using (Ajax.BeginForm("Post", "Foru
如果RPC方法返回Void,那么它会调用onSuccess()方法吗?或者我必须返回一些值才能使 RPC 调用 onSuccess() 方法? 最佳答案 如果异步请求成功完成,无论其返回值如何,onS
我在 PageMethod 调用中使用了 onSuccess 和 onFailure。然而,它们都没有被调用,WebMethod 也没有被解雇。 alert("1"); PageMethods.Log
有人可以告诉我下面的代码怎么了。主要问题是该行: fDbListAllClients; // this is not being "called" 似乎没有执行。 也可能有其他错误代码。我不担心
我有一个 IndexedDB,其中包含页面上各种元素的属性。我对其中一个属性有一个索引,并使用键范围来获取特定的结果列表。 var key = IDBKeyRange.bound(10, 20); v
因此,我在 onSuccess 中有一些辅助行为,例如分析等。而且我需要传递给跟踪,不仅是查询/变异的结果(在这种情况下是变异),而且还有我传递的 arg。似乎只有将它附加到返回“数据”我才能做到这一
首先,之前对 SO 类似问题的回答根本没有帮助我。 有时调用executeTransactionAsync()时我没有在 onSuccess 中的 UI 线程上获取刷新数据方法。 例如,在下面的代码
我正在尝试使用以下结构将数据保存到 firebase root --clothing ----clothingImgDownloadUrl ------title ------category 据我了
我是一名优秀的程序员,十分优秀!