我正在启动lat和lng以及结束lat和lng。我正在使用addProximityAlert作为警报事件。我想在结束lat和lng之前的某个时间发出警告。 所以我需要计算半径。
我怎么能找到它?
答案 0 :(得分:1)
我是新手,但这是实现目标的方法。
创建警报时添加额外信息(包括您设置的半径或可以链接到具有半径的位置列表的ID)
在我的情况下,我的locs是具有id,lat,lon和dist的对象(loc)的集合
Intent intent = new Intent(com.repliq.RingZones2Personal.RingZoneService.class.getName());
这是你添加它的地方......
intent.putExtra("id", loc.getID());
PendingIntent proximityIntent = PendingIntent.getBroadcast(this, loc.getID(), intent, 0);
locationManager.addProximityAlert(loc.getLat(), loc.getLon(), loc.getDist(), -1, proximityIntent);
在您的邻近意图接收器中,您可以获得所有额外信息
public void onReceive(Context context, Intent intent) {
String key = LocationManager.KEY_PROXIMITY_ENTERING;
Boolean entering = intent.getBooleanExtra(key, false);
Bundle extras = intent.getExtras();
int zoneid = extras.getInt("locid", -1);
希望这会有所帮助。 亚尔钦