Подтвердить что ты не робот

Как просматривать наложения в других приложениях

С чего начать?

Я не знаю, какие функции или разрешения я буду использовать для этого. Не требуется root.

Вид выглядит так: кнопка камеры с правой стороны, она плавающая и видимая для других приложений, если вы ее нажмете, она закроет скриншот.

enter image description here

Примечание. Я не сделаю приложение для скриншотов, это всего лишь пример того, чего я хочу достичь.

4b9b3361

Ответ 2

Попробуйте следующее:

    if(!isSystemAlertPermissionGranted(MainActivity.this)){
        requestSystemAlertPermission(MainActivity.this,1);
    }

    startService(new Intent(getApplicationContext(), Overlay.class));

и

public static void requestSystemAlertPermission(Activity context, int requestCode) {
    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M)
        return;
    final String packageName = context == null ? context.getPackageName() : context.getPackageName();
    final Intent intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION, Uri.parse("package:" + packageName));
    if (context != null)
        context.startActivityForResult(intent, requestCode);
    else
        context.startActivityForResult(intent, requestCode);
}
@TargetApi(23)
public static boolean isSystemAlertPermissionGranted(Context context) {
    final boolean result = Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP || Settings.canDrawOverlays(context);
    return result;
}