繁体   English   中英

如何在Android设备上捕获屏幕捕获事件?

[英]How to catch screen capture event on Android devices?

在我的Android应用中,我需要检测屏幕捕获事件。 我该怎么做呢?

我已在我的应用程序中使用此代码,它工作正常。 它会在截取屏幕截图时通知。 我在OnePlus 1,Nexus 6P,Moto G3上进行了测试。 任何设备都没有问题。

public void detectScreenShotService(final Activity activity) {

    final Handler h = new Handler();
    final int delay = 3000; //milliseconds
    final ActivityManager am = (ActivityManager) activity.getSystemService(Context.ACTIVITY_SERVICE);

    h.postDelayed(new Runnable() {
        public void run() {

            List<ActivityManager.RunningServiceInfo> rs = am.getRunningServices(200);

            for (ActivityManager.RunningServiceInfo ar : rs) {
                if (ar.process.equals("com.android.systemui:screenshot")) {
                    Toast.makeText(activity, "Screenshot captured!!", Toast.LENGTH_LONG).show();
                }
            }
            h.postDelayed(this, delay);
        }
    }, delay);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM