Search in sources :

Example 41 with Country

use of android.location.Country in project android_frameworks_base by ParanoidAndroid.

the class CountryDetectorService method initialize.

private void initialize() {
    mCountryDetector = new ComprehensiveCountryDetector(mContext);
    mLocationBasedDetectorListener = new CountryListener() {

        public void onCountryDetected(final Country country) {
            mHandler.post(new Runnable() {

                public void run() {
                    notifyReceivers(country);
                }
            });
        }
    };
}
Also used : ComprehensiveCountryDetector(com.android.server.location.ComprehensiveCountryDetector) ICountryListener(android.location.ICountryListener) CountryListener(android.location.CountryListener) Country(android.location.Country)

Example 42 with Country

use of android.location.Country in project android_frameworks_base by ParanoidAndroid.

the class ComprehensiveCountryDetector method toString.

@Override
public String toString() {
    long currentTime = SystemClock.elapsedRealtime();
    long currentSessionLength = 0;
    StringBuilder sb = new StringBuilder();
    sb.append("ComprehensiveCountryDetector{");
    // The detector hasn't stopped yet --> still running
    if (mStopTime == 0) {
        currentSessionLength = currentTime - mStartTime;
        sb.append("timeRunning=" + currentSessionLength + ", ");
    } else {
        // Otherwise, it has already stopped, so take the last session
        sb.append("lastRunTimeLength=" + (mStopTime - mStartTime) + ", ");
    }
    sb.append("totalCountServiceStateChanges=" + mTotalCountServiceStateChanges + ", ");
    sb.append("currentCountServiceStateChanges=" + mCountServiceStateChanges + ", ");
    sb.append("totalTime=" + (mTotalTime + currentSessionLength) + ", ");
    sb.append("currentTime=" + currentTime + ", ");
    sb.append("countries=");
    for (Country country : mDebugLogs) {
        sb.append("\n   " + country.toString());
    }
    sb.append("}");
    return sb.toString();
}
Also used : Country(android.location.Country)

Example 43 with Country

use of android.location.Country in project android_frameworks_base by ParanoidAndroid.

the class ComprehensiveCountryDetector method getCountry.

/**
     * Get the country from different sources in order of the reliability.
     */
private Country getCountry() {
    Country result = null;
    result = getNetworkBasedCountry();
    if (result == null) {
        result = getLastKnownLocationBasedCountry();
    }
    if (result == null) {
        result = getSimBasedCountry();
    }
    if (result == null) {
        result = getLocaleCountry();
    }
    addToLogs(result);
    return result;
}
Also used : Country(android.location.Country)

Example 44 with Country

use of android.location.Country in project android_frameworks_base by ParanoidAndroid.

the class ComprehensiveCountryDetectorTest method testDetectLocationBasedCountry.

public void testDetectLocationBasedCountry() {
    final Country resultCountry = new Country(TestCountryDetector.COUNTRY_ISO, Country.COUNTRY_SOURCE_SIM);
    final Country locationBasedCountry = new Country(TestCountryDetector.COUNTRY_ISO, Country.COUNTRY_SOURCE_LOCATION);
    TestCountryDetector countryDetector = new TestCountryDetector() {

        @Override
        protected Country getSimBasedCountry() {
            return resultCountry;
        }
    };
    CountryListenerImpl listener = new CountryListenerImpl();
    countryDetector.setCountryListener(listener);
    Country country = countryDetector.detectCountry();
    assertTrue(sameCountry(country, resultCountry));
    assertTrue(countryDetector.locationBasedDetectorStarted());
    countryDetector.notifyLocationBasedListener(locationBasedCountry);
    assertTrue(listener.notified());
    assertTrue(sameCountry(listener.getCountry(), locationBasedCountry));
    assertTrue(countryDetector.locationBasedDetectorStopped());
    assertTrue(countryDetector.locationRefreshStarted());
    countryDetector.stop();
    assertTrue(countryDetector.locationRefreshCancelled());
}
Also used : Country(android.location.Country)

Example 45 with Country

use of android.location.Country in project android_frameworks_base by ParanoidAndroid.

the class ComprehensiveCountryDetectorTest method testDetectNetworkBasedCountry.

public void testDetectNetworkBasedCountry() {
    final Country resultCountry = new Country(TestCountryDetector.COUNTRY_ISO, Country.COUNTRY_SOURCE_NETWORK);
    TestCountryDetector countryDetector = new TestCountryDetector() {

        @Override
        protected Country getNetworkBasedCountry() {
            return resultCountry;
        }
    };
    CountryListenerImpl listener = new CountryListenerImpl();
    countryDetector.setCountryListener(listener);
    Country country = countryDetector.detectCountry();
    assertTrue(sameCountry(country, resultCountry));
    assertFalse(listener.notified());
    assertFalse(countryDetector.locationBasedDetectorStarted());
    assertFalse(countryDetector.locationRefreshStarted());
    countryDetector.stop();
}
Also used : Country(android.location.Country)

Aggregations

Country (android.location.Country)71 CountryListener (android.location.CountryListener)6 ICountryListener (android.location.ICountryListener)6 ComprehensiveCountryDetector (com.android.server.location.ComprehensiveCountryDetector)6 CountryDetector (android.location.CountryDetector)4 Context (android.content.Context)1 StrictMode (android.os.StrictMode)1 LifecycleHandler (com.moez.QKSMS.common.LifecycleHandler)1 PduLoaderManager (com.moez.QKSMS.common.google.PduLoaderManager)1 ThumbnailManager (com.moez.QKSMS.common.google.ThumbnailManager)1