Có vẻ như không có cách nào trực tiếp để làm điều này để phát hiện nếu người dùng đã gõ vào home + power button
. Theo điều này , có thể sớm hơn bằng cách sử dụng thông báo darwin, nhưng nó không hoạt động nữa. Vì snapchat đã làm điều đó, tôi đoán là họ đang kiểm tra album ảnh iPhone để phát hiện xem có hình ảnh mới nào được thêm vào trong khoảng 10 giây này hay không, và trong một ngày nào đó, chúng đang so sánh với hình ảnh hiện tại được hiển thị. Có thể một số xử lý hình ảnh được thực hiện cho so sánh này. Chỉ cần một suy nghĩ, có lẽ bạn có thể cố gắng mở rộng điều này để làm cho nó hoạt động. Kiểm tra điều này để biết thêm chi tiết .
Biên tập:
Có vẻ như họ có thể đang phát hiện sự kiện hủy UITouch (Chụp màn hình hủy bỏ chạm) và hiển thị thông báo lỗi này cho người dùng theo blog này: Cách phát hiện ảnh chụp màn hình trên iOS (như SnapChat)
Trong trường hợp đó, bạn có thể sử dụng – touchesCancelled:withEvent:
phương pháp để cảm nhận việc hủy UITouch để phát hiện điều này. Bạn có thể xóa hình ảnh trong phương thức ủy nhiệm này và hiển thị cảnh báo thích hợp cho người dùng.
- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event
{
[super touchesCancelled:touches withEvent:event];
NSLog(@"Touches cancelled");
[self.imageView removeFromSuperView]; //and show an alert to the user
}