Я новичок в android студии и кодировании, и я пытаюсь, чтобы мое приложение перерисовывалось поверх другого приложения, используя разрешение "SYSTEM_ALErT_DIALOG". Я попытался сослаться на здесь и использовать код, предоставленный Jayman Jani (2-й ответ). Я все еще не смог предоставить разрешение для моего приложения.
public class excessiveusageactivity extends AppCompatActivity {
static final int REQUEST_OVERLAY_PERMISSION = 3; //request code
TextView result;
Button button1;
@Override
protected void onActivityResult(final int requestCode, int resultCode, @Nullable Intent data) {
result = findViewById(R.id.result);
button1 = findViewById(R.id.button1);
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (requestCode == REQUEST_OVERLAY_PERMISSION) {
if (!Settings.canDrawOverlays(getParent())) {
//Toast permissionok = Toast.makeText(getParent(), "permission granted!", Toast.LENGTH_SHORT);
//permissionok.show();
//permission granted do stuff
result.setText("1");
} else {
//Toast permissionnotgrantedtoast = Toast.makeText(this, "permission request failed, try again!", Toast.LENGTH_LONG);
//permissionnotgrantedtoast.show();
//permission not granted
result.setText("2");
}
} else {
result.setText("3");
}
}
});
result.setText("4");
}
@Override
protected void onCreate(Bundle savedInstanceState) {
result = findViewById(R.id.result);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_excessiveusageactivity);
if (
Settings.canDrawOverlays(this)
) {
// ask for overlay permission
Intent requestoverlaypermissionintent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
Uri.parse("package:" + getPackageName()));
startActivityForResult(requestoverlaypermissionintent, REQUEST_OVERLAY_PERMISSION);
result.setText("5");
}
}
}
Я пытался поместить setText повсюду, чтобы увидеть, какие области испортил мой код, но мой TextView остается со словами по умолчанию и не отображает никаких номер, который я установил. (Я добавил кнопку и дополнительные операторы if, чтобы увидеть, где это пошло не так, как раньше, но до сих пор не работает)