मैं जांच सकता हूं कि जीपीएस चालू है या नहीं हैप्रोवाइडरएनेबल()। यदि यह चालू नहीं है, तो मैं इरादा लॉन्च कर रहा हूं ताकि उपयोगकर्ता जीपीएस सक्षम कर सके। अंत में मैं फिर से जांच कर रहा हूं कि जीपीएस उपयोगकर्ता द्वारा सक्षम है या नहीं। यदि उपयोगकर्ता जीपीएस सक्षम नहीं करता है और बाहर आ जाता है, तो अभी भी प्रदाता है सक्षम() पूर्ण वापस लौट रहा है। समस्या क्या हो सकती है? कृपया मेरा मार्ग दर्शन कीजिए।जीपीएस सक्षम नहीं है लेकिन isProviderEnabled() सच हो रहा है
String provider = LocationManager.GPS_PROVIDER;
// Check if GPS is enabled
boolean enabled = myLocationManager.isProviderEnabled(provider);
if (!enabled) {
// GPS not enabled
Log.d("", "Provider " + provider + " is not enabled");
Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
startActivity(intent);
// Consider the case when user does not enable GPS and come out.
} else {
Log.d("", "Provider is enabled");
}
// Re-check if user has enabled or not. (Note: case: user has not enabled GPS)
enabled = myLocationManager.isProviderEnabled(provider);
if(!enabled)
{
Log.d("","provider not enabled");
}
else
{
// Control is coming here though user has not enabled GPS in settings
Log.d("","GPS is enabled");
}
धन्यवाद, विप्लव
धन्यवाद, यह सही रूप में मैं चाहता था है। –
मेरे लिए काम नहीं किया, मैंने जीपीएस सक्षम और अक्षम के साथ कोशिश की, और दोनों बार एक ही टोस्ट मिला। –
@ बिलगरी शायद ऐसा इसलिए है क्योंकि आपका नेटवर्क या निष्क्रिय प्रदाता अभी भी सक्रिय है। उस प्रदाता स्ट्रिंग में सभी सक्षम प्रदाताओं को शामिल होना चाहिए, न केवल जीपीएस। नल के लिए उनकी जांच केवल हमें बताती है कि एक प्रदाता सक्षम है, और वास्तव में नहीं है। – Guardanis