2017-06-14 17 views
2

我不希望用戶截取或記錄我的應用程序的屏幕。我已將安全標誌添加到窗口。這可以防止用戶採取屏幕截圖和錄製屏幕。如何以編程方式檢測是否有任何屏幕錄製過程/應用程序正在Android中運行?

如果屏幕錄製已打開,我的應用程序將阻止錄製內容,但會錄製音頻。

在某些有根的設備上,安全標誌可能無法按預期工作。 所以我只是想檢測是否有任何屏幕錄製應用程序/進程在後臺運行,以便我可以隱藏敏感數據並防止它被記錄。

有沒有什麼辦法可以檢測屏幕錄像是否開啓?

+1

有沒有辦法,如果你在說根。使用root用戶可以將所有內容記錄到GPU輸出級別的不同層上。我相信你無能爲力。 –

+0

由於Android不知道什麼是錄製內容,因此您需要在當前正在運行的流程中比較這些包,因此您需要在市場上有一個流行的和不太流行的錄製應用程序列表(請確保獲取包名稱)應用程序。 – Enzokie

回答

3

有沒有什麼辦法可以檢測到屏幕錄像是否開啓?

所以我只是想,如果任何屏幕記錄應用程序/進程在後臺運行,這樣我可以隱藏敏感數據,並防止它被記錄,以發現。

由於屏幕記錄不要求一個特定的記錄的應用程序或進程(例如,adb shell screenrecord),並且由於你無法知道特定的應用或使用的媒體投影API處理的方式,這似乎是不切實際的。而且,在現代版本的Android上,無論如何,您無法知道其他進程在運行。另外,沒有什麼能阻止用戶將另一臺攝像機指向設備屏幕並以此方式記錄其內容。

我不希望用戶採取截圖或屏幕記錄我的應用程序

的那麼不寫應用程序。 FLAG_SECURE背後的想法是幫助捍衛用戶對抗第三方,而不是防止開發者對用戶。

相關問題