@Override public void onDataChange(DataSnapshot dataSnapshot) { if (location==null)return; databaseReference.child("Users"). child(GlobalInfo.PhoneNumber).child("Location").child("lat") .setValue( location.getLatitude()); databaseReference.child("Users"). child(GlobalInfo.PhoneNumber).child("Location").child("lag") .setValue( location.getLongitude()); DateFormat df= new SimpleDateFormat("yyyy/MM/dd HH:MM:ss"); Date date= new Date(); databaseReference.child("Users"). child(GlobalInfo.PhoneNumber).child("Location"). child("LastOnlineDate") .setValue(df.format(date).toString()); }
void LoadLocation(String PhoneNumber){ databaseReference.child("Users").child(PhoneNumber). child("Location").addValueEventListener(new ValueEventListener() { @Override public void onDataChange(DataSnapshot dataSnapshot) { Map<String, Object> td = (HashMap<String, Object>) dataSnapshot.getValue(); if (td==null)return; double lat = Double.parseDouble(td.get("lat").toString()); double lag = Double.parseDouble(td.get("lag").toString()); /** Make sure that the map has been initialised **/ sydney = new LatLng(lat, lag); LastDateOnline= td.get("LastOnlineDate").toString(); LoadMap(); } @Override public void onCancelled(DatabaseError error) { // Failed to read value // Log.w(TAG, "Failed to read value.", error.toException()); } }); }
@Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { GlobalInfo.MyTrackers.remove(listnewsData.get(position).PhoneNumber); DatabaseReference mDatabase= FirebaseDatabase.getInstance().getReference(); mDatabase.child("Users").child(listnewsData.get(position).PhoneNumber).child("Finders") .child(GlobalInfo.PhoneNumber).removeValue(); GlobalInfo globalInfo= new GlobalInfo(getApplicationContext()); globalInfo.SaveData(); Refesh(); } });
@Override public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) { @SuppressWarnings("VisibleForTests") Uri downloadUrl = taskSnapshot.getDownloadUrl(); DatabaseReference newPost = mDatabase.push(); newPost.child("title").setValue(title_val); newPost.child("desc").setValue(desc_val); newPost.child("image").setValue(downloadUrl.toString()); newPost.child("uid").setValue(PreferenceManager .getDefaultSharedPreferences(PostActivity.this) .getString("ID", "userid")); mProgress.dismiss(); startActivity(new Intent(PostActivity.this, FeedPage.class)); } });
public void setLiked(Image image) { if(!image.hasLiked) { // add new Like image.hasLiked = true; Like like = new Like(image.key, fbUser.getUid()); String key = database.child("likes").push().getKey(); database.child("likes").child(key).setValue(like); image.userLike = key; } else { // remove Like image.hasLiked = false; if (image.userLike != null) { database.child("likes").child(image.userLike).removeValue(); } } } }
public void orderByNested() { // [START rtdb_order_by_nested] // Most viewed posts Query myMostViewedPostsQuery = databaseReference.child("posts") .orderByChild("metrics/views"); myMostViewedPostsQuery.addChildEventListener(new ChildEventListener() { // TODO: implement the ChildEventListener methods as documented above // [START_EXCLUDE] @Override public void onChildAdded(@NonNull DataSnapshot dataSnapshot, @Nullable String s) {} @Override public void onChildChanged(@NonNull DataSnapshot dataSnapshot, @Nullable String s) {} @Override public void onChildRemoved(@NonNull DataSnapshot dataSnapshot) {} @Override public void onChildMoved(@NonNull DataSnapshot dataSnapshot, @Nullable String s) {} @Override public void onCancelled(@NonNull DatabaseError databaseError) {} // [END_EXCLUDE] }); // [END rtdb_order_by_nested] }
@Override public void onClick(View v) { Map<String, Object> map = new HashMap<String, Object>(); temp_key = root.push().getKey(); root.updateChildren(map); DatabaseReference message_root = root.child(temp_key); Map<String, Object> map2 = new HashMap<String, Object>(); map2.put("name", user_name); map2.put("msg", input_msg.getText().toString()); input_msg.setText(null); message_root.updateChildren(map2); } });
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Log.d(TAG, "onCreate"); databaseRef = FirebaseDatabase.getInstance().getReference(); databaseRef.addValueEventListener(veListener); pms = new PeripheralManagerService(); initPin(); }
DatabaseReference threadUsersRef = FirebasePaths.threadUsersRef(thread.getEntityID()).child(u.getEntityID()).child(Keys.Status); DatabaseReference userThreadsRef = FirebasePaths.userThreadsRef(u.getEntityID()).child(thread.getEntityID()).child(Keys.InvitedBy); String threadUsersPath = threadUsersRef.toString().replace(threadUsersRef.getRoot().toString(), ""); String userThreadsPath = userThreadsRef.toString().replace(userThreadsRef.getRoot().toString(), ""); threadUsersRef.onDisconnect().removeValue(); ref.updateChildren(data, (databaseError, databaseReference) -> { if (databaseError == null) { FirebaseEntity.pushThreadUsersUpdated(thread.getEntityID()).subscribe(new CrashReportingCompletableObserver());
public void goOnline() { super.goOnline(); FirebasePaths.firebaseRawRef().child(".info/connected").addListenerForSingleValueEvent(new FirebaseEventListener().onValue((snapshot, hasValue) -> { if (hasValue) { Timber.v("Already online!"); } else { DatabaseReference.goOnline(); } setUserOnline().subscribe(new CrashReportingCompletableObserver(disposableList)); })); }
public final void writeCheckIn(final CheckIn _checkIn, final @Nullable OnCompleteListener<Void> onCompleteListener) { final DatabaseReference dbRef = mDatabaseCheckIn.push(); final String key = dbRef.getKey(); final Task<Void> task = dbRef.setValue(EntityTranslator.toMap(_checkIn)); if(onCompleteListener != null) task.addOnCompleteListener(onCompleteListener); else task.addOnCompleteListener(new OnCompleteListener<Void>() { @Override public void onComplete(@NonNull Task<Void> task) { Log.d(TAG, TABLE_CHECK_IN + " | writeCheckIn: " + key + " | isSuccessful: " + task.isSuccessful()); } }); }
/** * Get the date when the thread was deleted * @return Single On success return the date or -1 if the thread hasn't been deleted **/ private Single<Long> threadDeletedDate() { return Single.create((SingleOnSubscribe<Long>) e -> { User user = ChatSDK.currentUser(); DatabaseReference currentThreadUser = FirebasePaths.threadRef(model.getEntityID()) .child(FirebasePaths.UsersPath) .child(user.getEntityID()) .child(Keys.Deleted); currentThreadUser.addListenerForSingleValueEvent(new FirebaseEventListener().onValue((snapshot, hasValue) -> { if(hasValue) { e.onSuccess((Long) snapshot.getValue()); } else { e.onSuccess(Long.valueOf(-1)); } })); }).subscribeOn(Schedulers.single()); }
@Override public void onDataChange(DataSnapshot snapshot) { boolean connected = snapshot.getValue(Boolean.class); if (connected) { DatabaseReference con = myConnectionsRef.push(); // When this device disconnects, remove it con.onDisconnect().removeValue(); // When I disconnect, update the last time I was seen online lastOnlineRef.onDisconnect().setValue(ServerValue.TIMESTAMP); // Add this device to my connections list // this value could contain info about the device or a timestamp too con.setValue(Boolean.TRUE); } }
public Completable push() { return Completable.create(e -> { // Getting the message ref. Will be created if not exist. final DatabaseReference ref = ref(); model.setEntityID(ref.getKey()); DaoCore.updateEntity(model); ref.setValue(serialize(), ServerValue.TIMESTAMP, (firebaseError, firebase) -> { if (firebaseError == null) { e.onComplete(); } else { e.onError(firebaseError.toException()); } }); }); }
private void configDevice() { Log.d(TAG, "configDevice() start..."); childDevice.addChildEventListener(new ChildEventListenerAdapter() { // 新增節點 @Override public void onChildAdded(DataSnapshot ds, String previousChildKey) { Device device = ds.getValue(Device.class); devices.add(device); Log.d(TAG, device.toString()); } }); deviceHandler.post(deviceRunnable); Log.d(TAG, "configDevice() done..."); }
public Completable pushName () { return Completable.create(e -> { DatabaseReference ref = FirebasePaths.threadRef(model.getEntityID()).child(FirebasePaths.DetailsPath); HashMap<String, Object> map = new HashMap<>(); map.put(Keys.Name, model.getName()); ref.updateChildren(map, (databaseError, databaseReference) -> { if (databaseError == null) { FirebaseEntity.pushThreadDetailsUpdated(model.getEntityID()).subscribe(new CrashReportingCompletableObserver()); e.onComplete(); } else { e.onError(databaseError.toException()); } }); }).subscribeOn(Schedulers.single()); }
/** * Push the thread to firebase. **/ public Completable push() { return Completable.create(e -> { DatabaseReference ref = null; if (model.getEntityID() != null && model.getEntityID().length() > 0) { ref = FirebasePaths.threadRef(model.getEntityID()); } else { ref = FirebasePaths.threadRef().push(); model.setEntityID(ref.getKey()); DaoCore.updateEntity(model); } ref.updateChildren(serialize(), (databaseError, databaseReference) -> { if (databaseError == null) { FirebaseEntity.pushThreadDetailsUpdated(model.getEntityID()).subscribe(new CrashReportingCompletableObserver()); e.onComplete(); } else { e.onError(databaseError.toException()); } }); }).subscribeOn(Schedulers.single()); }
public Completable once(){ return Completable.create(e -> { final DatabaseReference ref = ref(); ref.addListenerForSingleValueEvent(new FirebaseEventListener().onValue((snapshot, hasValue) -> { if(hasValue) { deserialize((Map<String, Object>) snapshot.getValue()); } e.onComplete(); })); }).subscribeOn(Schedulers.single()); }