Отключить функцию скриншота в приложении для Android и iOS

Я заинтересован в создании приложения контроля доступа для проекта в колледже. Приложение будет содержать штрих-код / ​​QR-код, чтобы прочитать личность человека, когда находится под сканером.

Чтобы ограничить доступ посторонних лиц к штрих-коду, используемому для входа, я надеялся запретить человеку делать снимок экрана в приложении. Возможна ли эта функция?

Заранее спасибо!

2 ответа

Дорогой друг, ты должен сделать что-то хитрое для этой вещи, так как ты не можешь на самом деле помешать пользователю сделать снимок экрана или получить изображение с другого мобильного телефона,

так что это дело не решит только мобильная сторона.

Так какой же лучший подход для этого?

По моему мнению, вы должны справиться с этим с помощью серверной коммуникационной системы, хранящей информацию об истечении секунд в наборе данных QR-кода, например:

{
  "id" : "some-user-id",
  "ency-key" : "your-latest-key",
  "expiry" : "60"
}

здесь ваш ency-key будет вашим последним ключом подписки, который вы получите от сервера с помощью веб-сервиса или чего-то подобного. Хитрость заключается в том, что этот ключ проверяется только в течение 60 секунд (или согласно вашему требованию) после получения этого ключа от сервера, сервер должен обновить ключ, поэтому, если неавторизованный пользователь попытается получить доступ к тому же коду, сохраняя его на скриншоте или фото, он / она не сможет получить доступ к системе.

Это с моей стороны:) надеюсь, что эта вещь может помочь вам

Ответ для iOS: Вы can't фактически запретить пользователю делать снимок экрана, однако вы можете узнать, сделал ли пользователь снимок экрана, наблюдая UIApplicationUserDidTakeScreenshotNotification уведомление, а затем вы можете удалить такую ​​фотографию из галереи (если разрешение было дано), хотя это совсем не хорошо, или вы можете размыть изображение. но моя точка зрения в том, что даже если вам как-то удастся предотвратить снимок экрана, как вы запретите пользователю делать снимки с другого устройства?

PS. Я не уверен, возможно ли это в Android или нет.

Другие вопросы по тегам