Android에서 배터리 절약 응용 프로그램을 만들고 있습니다. 앱의 밝기 설정, 앱의 화면 시간 설정, 활성화/비활성화 동기화 등의 기능을 시스템 설정을 작성하는 데 포함 시켰습니다. 나는 매니 페스트에 WRITE_SETTINGS
, WRITE_SECURE_SETTINGS
을 사용했으며 주요 활동 코드는 아래에 기록되어 있습니다. 권한을 부여하기 위해 라이브러리를 사용하고 있습니다. 문제는 내가 매니페스트에 다른 권한을 추가하면 성공적으로 부여되지만 시스템 앱 쓰기 권한이 자동으로 거부된다는 것입니다. 쓰기 권한이 있으면 마쉬멜로와 그 이상의 화면 밝기, 화면 시간 초과 및 기타 기능이 성공적으로 변경됩니다. . 누군가가 그 방법을 알고 있다면 나를 도와주세요. 당신의 Application
가 시스템 이미지로 같은 keystore
서명하지 않는 한 때까지 기본적으로 내가 Android launch app show "Can modify system settings" dialog시스템 설정을 쓰기 위해 실행 권한 부여 marshmallow 이상 허용
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 –
마침내 해결했습니다. 코드를 통해이 문제. 도움 형님 감사합니다. –