2012-02-13 43 views
6

Đối với một trong các ứng dụng bảo mật của chúng tôi, có một yêu cầu để tắt khả năng chụp màn hình cho ứng dụng trong Android ICS. Điều này có thể xảy ra trên thiết bị không bắt nguồn từ không?
Cảm ơn,
RajathVô hiệu hóa ảnh chụp màn hình trong android ics

+0

Đây có phải là môi trường công ty nơi bạn kiểm soát thiết bị hoặc chỉ là một ứng dụng thị trường bình thường không? Nếu bạn điều khiển thiết bị, có thể ngăn ảnh chụp màn hình nhưng việc chụp ảnh sẽ luôn hoạt động. Và đối với các ứng dụng bình thường, bạn thậm chí không nên thử. – CodesInChaos

Trả lời

14

Tại sao bạn không thêm dòng này vào lớp hoạt động của mình. Điều này sẽ làm các trick.

// This disables screen shot to be taken for current activity 
getWindow().setFlags(LayoutParams.FLAG_SECURE, LayoutParams.FLAG_SECURE); 

Bạn có thể muốn have a look at Mark Murphy's blog post.

+0

Lưu ý rằng điều này có thể không hoạt động trên tất cả các thiết bị trước ICS, vì việc triển khai ảnh chụp màn hình của chúng có thể không chuẩn và do đó không xác nhận ['FLAG_SECURE'] (http://developer.android.com/reference/android/view/WindowManager. LayoutParams.html # FLAG_SECURE). –

1

Điều này sẽ không bao giờ có thể, kết thúc thời gian của câu chuyện. Cũng có thể cho chủ sở hữu thiết bị nhận bất kỳ khóa mã hóa nào được ứng dụng của bạn sử dụng bằng cách đọc bộ nhớ bằng trình gỡ lỗi. Điều này có thể được sử dụng để giải mã bất kỳ hình ảnh "nhạy cảm" nào được ứng dụng sử dụng.

+2

Và trong trường hợp xấu nhất, người ta chỉ có thể chụp ảnh. – CodesInChaos

+0

@Rook và CodeInChaos, cảm ơn bạn đã nhập. Tôi nghĩ rằng các yêu cầu không bắt buộc một chính sách bảo mật mạnh như vậy. Tôi đã xem [FLAG_SECURE] (http://developer.android.com/reference/android/view/WindowManager.LayoutParams.html#FLAG_SECURE) có thể thực hiện thủ thuật – rajath

+0

@CodesInChaos Thông thường, điểm vô hiệu hóa tính năng chụp màn hình là để ngăn chặn nền ứng dụng (có thể là phần mềm độc hại) lấy thông tin nhạy cảm. –

Các vấn đề liên quan