v1.5.3
screen_protector
通过应用后台截图安全地泄露数据,并防止 Android 和 iOS 的截图。
324喜欢 10.4万近 30 天下载150Pub 分数
AndroidiOS
通过应用后台截图安全地泄露数据,并防止 Android 和 iOS 的截图。
{"sdk":"flutter"}{"sdk":"flutter"}^2.0.3以下为英文项目原文快照,最新内容请访问 GitHub。
Safe Data Leakage via Application Background Screenshot and Prevent Screenshot for Android and iOS.
Versions 1.4.4 through 1.4.13 may cause crashes on some devices. Please use version 1.4.3 or earlier, or upgrade to version 1.5.1 or later.
import 'package:screen_protector/screen_protector.dart';
await ScreenProtector.protectDataLeakageWithImage('LaunchImage');
await ScreenProtector.protectDataLeakageWithColor(Colors.white);
await ScreenProtector.protectDataLeakageWithColorOff();
await ScreenProtector.protectDataLeakageWithBlur();
await ScreenProtector.protectDataLeakageWithBlurOff();
await ScreenProtector.preventScreenshotOn();
await ScreenProtector.preventScreenshotOff();
final isRecording = await ScreenProtector.isRecording();
await ScreenProtector.protectDataLeakageOn();
or
await ScreenProtector.preventScreenshotOn();
await ScreenProtector.protectDataLeakageOff();
or
await ScreenProtector.preventScreenshotOff();
https://github.com/prongbang/screen-protector
import com.prongbang.screenprotect.AndroidScreenProtector
class MainActivity : FlutterFragmentActivity() {
private val screenProtector by lazy { AndroidScreenProtector.newInstance(this) }
// For Android 12+
override fun onWindowFocusChanged(hasFocus: Boolean) {
super.onWindowFocusChanged(hasFocus)
screenProtector.process(hasFocus.not())
}
}
import 'package:screen_protector/screen_protector.dart';
class _PreventScreenshotPageState extends State<MyApp> {
void _preventScreenshotOn() async => await ScreenProtector.protectDataLeakageOn();
void _protectDataLeakageOff() async => await ScreenProtector.protectDataLeakageOff();
@override
void initState() {
_preventScreenshotOn();
super.initState();
}
@override
void dispose() {
_protectDataLeakageOff();
super.dispose();
}
}
import 'package:screen_protector/screen_protector.dart';
class _PreventScreenshotPageState extends State<MyApp> {
void _preventScreenshotOn() async => await ScreenProtector.preventScreenshotOn();
void _preventScreenshotOff() async => await ScreenProtector.preventScreenshotOff();
@override
void initState() {
_preventScreenshotOn();
super.initState();
}
@override
void dispose() {
_preventScreenshotOff();
super.dispose();
}
}
import 'package:screen_protector/screen_protector.dart';
class _ProtectDataLeakagePageState extends State<MyApp> {
void _protectDataLeakageWithColor() async => await ScreenProtector.protectDataLeakageWithColor(Colors.white);
@override
void initState() {
_protectDataLeakageWithColor();
super.initState();
}
}
image01.png
import 'package:screen_protector/screen_protector.dart';
class _ProtectDataLeakagePageState extends State<MyApp> {
void _protectDataLeakageWithImage() async => await ScreenProtector.protectDataLeakageWithImage('LaunchImage');
@override
void initState() {
_protectDataLeakageWithImage();
super.initState();
}
}
import 'package:screen_protector/screen_protector.dart';
class _ProtectDataLeakagePageState extends State<MyApp> {
void _protectDataLeakageWithBlur() async => await ScreenProtector.protectDataLeakageWithBlur();
@override
void initState() {
_protectDataLeakageWithBlur();
super.initState();
}
}
💖 Support the Project
If you find this package helpful, please consider supporting it: