FLAG_SECURE 正在模拟器上工作,但不在真实设备上

时间:2021-02-08 10:09:24

标签: android flutter

因此,将标志安全参数设置为 true 可以在模拟器上运行,但不能在真实设备上运行。

PS:Blur 是我故意添加的,用于隐藏内容。

我的实现。


import androidx.annotation.NonNull
import io.flutter.embedding.android.FlutterFragmentActivity
import io.flutter.embedding.engine.FlutterEngine
import io.flutter.plugins.GeneratedPluginRegistrant
import android.view.WindowManager

class MainActivity: FlutterFragmentActivity() {

  override fun configureFlutterEngine(@NonNull flutterEngine: FlutterEngine) {
        GeneratedPluginRegistrant.registerWith(flutterEngine)
    }

    public override fun onPause() {
    window.addFlags(WindowManager.LayoutParams.FLAG_SECURE)
    super.onPause()
}

public override fun onResume() {
    super.onResume()
    window.clearFlags(WindowManager.LayoutParams.FLAG_SECURE)
}
}

1 个答案:

答案 0 :(得分:1)

在您的 Activity 中,在 setContentView() 之前,输入以下代码行:

getWindow().setFlags(LayoutParams.FLAG_SECURE, LayoutParams.FLAG_SECURE);