Proximity and Current Location


Last Updated:

  1. H0lly

    H0lly New Member This Topic's Starter

    Joined:
    Nov 25, 2009
    Messages:
    2
    Likes Received:
    0
    Having a problem trying to get a proximity alert working where I want a marker to appear for the current location but only within a proximity radius.

    When I enter co-ordinates either via DDMS or Geo Fix the lat/long being passed from the PendingIntent to the BroadcastReceiver doesn't match.

    Code extracts:

    Within onCreate:
    lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);

    locationListener = new MyLocationListener();

    lm.requestLocationUpdates(
    LocationManager.GPS_PROVIDER,
    0,
    1,
    locationListener);

    Location myloc = lm.getLastKnownLocation
    (LocationManager.GPS_PROVIDER);
    if (myloc != null) {
    myloc.getLatitude();
    myloc.getLongitude();
    }

    Intent intent = new Intent(PROXIMITY_ALERT);
    Bundle bun = new Bundle();
    bun.putDouble("myLatt", myloc.getLatitude());
    bun.putDouble("myLongg",myloc.getLongitude());
    intent.putExtras(bun);

    PendingIntent proximityIntent =
    PendingIntent.getBroadcast(edinmapActivity.this,-1, intent, 0);
    lm.addProximityAlert(55.951002, -3.202085,
    5000f, -1, proximityIntent);
    //the returned value "check" is always null.* I know the new object
    //ProxmityIntentReceiver object is being created.
    Intent check = registerReceiver(new ProximityIntentReceiver(),
    proximitylocationIntentFilter);

    BroadcastReceiver:
    public void onReceive (Context context, Intent intent) {
    String key = LocationManager.KEY_PROXIMITY_ENTERING;
    Boolean entering = intent.getBooleanExtra(key, false);

    Bundle b = intent.getExtras();
    final double mylat = b.getDouble("myLatt",0);
    final double mylong = b.getDouble("myLongg",0);
    .....
    }

    Inside my Activity in Manifest:

    <intent-filter>
    <action android:name="<package name>.action.PROXIMITY_ALERT" />
    <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
     

    Advertisement

Share This Page

Loading...