Adding string to firebase url

I need to get the phone number registered in the uid. I tried the code below, however I got a null pointer exception. Is it possible to add a string dynamically to a firebase link? Please suggest me if there are other ways to do this. How can I dynamically retrieve data based on logged in user

 ref7= new Firebase("https://boiling-torch-4946.firebaseio.com/Registered"+authData.getUid());
                ref7.addValueEventListener(new ValueEventListener() {
                    @Override
                    public void onDataChange(DataSnapshot snapshot) {
                        snapshot.getValue();
                        Map<String, Object> newPost = (Map<String, Object>) snapshot.getValue();
                        String name1 = String.valueOf(newPost.get("phonenum"));
                        System.out.println("number:" + newPost.get("phonenum"));
                        System.out.println("New Post"+name1);


                    }

                    @Override
                    public void onCancelled(FirebaseError firebaseError) {

                    }
                });



{
  "Registered" : {
    "12344" : {
      "ID" : "simplelogin:54",
      "name" : "jwn"
    },
    "801414" : {
      "ID" : "simplelogin:55",
      "name" : "jqn"
    },
    "0987654321" : {
      "ID" : "simplelogin:53",
      "name" : "jun"
    },
    "1234567890" : {
      "ID" : "simplelogin:52",
      "name" : "jan"
    },
    "9879879879" : {
      "ID" : "simplelogin:51",
      "name" : "jon"
    },
    "authenticated" : {
      "simplelogin:53" : {
        "-JdW-m-ZackXw9gtBGkS" : {
          "name" : "jun",
          "number" : "0987654321",
          "provider" : "password"
        },
        "-JdW6wic1ZblwhP2EQ-m" : {
          "provider" : "password"
        },
        "-JdWAR1jupQh3MbkycR3" : {
          "provider" : "password"
        },
        "-JdWBDl0aoMb7gGe-Vnc" : {
          "provider" : "password"
        }
      },
      "simplelogin:54" : {
        "-JdW0DPWeiCL2OS8dwnU" : {
          "name" : "jun",
          "number" : "0987654321",
          "provider" : "password"
        },
        "-JdW0DexvoO3twRbtkVk" : {
          "name" : "jwn",
          "number" : "12344",
          "provider" : "password"
        }
      },
      "simplelogin:55" : {
        "-JdW0jWmdbarKNRTWobf" : {
          "name" : "jun",
          "number" : "0987654321",
          "provider" : "password"
        },
        "-JdW0jXMfeapowvMhW_b" : {
          "name" : "jwn",
          "number" : "12344",
          "provider" : "password"
        },
        "-JdW0klH2kHsjIxi90aR" : {
          "name" : "jqn",
          "number" : "801414",
          "provider" : "password"
        }
      }
    },
    "simplelogin:53" : {
      "name" : "jun",
      "phonenum" : "0987654321"
    },
    "simplelogin:54" : {
      "name" : "jwn",
      "phonenum" : "12344"
    },
    "simplelogin:55" : {
      "name" : "jqn",
      "phonenum" : "801414"
    }
  },

}

      

And Log cat

12-19 06:14:57.925    1819-1819/com.praveen.registersample.app E/AndroidRuntime﹕ FATAL EXCEPTION: main
    java.lang.NullPointerException
            at com.praveen.registersample.app.login$2$1.onDataChange(login.java:245)
            at com.firebase.client.core.ValueEventRegistration$1.run(ValueEventRegistration.java:48)
            at android.os.Handler.handleCallback(Handler.java:725)
            at android.os.Handler.dispatchMessage(Handler.java:92)
            at android.os.Looper.loop(Looper.java:137)
            at android.app.ActivityThread.main(ActivityThread.java:5041)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:511)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
            at dalvik.system.NativeStart.main(Native Method)

      

+3


source to share


1 answer


I found a solution. It was very simple, I had to store auth.getuid () in a string variable

The line userid = auth.getuid ();



" https://boiling-torch-4946.firebaseio.com/Registered " / + userid ());

+2


source







All Articles