[英]Android geofence trigger activity
当某人进入/退出地理围栏(电子邮件/短信应用程序,联系人应用程序等)时,我想开始一项活动。
这可能吗?
如果可能的话,文档建议以下内容
从定位服务发送的Intent可以触发您应用中的各种操作,但是您不应让它启动活动或片段,因为组件仅应响应用户操作而可见。 在许多情况下,IntentService是处理意图的好方法。
我们是否可以将输入地理围栏视为用户操作?
Intent intent = new Intent("alert");
PendingIntent proximityIntent = PendingIntent.getBroadcast(this, 0, intent, 0);
locationManager.addProximityAlert(latitude,
longitude, PROXIMITY_DISTANCE, -1, proximityIntent);
然后注册一个扩展BroadcastReceiver的接收器
IntentFilter filter = new IntentFilter("alert");
registerReceiver(<your receiver>, filter);
在那里,您可以在onReceive方法中做您的事情
if (intent != null) {
String key = LocationManager.KEY_PROXIMITY_ENTERING;
boolean entering = intent.getBooleanExtra(key, false);
if (entering) {
// whatever
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.