我正在开发关注应用程序。它在用户到达办公室时登录用户,否则会显示“不在办公室”的消息。所以为此我需要获取用户位置,并且需要检查它是否在办公室经度纬度值之间。只有当用户处于办公室的经度纬度值之间时,用户才能登录。如何开发这个应用程序。如何根据位置纬度经度限制用户登录
-3
A
回答
0
获取用户位置后,如果用户属于您提及的范围,只需将其标记即可检查距离您办公室(lat,Lon)的原点距离。
float[] results = new float[1];
Location.distanceBetween(currentlatitude, currentlongitude, originLat, originLon, results);
float distanceInMeters = results[0];
boolean isWithinRange = distanceInMeters < 3000;
if (isWithinRange) {
//write your code what ever you wanna perform
}
0
制作将由办公区被定义的地理围栏(遵循this弄清楚如何做到这一点)。例如,填充名为mGeofenceList一个列表对象:
mGeofenceList.add(new Geofence.Builder()
// Set the request ID of the geofence. This is a string to identify this
// geofence.
.setRequestId(entry.getKey())
.setCircularRegion(
entry.getValue().latitude,
entry.getValue().longitude,
Constants.GEOFENCE_RADIUS_IN_METERS
)
.setExpirationDuration(Constants.GEOFENCE_EXPIRATION_IN_MILLISECONDS)
.setTransitionTypes(Geofence.GEOFENCE_TRANSITION_ENTER |
Geofence.GEOFENCE_TRANSITION_EXIT)
.build());
采取用户的位置,每次同时登录和检查它是否属于该地理围栏。如果在里面,让他/她登录,否则说出区域。使用这个公式来检查:
更新 公式解释: 如果你知道一个圆的半径,什么是它的中心,你可以得到任何点在内部或外部通过该公式的圆圈。如果从点到中心的距离大于半径,那么它的外侧,反之亦然。
如果有帮助,你也可以看到this方法。
简单!
+0
@JebinCThaliyan答案更新 –
+0
感谢你,非常实用:) –
相关问题
- 1. 如何让Google地图根据纬度/经度显示位置
- 2. 如何根据用户输入的经度和纬度找到一个位置?
- 3. 根据经度 - 点纬度
- 4. 获取经度和纬度的限制
- 5. 如何根据Android中给定的经度和纬度导航到位置
- 6. 根据纬度/经度旋转球体
- 7. 根据纬度/经度放大Highmaps
- 8. 位置(经度,纬度)返回0
- 9. 位置的经度和纬度
- 10. JSON经度纬度最近的位置
- 11. 错误位置纬度/经度
- 12. 当前位置,经度和纬度
- 13. 在封闭位置找到用户的纬度和经度
- 14. 获取用户位置的纬度经度与API 22
- 15. 找不到用户的位置: - 纬度和经度在android
- 16. 从用户指定位置获取纬度和经度
- 17. 如何经纬度ArryList复制到另一个经纬度ArryList
- 18. JPQL根据纬度和经度得到最近的记录
- 19. 如何获取用户点击的位置的经度和纬度
- 20. 如何比较当前用户的纬度和经度与其他用户纬度和经度
- 21. 如何根据我的当前位置将指南针指向我特定的纬度经度位置?
- 22. 根据当前在servlet中的位置获取附近的经度和纬度
- 23. 如何查找特定位置的经度和纬度?
- 24. 如何确定我的当前位置(经度和纬度)?
- 25. Android - 如何获取当前位置(经度和纬度)?
- 26. 如何找到经度和纬度位置的平均值?
- 27. 如何获取黑莓当前位置的经度和纬度?
- 28. 如何从googleapis中考虑纬度和经度的位置
- 29. 如何获取Android中当前位置的纬度和经度?
- 30. 纬度和经度限制最大长度
哇感谢简单的代码。效果不错 –
最受欢迎:) –