iPhone 被盗时会发出警报
我们正在开发一个企业应用程序。手机连接到 Wifi 路由器。目的是在手机移出安全区域时触发警报..(建筑物外) 检查 iPhone 是否始终在建筑物内的最佳方法是什么?
我们尝试的一些选项是
1.使用 Wifi(持续 ping 到 WiFi 网络),如果没有触发警报。 2.如果坐标发生变化(使用GPS)
是否有其他方法可以实现这一点。
We are developing an enterprise application .The phones are connected to a Wifi router. The objective is to trigger an alarm if the phone moves out of the secure area .. (outside the building)
What is the best way to check if the iPhone is always inside the building .
some of the options we tried are
1.using Wifi(continous ping to wifi network),if not trigger an alarm .
2.if coordinates change (using GPS)
Are there any other means to achieve this .
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
您可以使用 iOS 4 中的定位服务(具有后台定位功能)来确定手机何时移动到其他位置。
You can use Location Services in iOS 4 (with the background location feature) to determine when the phone has moved to a different location.
@indragie 使用定位服务的想法是一个很好的想法。如果您可以确定 WIFI SID 不会更改,则可以探测 iPhone 当前与哪个接入点关联。如果您要执行 ping 操作,那么更好的方法是使系统服务与系统服务无关,只需定期向企业服务器发出 HTTP 查询即可。然后,服务器可以使用策略语言来声明可接受的访问点(来自各种指标)。这可能是为了让人们可以把 iPhone 带回家。
@indragie's idea of using Location Services is a good one. If you can be sure that the WIFI SID isn't going to change, you could probe to see which access point the iPhone is currently associated to. If you are going to ping, then a better approach is to make the system service agnostic, and simply issue an HTTP query on a regular basis to your enterprise server. The server can then have a policy language on it declaring acceptable access points (from a variety of metrics). This might be set up to allow people to take their iPhones home.
最好的选择是 GPS,因为如果您依赖 WiFi 并且设备未连接到 WiFi 网络,手机将无法找到其位置。
在此处查看 Apple 的位置感知功能文档 http ://developer.apple.com/library/ios/#documentation/UserExperience/Conceptual/LocationAwarenessPG/CoreLocation/CoreLocation.html
您将能够在后台跟踪“重大”或标准位置变化,详细信息可以可以在这里找到 http://developer.apple.com/library/ios/#documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/BackgroundExecution/BackgroundExecution.html#//apple_ref/doc/uid/TP40007072-CH5
[编辑以包括]
您可能也会对此感兴趣 - http://longweekendmobile.com/2010/07/22/iphone-background-gps-accurate-to-500-meters-not-enough-for-foot-traffic/
Your best bet is GPS as the phone will not be able to find its location if you rely on WiFi and the device is not connected to a WiFi network.
Check out Apple's documentation for Location Awareness capabilities here http://developer.apple.com/library/ios/#documentation/UserExperience/Conceptual/LocationAwarenessPG/CoreLocation/CoreLocation.html
You will be able to track "significant" or standard location changes in the background, details can be found here http://developer.apple.com/library/ios/#documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/BackgroundExecution/BackgroundExecution.html#//apple_ref/doc/uid/TP40007072-CH5
[edit to include]
This might be of interest to you too - http://longweekendmobile.com/2010/07/22/iphone-background-gps-accurate-to-500-meters-not-enough-for-foot-traffic/
这取决于你想做什么。只是为了让 iPhone 用户知道他/她要搬走,使用定位服务就足够了。
但是,如果您希望拥有一个服务器来确保所有设备都在范围内,那么情况会更加复杂,因为您的应用程序可能会在没有后台状态通知的情况下被挂起;换句话说,您可能无法抓住应用程序终止的时刻并采取适当的操作。因此,在这种情况下,您将需要一个心跳系统,例如 ping 服务器。
It depends on what you want to do. Just to let the iPhone user know that he/she is moving away, using Location Services is good enough.
However, if you want to have a server that makes sure all the devices are within range, then it's more complex because your application may get suspended without a notice from a background state; in other words, you may not be able to catch the moment when your application terminates and take appropriate actions. Therefore you are going to need a heartbeat system like pinging to the server in this case.