Android Ayarlarını programlı olarak açma


Yanıtlar:


11

Kodu en çok oy verilen yanıttan kullandım :

startActivityForResult(new Intent(android.provider.Settings.ACTION_SETTINGS), 0);

Bu aynı pencerede cihaz ayarlarını açar böylece benim android uygulama (kullanıcılarını var finnmglas / Launcher orada takılıp android için).

2020 ve sonrası için cevap (Kotlin'de):

startActivity(Intent(Settings.ACTION_SETTINGS));

Benim uygulamamda çalışıyor, sizinkinde de istenmeyen sonuçlar olmadan çalışıyor olmalı.


4
2020 sizi selamlıyor!
Behnam

Teşekkürler arkadaşım, lütfen kodunuzu şu şekilde güncelleyin: startActivity (yeni Amaç (Ayarlar.ACTION_SETTINGS));
Muhammed Ali

200

İle açabilirsiniz

startActivityForResult(new Intent(android.provider.Settings.ACTION_SETTINGS), 0);

Cihaz üzerindeki geri butonuna basarak geri dönebilirsiniz.


Kullanıcı Önbelleği Temizle düğmesine bastığında geri dönmenin bir yolu var mı?
SweetWisherツ

1
@SweetWisher ヅ Sadece kaynak kodunu düzenlemelisiniz.
Behnam

2
Artık Intent intent = new Intent (android.provider.Settings.ACTION_SECURITY_SETTINGS); startActivity (niyet); Seçebileceğiniz her ana ayar kategorisi için bir sürü sabit vardır. Ayarlar yazmanız yeterlidir. ve Android Studio size otomatik tamamlamada tüm kategorileri gösterecektir.
Asim Qasımzade

1
Ayarlar Uygulamasında belirli bir ayarı arayabilir ve söz konusu ayarı Uygulamamdan programlı olarak açabilir miyim? Örneğin, OTG'yi telefonun Ayarlar bölümünde uygulamamdan arayabilir miyim?
Divya Gupta

Bana öyle geliyor ki StartActivity kullanmak yeterli, Uygulamaya geri döndüğümde her zaman CANCELD sonucunu alıyorum (geri düğmesiyle geri döndüğümde normaldir). Böylece uygulama, bu şekilde değiştirilen ayarlardan haberdar edilmez.
Kendim

37

Bu benim için yaptı

Intent callGPSSettingIntent = new Intent(android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS);
startActivityForResult(callGPSSettingIntent);

Geri bastıklarında uygulamama geri döner.


Bu hangi Ayarlar ekranı sunuyor?
IgorGanapolsky

1
@IgorGanapolsky "Ayar" içinde Konum tabanlı ayarları açar
androminor


9

Check out Ayarlar Gösterilen Sayfa program kullanarak

    startActivity(context, new Intent(Settings.ACTION_SETTINGS), /*options:*/ null);

Genel olarak, önceden tanımlanmış sabiti kullanırsınız Settings.ACTION__SETTINGS. Tam liste burada bulunabilir


1
Ayarları yeni seçeneğe açmanın bir yolu var mı: "Hangi uygulamaların bildirimlerinizi okuyabileceğini kontrol edin" (API 18'de eklenmiştir)?
Javi

6

Bunu başarmak için, yalnızca Sistem Ayarlarını göstermek için özel olarak tanımlanan ACTION_SETTINGS sabitini kullanarak bir Amaç kullanın :

startActivity(new Intent(Settings.ACTION_SETTINGS));

startActivityForResult () , yalnızca ayarlar etkinliği kapatıldığında bazı verileri döndürmek istiyorsanız isteğe bağlıdır.

startActivityForResult(new Intent(Settings.ACTION_SETTINGS), 0);

burada , bir uygulamanın belirli ayarlarını veya ayrıntılarını gösteren içeriklerin bir listesini bulabilirsiniz.


6

Bu tür etkinlikleri yapmak için başka bir sınıf yapabilirsiniz.

public class Go {

   public void Setting(Context context)
    {
        Intent intent = new Intent(android.provider.Settings.ACTION_SETTINGS);
        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        context.startActivity(intent);
    }
}

3

Android cihazın ayarlar uygulamasında güvenlik ve konum ekranını açmak için bu amacı kullanın

    startActivity(new Intent(Settings.ACTION_SECURITY_SETTINGS));

2

Herhangi birinin bu soruyu bulması ve özel uygulamanız için ayarları açmak istemeniz durumunda:

    val intent = Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS)
    intent.data = Uri.parse("package:" + context.packageName)
    startActivity(intent)

0

Kullanıcıyı Konumlandırılmış Paketle Ayarlara Gönder, örneğin WRITE_SETTINGS izni için:

startActivityForResult(new Intent(Settings.ACTION_MANAGE_WRITE_SETTINGS).setData(Uri.parse("package:"+getPackageName()) ),0);

0

uyarı iletişim kutusunu kullanarak programlı olarak android konum ayarını açın

AlertDialog.Builder alertDialog = new AlertDialog.Builder(YourActivity.this);
alertDialog.setTitle("Enable Location");
alertDialog.setMessage("GPS is not enabled. Do you want to go to settings menu?");
alertDialog.setPositiveButton("Settings", new DialogInterface.OnClickListener() {
      public void onClick(DialogInterface dialog, int which) {
            Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
            startActivity(intent);
      }
});
alertDialog.show();
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.