当前位置:   article > 正文

uniapp禁止截屏录屏/投屏功能(adb投放失效)

uniapp禁止截屏录屏/投屏功能(adb投放失效)

经过测试代码写在App.vue会失效,请写在符合逻辑的界面

uni-app 实现安卓防截屏

uniapp中实现

    要在App中全局禁止截屏,那么可以在App.vue中调用
    如果想要某个页面防截屏就在某个页面调用,但是在离开这个页面的时候要恢复截屏,否则全局还是禁止截屏的状态

  1. methods: {
  2. // 禁止截屏
  3. addFlags() {
  4. // #ifdef APP-PLUS
  5. let osname = plus.os.name
  6. if (osname == "Android") {
  7. var activity = plus.android.runtimeMainActivity()
  8. console.log(activity);
  9. console.log('开启防截屏');
  10. plus.android.invoke(plus.android.invoke(activity, "getWindow"), "addFlags", 0x00002000)
  11. }
  12. // #endif
  13. },
  14. // 允许截屏
  15. clearFlags() {
  16. // #ifdef APP-PLUS
  17. let osname = plus.os.name
  18. if (osname == "Android") {
  19. var activity = plus.android.runtimeMainActivity()
  20. console.log('关闭防截屏');
  21. plus.android.invoke(plus.android.invoke(activity, "getWindow"), "clearFlags", 0x00002000)
  22. }
  23. // #endif
  24. },
  25. }
  26. onUnload() {
  27. this.clearFlags()
  28. },
  29. onLoad(option) {
  30. this.addFlags()
  31. }

在html中实现需要先注册plus方法。
写在index.html文件中,实现全软件防截屏

  1. document.addEventListener('plusready', function() {
  2. let osname = plus.os.name
  3. if (osname == "Android") {
  4. var activity = plus.android.runtimeMainActivity()
  5. console.log(activity);
  6. console.log('开启防截屏');
  7. plus.android.invoke(plus.android.invoke(activity, "getWindow"), "addFlags", 0x00002000)
  8. }
  9. })


————————————————

                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
                        
原文链接:https://blog.csdn.net/weixin_45868762/article/details/125742190

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/89785
推荐阅读
相关标签
  

闽ICP备14008679号