私はAndroidでバッテリーセーバーアプリケーションを作っています。私は、アプリからの明るさの設定、アプリからの画面のタイムアウトの設定、同期の有効/無効の設定など、システムの設定を書き込む必要があるこれらの機能についての機能を追加しました。 私はWRITE_SETTINGS
、WRITE_SECURE_SETTINGS
をマニフェストに使用しました。主な活動のコードは以下のとおりです。私はライブラリを使用してパーミッションを付与しています。 問題は、マニフェストに他の権限が追加されていれば、システム権限の書き込みは自動的に許可されますが、その権限は自動的に拒否されます.Marshmallow以上の画面の明るさ、画面のタイムアウト、 。 誰かがそれを行う方法を知っているなら、私を助けてください。お使いのApplication
がシステムイメージと同じkeystore
で署名されていない限り、及びまで 基本的に私は Android launch app show "Can modify system settings" dialogシステム設定を書くために実行時アクセス許可をマシュマロ以上に付与する
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v7.app.AppCompatActivity;
import android.widget.TextView;
import com.karan.churi.PermissionManager.PermissionManager;
import java.util.ArrayList;
public class MainActivity extends AppCompatActivity {
PermissionManager permissionManager;
TextView txtGranted, txtDenied;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
txtGranted = (TextView) findViewById(R.id.Granted);
txtDenied = (TextView) findViewById(R.id.Denied);
permissionManager = new PermissionManager() {};
permissionManager.checkAndRequestPermissions(this);
}
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
permissionManager.checkResult(requestCode,permissions,grantResults);
ArrayList<String> granted=permissionManager.getStatus().get(0).granted;
ArrayList<String> denied=permissionManager.getStatus().get(0).denied;
for(String item:granted){
txtGranted.setText(txtGranted.getText()+"\n"+item);
}
for(String item:denied){
txtDenied.setText(txtDenied.getText()+"\n"+item);
}
}
}
基本的に私は最終的に私は解決した https://stackoverflow.com/questions/38568932/android-launch-app-show-can-modify-system-settings-dialog –
下記のリンクでこれらの権限を取得したいですコードを通じてこの問題。 助けてくれてありがとう –