4***@qq.com
4***@qq.com
  • 发布:2021-11-16 15:09
  • 更新:2022-03-24 15:38
  • 阅读:1180

navite.js 检测悬浮窗权限并且打开设置。 用于视频通话缩小后 悬浮窗

分类:Native.js
export function check_overlays() {  
  const isIos = uni.getSystemInfoSync().platform == 'ios'  
  const android_overlays = () => {  
    var main = plus.android.runtimeMainActivity()  
    var pkName = main.getPackageName()  
    var Settings = plus.android.importClass('android.provider.Settings')  
    var Uri = plus.android.importClass('android.net.Uri')  
    var Build = plus.android.importClass('android.os.Build')  
    var Intent = plus.android.importClass('android.content.Intent')  
    var intent = new Intent(  
      'android.settings.action.MANAGE_OVERLAY_PERMISSION',  
      Uri.parse('package:' + pkName)  
    )  
    // main.startActivityForResult(intent, 5004);  
    if (!Settings.canDrawOverlays(main)) {  
      // 检测悬浮窗  
      uni.showModal({  
        title: '温馨提示',  
        content: '请先打开悬浮窗权限,不开启将会造成通话异常',  
        showCancel: true,  
        success: function(res) {  
          if (res.confirm) {  
            main.startActivityForResult(intent, 5004) // 转跳到悬浮窗设置  
          }  
        }  
      })  
    }  
  }  
  const ios_overlays = () => {  
    // 有空在写  
    // var UIApplication = plus.ios.import("UIApplication");  
    // var app = UIApplication.sharedApplication();  
    // var enabledTypes  = 0;  
  }  
  return !isIos ? android_overlays() : ios_overlays()  
}  
1 关注 分享
typer

要回复文章请先登录注册

老向

老向

如何让应用进入悬浮窗?
谢谢
2022-03-24 15:38