我正在开发关注应用程序。它在用户到达办公室时登录用户,否则会显示“不在办公室”的消息。所以为此我需要获取用户位置,并且需要检查它是否在办公室经度纬度值之间。只有当用户处于办公室的经度纬度值之间时,用户才能登录。如何开发这个应用程序。如何根据位置纬度经度限制用户登录
-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. 限制位置的经度和纬度
- 2. 如何让Google地图根据纬度/经度显示位置
- 3. 如何根据用户输入的经度和纬度找到一个位置?
- 4. 根据经度 - 点纬度
- 5. 如何获取经度和纬度后的用户位置
- 6. 如何从Facebook用户位置获取经度和纬度?
- 7. 获取经度和纬度的限制
- 8. 如何根据Android中给定的经度和纬度导航到位置
- 9. 根据纬度/经度旋转球体
- 10. 根据纬度/经度放大Highmaps
- 11. NullPointerException经度和纬度上的位置
- 12. 当前位置,经度和纬度
- 13. 经度纬度点的奇怪位置
- 14. JSON经度纬度最近的位置
- 15. 位置(经度,纬度)返回0
- 16. 错误位置纬度/经度
- 17. 获取位置(经度和纬度)
- 18. 位置的经度和纬度
- 19. 获取用户位置的经度和纬度
- 20. Android用户位置返回0.0的经度和纬度
- 21. 在封闭位置找到用户的纬度和经度
- 22. 获取用户位置的纬度经度与API 22
- 23. 从用户指定位置获取纬度和经度
- 24. 找不到用户的位置: - 纬度和经度在android
- 25. 如何在java中使用纬度和经度获取位置?
- 26. 当用户通过Facebook api登录时,查找用户的当前位置(经度和纬度)?
- 27. 如何经纬度ArryList复制到另一个经纬度ArryList
- 28. JPQL根据纬度和经度得到最近的记录
- 29. 绘制经度和纬度
- 30. 如何在android中限制纬度和经度?
哇感谢简单的代码。效果不错 –
最受欢迎:) –