ಪರಿಹರಿಸಲಾಗಿದೆ: Android ಸ್ಥಳವನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆಯೇ ಎಂದು ಪರಿಶೀಲಿಸುವುದು ಹೇಗೆ

Android ಸಾಧನದಲ್ಲಿ ಸ್ಥಳವನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆಯೇ ಎಂದು ಪರಿಶೀಲಿಸುವುದು ಹೇಗೆ ಎಂಬುದರ ಕುರಿತು ವ್ಯಾಪಕವಾದ ಲೇಖನವನ್ನು ಬರೆಯಲು ಜಾವಾ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಮತ್ತು ವಿವಿಧ ಆಂಡ್ರಾಯ್ಡ್ ಲೈಬ್ರರಿಗಳ ಬಳಕೆಯ ಬಗ್ಗೆ ಸಾಕಷ್ಟು ತಿಳುವಳಿಕೆ ಅಗತ್ಯವಿರುತ್ತದೆ. ಆದ್ದರಿಂದ, ಇದನ್ನು ಪರಿಶೀಲಿಸೋಣ.

ಸಮಕಾಲೀನ ಮೊಬೈಲ್ ಅಪ್ಲಿಕೇಶನ್ ಲ್ಯಾಂಡ್‌ಸ್ಕೇಪ್‌ನಲ್ಲಿ, ಬಳಕೆದಾರರ ಭೌಗೋಳಿಕ ಸ್ಥಾನವನ್ನು ಆಧರಿಸಿ ವೈಯಕ್ತಿಕಗೊಳಿಸಿದ ಅನುಭವಗಳನ್ನು ಒದಗಿಸಲು ಬಳಕೆದಾರರ ಸ್ಥಳವನ್ನು ಪ್ರವೇಶಿಸುವುದು ನಿರ್ಣಾಯಕವಾಗಿದೆ. ಈ ಕಾರ್ಯವು Android ನಿಂದ ನಡೆಸಲ್ಪಡುವ ಸಾಧನಗಳಲ್ಲಿ ಹೇರಳವಾಗಿ ಲಭ್ಯವಿದೆ. ಆದಾಗ್ಯೂ, ಸ್ಥಳವನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆಯೇ ಅಥವಾ ಇಲ್ಲವೇ ಎಂಬುದನ್ನು ನಿರ್ಧರಿಸುವುದು ಒಂದು ನಿರ್ಣಾಯಕ ಅಂಶವಾಗಿದೆ.

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);
    }
}

ಕೋಡ್ ಅನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು

ಮೇಲೆ ನೀಡಿರುವ ಕೋಡ್ ಎರಡು ಮುಖ್ಯ ಹಂತಗಳಲ್ಲಿ ಯಾವುದೇ Android ಸಾಧನದಲ್ಲಿ ಸ್ಥಳ ಸೇವೆಗಳನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆಯೇ ಎಂದು ಪರಿಶೀಲಿಸುತ್ತದೆ:

- ಸಾಧನದ ಆವೃತ್ತಿಯು ಕಿಟ್‌ಕ್ಯಾಟ್ ಅಥವಾ ಅದಕ್ಕಿಂತ ಹೆಚ್ಚಿನದಾಗಿದ್ದರೆ, ಅದು ಸ್ಥಳ ಮೋಡ್ ಸೆಟ್ಟಿಂಗ್ ಅನ್ನು ಪಡೆಯಲು ಪ್ರಯತ್ನಿಸುತ್ತದೆ ಮತ್ತು ಅದು 'ಸ್ಥಳ ಮೋಡ್ ಆಫ್' ಹೊರತುಪಡಿಸಿ ಬೇರೆಯೇ ಎಂಬುದನ್ನು ಮೌಲ್ಯೀಕರಿಸುತ್ತದೆ. ಹಾಗಿದ್ದಲ್ಲಿ, ಸ್ಥಳವನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ ಎಂದು ಅದು ಖಚಿತಪಡಿಸುತ್ತದೆ.
- KitKat ಗಿಂತ ಹಳೆಯ ಆವೃತ್ತಿಗಳಲ್ಲಿ ಚಾಲನೆಯಲ್ಲಿರುವ ಸಾಧನಗಳಿಗೆ, ಇದು ಅನುಮತಿಸಲಾದ ಸ್ಥಳ ಪೂರೈಕೆದಾರರ ಪಟ್ಟಿಯನ್ನು ಪಡೆದುಕೊಳ್ಳುತ್ತದೆ ಮತ್ತು ಅದು ಪ್ರತ್ಯೇಕವಾಗಿ ಖಾಲಿಯಾಗಿದೆಯೇ ಎಂದು ಪರಿಶೀಲಿಸುತ್ತದೆ. ಪಟ್ಟಿಯು ಖಾಲಿಯಾಗಿಲ್ಲದಿದ್ದರೆ, ಸ್ಥಳವನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ ಎಂದು ದೃಢೀಕರಿಸಲಾಗಿದೆ.

ವಿವಿಧ ಗ್ರಂಥಾಲಯಗಳು ಮತ್ತು ಕಾರ್ಯಗಳ ಪಾತ್ರ

ಈ ಕೋಡ್‌ನಲ್ಲಿ, ನಾವು ಪ್ರಾಥಮಿಕವಾಗಿ Android ಡೆವಲಪರ್‌ಗಳ ಕಿಟ್‌ನಿಂದ ಕೆಲವು ನಿರ್ದಿಷ್ಟ ಕಾರ್ಯಗಳು ಮತ್ತು ಲೈಬ್ರರಿಗಳನ್ನು ಬಳಸಿದ್ದೇವೆ:

  • Build.VERSION.SDK_INT: ಇದು ಪ್ರಸ್ತುತ ಸಾಧನದಲ್ಲಿ ಚಾಲನೆಯಲ್ಲಿರುವ ಪ್ಲಾಟ್‌ಫಾರ್ಮ್‌ನ SDK ಆವೃತ್ತಿಯನ್ನು ಹೊಂದಿರುವ ಕ್ಷೇತ್ರವಾಗಿದೆ.
  • ಸೆಟ್ಟಿಂಗ್‌ಗಳು. ಸುರಕ್ಷಿತ: ಇದು ಜಾಗತಿಕ ಸುರಕ್ಷಿತ ಸಿಸ್ಟಮ್ ಸೆಟ್ಟಿಂಗ್‌ಗಳಿಗೆ ಪ್ರವೇಶವನ್ನು ನಿರ್ವಹಿಸುವ ವರ್ಗವಾಗಿದೆ, ಪ್ರಾಥಮಿಕವಾಗಿ ಬಳಕೆದಾರರ ಗೌಪ್ಯತೆಯ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರುವ ಸಿಸ್ಟಮ್ ಸೆಟ್ಟಿಂಗ್‌ಗಳು.
  • Settings.Secure.getInt: ಈ ವಿಧಾನವು ನೀಡಿದ ಹೆಸರಿಗಾಗಿ ಸುರಕ್ಷಿತ ಪೂರ್ಣಾಂಕ ಸೆಟ್ಟಿಂಗ್ ಮೌಲ್ಯವನ್ನು ಹಿಂತಿರುಗಿಸುತ್ತದೆ.
  • ಸೆಟ್ಟಿಂಗ್‌ಗಳು.ಸುರಕ್ಷಿತ.LOCATION_MODE: ಪ್ರಸ್ತುತ ಸ್ಥಳ ಮೋಡ್ ಸೆಟ್ಟಿಂಗ್ ಅನ್ನು ಪಡೆಯಲು ಇದನ್ನು ಬಳಸಲಾಗುತ್ತದೆ.
  • ಸೆಟ್ಟಿಂಗ್‌ಗಳು.ಸುರಕ್ಷಿತ.LOCATION_PROVIDERS_ALLOWED: ಅನುಮತಿಸಲಾದ ಸ್ಥಳ ಪೂರೈಕೆದಾರರ ಪಟ್ಟಿಯನ್ನು ಪಡೆಯುತ್ತದೆ.

ವಿಭಿನ್ನ ಆಂಡ್ರಾಯ್ಡ್ ಆವೃತ್ತಿಗಳಿಗೆ ಹೊಂದಿಸಲಾಗುತ್ತಿದೆ

ಆಂಡ್ರಾಯ್ಡ್ ಒಂದು ದಶಕದಲ್ಲಿ ಗಮನಾರ್ಹವಾಗಿ ವಿಕಸನಗೊಂಡಿದೆ ಮತ್ತು ಪ್ರತಿ ಆವೃತ್ತಿಯು ಅದರ ನಿರ್ದಿಷ್ಟ ವೈಶಿಷ್ಟ್ಯಗಳು ಮತ್ತು ಸೆಟ್ಟಿಂಗ್‌ಗಳೊಂದಿಗೆ ಬರುತ್ತದೆ. ಆದ್ದರಿಂದ, ಬೋಧನಾ ಕೋಡ್ ವಿಭಿನ್ನ ಆಂಡ್ರಾಯ್ಡ್ ಆವೃತ್ತಿಗಳಲ್ಲಿ ಪ್ರಕಟವಾಗುವ ಸೂಕ್ಷ್ಮ ಸೂಕ್ಷ್ಮ ವ್ಯತ್ಯಾಸಗಳಲ್ಲಿ ಅಂಶವನ್ನು ಹೊಂದಿರಬೇಕು.

ನೀಡಲಾದ ಕೋಡ್ ಎಲ್ಲಾ Android ಆವೃತ್ತಿಗಳಾದ್ಯಂತ ಸಕ್ರಿಯಗೊಳಿಸಲಾದ ಸ್ಥಳವನ್ನು ಸಮಗ್ರವಾಗಿ ಪರಿಶೀಲಿಸುತ್ತದೆ, 'ಸ್ಥಳ ಮೋಡ್' ಅನ್ನು ಪರಿಚಯಿಸಲಾದ ಆವೃತ್ತಿಯ KitKat ಮೇಲೆ ನಿರ್ದಿಷ್ಟವಾಗಿ ಗಮನಹರಿಸುತ್ತದೆ. ಈ ದ್ವಂದ್ವತೆಯು ಮೌಲ್ಯಮಾಪನ ವಿಧಾನವನ್ನು ಎರಡು ಮುಖ್ಯ ವರ್ಗಗಳಾಗಿ ವಿಂಗಡಿಸುತ್ತದೆ - ಒಂದು ಆಂಡ್ರಾಯ್ಡ್ ಆವೃತ್ತಿಗಳು ಕಿಟ್‌ಕ್ಯಾಟ್ ಮತ್ತು ಮೇಲಿನವುಗಳಿಗೆ ಮತ್ತು ಕಿಟ್‌ಕ್ಯಾಟ್‌ನ ಕೆಳಗಿನ ಆವೃತ್ತಿಗಳಿಗೆ ವಿಭಿನ್ನವಾಗಿದೆ.

ಒಟ್ಟಾರೆಯಾಗಿ ಹೇಳುವುದಾದರೆ, Android ಸಾಧನದಲ್ಲಿ ಸ್ಥಳ ಸೇವೆಯನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆಯೇ ಎಂದು ಪರಿಶೀಲಿಸುವುದು ಡೆವಲಪರ್‌ಗಳಿಗೆ ಅಮೂಲ್ಯವಾದ ಒಳನೋಟವಾಗಿದೆ. ಇದು ಕ್ರಿಯಾತ್ಮಕತೆಯನ್ನು ಗ್ರಹಿಸುವಲ್ಲಿ ಸಹಾಯ ಮಾಡುತ್ತದೆ ಮತ್ತು ಡೆವಲಪರ್‌ಗಳಿಗೆ ಹೆಚ್ಚು ಬಳಕೆದಾರ-ನಿರ್ದಿಷ್ಟ ಅಪ್ಲಿಕೇಶನ್ ವ್ಯಾಖ್ಯಾನವನ್ನು ಪ್ರಕಟಿಸಲು ಅನುಮತಿಸುತ್ತದೆ.

ಸಂಬಂಧಿತ ಪೋಸ್ಟ್ಗಳು:

ಒಂದು ಕಮೆಂಟನ್ನು ಬಿಡಿ