本文整理汇总了Java中android.location.GpsStatus.GPS_EVENT_SATELLITE_STATUS属性的典型用法代码示例。如果您正苦于以下问题:Java GpsStatus.GPS_EVENT_SATELLITE_STATUS属性的具体用法?Java GpsStatus.GPS_EVENT_SATELLITE_STATUS怎么用?Java GpsStatus.GPS_EVENT_SATELLITE_STATUS使用的例子?那么, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在类android.location.GpsStatus
的用法示例。
在下文中一共展示了GpsStatus.GPS_EVENT_SATELLITE_STATUS属性的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: onGpsStatusChanged
public void onGpsStatusChanged(int event) {
if (event == GpsStatus.GPS_EVENT_SATELLITE_STATUS) {
try {
// Check number of satellites in list to determine fix state
GpsStatus status = myLocationManager.getGpsStatus(null);
Iterable<GpsSatellite> satellites = status.getSatellites();
sat_count = 0;
Iterator<GpsSatellite> satI = satellites.iterator();
while (satI.hasNext()) {
GpsSatellite satellite = satI.next();
Log.d(LogUtils.generateTag(this), "Satellite: snr=" + satellite.getSnr() + ", elevation=" + satellite.getElevation());
sat_count++;
}
} catch (Exception e) {
e.printStackTrace();
sat_count = min_gps_sat_count + 1;
}
Log.d(LogUtils.generateTag(this), "#### sat_count = " + sat_count);
}
}
示例2: onGpsStatusChanged
@Override
public void onGpsStatusChanged(int event) {
switch (event) {
case GpsStatus.GPS_EVENT_FIRST_FIX:
gpsEnabled = true;
gpsFix = true;
break;
case GpsStatus.GPS_EVENT_SATELLITE_STATUS:
gpsEnabled = true;
gpsFix = System.currentTimeMillis() - timestamp < DURATION_TO_FIX_LOST_MS;
break;
case GpsStatus.GPS_EVENT_STARTED:
gpsEnabled = true;
gpsFix = false;
break;
case GpsStatus.GPS_EVENT_STOPPED:
gpsEnabled = false;
gpsFix = false;
break;
default:
return;
}
//Log.d(TAG, "onGpsStatusChanged :: " + event);
}
示例3: onGpsStatusChanged
public void onGpsStatusChanged(int event) { // GPS状态变化时的回调,如卫星数
GpsStatus status = locationManager.getGpsStatus(null); //取当前状态
if(event == GpsStatus.GPS_EVENT_SATELLITE_STATUS){
int maxSatellites = status.getMaxSatellites();
Iterator<GpsSatellite> it = status.getSatellites().iterator();
mSatelliteList.clear();
int count = 0;
while (it.hasNext() && count <= maxSatellites) {
GpsSatellite s = it.next();
// Log.i("gjh","~~~~~~~~~~~~~~~~~~~~~~~~~~~" );
// Log.i("gjh","信号:" + s.getSnr());
// Log.i("gjh","序号:" + s.getPrn());
// Log.i("gjh","卫星仰角:" + s.getElevation());
// Log.i("gjh","卫星方位角 :" + s.getAzimuth());
// Log.i("gjh","^^^^^^^^^^^^^^^^^^^^^^^^^^^^" );
mSatelliteList.add(s);
count++;
}
}
mAdapter.notifyDataSetChanged();
Log.i(TAG,mSatelliteList.size()+"" );
}
示例4: onGpsStatusChanged
@Override
public void onGpsStatusChanged(int event) {
String eventStr = null;
switch (event) {
case GpsStatus.GPS_EVENT_STARTED:
eventStr = "GPS_EVENT_STARTED";
break;
case GpsStatus.GPS_EVENT_STOPPED:
eventStr = "GPS_EVENT_STOPPED";
break;
case GpsStatus.GPS_EVENT_FIRST_FIX:
eventStr = "GPS_EVENT_FIRST_FIX";
break;
case GpsStatus.GPS_EVENT_SATELLITE_STATUS:
eventStr = "GPS_EVENT_SATELLITE_STATUS";
break;
}
Log.v(TAG, "onGpsStatusChanged("+ eventStr + ")");
showGpsStatusInfo(mLocationManager.getGpsStatus(null));
}
示例5: updateGpsStatus
private String updateGpsStatus(int event, GpsStatus status) {
StringBuilder sb2 = new StringBuilder("");
if (status == null) {
uHandler.sendEmptyMessage(1);
sb2.append(getResources().getString(R.string.label_gps_satellitenumber) +0);
} else if (event == GpsStatus.GPS_EVENT_SATELLITE_STATUS) {
int maxSatellites = status.getMaxSatellites();
Iterator<GpsSatellite> it = status.getSatellites().iterator();
numSatelliteList.clear();
int count = 0;
while (it.hasNext() && count <= maxSatellites) {
GpsSatellite s = it.next();
numSatelliteList.add(s);
count++;
}
sb2.append(getResources().getString(R.string.label_gps_satellitenumber) + numSatelliteList.size());
uHandler.sendEmptyMessage(1);
}
return sb2.toString();
}
示例6: onGpsStatusChanged
public void onGpsStatusChanged(int event) {
switch(event)
{
case GpsStatus.GPS_EVENT_SATELLITE_STATUS:
m_locationManager.getGpsStatus(m_status);
Iterable<GpsSatellite> iSatellite=m_status.getSatellites();
Iterator<GpsSatellite> iterator=iSatellite.iterator();
ArrayList<QtSatInfo> satInfo=new ArrayList<QtSatInfo>();
int index=0;
while(iterator.hasNext())
{
GpsSatellite gpsSat=iterator.next();
satInfo.add(new QtSatInfo(gpsSat.getPrn(),gpsSat.getSnr(),
gpsSat.getElevation(), gpsSat.getAzimuth()));
index++;
}
if(0!=index)
gpsSatelliteDataUpdated(satInfo.toArray());
break;
}
}
示例7: onGpsStatusChanged
@Override public void onGpsStatusChanged(int event) {
gpsStatus = locationManager.getGpsStatus(gpsStatus);
switch (event) {
case GpsStatus.GPS_EVENT_STARTED:
case GpsStatus.GPS_EVENT_FIRST_FIX:
case GpsStatus.GPS_EVENT_SATELLITE_STATUS:
case GpsStatus.GPS_EVENT_STOPPED:
default:
}
int count_seen = 0;
int count_fix = 0;
for (GpsSatellite s: gpsStatus.getSatellites()) {
count_seen++;
if (s.usedInFix())
count_fix++;
// Log.d(TAG, "getSnr=" + s.getSnr());
}
// Log.d(TAG, "LocusService.onGpsStatusChanged event=" + event
// + ", satellites=" + count_fix + "/" + count_seen + "/" + gpsStatus.getMaxSatellites()
// + ", timeToFirstFix=" + gpsStatus.getTimeToFirstFix()
// );
}
示例8: onGpsStatusChanged
@Override
public void onGpsStatusChanged(int event) {
switch (event) {
case GpsStatus.GPS_EVENT_STARTED:
isGPSFix = false;
checkGpsStatus();
break;
case GpsStatus.GPS_EVENT_FIRST_FIX:
isGPSFix = true;
checkGpsStatus();
break;
case GpsStatus.GPS_EVENT_STOPPED:
isGPSFix = false;
sendStoppedStatus();
break;
case GpsStatus.GPS_EVENT_SATELLITE_STATUS:
isGPSFix = false;
if ((SystemClock.elapsedRealtime() - mLastLocationMillis) < GPS_UPDATE_EXCEEDED_TIME)
isGPSFix = true;
checkGpsStatus();
break;
}
}
示例9: onGpsStatusChanged
public void onGpsStatusChanged(int event) {
boolean isGPSFix = false;
switch (event) {
case GpsStatus.GPS_EVENT_SATELLITE_STATUS:
if (lastLocation != null) {
isGPSFix = (SystemClock.elapsedRealtime() - lastLocationMillis) < 10000;
}
if (isGPSFix) { // A fix has been acquired.
setLocationManagerStatus(AVAILABLE);
} else { // The fix has been lost.
setLocationManagerStatus(TEMPORARILY_UNAVAILABLE);
}
break;
case GpsStatus.GPS_EVENT_FIRST_FIX:
setLocationManagerStatus(AVAILABLE);
break;
}
}
示例10: onGpsStatusChanged
@Override
public void onGpsStatusChanged(int event)
{
switch (event) {
case GpsStatus.GPS_EVENT_STARTED:
case GpsStatus.GPS_EVENT_STOPPED:
mHasGPSFix = false;
break;
case GpsStatus.GPS_EVENT_FIRST_FIX:
mHasGPSFix = true;
break;
case GpsStatus.GPS_EVENT_SATELLITE_STATUS:
mSatellitesCount = 0;
for (GpsSatellite sat : mLocationManager.getGpsStatus(null).getSatellites()) {
if (sat.usedInFix()) {
mSatellitesCount++;
}
}
break;
}
}
示例11: onGpsStatusChanged
@Override
public void onGpsStatusChanged(int event)
{
switch(event)
{
case GpsStatus.GPS_EVENT_STARTED:
case GpsStatus.GPS_EVENT_STOPPED:
mHasGPSFix = false;
break;
case GpsStatus.GPS_EVENT_FIRST_FIX:
mHasGPSFix = true;
break;
case GpsStatus.GPS_EVENT_SATELLITE_STATUS:
break;
}
for (GpsEventListener listener : mListeners) {
listener.onGpsStatusChanged(event);
}
}
示例12: onGpsStatusChanged
@Override
public void onGpsStatusChanged(int arg0) {
// TODO Auto-generated method stub
GpsStatus gpsstatus = locationManager.getGpsStatus(null);
switch (arg0) {
case GpsStatus.GPS_EVENT_STARTED:
mSkyView.setStarted();
setStarted(true);
break;
case GpsStatus.GPS_EVENT_STOPPED:
mSkyView.setStopped();
setStarted(false);
break;
case GpsStatus.GPS_EVENT_SATELLITE_STATUS:
mSkyView.setSats(gpsstatus);
updateStatus(gpsstatus);
break;
case GpsStatus.GPS_EVENT_FIRST_FIX:
break;
}
}
示例13: checkFix
/**
* Checks if there fix is still there based on the last picked location.
*
* @param hasFix fix state previous to the check.
* @param lastLocationUpdateMillis the millis of the last picked location.
* @param event the Gps status event triggered.
* @return <code>true</code>, if it has fix.
*/
public static boolean checkFix( boolean hasFix, long lastLocationUpdateMillis, int event ) {
switch( event ) {
case GpsStatus.GPS_EVENT_SATELLITE_STATUS:
long diff = SystemClock.elapsedRealtime() - lastLocationUpdateMillis;
if (GPLog.LOG_ABSURD)
GPLog.addLogEntry("GPSSTATUSINFO", "gps event diff: " + diff);
if (diff < FIX_TIME_INTERVAL_CHECK) {
if (!hasFix) {
hasFix = true;
}
} else {
if (hasFix) {
hasFix = false;
}
}
break;
}
return hasFix;
}
示例14: onGpsStatusChanged
public void onGpsStatusChanged(int event) {
switch (event) {
case GpsStatus.GPS_EVENT_SATELLITE_STATUS:
if (mLocationListener.getLastGpsLocation() != null) {
if ((System.currentTimeMillis() - mLocationListener.getLastGpsLocation().getTime()) < MAX_TIME_GPS_FIX) {
if (!mGpsFix)
mGpsFix = true;
} else {
if (mGpsFix) {
enable();
}
mGpsFix = false;
}
}
break;
case GpsStatus.GPS_EVENT_FIRST_FIX:
mGpsFix = true;
break;
case GpsStatus.GPS_EVENT_STARTED:
break;
case GpsStatus.GPS_EVENT_STOPPED:
mGpsFix = false;
break;
}
}
示例15: onGpsStatusChanged
public synchronized void onGpsStatusChanged(int event)
{
if (event == GpsStatus.GPS_EVENT_SATELLITE_STATUS)
{
if (mLastGPSMillis != 0)
{
isGPSFix = (SystemClock.elapsedRealtime() - mLastGPSMillis) <
getMinTime() * 2;
}
}
else if (event == GpsStatus.GPS_EVENT_FIRST_FIX)
{
isGPSFix = true;
}
ProviderType previousType = currentProvider;
currentProvider = isGPSFix ? ProviderType.GPS : ProviderType.BOTH;
if(previousType != currentProvider)
{
switchProvider();
}
}