有什么方法可以通过Firebase实时数据库与朋友共享位置

时间:2019-05-26 20:30:45

标签: android firebase-realtime-database android-gps

我是android的新手,我正在开发一个应用程序,该应用程序的用户会将一个公园标记为他们想要的其他朋友。当那个带标签的朋友靠近带标签的公园的100米半径处时。第一个朋友将收到一条通知,通知该用户已到公园。就像在whatsapp中共享位置一样。代码会有所帮助。

1 个答案:

答案 0 :(得分:0)

您可以获取用户位置数据(经度,纬度)并将其保存到Firebase。您必须编写一种方法来控制检查100米半径区域的所有用户数据。 像这样:

public List<UserModel> AreaController(Firebase database, UserModel userModel){
    List<UserModel> users = database.UserModel.getAllUsers;
    List<UserModel> nearUsers = new List<UserModel>;
    for(int i=0 ; i<users.Length ; i++){
        if( radiusControlFunction(users[i].location) == true ) 
            nearUsers.add(users[i]);
    }
    return nearUsers;
}

radiusControlFunction()是一种计算距离的方法,如果距离<100m,则返回true。