Снимок экрана других приложений устройства с помощью плавающей кнопки виджета - PullRequest
0 голосов
/ 28 января 2019

Я пытаюсь сделать скриншоты устройства Android.Я хочу сделать скриншот другого приложения, используя мое приложение.Вот почему я создал плавающую кнопку виджета.Я поместил метод получения снимка экрана в кнопку виджета, но проблема в том, что, когда я делаю снимок экрана, он только захватывает вид плавающих кнопок, а не захватывает другие компоненты экрана (т. Е. Другие приложения или, если приложение открыто, оно не захватываетоткрытое приложение).

Я передаю вид плавающей кнопки виджета CaptureButton.

CaptureButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {



            Bitmap b = Screenshot.takeScreenshotOfRootView(v);

        }
    });

Файл Screenshot.java.

public class Screenshot {

public static Bitmap takeScreenshot(View view){
    view.setDrawingCacheEnabled(true);
    view.buildDrawingCache(true);
    Bitmap b =Bitmap.createBitmap(view.getDrawingCache());
    view.setDrawingCacheEnabled(false);
    return  b;


}


public static Bitmap takeScreenshotOfRootView(View v){

    return  takeScreenshot(v.getRootView());
}

}

...