程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

Firebase Tabletitle 在哪里定义?

发布于2023-01-30 22:34     阅读(1130)     评论(0)     点赞(9)     收藏(0)


这是一个更容易的。我正在寻找准确定义 tabletitle 的位置。ATM 就像 "post_05" : { "-LjaxpXonCsmzIrdR89M" : { "description" : "5. Beschreibung", "image" : "http", "member" : "5. Post", "name" : "5. Beschreibung", "status" : "Online", "timestamp" : 1562948098382, "title" : "5. Post" }} or "-LjaxpXonCsmzIrdR89M" : { "description" : "5. Beschreibung", "image" : " http", "member" : "5. Post", "name" : "5. Beschreibung", "status" :

但我想要它像:“post_05”:{“描述”:“5.Beschreibung”,“图像”:“http”,“member”:“5.Post”,“name”:“5.Beschreibung”,“ status" : "Online", "timestamp" : 1562948098382, "title" : "5. Post" }

所以我的问题是,如何停止这种自动创建?

谢谢!

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.posts_newpost_activity);


    btnCreate = (Button) findViewById(R.id.new_post_btn);
    etTitle = (EditText) findViewById(R.id.new_post_title);
    etImage = (EditText) findViewById(R.id.new_post_image);
    etDescription = (EditText) findViewById(R.id.new_post_description);

    getSupportActionBar().setDisplayShowHomeEnabled(true);
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);

    FirebaseUser mFirebaseUser = FirebaseAuth.getInstance().getCurrentUser();
    if (mFirebaseUser != null)
    {
        currentUserID = mFirebaseUser.getUid();
        UsersRef = FirebaseDatabase.getInstance().getReference().child("Users").child(currentUserID);
        UsersRef = FirebaseDatabase.getInstance().getReference().child("Users").child(currentUserID);
        DBRef = FirebaseDatabase.getInstance().getReference();
    }

    // Read from the USER database
    fAuth = FirebaseAuth.getInstance();

    btnCreate.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {


            DBRef.addValueEventListener(new ValueEventListener()
            {

                public void onDataChange(DataSnapshot dataSnapshot) {

                    //currentGroupID = dataSnapshot.child("group_1").getValue().toString();
                    currentGroupID = dataSnapshot.child("Users").child(currentUserID).child("group_1").getValue().toString();
                    size = (int) dataSnapshot.child("post_list").child(currentGroupID).getChildrenCount();

                    /*
                    try
                    {
                        //postID = getIntent().getStringExtra("noteId");
                        post_count =  size+1;
                        String text = (post_count < 10 ? "0" : "") + post_count;
                        postID = "post_"+text;

                        //Toast.makeText(this, noteID, Toast.LENGTH_SHORT).show();
                        if (!postID.trim().equals("")) {
                            isExist = true;
                        } else {
                            isExist = false;
                        }

                    } catch (Exception e) {
                        e.printStackTrace();
                    }

                    UserInformation user_i = new UserInformation();
                    user_i.setGroupId(currentGroupID);
                    user_i.setpostID(postID);

                    putData(user_i);
                    //getGroupID(currentGroupID);
                    */
                }

                public void onCancelled(DatabaseError error) {
                    // Failed to read value
                    Log.w("New Tag", "Failed to read value.", error.toException());
                }
            });

            String title = etTitle.getText().toString().trim();
            String image = etImage.getText().toString().trim();
            String description = etDescription.getText().toString().trim();
            final String groupId = currentGroupID;
            Log.w("New Tag", "Ln 143 currentGruppID: "+currentGroupID);
            Log.w("New Tag", "Ln 144 currentPostID: "+postID);


            if (!TextUtils.isEmpty(title) && !TextUtils.isEmpty(description)) {createPost(title, description, groupId, image, postID);}
            else {Snackbar.make(view, "Fill empty fields", Snackbar.LENGTH_SHORT).show();}

        }
    });

    if(mFirebaseUser != null)
    {

        // Read from the database
        DBRef.addValueEventListener(new ValueEventListener() {

            public void onDataChange(DataSnapshot dataSnapshot) {

                currentGroupID = dataSnapshot.child("Users").child(currentUserID).child("group_1").getValue().toString();
                size = (int) dataSnapshot.child("post_list").child(currentGroupID).getChildrenCount();
                post_count =  size+1;
                String text = (post_count < 10 ? "0" : "") + post_count;
                postID = "post_"+text;

                UserInformation user_group = new UserInformation();
                user_group.setGroupId(currentGroupID);
                UserInformation user_key = new UserInformation();
                user_key.setpostID(postID);

                Log.d("New Tag", "onCreate()Ln 171 GroupID is: " + currentGroupID);
                Log.d("New Tag", "onCreate()Ln 171 postID is: " + postID);

                putData(user_group, user_key);
            }

            public void onCancelled(DatabaseError error) {
                // Failed to read value
                Log.w("New Tag", "Failed to read value.", error.toException());
            }
        });
    }

}



 private void putData(UserInformation user_group, UserInformation user_key)
    {

        final String groupId = user_group.getGroupId();
        final String postID = user_key.getpostID();

        Log.w("New Tag", "puData() 189 is the currentGruppID: "+groupId);
        Log.w("New Tag", "puData() 189 is the currentPostID: "+postID);

        fPostsDatabase = FirebaseDatabase.getInstance().getReference().child("post_list").child(groupId);


                               if (isExist)
                                {

                                    fPostsDatabase.child(postID).addValueEventListener(new ValueEventListener() {
                                    @Override
                                    public void onDataChange(DataSnapshot dataSnapshot)
                                    {
                                        if (dataSnapshot.hasChild("title") && dataSnapshot.hasChild("description")) {

                                            //postID = "post_" + post_count;
                                            Log.w("New Tag", "The post-Count is: " + post_count);
                                            String title = dataSnapshot.child("title").getValue().toString();
                                            Toast.makeText(posts_newPost_Activity.this, "Post Details" + postID, Toast.LENGTH_SHORT).show();
                                            String description = dataSnapshot.child("description").getValue().toString();
                                            String status = dataSnapshot.child("status").getValue().toString();
                                            String name = dataSnapshot.child("name").getValue().toString();
                                            String image = dataSnapshot.child("image").getValue().toString();

                                            if (isExist) {
                                                etTitle.setText(title);
                                                etDescription.setText(description);
                                                //etStatus.setText(status);
                                                //etName.setText(name);
                                            }
                                        }
                                    }

                                        @Override
                                        public void onCancelled(DatabaseError databaseError) {
                                            Toast.makeText(posts_newPost_Activity.this, "Database Error Ln 206", Toast.LENGTH_SHORT).show();
                                        }
                                    });
                                }


    }

好的,这是 creat 脚本......我认为它应该发生在那里的某个地方......

private void createPost(String title, String description, String group_id, String image, String key) {

    final String groupId = group_id;
    Log.d("New Tag", "GROUPiD Ln 253 is: " + groupId);

    UserInformation user_key = new UserInformation();
    postID = key;
    Log.d("New Tag", "postID Ln 253 is: " + postID);
    Log.d("New Tag", "postID Ln 253 is: " + postID);

    fConDatabase = FirebaseDatabase.getInstance().getReference().child("Connection").child(groupId).child("posts");
    fPostsDatabase = FirebaseDatabase.getInstance().getReference().child("post_list").child(groupId);


    if (fAuth.getCurrentUser() != null) {

        if (isExist) {
            // UPDATE A Post
            Map updateMap = new HashMap();
            updateMap.put("title", etTitle.getText().toString().trim());
            updateMap.put("description", etDescription.getText().toString().trim());
            updateMap.put("name", etTitle.getText().toString().trim());
            updateMap.put("timestamp", -1 * new Date().getTime());
            updateMap.put("image", etImage.getText().toString().trim());
            updateMap.put("status", "Online");

            fPostsDatabase.child(postID).updateChildren(updateMap);
            fConDatabase.child(postID).updateChildren(updateMap);

            Toast.makeText(this, "Post updated (UPDATE).", Toast.LENGTH_SHORT).show();
        } else {
            // CREATE A NEW Post
            final DatabaseReference newPostRef = fPostsDatabase.push();
            final DatabaseReference newPostCon = fConDatabase.push();

            final Map postMap = new HashMap();
            postMap.put("title", title);
            postMap.put("description", description);
            postMap.put("name", description );
            postMap.put("image", image);
            postMap.put("status", "Online");
            postMap.put("member", title);
            postMap.put("timestamp", ServerValue.TIMESTAMP);

            final Map postMap2 = new HashMap();
            postMap2.put("Posts", "Saved");

            Thread mainThread = new Thread(new Runnable() {
                @Override
                public void run() {
                    newPostRef.setValue(postMap).addOnCompleteListener(new OnCompleteListener<Void>() {
                        Thread mainThread2 = new Thread(new Runnable() {
                            @Override
                            public void run() {
                                newPostCon.setValue(postMap2).addOnCompleteListener(new OnCompleteListener<Void>() {
                                    @Override
                                    public void onComplete(@NonNull Task<Void> task) {
                                        if (task.isSuccessful()) {
                                            Toast.makeText(posts_newPost_Activity.this, "Post added to database1", Toast.LENGTH_SHORT).show();
                                        } else {
                                            Toast.makeText(posts_newPost_Activity.this, "ERROR: " + task.getException().getMessage(), Toast.LENGTH_SHORT).show();
                                        }
                                    }
                                });

                            }
                        });
                        //ENDE 2ter aufruf

                        @Override
                        public void onComplete(@NonNull Task<Void> task) {
                            if (task.isSuccessful()) {
                                Toast.makeText(posts_newPost_Activity.this, "Post added to database2", Toast.LENGTH_SHORT).show();
                            } else {
                                Toast.makeText(posts_newPost_Activity.this, "ERROR: " + task.getException().getMessage(), Toast.LENGTH_SHORT).show();
                            }

                            mainThread2.start();
                        }
                    });
                }
            });

            mainThread.start();
        }
    } else {Toast.makeText(this, "USERS IS NOT SIGNED IN", Toast.LENGTH_SHORT).show();}




}

解决方案


-L...密钥来自对 的调用push()如果您想在 JSON 中完全跳过该级别,您可能正在寻找:

final DatabaseReference newPostRef = fPostsDatabase;

这假定您fPostsDatabase已经包含在post_05您共享的 JSON 中显示的密钥。



所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:http://www.javaheidong.com/blog/article/635575/97825f597c99120476de/

来源:java黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

9 0
收藏该文
已收藏

评论内容:(最多支持255个字符)