本文整理汇总了Java中android.location.Location.setTime方法的典型用法代码示例。如果您正苦于以下问题:Java Location.setTime方法的具体用法?Java Location.setTime怎么用?Java Location.setTime使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类android.location.Location
的用法示例。
在下文中一共展示了Location.setTime方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: createMockLocation
import android.location.Location; //导入方法依赖的package包/类
private Location createMockLocation() {
String longitudeString = longitudeInput.getText().toString();
String latitudeString = latitudeInput.getText().toString();
if (!longitudeString.isEmpty() && !latitudeString.isEmpty()) {
double longitude = Location.convert(longitudeString);
double latitude = Location.convert(latitudeString);
Location mockLocation = new Location("flp");
mockLocation.setLatitude(latitude);
mockLocation.setLongitude(longitude);
mockLocation.setAccuracy(1.0f);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
mockLocation.setElapsedRealtimeNanos(SystemClock.elapsedRealtimeNanos());
}
mockLocation.setTime(new Date().getTime());
return mockLocation;
} else {
throw new IllegalArgumentException();
}
}
示例2: mockLocation
import android.location.Location; //导入方法依赖的package包/类
/**
* Here we build the new mock {@link Location} object and fill in as much information we can calculate.
*
* @param point taken from the points list, converts this to a {@link Location}.
* @return a {@link Location} object with as much information filled in as possible.
* @since 2.2.0
*/
private Location mockLocation(Point point) {
location = new Location(MockLocationEngine.class.getName());
location.setLatitude(point.latitude());
location.setLongitude(point.longitude());
// Need to convert speed to meters/second as specified in Android's Location object documentation.
float speedInMeterPerSec = (float) (((speed * 1.609344) * 1000) / (60 * 60));
location.setSpeed(speedInMeterPerSec);
if (points.size() >= 2) {
double bearing = TurfMeasurement.bearing(point, points.get(1));
Timber.v("Bearing value %f", bearing);
location.setBearing((float) bearing);
}
location.setAccuracy(3f);
location.setTime(System.currentTimeMillis());
return location;
}
示例3: getLocationCache
import android.location.Location; //导入方法依赖的package包/类
/**
* Retrieves the stored Location from SharedPreferences.
*
* @return location
*/
@Nullable
private Location getLocationCache() {
long rawLat = mPreferences.getLong(PREF_CACHE_LATITUDE, -1);
long rawLng = mPreferences.getLong(PREF_CACHE_LONGITUDE, -1);
long time = mPreferences.getLong(PREF_CACHE_TIME, -1);
if (rawLat == -1 || rawLng == -1 || time == -1) {
return null;
}
Location l = new Location("cache");
l.setLatitude(Double.longBitsToDouble(rawLat));
l.setLongitude(Double.longBitsToDouble(rawLng));
l.setTime(time);
return l;
}
示例4: updateEmitters
import android.location.Location; //导入方法依赖的package包/类
/**
* Update the coverage estimates for the emitters we have just gotten observations for.
*
* @param emitters The emitters we have just observed
* @param gps The GPS position at the time the observations were collected.
* @param curTime The time the observations were collected
* @return A list of the coverage areas for the observed RF emitters.
*/
private synchronized List<Location> updateEmitters(Collection<RfEmitter> emitters, Location gps, long curTime) {
List<Location> locations = new LinkedList<>();
if (emitterCache == null) {
Log.d(TAG,"updateEmitters() - emitterCache is null?!?");
emitterCache = new Cache(this);
}
for (RfEmitter emitter : emitters) {
emitter.updateLocation(gps);
Location thisLoc = emitter.getLocation();
if (thisLoc != null) {
//Log.d(TAG,"updateEmitters() - Using " + emitter.logString());
thisLoc.setTime(curTime);
locations.add(thisLoc);
//} else {
// Log.d(TAG, "updateDatase() - no location for " + emitter.logString());
}
}
return locations;
}
示例5: mockLocation
import android.location.Location; //导入方法依赖的package包/类
/**
* Here we build the new mock {@link Location} object and fill in as much information we can calculate.
*
* @param position taken from the positions list, converts this to a {@link Location}.
* @return a {@link Location} object with as much information filled in as possible.
* @since 2.2.0
*/
private Location mockLocation(Position position) {
lastLocation = new Location(MockLocationEngine.class.getName());
lastLocation.setLatitude(position.getLatitude());
lastLocation.setLongitude(position.getLongitude());
// Need to convert speed to meters/second as specified in Android's Location object documentation.
float speedInMeterPerSec = (float) (((speed * 1.609344) * 1000) / (60 * 60));
lastLocation.setSpeed(speedInMeterPerSec);
if (positions.size() >= 2) {
double bearing = TurfMeasurement.bearing(position, positions.get(1));
lastLocation.setBearing((float) bearing);
}
lastLocation.setAccuracy(3f);
lastLocation.setTime(SystemClock.elapsedRealtime());
return lastLocation;
}
示例6: setLocation
import android.location.Location; //导入方法依赖的package包/类
/**
* GPS定位需要不停的刷新经纬度值
*/
private static void setLocation(double latitude, double longitude) throws Exception{
try {
String providerStr = LocationManager.GPS_PROVIDER;
Location mockLocation = new Location(providerStr);
mockLocation.setLatitude(latitude);
mockLocation.setLongitude(longitude);
mockLocation.setAltitude(0); // 高程(米)
mockLocation.setBearing(0); // 方向(度)
mockLocation.setSpeed(0); //速度(米/秒)
mockLocation.setAccuracy(2); // 精度(米)
mockLocation.setTime(System.currentTimeMillis()); // 本地时间
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
//api 16以上的需要加上这一句才能模拟定位 , 也就是targetSdkVersion > 16
mockLocation.setElapsedRealtimeNanos(SystemClock.elapsedRealtimeNanos());
}
locationManager.setTestProviderLocation(providerStr, mockLocation);
} catch (Exception e) {
// 防止用户在软件运行过程中关闭模拟位置或选择其他应用
stopMockLocation();
throw e;
}
}
示例7: toSysLocation
import android.location.Location; //导入方法依赖的package包/类
public Location toSysLocation() {
Location location = new Location(LocationManager.GPS_PROVIDER);
location.setAccuracy(8f);
Bundle extraBundle = new Bundle();
location.setBearing(bearing);
Reflect.on(location).call("setIsFromMockProvider", false);
location.setLatitude(latitude);
location.setLongitude(longitude);
location.setSpeed(speed);
location.setTime(System.currentTimeMillis());
location.setExtras(extraBundle);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
location.setElapsedRealtimeNanos(277000000);
}
int svCount = VirtualGPSSatalines.get().getSvCount();
extraBundle.putInt("satellites", svCount);
extraBundle.putInt("satellitesvalue", svCount);
return location;
}
示例8: deserialize
import android.location.Location; //导入方法依赖的package包/类
public Location deserialize(JsonElement je, Type type,
JsonDeserializationContext jdc) {
JsonObject jsonObject = je.getAsJsonObject();
Location location = new Location(jsonObject.getAsJsonPrimitive("mProvider").getAsString());
location.setAccuracy(jsonObject.getAsJsonPrimitive("mAccuracy").getAsFloat());
location.setLatitude(jsonObject.getAsJsonPrimitive("mLatitude").getAsDouble());
location.setLongitude(jsonObject.getAsJsonPrimitive("mLongitude").getAsDouble());
location.setTime(jsonObject.getAsJsonPrimitive("mTime").getAsLong());
location.setSpeed(jsonObject.getAsJsonPrimitive("mSpeed").getAsFloat());
location.setBearing(jsonObject.getAsJsonPrimitive("mBearing").getAsFloat());
return location;
}
示例9: _getLocation
import android.location.Location; //导入方法依赖的package包/类
/**
* If we have any coverage information, returns an estimate of that coverage.
* For convenience, we use the standard Location record as it contains a center
* point and radius (accuracy).
*
* @return Coverage estimate for emitter or null it does not exist.
*/
private Location _getLocation() {
if (coverage == null)
return null;
final Location location = new Location(BackendService.LOCATION_PROVIDER);
Long timeMs = System.currentTimeMillis();
location.setTime(timeMs);
if (Build.VERSION.SDK_INT >= 17)
location.setElapsedRealtimeNanos(SystemClock.elapsedRealtimeNanos());
location.setLatitude(coverage.latitude);
location.setLongitude(coverage.longitude);
// At this point, accuracy is the maximum coverage area. Scale it based on
// the ASU as we assume we are closer to the center of the coverage if we
// have a high signal.
float scale = BackendService.MAXIMUM_ASU - asu + BackendService.MINIMUM_ASU;
scale = scale / BackendService.MAXIMUM_ASU;
float accuracy = coverage.radius * scale;
// Hard limit the minimum accuracy based on the type of emitter
location.setAccuracy(Math.max(accuracy,ourCharacteristics.minimumRange));
return location;
}
示例10: result
import android.location.Location; //导入方法依赖的package包/类
public Location result() {
if (count < 1)
return null;
final Location location = new Location(BackendService.LOCATION_PROVIDER);
location.setTime(timeMs);
if (Build.VERSION.SDK_INT >= 17)
location.setElapsedRealtimeNanos(SystemClock.elapsedRealtimeNanos());
location.setLatitude(meanLat);
location.setLongitude(meanLon);
if (count == 1) {
location.setAccuracy(reportAccuracy);
} else {
//double varLat = sLat / (wSumLat - 1);
//double varLon = sLon / (wSumLon - 1);
double varLat = sLat / (wSumLat - wSum2Lat / wSumLat);
double varLon = sLon / (wSumLon - wSum2Lon / wSumLon);
double sdLat = Math.sqrt(varLat);
double sdLon = Math.sqrt(varLon);
//Log.d(TAG, "result() sLat=" + sLat + ", wSumLat=" + wSumLat + ", wSum2Lat=" + wSum2Lat + ", varLat=" + varLat + ", sdLat=" + sdLat);
double sdMetersLat = sdLat * BackendService.DEG_TO_METER;
double cosLat = Math.max(BackendService.MIN_COS, Math.cos(Math.toRadians(meanLat)));
double sdMetersLon = sdLon * BackendService.DEG_TO_METER * cosLat;
float acc = (float) Math.max(sdMetersLat, sdMetersLon);
location.setAccuracy(acc);
}
Bundle extras = new Bundle();
extras.putLong("AVERAGED_OF", count);
location.setExtras(extras);
return location;
}
示例11: getLocation
import android.location.Location; //导入方法依赖的package包/类
public synchronized Location getLocation() {
Long timeMs = System.currentTimeMillis();
final Location location = new Location(BackendService.LOCATION_PROVIDER);
predict(timeMs);
location.setTime(timeMs);
if (Build.VERSION.SDK_INT >= 17)
location.setElapsedRealtimeNanos(SystemClock.elapsedRealtimeNanos());
location.setLatitude(mLatTracker.getPosition());
location.setLongitude(mLonTracker.getPosition());
if (mAltTracker != null)
location.setAltitude(mAltTracker.getPosition());
float accuracy = (float) (mLatTracker.getAccuracy() * BackendService.DEG_TO_METER);
if (accuracy < MIN_ACCURACY)
accuracy = MIN_ACCURACY;
location.setAccuracy(accuracy);
// Derive speed from degrees/ms in lat and lon
double latVeolocity = mLatTracker.getVelocity() * BackendService.DEG_TO_METER;
double lonVeolocity = mLonTracker.getVelocity() * BackendService.DEG_TO_METER *
Math.cos(Math.toRadians(location.getLatitude()));
float speed = (float) Math.sqrt((latVeolocity*latVeolocity)+(lonVeolocity*lonVeolocity));
location.setSpeed(speed);
// Compute bearing only if we are moving. Report old bearing
// if we are below our threshold for moving.
if (speed > MOVING_THRESHOLD) {
mBearing = (float) Math.toDegrees(Math.atan2(latVeolocity, lonVeolocity));
}
location.setBearing(mBearing);
Bundle extras = new Bundle();
extras.putLong("AVERAGED_OF", samples);
location.setExtras(extras);
return location;
}
示例12: scheduleMockGps
import android.location.Location; //导入方法依赖的package包/类
private void scheduleMockGps(final Context context) {
Gps gps;
synchronized (mMockGps) {
gps = mMockGps[0];
}
if (null == gps) {
return;
}
if (!Macro.RealGps) {
LocationManager locationManager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE);
Location location = new Location(LocationManager.GPS_PROVIDER);
location.setLatitude(gps.mLatitude);
location.setLongitude(gps.mLongitude);
location.setAltitude(0);
location.setBearing(0);
location.setSpeed(0);
location.setAccuracy(2);
location.setTime(System.currentTimeMillis());
location.setElapsedRealtimeNanos(SystemClock.elapsedRealtimeNanos());
locationManager.setTestProviderLocation(LocationManager.GPS_PROVIDER, location);
}
new Handler(context.getMainLooper()).postDelayed(new Runnable() {
@Override
public void run() {
scheduleMockGps(context);
}
}, 1000);
}
示例13: doInBackground
import android.location.Location; //导入方法依赖的package包/类
@Override
protected Integer doInBackground(Integer... params) {
LocSample l = m_rgSamples[params[0]];
m_Loc = new Location("MFB");
m_Loc.setAccuracy((float) l.HError);
m_Loc.setAltitude(l.Alt);
m_Loc.setLatitude(l.Latitude);
m_Loc.setLongitude(l.Longitude);
m_Loc.setSpeed((float) (l.Speed / MFBConstants.MPS_TO_KNOTS)); // locsample is in Knots, need to go back to MPS
m_Loc.setTime(l.TimeStamp.getTime());
return params[0];
}
示例14: getLocation
import android.location.Location; //导入方法依赖的package包/类
public Location getLocation() {
Location l = new Location("MFB");
l.setLatitude(Latitude);
l.setLongitude(Longitude);
l.setSpeed((float) (Speed / MFBConstants.MPS_TO_KNOTS)); // convert back to Meters per Second
l.setAltitude(Alt / MFBConstants.METERS_TO_FEET); // Convert back to meters
l.setTime(TimeStamp.getTime());
l.setAccuracy((float)HError);
return l;
}
示例15: postNextLocation
import android.location.Location; //导入方法依赖的package包/类
private void postNextLocation() {
int nextIndex = (mCurrentLocationIndex + 1) % mLocations.size();
Location nextLocation = new Location(mLocations.get(nextIndex));
nextLocation.setTime(System.currentTimeMillis());
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
nextLocation.setElapsedRealtimeNanos(System.nanoTime());
}
LocationServices.FusedLocationApi
.setMockLocation(mClient, nextLocation);
Log.i(TAG, "New location: " + nextLocation);
mCurrentLocationIndex = nextIndex;
}