2014-04-05 8 views
10

मुझे पता है। ऐसा मत करो। मुझे परवाह नहीं है यह एक रूट ऐप के लिए है।जीपीएस प्रोग्रामेटिक रूप से एंड्रॉइड 4.4 टॉगल करें

एप्लिकेशन 0777 अनुमति के साथ /system/app/ को स्थापित किया गया है

मैं पहले उपयोग कर रहा था:

ContentResolver cr = context.getContentResolver(); 
Settings.Secure.setLocationProviderEnabled(cr, LocationManager.GPS_PROVIDER, !isGpsOn); 

यह कैसे मैं 4.4 पर यह कोशिश कर रहा हूँ के बाद से है कि पदावनत किया गया था:

int value; 
if (isGpsOn)value = Settings.Secure.LOCATION_MODE_OFF; 
     else value = Settings.Secure.LOCATION_MODE_HIGH_ACCURACY; 
Settings.Secure.putInt(cr, Settings.Secure.LOCATION_MODE, value); 

और यह चुपचाप विफल रहा है (कुछ उपयोगकर्ता रिपोर्ट के अनुसार)। सिस्टम फ़ोल्डर में ऐप से एंड्रॉइड 4.4 के साथ मैं सही तरीके से जीपीएस कैसे टॉगल कर सकता हूं?

+12

मैं अपने परिचय की तरह। यह रवैया है। अच्छी तरह से। – keyser

+0

आप नहीं कर सकते। यही कारण है कि यह चुपचाप असफल हो जाता है। – ChuongPham

+0

@ कुहोंगफैम, मैं इसे स्वीकार नहीं कर सकता क्योंकि सिस्टम ऐप्स जीपीएस टॉगल करने में सक्षम हैं (यानी सेटिंग्स)। मेरे ऐप को सिस्टम ऐप के समान तरीके से संचालित करने का एक तरीका होना चाहिए। (मेरे पास परीक्षण करने के लिए 4.4 डिवाइस भी नहीं है, या मैंने इसे समझ लिया होगा)। – Jakar

उत्तर

4

ऐसा मत करें। :)

चेक एंड्रॉयड रूट किए गए डिवाइस के लिए GPS TOGGLER

जीपीएस टॉगल विजेट के लिए कोड। यह उन रोम और कर्नेल के लिए भी अच्छी तरह से wrks, अन्य सॉफ्टवेयर विफल रहा।

अपने कोड के साथ

, बस की जाँच:
आशा है कि आप अपने प्रकट में निम्नलिखित अनुमतियों की घोषणा की:

<uses-permission android:name="android.permission.WRITE_SETTINGS"/> 
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"/> 

मैं एंड्रॉयड 4.0/4.1, निहित एलजी ऑप्टिमस पर इस का इस्तेमाल किया था। कथित तौर पर यह अब काम कर सकते हैं, लेकिन मैं सभी उपकरणों और o.s .:

स्विच यह/बंद एक ध्वज की जांच और इस कोड के साथ के लिए इसके बारे में यकीन नहीं है:

try { 
    Settings.Secure.putString (context.getContentResolver(), 
    Settings.Secure.LOCATION_PROVIDERS_ALLOWED, String.format ("%s,%s", 
    Settings.Secure.getString (context.getContentResolver(), 
    Settings.Secure.LOCATION_PROVIDERS_ALLOWED), LocationManager.GPS_PROVIDER)); 
     } catch(Exception e) {} 
+0

मुझे परीक्षण करने का मौका नहीं मिला है, लेकिन ऐसा लगता है कि यह वादा करता है। जवाब के लिए धन्यवाद। – Jakar

+0

टास्कर और पावर टॉगल अकेले रूट के साथ ऐसा करने में सक्षम हैं, सिस्टम एप की आवश्यकता नहीं है। किसी को पता है कि वे इसे कैसे प्राप्त करने में सक्षम हैं? – Flyview

संबंधित मुद्दे