Ich versuche, meine System/Handy-Helligkeit durch meine Anwendung zu ändern. Dafür muss ich um Erlaubnis fragen ("gefährliche Erlaubnis"). Ich bin nicht sicher, ob ich den richtigen Weg gemacht habe, aber das scheint nicht zu funktionieren, da es immer verweigert wird.Android Studio Gefährliche Erlaubnis
public void switches() {
if (systemBrightness) {
ActivityCompat.requestPermissions(MainActivity.this,
new String[]{Manifest.permission.WRITE_SETTINGS},
1);
Toast.makeText(this, "Changed to system brightness: changing the “system brightness” is permanent", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(this, "Changed to screen brightness: ", Toast.LENGTH_SHORT).show();
}
}
public void onRequestPermissionsResult(int requestCode,
String permissions[], int[] grantResults) {
switch (requestCode) {
case 1: {
// If request is cancelled, the result arrays are empty.
if (grantResults.length > 0
&& grantResults[0] == PackageManager.PERMISSION_GRANTED) {
// permission was granted, yay! Do the
// contacts-related task you need to do.
} else {
// permission denied, boo! Disable the
// functionality that depends on this permission.
Toast.makeText(MainActivity.this, "Permission denied to read your External storage", Toast.LENGTH_SHORT).show();
}
return;
}
// other 'case' lines to check for other
// permissions this app might request
}
}
// Mani fest
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.FLASHLIGHT" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
public void changeScreenBrightness(float brightness) {
mBrightness = brightness;
if (systemBrightness) {
if (!Settings.System.canWrite(this)) {
Intent i = new Intent(Settings.ACTION_ACCESSIBILITY_SETTINGS);
startActivity(i);
} else {
Settings.System.putInt(mContentResolver, Settings.System.SCREEN_BRIGHTNESS, (int) (mBrightness * 255)* preset);
}
} else {
WindowManager.LayoutParams mLayoutParams = mWindow.getAttributes();
mLayoutParams.screenBrightness = mBrightness * preset;
mWindow.setAttributes(mLayoutParams);
}
}
Kein Fehler documentation geschrieben sichtbar, so far..did Sie 'WRITE_SETTINGS' Erlaubnis in manifest setzen? – Pzy64
Ich habe meine manifest Berechtigungen zu der Frage hinzugefügt – Amar
Wirklich, niemand kann mich auf die richtige Richtung zeigen? – Amar