2013-09-08 44 views
13

Tôi cần ngăn chặn việc chụp màn hình bởi người dùng ứng dụng của mình vì lý do bảo mật. Nội dung tôi hiển thị là bảo mật và không được sao chép vào thiết bị. Tôi đã thấy one answer on Stack Overflow, but for Android.Ngăn chụp ảnh màn hình trong ứng dụng iOS

Có thể nào đó trong iOS để ngăn việc chụp màn hình không?

Trong khi chụp ảnh màn hình vào thư viện bằng cách nhấp vào một vài nút là một tính năng rất hữu ích cho người dùng, cũng có một yêu cầu giới hạn để ngăn chặn nó. Bất kỳ con trỏ?

+3

Đó là hành động ở cấp độ hệ điều hành, vì vậy tôi không nghĩ rằng điều đó có thể xảy ra, trừ khi bạn đang chạy trên thiết bị được bẻ khóa. Tôi có thể sai mặc dù. – mash

+2

Tôi không nghĩ rằng bạn có thể ngăn chặn nó trên một thiết bị không jailbroken, nhưng bạn có thể phát hiện nó - http: // stackoverflow.com/questions/13484516/ios-detection-of-ảnh chụp màn hình –

Trả lời

10

không cách để ngăn ảnh chụp màn hình hoàn toàn. Bạn có thể làm những gì Snapchat thực hiện, bằng cách yêu cầu người dùng chạm vào màn hình để xem bất kỳ thông tin nào bạn đang hiển thị. Điều này là do các sự kiện ảnh chụp màn hình bị gián đoạn. Đây không phải là một phương pháp hoàn hảo và bạn không thể ngăn người dùng chụp ảnh màn hình 100% thời gian.

Thông tin chi tiết: iOS Detection of Screenshot?

+0

Tôi không sử dụng Snapchat nên tôi không thể kiểm tra ngay bây giờ, nhưng Điều gì sẽ xảy ra nếu bạn cắm iPhone vào máy Mac và chụp ảnh màn hình thông qua Xcode? (ngón tay trên màn hình tất cả cùng). Tôi khá chắc chắn không có cách nào có lập trình để _detect_ (hãy để một mình _prevent_) chụp màn hình như vậy ... –

9

Vấn đề khác là chụp ảnh màn hình trong wetware - như trong một người chụp màn hình với thiết bị khác như máy ảnh hoặc điện thoại khác. Ngay cả khi bạn ngăn chặn nó trong ứng dụng thì không thể ngăn ai đó chụp ảnh màn hình

+0

Đây là một điểm rất thú vị. Hy vọng rằng, sự suy giảm dữ liệu vốn có là đủ ngăn cản trong hầu hết các ứng dụng (ví dụ, âm thanh và video DRM) - nhưng lại một lần nữa bạn có những người xem màn hình rạp chiếu phim ... –

+0

câu trả lời hay .. đó cũng là vấn đề –

+0

tuyệt vời điểm +1. – Suryakant

6

Một cách giải quyết khác có thể là Yovo. Tôi chỉ nhìn thấy bản demo này đã thổi tâm trí của tôi!

http://vimeo.com/108244650

Đây là một cách cực kỳ thông minh để chụp màn hình che khuất, và thậm chí một phần xử lý các "wetware" trường hợp nuôi dưỡng bởi JimBobBennet.

Bạn thiết lập mặt nạ mờ ở phía trên cùng của hình ảnh (mẫu hàng rào được sử dụng trong ứng dụng, nhưng bất kỳ mẫu nào sẽ làm) và di chuyển nó với tốc độ nhanh. Nếu người dùng chụp ảnh màn hình, họ sẽ nhận được hình ảnh tĩnh của một khung hình duy nhất mà chính nó bị che khuất.

Nó sử dụng thực tế là bộ não của chúng ta có thể ghép lại với nhau một hình ảnh đằng sau một mặt nạ chuyển động - tương tự như cách bạn có thể "nhìn thấu" các lưỡi của quạt di chuyển.

Để chụp ảnh, bạn cần phải quay video của hình ảnh, điều này khá phức tạp.

Vấn đề duy nhất ở đây có thể là IP - Yovo tuyên bố có 300+ patents ...

+1

Những người trong ảnh chụp màn hình đó trông khá dễ nhận biết đối với tôi. Đây chỉ là một ảo ảnh nhỏ về sự riêng tư. – jeffjv

+0

Vâng, hiệu quả phụ thuộc vào trường hợp sử dụng. Trong một tình huống mà bạn muốn bảo vệ chống lại một người dùng ăn cắp nội dung, điều này sẽ làm cho nhiệm vụ gây phiền nhiễu và tẻ nhạt - mà có thể là một đủ ngăn chặn thích hợp. –

2

Tôi đã nghe nói rằng bạn có thể nghe cho một sự kiện chụp màn hình bằng UIApplicationUserDidTakeScreenshotNotification

NSOperationQueue *mainQueue = [NSOperationQueue mainQueue]; 
[[NSNotificationCenter defaultCenter] addObserverForName:UIApplicationUserDidTakeScreenshotNotification 
                object:nil 
                queue:mainQueue 
               usingBlock:^(NSNotification *note) { 
                // executes after screenshot 
                NSLog(@"Screenshot Detection : %@", note); 
                UIAlertView *screenshotAlert = [[UIAlertView alloc] initWithTitle:@"Screenshot Detected" message:@"Oh Oh no screenshot bruhh" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil]; 
                [screenshotAlert show]; 
               }]; 

gì nếu bạn có thể ngay lập tức xóa tệp ảnh chụp màn hình khi nó được tạo?

+1

Bạn sẽ xóa tệp như thế nào? Đó không phải là AFAIK. – BadmintonCat

+0

Im không phải rất quen thuộc với sự phát triển iOS, nhưng trên Android nếu người dùng cho phép truy cập vào thư viện, bạn có thể tạo và cũng xóa các tập tin từ đó. Vì vậy, tôi nghĩ rằng bạn ngay lập tức có thể xóa ảnh chụp màn hình đã chụp. – lxknvlk

2

Đã lâu rồi, nhưng tôi vừa mới xem qua ScreenShieldKit, một công nghệ đang chờ cấp bằng sáng chế được ứng dụng nhắn tin Confide sử dụng. Những gì nó làm là nó cho phép người dùng chụp ảnh màn hình, nhưng nội dung là trống trên hình ảnh kết thúc. Gần đây họ đã phát hành phiên bản iOS.

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