ApA

روشن و خاموش کردن Gps بدون رفتن به صفحه تنظیمات گوشی در برنامه نویسی اندروید

ApA ۱۳۹۵/۰۴/۲۸ مباحث عمومی برنامه‌نویسی

باسلام و عرض خسته نباشید و تشکر از پاسخگویی عالیتان

چطوری می شود بدون رفتن به صفحه تنظیمات گوشی GPS گوشی کاربر را خاموش و روشن کرد؟(یعنی مثلا دو تا دکمه داشته باشیم که با کلیک  بر روی دکمه اول فورا و بدون رفتن به صفحه تنظیمات گوشی gps روشن شود و با زدن دکمه دوم gps گوشی کاربر فورا و بدون رفتن به صفحه تنظیمات گوشی خاموش شود؟)

ممنون می شوم راهنمایی ام کنید

پاسخ‌ها به این تاپیک
stack programer
stack programer
۱۳۹۵/۰۴/۲۸

سورس بالا باید اتوماتیک این کارو کنه ولی این سورس هم چک کنید

private void turnGPSOn(){
    String provider = Settings.Secure.getString(getContentResolver(), Settings.Secure.LOCATION_PROVIDERS_ALLOWED);

    if(!provider.contains("gps")){ //if gps is disabled
        final Intent poke = new Intent();
        poke.setClassName("com.android.settings", "com.android.settings.widget.SettingsAppWidgetProvider"); 
        poke.addCategory(Intent.CATEGORY_ALTERNATIVE);
        poke.setData(Uri.parse("3")); 
        sendBroadcast(poke);
    }
}

private void turnGPSOff(){
    String provider = Settings.Secure.getString(getContentResolver(), Settings.Secure.LOCATION_PROVIDERS_ALLOWED);

    if(provider.contains("gps")){ //if gps is enabled
        final Intent poke = new Intent();
        poke.setClassName("com.android.settings", "com.android.settings.widget.SettingsAppWidgetProvider");
        poke.addCategory(Intent.CATEGORY_ALTERNATIVE);
        poke.setData(Uri.parse("3")); 
        sendBroadcast(poke);
    }
}
ApA
ApA
۱۳۹۵/۰۴/۲۸

خیلی ممنونم از پاسخگویی سریعتان

فقط یک سوال آیا با به کاربردن کدهای بالا مثلا برای روشن کردن gps نرم افزار وارد صفحه تنظیمات gps می شود یا مستقیم gps را روشن می کند؟

stack programer
stack programer
۱۳۹۵/۰۴/۲۸

سلام،داخل اندروید مانیفست باید این پرمیشن ها را اضافه کنید..

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

 

که  بعد می توانید از اینتنت ها استفاده کنید...

//Enable GPS
Intent intent=new Intent("android.location.GPS_ENABLED_CHANGE");
intent.putExtra("enabled", true);
sendBroadcast(intent);
//Disable GPS
Intent intent = new Intent("android.location.GPS_ENABLED_CHANGE");
intent.putExtra("enabled", false);
sendBroadcast(intent);