4Glet全网通老年老年人手机怎么设置联系人把联系人移到上面?

首先,问大家一个问题:你们知道2G,3G,4G中的G是什么意思嘛?

2.5G是GPRS,其覆盖范围特别广

总结:TD-LET和FDD-LET都是4G国际标准,国际主流的大部分采用的依然是FDD-LET

 双模双卡大多就是指同时支持GSM/CDMA的双卡手机,可以放一张移动/联通卡和一张电信卡。  
单模双卡大多就是指GSM双卡或者CDMA双卡(CDMA双卡比较少),可以同时放两张移动/联通卡或者两张电信卡。 

这篇博客主要介绍的是  主流各种机型和各种版本的悬浮窗权限适配,但是由于碎片化的问题,所以在适配方面也无法做到完全的主流机型适配,这个需要大家的一起努力,这个博客的名字永远都是一个将来时,感兴趣或者找到其他机型适配方法的请留言告诉我,或者加群一起交流一下,非常感谢~ 
  相关权限请看我的另一篇博客:,或者关于权限的案例使用:,还有录音和摄像头权限的适配:。 
  转载请注明出处:。 
  源码会实时更新在 gitHub 上,不会实时更新博客,所以想要看最新代码的同学,请直接去 github 页面查看 markdown。

  悬浮窗适配有两种方法:第一种是按照正规的流程,如果系统没有赋予 APP 弹出悬浮窗的权限,就先跳转到权限授权界面,等用户打开该权限之后,再去弹出悬浮窗,比如 QQ 等一些主流应用就是这么做得;第二种就是利用系统的漏洞,绕过权限的申请,简单粗暴,这种方法我不是特别建议,但是现在貌似有些应用就是这样,比如 UC 和有道词典,这样适配在大多数手机上都是 OK 的,但是在一些特殊的机型不行,比如某米的 miui8。

  在 4.4~5.1.1 版本之间,和 6.0~最新版本之间的适配方法是不一样的,之前的版本由于 google 并没有对这个权限进行单独处理,所以是各家手机厂商根据需要定制的,所以每个权限的授权界面都各不一样,适配起来难度较大,6.0 之后适配起来就相对简单很多了。

  由于判断权限的类 AppOpsManager 是 API19 版本添加,所以Android 4.4 之前的版本(不包括4.4)就不用去判断了,直接调用 WindowManager 的 addView 方法弹出即可,但是貌似有些特殊的手机厂商在 API19 版本之前就已经自定义了悬浮窗权限,如果有发现的,请联系我。 
  众所周知,国产手机的种类实在是过于丰富,而且一个品牌的不同版本还有不一样的适配方法,比如某米(嫌弃脸),所以我在实际适配的过程中总结了几种通用的方法, 大家可以参考一下:

  • 直接百度一下,搜索关键词“小米手机悬浮窗适配”等;
  • 看看 QQ 或者其他的大公司 APP 是否已经适配,如果已经适配,跳转到相关权限授权页面之后,或者自己能够直接在设置里找到悬浮窗权限授权页面也是一个道理,使用 adb shell dumpsys activity 命令,找到相关的信息,如下图所示 
    可以清楚看到授权 activity 页面的包名和 activity 名,而且可以清楚地知道跳转的 intent 是否带了 extra,如果没有 extra 就可以直接跳入,如果带上了 extra,百度一下该 activity 的名字,看能否找到有用信息,比如适配方案或者源码 APK 之类的;
  • 依旧利用上面的方法,找到 activity 的名字,然后 root 准备适配的手机,直接在相关目录 /system/app 下把源码 APK 拷贝出来,反编译,根据 activity 的名字找到相关代码,之后的事情就简单了;
  • 还有一个方法就是发动人力资源去找,看看已经适配该手机机型的 app 公司是否有自己认识的人,或者干脆点,直接找这个手机公司里面是否有自己认识的手机开发朋友,直接询问,方便快捷。

  由于 6.0 之前的版本常规手机并没有把悬浮窗权限单独拿出来,所以正常情况下是可以直接使用 WindowManager.addView 方法直接弹出悬浮窗。 
  如何判断手机的机型,办法很多,在这里我就不贴代码了,一般情况下在 terminal 中执行 getprop 命令,然后在打印出来的信息中找到相关的机型信息即可,这里贴出国产几款常见机型的判断:

  首先需要适配的就应该是小米了,而且比较麻烦的事情是,miui 的每个版本适配方法都是不一样的,所以只能每个版本去单独适配,不过还好由于使用的人数多,网上的资料也比较全。首先第一步当然是判断是否赋予了悬浮窗权限,这个时候就需要使用到 AppOpsManager 这个类了,它里面有一个 checkop 方法:

找到悬浮窗权限的 op 值是:

注意到这个函数和这个值其实都是 hide 的,所以没办法,你懂的,只能用反射:

检测完成之后就是跳转到授权页面去开启权限了,但是由于 miui 不同版本的权限授权页面不一样,所以需要根据不同版本进行不同处理:

* 获取小米 rom 版本号,获取失败返回 -1

最新的 V8 版本有些机型已经是 6.0 ,所以就是下面介绍到 6.0 的适配方法了,感谢 @pinocchio2mx 的反馈,有些机型的 miui8 版本还是5.1.1,所以 miui8 依旧需要做适配,非常感谢,希望大家一起多多反馈问题,谢谢~~。

  魅族的适配,由于我司魅族的机器相对较少,所以只适配了 flyme5.1.1/android 5.1.1 版本 mx4 pro 的系统。和小米一样,首先也要通过 API19 版本添加的 AppOpsManager 类判断是否授予了权限:

然后是跳转去悬浮窗权限授予界面:

* 去魅族权限申请页面

如果有魅族其他版本的适配方案,请联系我。

  华为的适配是根据网上找的方案,外加自己的一些优化而成,但是由于华为手机的众多机型,所以覆盖的机型和系统版本还不是那么全面,如果有其他机型和版本的适配方案,请联系我,我更新到 github 上。和小米,魅族一样,首先通过 AppOpsManager 来判断权限是否已经授权:

然后根据不同的机型和版本跳转到不同的页面:

* 去华为权限申请页面

emui4 之后就是 6.0 版本了,按照下面介绍的 6.0 适配方案即可。

  360手机的适配方案在网上可以找到的资料很少,唯一可以找到的就是这篇:,但是博客中也没有给出最后的适配方案,不过最后居然直接用最简单的办法就能跳进去了,首先是权限的检测:

如果没有授予悬浮窗权限,就跳转去权限授予界面:

哈哈哈,是不是很简单,有时候真相往往一点也不复杂,OK,适配完成。

  我在博客中已经介绍到了适配方案,悬浮窗权限在 6.0 之后就被 google />权限,然后在使用时先判断该权限是否已经被授权,如果没有授权使用下面这段代码进行动态申请:

上述代码需要注意的是:

  如何绕过系统的权限检查,直接弹出悬浮窗?这篇博客中我已经指明出来了,需要使用mParams.type =

的同时还可以接收触摸事件和按键事件了,而4.4以前只能显示出来,不能交互,所以 API18 及以下使用 TYPE_TOAST 是无法接收触摸事件的,但是幸运的是除了 miui 之外,这些版本可以直接在 Manifest

更新:7.1.1之后版本

  最新发现在 7.1.1 版本之后使用 type_toast 重复添加两次悬浮窗,第二次会崩溃,跑出来下面的错误:

去追溯源码,发现是这里抛出来的错误:

然后去查看抛出这个异常处的代码:

然后我们从 mWindowMap 这个变量出发去分析,但是最后发现,根本不行,这些代码从 5.X 版本就存在了,而且每次调用 addview 方法去添加一个 view 的时候,都是一个新的 client

  非常感谢同学的大力帮忙,通过优测网的机型的测试适配,现在统计结果如下所示:

  更新,6.0魅族的适配方案不能使用google API,依旧要使用 6.0 之前的适配方法,已经适配完成~ 
  6.0 上绝大部分的机型都是可以的,除了魅族这种奇葩机型:

型号:PRO6;版本:6.0;分辨率: 检测权限结果有误,微信可正常缩小放大,而我方检测为未开启权限,为跳转至开启权限页
型号:U20;版本:6.0;分辨率: 检测权限结果有误,微信可正常缩小放大,而我方检测为未开启权限,为跳转至开启权限页
魅族:2款,异常(1.检测权限未开启,点击 Android 6.0 及以上跳转,无法跳转,却可以选择魅族手机设置,设置后,悬浮窗打开缩小正常;2.在魅族上,及时设置悬浮窗关闭,微信也可正常缩小,但是我们检测的悬浮窗是否开发结果,和实际系统的设置是匹配的。)

已适配完成,针对魅族的手机,在 6.0 之后仍然使用老的跳转方式,而不是使用新版本的 Google API 进行跳转。

  这里是华为手机的测试结果:

跳转至通知中心页面,而非悬浮窗管理处
华为畅玩4x(电信版) 跳转至通知中心标签页面,用户需切换标签页(通知中心、悬浮窗为两个不同标签页)
跳转至通知中心标签页面,用户需切换标签页(通知中心、悬浮窗为两个不同标签页)
跳转至通知中心标签页面,用户需切换标签页(通知中心、悬浮窗为两个不同标签页)
华为荣耀 3c 电信版 跳转至通知中心,但默认是开启悬浮窗的
直接点击华为跳转设置页按钮,闪退
华为6.0以下机型覆盖:18款,其中:
5.0.1以上:11款,均默认开启,且跳转设置页面正确;5.0:1款,处理异常
(默认未开启悬浮窗权限,且点击跳转至通知栏,非悬浮窗设置入口)
(默认未开启悬浮窗权限,点击跳转至通知中心的“通知栏”标签页,可手动切换至“悬浮窗”标签页设置)
4.3:1款,处理可接受
(默认开启,但点击华为跳转设置页,跳转至通知中心,无悬浮窗设置处)
4.2.2:1款,默认开启,处理正常
4.1.2:1款,处理有瑕疵
(默认开启,但若直接点击华为跳转按钮,出现闪退)

  大部分的小米机型都是可以成功适配,除了某些奇怪的机型:

无悬浮窗权限,点击小米手机授权页跳转按钮,无反应
未修改开启悬浮窗成功,真机平台不支持(为权限与之前系统有别)
小米 红米1(联通版)
小米6.0以下机型覆盖:10款,其中:
(默认未开启,点击小米手机授权按钮,无跳转)
0

  几乎 100% 的机型都是配完美,结论:

三星6.0以下机型覆盖:28款,全部检测处理成功
(默认均开启悬浮窗权限)
0

  蓝绿大厂的机器,只测试了几款机型,都是OK的:

默认未开启,且无法设置开启(平台真机限制修改权限导致)

  其他的机型,HTC 和 Sony 大法之类的机器,随机抽取了几款,也都是 OK 的:

? USB 驱动支持如下:

? 通过USB口升级软件

? 可提供PC工具源代码供参考

深圳市美芯讯科技有限公司

张俊-先生(市场销售部)电话  QQ:

深圳市美芯讯科技有限公司 SIMCOM产品,模块大量原装现货长期供应公司配备有专业的技术工程师协助客户在研发生产中解决技术生产难题;专业的技术服务,价格的优惠将为贵公司产品降 ,带来 的利润回报;希望有机会能跟贵公司合作,有需要请联系我们,谢谢!

我要回帖

更多关于 老年人手机怎么设置联系人 的文章

 

随机推荐