Android OnCompleteListener-OnDeleteListener-OnUpdateListener 试试看{ Myclass S=新的S(); //这里我给出我的变量 如果(变量代码!=0){ MainActivity.db。 集合(“S”)。 文件(“+S”)。 集合。 //问题是这里我想要的不是添加,而是删除和更新 addOnCompleteListener(新的OnCompleteListener(){ @凌驾 未完成的公共void(@NonNull任务){ Toast.makeText(getActivity(),“下一个匹配项在”+var_currentdate+“In Town”'+var_Town+“”,Toast.LENGTH_LONG.show(); } }) .addOnFailureListener(新的OnFailureListener(){ @凌驾 public void onFailure(@NonNull异常e){ Toast.makeText(getActivity(),“添加操作失败”,Toast.LENGTH_LONG.show(); } }); }否则{ Toast.makeText(getActivity(),“您需要完成团队代码”,Toast.LENGTH_LONG.show(); } }捕获(例外e){ String message=e.getMessage(); Toast.makeText(getActivity(),message,Toast.LENGTH_LONG).show(); } } });

Android OnCompleteListener-OnDeleteListener-OnUpdateListener 试试看{ Myclass S=新的S(); //这里我给出我的变量 如果(变量代码!=0){ MainActivity.db。 集合(“S”)。 文件(“+S”)。 集合。 //问题是这里我想要的不是添加,而是删除和更新 addOnCompleteListener(新的OnCompleteListener(){ @凌驾 未完成的公共void(@NonNull任务){ Toast.makeText(getActivity(),“下一个匹配项在”+var_currentdate+“In Town”'+var_Town+“”,Toast.LENGTH_LONG.show(); } }) .addOnFailureListener(新的OnFailureListener(){ @凌驾 public void onFailure(@NonNull异常e){ Toast.makeText(getActivity(),“添加操作失败”,Toast.LENGTH_LONG.show(); } }); }否则{ Toast.makeText(getActivity(),“您需要完成团队代码”,Toast.LENGTH_LONG.show(); } }捕获(例外e){ String message=e.getMessage(); Toast.makeText(getActivity(),message,Toast.LENGTH_LONG).show(); } } });,android,firebase,google-cloud-firestore,Android,Firebase,Google Cloud Firestore,这是“添加”-插入的代码。我写入而不是addOnCompleteListener,我写入deleteOnCompleteListener。因此,我将使用delete从Firestore中删除值。另外,我也用了类似的方法更新。但是我也失败了,我没有添加完整的listener,而是编写了updateOnCompleteListener。到底出了什么问题?addOnCompleteListener表示您正在附加一个在操作完成(成功或失败)时触发的侦听器。侦听器本身不执行任何操作。您为其提供的代码块将在

这是“添加”-插入的代码。我写入而不是addOnCompleteListener,我写入deleteOnCompleteListener。因此,我将使用delete从Firestore中删除值。另外,我也用了类似的方法更新。但是我也失败了,我没有添加完整的listener,而是编写了updateOnCompleteListener。到底出了什么问题?

addOnCompleteListener
表示您正在附加一个在操作完成(成功或失败)时触发的侦听器。侦听器本身不执行任何操作。您为其提供的代码块将在操作完成时运行

在您的例子中,您正在设置一些值并将侦听器附加到该操作,这意味着当设置值的操作完成时,将触发
onComplete
块。如果要更新值,则需要使用update()而不是set()

有关设置和更新值以及添加文档等的更多信息,请阅读

有关删除值和文档的信息,请阅读

注:

您可能想考虑使用< <代码> AddieRealListInter < /C>和<代码> AddioRealUpListList< <代码>,而不是<代码> AddiOnthelististe<代码>,因为<>代码> AddiOnthelististAu//C>基本上总是在操作完成时触发,而不管它是否成功或失败。


但是,
addOnSuccessListener
addOnFailureListener
非常简单,可以帮助您更有效地处理错误。

没有deleteOnCompleteListener。您试图实现什么?从Firebase中删除数据。通过这种方式将这些变量插入Firebase。使用delete删除它们,使用update创建它们
addOnCompleteListener
意味着您正在附加一个侦听器,该侦听器在操作完成时触发。侦听器本身不执行任何操作。您为其提供的代码块将在操作完成时运行。在您的例子中,您正在设置一些值并将侦听器附加到该操作,这意味着当设置值的操作完成时,您的
onComplete
块将运行。如果要更新值,需要使用
update
而不是
set
并传递数据。删除是不同的。阅读documentations@MehranB如果你链接了相应的文档,听起来确实像是一个答案;)你们能把文件寄给我吗?因为我展示了这么多的信息和视频,我仍然感到困惑
try {

                   Myclass S = new S();
                    //here I give my variables
                    if (var_code !=0) {
                       MainActivity.db.
                             collection("S").
                            document("" + S).
                              set(S).
//the problem is here I want instead of add I want delete and update
                               addOnCompleteListener(new OnCompleteListener<Void>() {
                                   @Override
                                   public void onComplete(@NonNull Task<Void> task) {
                                       Toast.makeText(getActivity(), "The Next Match is on"+var_currentdate+ "In Town '"+var_town+"'", Toast.LENGTH_LONG).show();
                                   }
                               })

                               .addOnFailureListener(new OnFailureListener() {
                                   @Override
                                   public void onFailure(@NonNull Exception e) {
                                       Toast.makeText(getActivity(),"add operation failed.",Toast.LENGTH_LONG).show();
                                   }
                               });
                    }else {
                        Toast.makeText(getActivity(),"You Need To Complete The Teamcode",Toast.LENGTH_LONG).show();
                    }
                } catch (Exception e) {
                    String message = e.getMessage();
                    Toast.makeText(getActivity(),message,Toast.LENGTH_LONG).show();
                }
            }
        });