ร
skrive en omfattende artikkel om hvordan du sjekker om en plassering er aktivert pรฅ en Android-enhet kan kreve en betydelig forstรฅelse av Java-programmering og bruk av forskjellige Android-biblioteker. Derfor, la oss fordype oss i dette.
I det moderne mobilapplikasjonslandskapet har tilgang til en brukers plassering blitt avgjรธrende for รฅ gi personlige opplevelser basert pรฅ en brukers geografiske posisjon. Denne funksjonaliteten er rikelig tilgjengelig pรฅ enheter drevet av Android. Imidlertid er det ogsรฅ et kritisk aspekt รฅ avgjรธre om plasseringen er aktivert eller ikke.
public boolean isLocationEnabled(Context context) {
int locationMode = 0;
String locationProviders;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
try {
locationMode = Settings.Secure.getInt(context.getContentResolver(), Settings.Secure.LOCATION_MODE);
} catch (Settings.SettingNotFoundException e) {
e.printStackTrace();
}
return locationMode != Settings.Secure.LOCATION_MODE_OFF;
} else {
locationProviders = Settings.Secure.getString(context.getContentResolver(), Settings.Secure.LOCATION_PROVIDERS_ALLOWED);
return !TextUtils.isEmpty(locationProviders);
}
}
Forstรฅ koden
Den ovennevnte koden sjekker om stedstjenestene er aktivert pรฅ en hvilken som helst Android-enhet i to hovedtrinn:
โ Hvis enhetsversjonen er KitKat eller nyere, prรธver den รฅ fรฅ posisjonsmodusinnstillingen og validerer om den er noe annet enn 'Location Mode Off'. I sรฅ fall bekrefter den at plasseringen er aktivert.
โ For enheter som kjรธrer pรฅ versjoner som er eldre enn KitKat, henter den listen over tillatte lokasjonsleverandรธrer og sjekker om den utelukkende er tom. Hvis listen ikke er tom, bekreftes det at plasseringen er aktivert.
Rollen til forskjellige biblioteker og funksjoner
I denne koden har vi brukt noen fรฅ spesifikke funksjoner og biblioteker, primรฆrt fra Android Developer's Kit:
- Build.VERSION.SDK_INT: Dette er et felt som inneholder SDK-versjonen av plattformen som for รธyeblikket kjรธrer pรฅ enheten.
- Innstillinger.Sikkert: Dette er en klasse som administrerer tilgang til globale sikre systeminnstillinger, fรธrst og fremst systeminnstillinger som pรฅvirker brukernes personvern.
- Settings.Secure.getInt: Denne metoden returnerer den sikre heltallsinnstillingsverdien for et gitt navn.
- Settings.Secure.LOCATION_MODE: Dette brukes for รฅ fรฅ gjeldende plasseringsmodusinnstilling.
- Settings.Secure.LOCATION_PROVIDERS_ALLOWED: Henter listen over tillatte lokasjonsleverandรธrer.
Les mer