首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android免权限悬浮组件 - FloatingX

FloatingX ,一个强大的免权限悬浮组件,支持全局,以及局部悬浮。...背景 在前几个月的业务开发中,我们 app 需要对悬浮进行更改,常见的悬浮实现方式分为两种: 前者是获取权限后,利用 WindowManager 实现 后者是基于 DecorView 实现的插入悬浮...选用怎样的方案,主要根据业务的定向, 因为我们的业务不是视频通话类,而是菜谱工具类,所以我们不愿意让用户为此去设置中授予权限,这是一件成本较大的事,故采用了后者的方案,业内知乎也使用的这种方案。...之前的版本中,我们已经采用了后者的方案,先前的同学使用了插入到 content 中实现,但没有经过太多封装,代码直接插入到了 base 层,对于当下而言,基本符合使用,但扩展成本太高,对于未来而言,这显然不满足要求...插入到 DecorView 可以最大程度控制悬浮的自由度,即悬浮可以真正意义上[全屏]拖动。

2.1K21

Android悬浮不用动态申请权限方法

前言 前几天我刚写了一篇《Android实现可移动的悬浮》的文章,需要在AndroidManifest.xml里的加上权限申请 ?...最近手机里的直播软件如熊猫TV,虎牙直播等,退出直播房间时右下角会有当前房间的直秋视频继续存在,这里肯定也是用到了悬浮,但是我记得安装这些APP时并没有发现它们会弹出让你打开上层窗口的权限控制,于是决定查找一下这方面的资料看一下...度娘的帮助下,找到了下面这篇文章《Android无需权限显示悬浮, 兼谈逆向分析app》 由于无法超链接,这里贴上地址:https://www.jianshu.com/p/167fd5f47d5c...也就是说悬浮的WindowManager.LayoutParams这个参数里面的type,我们把他的值设置为TYPE_TOAST时,是不需要通过android来申请权限的,但是api19以下的,也就是...再运行程序即可实现不用动态申请上层权限即可实现android的悬浮效果了。 ---- -END-

4.8K21
您找到你想要的搜索结果了吗?
是的
没有找到

Android各版本查询和开启悬浮权限

Android 各版本查询和开启悬浮权限 如果你是从事Android开发的程序员,那么你肯定对于权限这个词不会陌生,Android的权限分为一般权限和危险权限,一般权限(只需AndroidManifest.xml...悬浮权限 悬浮权限不同于其他的权限如相机、相册、文件读写权限等,这些权限,动态申请后,用户只要的应用里面弹出来的提示框里面开启就可以了,并不会离开应用,而开启悬浮权限用户则需要进入到应用列表或者是应用详情里面开启悬浮权限...业务逻辑: APP默认是没有开启这个悬浮权限的,所以需要申请,而申请之后又要先判断有没有开启这个权限,这个判断是很重要的,你总不能每次都让用户去应用列表看这个权限有没有开启吧。...android:name="android.permission.SYSTEM_OVERLAY_WINDOW" /> 权限检查 //判断是否开启悬浮权限 context可以用你的Activity...else { return Settings.canDrawOverlays(context); } } } 简单粗暴,需要的地方使用即可

9K10

Android 获取判断是否有悬浮权限的方法

现在很多应用都会用到悬浮,很多国产rom把悬浮权限加入控制了,你就需要判断是否有悬浮权限,然后做对应操作。 Android 原生有自带权限管理的,只是被隐藏了。...看android源码android.app下就有个AppOpsManager类。...,android23里面有62种权限,我们需要的是OP_SYSTEM_ALERT_WINDOW=24 知道这些就可以用反射把我们的方法写出了: /** * 判断 悬浮窗口权限是否打开 *...,但这个方法也不能保证正确,一些机型上会返回错误即MODE_ERRORED,就是获取不到权限值,这个方法就返回了false,但实际上悬浮是可以使用的。...以上这篇Android 获取判断是否有悬浮权限的方法就是小编分享给大家的全部内容了,希望能给大家一个参考。

2.4K20

Android 悬浮权限各机型各系统适配大全(总结)

悬浮适配 悬浮适配有两种方法:第一种是按照正规的流程,如果系统没有赋予 APP 弹出悬浮权限,就先跳转到权限授权界面,等用户打开该权限之后,再去弹出悬浮,比如 QQ 等一些主流应用就是这么做得...”等; 看看 QQ 或者其他的大公司 APP 是否已经适配,如果已经适配,跳转到相关权限授权页面之后,或者自己能够直接在设置里找到悬浮权限授权页面也是一个道理,使用 adb shell dumpsys...Android 6.0 及以上跳转,无法跳转,却可以选择魅族手机设置设置后,悬浮打开缩小正常;2.魅族上,及时设置悬浮关闭,微信也可正常缩小,但是我们检测的悬浮是否开发结果,和实际系统的设置是匹配的...: 5.0.1以上:11款,均默认开启,且跳转设置页面正确;5.0:1款,处理异常 (默认未开启悬浮权限,且点击跳转至通知栏,非悬浮设置入口) 4.4.4、4.4.2:3款,处理可接受 (默认未开启悬浮权限...,点击跳转至通知中心的“通知栏”标签页,可手动切换至“悬浮”标签页设置) 4.3:1款,处理可接受 (默认开启,但点击华为跳转设置页,跳转至通知中心,无悬浮设置处) 4.2.2:1款,默认开启,处理正常

6K31

Android 无需权限显示悬浮, 兼谈逆向分析 App

如下图, 截图是使用 Chrome 时截的, 但是屏幕顶部却有 UC 的 view 浮在屏幕上. 我使用的是小米, 我并没有给 UC 授悬浮权限, 所以我看到这个悬浮时是很震惊的. ?...TYPE_PHONE就可以悬浮在很多 view 的上方了, 但是调用这个方法需要申请android.permission.SYSTEM_ALERT_WINDOW权限, 很多机型上, 这个权限的名字叫悬浮...看到这里, 我也觉得很奇怪, 我悬浮原理中写的是我知道的实现悬浮的方法, UC 的实现好像跟我调用的是相同的 API, 也没看到反射之类可能展示奇技淫巧的代码, 为什么 UC 就可以不需要权限直接显示悬浮呢...验证 实际测试了一下, 将 type 设置成 TYPE_TOAST 果然有奇效, 不需要android.permission.SYSTEM_ALERT_WINDOW权限就能显示一个悬浮....在这个 ROM 上表现为:使用TYPE_PHONE这类需要权限的 type 时, 只有 app 处于前台时能显示悬浮, 且能正常接受触摸事件. 如果在应用详情里面授悬浮权限, 则工作完全正常.

3K101

安卓root权限管理_root权限哪里设置

passwd就是设置了SUID权限,并且passwd的所有者是root,所以所有的用户都可以执行他,passwd运行期,程序获得临时的root权限,这时其可以存取shadow文件。...当passwd运行完成,当前用户又回到普通权限。 同理,设置程序的SGID,可以使程序运行期可以临时获得所有者组的权限团队开发的时候,这个文件权限比较有用,一般系统用SUID比较多。...Stick bit可以作用于目录,设置了粘贴位的目录下面的文件和目录,只有所有者和root可以删除他。现在我们可以回头去看看/tmp/目录的情况,这个目录设置了粘贴位。...比如:设置网卡IP地址,ifconfig命令是需要root权限的。我可以很肯定的说,Android下面应用程序是没有可能拿到root权限的。但是如果我的应用程序需要root权限怎么办呢?...就以我的问题为例,设置网卡IP地址,root权限下面命令为: ifconfig eth0 192.168.1.188 普通用户或者system用户权限下面这条命令是不起作用的,但是不会返回失败和异常,

13.2K30

权限问题专项】悬浮&监听通知栏权限合理VS不合理使用场景说明

应用常见的高危权限及使用场景,继已经发布的位置权限、短信权限、存储权限合理/不合理使用场景外,本期将为大家介绍悬浮、监听通知栏合理及不合理使用场景。...《绿标5.0-安全标准》骚扰行为:悬浮、通知栏权限要求 一、悬浮权限 Android.permission.SYSTEM_ALERT_WINDOW 悬浮权限:全局弹出对话框,APP进入后台后,该弹框仍覆盖在其他应用上显示...开启悬浮之前,需获取用户授权。...不合理使用场景 测试中发现,部分应用错误的使用悬浮权限来实现弹出消息框、对话框、或新页面等功能,常见场景如下: 1. 运动健康、影音娱乐类:展示广告调用悬浮权限; 2....PUSH通路是否正常; 教育、健身类:通过监听通知栏信息,设置拦截消息,禁止通知栏弹出消息; 实用工具类:如WiFi、手机管家等具有清理、管理能力的APP,调用该权限清理通知栏中消息。

2.2K10

浅谈Android应用内悬浮控件实践方案总结

首先想到的是申请悬浮权限,OK~ 打开搜索引擎,映入眼帘的并不是如何申请,而是“Android 悬浮权限各机型各系统适配大全、Android 绕过权限显示悬浮…”,为什么悬浮权限会有这么多坑呢?...悬浮可以桌面显示,被恶意软件用来偷偷弹广告怎么办?...作为一个系统级别的特殊权限,这是它应有的高傲 – – 正确引导用户打开悬浮权限才是标准做法,若这就是定论的话这篇文章也没必要写了,我们绕过悬浮权限直接去显示,大多数是为了优化用户体验,并不是恶意的。...TYPE_TOAST 类型控件时默认不需要权限,从而可以绕过悬浮权限。...那还有什么方法可以实现切换 Activity 时控件视觉上连续吗?如果你用过共享元素动画的话,便有答案了。 悬浮控件在哪里添加呢?

2.9K21

Android 悬浮功能的实现

1.悬浮可以显示在其他应用或launchers之上,这个肯定需要悬浮权限,而悬浮权限属于特殊权限,所以只能通过引导用户去打开无法像危险权限那样直接申请。...判断是否有悬浮权限 点击左上角图标时,我们要先判断当前app是否有悬浮权限,首先我们配置文件中添加,悬浮权限。... (很多文章标题都是悬浮如何绕过权限,什么设置类型为TOAST...如果悬浮权限已开启,直接将当前任务栈置于后台,开启服务即可。...(我目前的解决方案)设置一个标记位,标记当前是否通话,onCreate中如果通话已经结束了,跳转到一个过渡页面(标准模式),过渡页面中finish,就可以了,添加过渡页面的原因是我们不知道上一个页面是哪里

5.9K10

andriod使用超级播放器悬浮播不能正常使用

使用过程中会遇到不能播播放的问题,建议按照以下的方式排查 1.手机本地悬浮权限开启 检查手机设置悬浮权限有没有开启,各个手机开启悬浮窗口权限都不同,可以自己网上查下 2.检查代码的中的悬浮权限...image.png 2.1如果是Android4.x的情况,只用在AndroidManifest.xml中添加权限: 23 demo中对应悬浮权限说明 image.png 不同的手机对应不同的api 会出现不同的悬浮问题,这是由于andriod系统导致的,看下你手机对应下图中的api...WindowManager来实现的,悬浮需要在别的应用之上显示窗口控件,需要某些权限才可以,API Level>=23 需要在AndriodManefest.xml文件中声明权限SYSTEM_ALERT_WINDOW...除了在其他应用上设置悬浮还需要对本应用进行设置悬浮权限,该权限应用中手动设置如图中的new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION) image.png

2.1K50

悬浮开发设计实践

4.4 设置悬浮参数4.5 添加View到悬浮4.6 悬浮拖拽实现4.8 悬浮权限适配4.9 LayoutParam坑05.方案基础设计5.1 整体架构图5.2 UML设计图5.3 关键流程图5.4...展示悬浮能否想Popup那样依附在某控件位置我悬浮库时,思考能否想Popup那种有showAsDropDown方法Api,可以显示某个View的重心位置,然后设置x和y偏移量。...同时要注意,部分手机判断悬浮权限Api可能失效……将view添加到悬浮窗上利用addView将View添加在window上,同样的,WindowManager.LayoutParams.type可以设置...4.2 请求悬浮权限关于悬浮权限当API= 23时,需要在AndroidManifest中申请权限,为了防止用户手动设置中取消权限,...7.2 边界逻辑关闭悬浮先看一下问题谷歌坑人的地方,都没地方设置这个悬浮是否只用到app内,所以默认桌面上也会显示自己的悬浮

2.3K40

Android应用内悬浮的实现方案示例

; 2、FloatMonkService,是一个服务,开启服务的时候创建悬浮; 3、FloatCallBack,交互接口,FloatMonkService里面实现接口,用于交互; 4、FloatWindowManager...,悬浮的管理,因为后续悬浮布局可能有好几个,可以在这里面进行切换; 5、HomeWatcherReceiver,广播接收者,因为应用内展示,需要监听用户点击Home键和切换键的时候隐藏悬浮,...FloatMonkService; 7、FloatPermissionManager,需要适配各个傻逼机型的权限,庆幸网上已有大佬分享,只需要单独对7.0系统进行一些适配就行,悬浮权限适配; 8、...FloatMonkService.java /** * 悬浮服务中创建,通过暴露接口FloatCallBack与Activity进行交互 */ public class FloatMonkService...,悬浮只能持续一秒的时间,所以7.0不设这个type,谷歌爸爸最叼,7.0以上老老实实申请权限

4.8K31

简易的可拖动的桌面悬浮效果Demo

由此可知,要实现360手机卫士那样的悬浮效果,就需要使用系统级别的悬浮 下面学习实现桌面悬浮效果的代码步骤: Demo描述,悬浮为一个ImageView ,可以桌面 ,任意应用,锁屏上方任意移动...1、配置清单文件AndroidManifest.xml 中 添加系统悬浮权限 <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW...lp.gravity = Gravity.LEFT|Gravity.TOP; //显示<em>在</em>屏幕左上角 6、<em>悬浮</em><em>窗</em>相对5默认位置的位置差和<em>悬浮</em><em>窗</em>宽高<em>设置</em>      //显示位置与指定位置的相对位置差...; 8、将<em>悬浮</em><em>窗</em>添加到WindowManager对象中 windowManager.addView(imageView,lp); 9.<em>设置</em><em>悬浮</em><em>窗</em>的响应事件  这里为移动<em>悬浮</em><em>窗</em>操作,可以自己扩展添加点击等响应事件...<em>悬浮</em>在系统上 39 // 注意清单文件添加<em>权限</em> 40 41 //系统提示。

3.1K70

Android仿优酷视频的悬浮播放效果

之前接了需求要让视频播放时可以像优酷视频那样悬浮里播放,并且悬浮和主播放页面之间要实现无缝切换,项目中使用的是自封装的ijkplayer 这个要求就代表不能在悬浮中新建视频控件,所以需要在悬浮中复用主页面的视频控件...findViewById(R.id.vw_live); video_frame.addView(vw_live); 主播放界面的启动模式 播放主界面的activity的启动模式不能为默认,因为我们要保证播放主界面显示悬浮的时候退到后台...要使用悬浮需要申请权限 <uses-permission android:name="android.permission.SYSTEM_OVERLAY_WINDOW" / if (!...layoutParams.height = 340; //设置悬浮显示位置 layoutParams.gravity = Gravity.START | Gravity.TOP;...(Context context){ super(context); this.activity = context; } 对于悬浮的调用 用hasBind来记录是否调用了悬浮

2K20

Android实现类似qq微信消息悬浮通知功能

实现方法:(需要开启悬浮通知权限、允许应用在其他应用上显示) 一.利用headsup 悬挂式Notification,他是5.0中新增的,也就是API中的Headsup的Notification,可以不打断用户操作的时候...,给用户通知 二.使用Window创建悬浮 当window属性设置为FLAGE_NOT_FOCUSABLE表示不需要获取焦点,也不需要接受各种输入事件,此标记会同时启用FLAGE_NOT_TOUCH_MODEL...),系统Window(2000-2999),因此,桌面悬浮需要系统Window,设置系统级的type有很多值,经常用的是TYPE_SYSTEM_ALERT,此设置需要添加权限<uses-permission...) 提示:6.0之后需要动态权限 注意:某些rom下使用headsup并不会显示桌面悬浮,而是直接跳转到相应的界面,亲测华为,小米都是这种情况,这种情况下需要自己实现悬浮 具体实现: 利用headsup...悬浮不可触摸,不接受任何事件,同时不影响后面的事件响应。

3.2K10

Android 可拖动悬浮实现

实现逻辑之前,因为整体都在悬浮窗上实现,需要定义悬浮内容的一些必要属性,因为 indicatorView 和 rootView 的属性差不多,所以只列出 indicatorView 的属性列表,具体的可以看...,能够消费点击等事件,还需要注意的是, 8.0 之后的版本,悬浮 type 只能使用 TYPE_APPLICATION_OVERLAY 之前的 type 都过时无效了。...show 方法之前,如果版本大于 23 需要检测悬浮权限才行,检测的方法很简单 public static boolean hasOverlayPermission(Context context)...return Build.VERSION.SDK_INT < Build.VERSION_CODES.M || Settings.canDrawOverlays(context); } 如果没有同意悬浮权限...startActivityForResult 方法,当用户从权限设置页面回来的时候,通过 onActivityResult 方法再去检测一次是否真正同意了权限,如果还是未同意,那就再次引导用户去同意权限

1.9K21

Android视频悬浮窗口实现的示例代码

实现 首先,需要添加相对应悬浮权限: <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" / Activity...页面中,需要判断悬浮权限是否获取,如果未曾获取,需要跳转系统页,进行对应的授权操作: public boolean requestOverlayPermission() { if (Build.VERSION.SDK_INT...,我们可以首先初始化我们要显示的视图,并且设置相对应的事件,这里我们采用了 VideoView 进行简单的视频播放,并且设置悬浮关闭及返回前台的操作: private View initFloatView...// 设置窗口触摸移动事件 mShowView.setOnTouchListener(new FloatViewMoveListener()); // 悬浮生成 mWindowManager.addView...= 340; //设置悬浮显示位置 layoutParams.gravity = Gravity.START | Gravity.TOP; layoutParams.x = 100;

1.9K30

Ubuntu 中如何设置和管理 root 用户权限

Ubuntu 操作系统中,root 用户是具有最高权限的用户,可以执行对系统的所有操作。但是,默认情况下,Ubuntu 禁用了 root 用户,而是使用 sudo 命令来实现管理员权限。...本文将详细介绍 Ubuntu 中如何设置和管理 root 用户权限,并讨论一些常见的安全风险和预防措施。什么是 root 用户?root 用户是指 Linux 系统中具有最高权限的用户。...设置成功后,就可以以 root 用户身份登录系统了。如何禁用 root 用户?...因此,使用 root 用户时,必须注意以下几点:1. 不要滥用 root 权限尽量避免不必要的情况下使用 root 用户权限,仅在必要时才使用。对于一些普通操作,应该使用 sudo 命令来执行。...总结root 用户是 Ubuntu 操作系统中具有最高权限的用户,可以执行对系统的所有操作。默认情况下,Ubuntu 禁用了 root 用户,并使用 sudo 命令来实现管理员权限

4.7K00
领券