@RequiresPermission(PERMISSION) @Override public boolean requestSend(){
  Activity activity=mActivity.get();
  if (activity == null)   return false;
  if (Log.isLoggable(Log.VERBOSE))   Log.v("Sending location");
  if (checkSelfPermission(activity,PERMISSION) != PackageManager.PERMISSION_GRANTED) {
    requestPermissions(activity,new String[]{PERMISSION},PERMISSION_REQUEST_CODE);
    return true;
  }
  return getFreshLocation(new SenderLocationListener(this));
}

@ RequiresPermission ( PERMISSION ) @ Override public boolean requestSend ( ) { Activity activity = mActivity . get ( ) ; if ( activity == null ) return false ; if ( Log . isLoggable ( Log . VERBOSE ) ) Log . v ( "Sending location" ) ; if ( checkSelfPermission ( activity , PERMISSION ) != PackageManager . PERMISSION_GRANTED ) { requestPermissions ( activity , new String [ ] { PERMISSION } , PERMISSION_REQUEST_CODE ) ; return true ; } return getFreshLocation ( new SenderLocationListener ( this ) ) ; }
asynchronously requests a fresh location and sends a location message .
