Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 未获取正确的Firebase字符串_Java_Android_Firebase_Google Cloud Firestore - Fatal编程技术网

Java 未获取正确的Firebase字符串

Java 未获取正确的Firebase字符串,java,android,firebase,google-cloud-firestore,Java,Android,Firebase,Google Cloud Firestore,我试图从嵌套集合中获取字符串引用,但它会生成一个随机字符串,我不明白为什么,因为我在另一个类中设置了它,并且它工作正常(但这是顶级集合) 我储蓄如下: String folderFirebaseString; ----------------------- folderFirebaseString = collectionReference.document("User_" + JournalApi.getInstance().getUserId()).collection(

我试图从嵌套集合中获取字符串引用,但它会生成一个随机字符串,我不明白为什么,因为我在另一个类中设置了它,并且它工作正常(但这是顶级集合)

我储蓄如下:

        String folderFirebaseString; 

-----------------------
folderFirebaseString = collectionReference.document("User_" + JournalApi.getInstance().getUserId()).collection("Created_Folders").document().getId();

final FolderJournal folderJournal = new FolderJournal();
            folderJournal.setTitle(title);
            folderJournal.setUserId(currentUserId);
            folderJournal.setFolderId(folderFirebaseString);

        Log.d(TAG, "folderFireBaseString: " + folderFirebaseString);



        //Collection Reference --> Journal <-- document --> unique userID + username entered at registration <-- Collection for Titles --> titleTextView
        db.collection("Journal").document("User_" + JournalApi.getInstance().getUserId()).collection("Created_Folders").document().set(folderJournal).addOnSuccessListener(new OnSuccessListener<Void>() {
            public void onSuccess(Void aVoid) {

                Log.d(TAG, "onSuccess FULL PATH: "+ db.collection("Journal").document("User_" + JournalApi.getInstance().getUserId()).collection("Created_Folders").document().getId());

                progressBar.setVisibility(View.INVISIBLE);
                Intent intent = new Intent(FolderCreation.this, FoldersActivity.class);
                startActivity(intent);
                finish();
            }

        })
String folderFirebaseString;
-----------------------
folderFirebaseString=collectionReference.document(“User_”+JournalApi.getInstance().getUserId()).collection(“Created_Folders”).document().getId();
最终FolderJournal FolderJournal=新FolderJournal();
folderJournal.setTitle(标题);
setUserId(currentUserId);
setFolderId(folderFirebaseString);
Log.d(标记“folderFireBaseString:”+folderFireBaseString);
//集合参考-->日志唯一用户ID+在注册标题下输入的用户名XtView
db.collection(“Journal”).document(“User_uu”+JournalApi.getInstance().getUserId()).collection(“创建的文件夹”).document().set(folderJournal).addOnSuccessListener(新建OnSuccessListener()){
成功时公开作废(作废避免){
Log.d(标记“onSuccess完整路径:”+db.collection(“Journal”).document(“User_”+JournalApi.getInstance().getUserId()).collection(“Created_Folders”).document().getId());
progressBar.setVisibility(View.INVISIBLE);
意向意向=新意向(FolderCreation.this、FoldersActivity.class);
星触觉(意向);
完成();
}
})
My
folderFirebaseString
返回一个随机字符串以及
LogD
我已设置返回一个不同的随机字符串,但是
db.collection…
(等…)firebase中随机生成的字符串实际上是另一个字符串


在另一个类中,我设置了这个选项,但正如
collectionReference=db.collection(“CollectionNameHere”).getDocument().getId();
一样,它可以工作并获得正确的字符串。我做错了什么?

我通过预生成一个firebase字符串,然后将其传递给它自己来解决这个问题

       String folderFirebaseString; 

-----------------------
folderFirebaseString = collectionReference.document("User_" + JournalApi.getInstance().getUserId()).collection("Created_Folders").document().getId();

final FolderJournal folderJournal = new FolderJournal();
            folderJournal.setTitle(title);
            folderJournal.setUserId(currentUserId);
            folderJournal.setFolderId(folderFirebaseString);

        //Collection Reference --> Journal <-- document --> unique userID + username entered at registration <-- Collection for Titles --> titleTextView
        db.collection("Journal").document("User_" + JournalApi.getInstance().getUserId()).collection("Created_Folders").document(**folderFirebaseString**).set(folderJournal).addOnSuccessListener(new OnSuccessListener<Void>() {
            public void onSuccess(Void aVoid) {

                Log.d(TAG, "onSuccess FULL PATH: "+ db.collection("Journal").document("User_" + JournalApi.getInstance().getUserId()).collection("Created_Folders").document(*###folderFirebaseString###*).getId());

                progressBar.setVisibility(View.INVISIBLE);
                Intent intent = new Intent(FolderCreation.this, FoldersActivity.class);
                startActivity(intent);
                finish();
            }

        })
String folderFirebaseString;
-----------------------
folderFirebaseString=collectionReference.document(“User_”+JournalApi.getInstance().getUserId()).collection(“Created_Folders”).document().getId();
最终FolderJournal FolderJournal=新FolderJournal();
folderJournal.setTitle(标题);
setUserId(currentUserId);
setFolderId(folderFirebaseString);
//集合参考-->日志唯一用户ID+在注册标题下输入的用户名XtView
db.collection(“Journal”).document(“用户”+JournalApi.getInstance().getUserId()).collection(“创建的文件夹”).document(**folderFirebaseString**).set(folderJournal).addOnSuccessListener(新建OnSuccessListener()){
成功时公开作废(作废避免){
Log.d(标记“onSuccess完整路径:”+db.collection(“Journal”).document(“User#”+JournalApi.getInstance().getUserId()).collection(“Created#Folders”).document(*folderFirebaseString#####*).getId());
progressBar.setVisibility(View.INVISIBLE);
意向意向=新意向(FolderCreation.this、FoldersActivity.class);
星触觉(意向);
完成();
}
})

什么是
db.collection?
和什么是
collectionReference
?看起来您可能正在添加创建新的
folderJournal
的结果,该结果添加到您的
db.collection
中,这就是您获得的参考。您能否提供更多关于db和collectionReference是?db,collection reference是我在-->private FirebaseFirestore db=FirebaseFirestore.getInstance();private collectionReference collectionReference=db.collection(“CollectionNameHere”)中保存firebase引用的变量;此时仅由我自己使用,以便我可以查看不同的文档,以检查是否删除和引用了正确的文档等。在我更改信息以实际保存有用的内容之前。请添加数据库的屏幕截图,并突出显示您认为错误的id。请也以@AlexMam@AlexMamo谢谢你的帮助。我设法用一点小技巧解决了这个问题。