精华内容
下载资源
问答
  • H5移动端app,使用vue+iview开发的app,打包成apk文件之后在魅族手机低版本华为手机上安装,安装完成之后进入app会出现白屏问题(一直白屏在那里,什么都看不到,也不出现页面)?请问大佬们怎么解决啊? ...

    H5移动端app,使用vue+iview开发的app,打包成apk文件之后在魅族手机和低版本华为手机上安装,安装完成之后进入app会出现白屏问题(一直白屏在那里,什么都看不到,也不出现页面)?请问大佬们怎么解决啊?

    转载于:https://my.oschina.net/u/4055182/blog/2992799

    展开全文
  • 昨天,在医院现场的客服人员,向我们反馈一个问题:说一位用户用他的安卓手机打开我们的app之后,界面是乱掉的;如下图: 向客服询问了具体的设备信息:安卓系统版本号是4.2 下意识觉得是因为css的兼容问题...

    昨天,在医院现场的客服人员,向我们反馈一个问题:说一位用户用他的安卓手机打开我们的app之后,界面是乱掉的;如下图:

     

     

     

    向客服询问了具体的设备信息:安卓系统版本号是4.2

    下意识觉得是因为css的兼容问题,因为之前遇到过太多类似问题了。

    因为现在css3大行其道,像 flex,transform,transition,animation等属性都有广泛的应用,当然这些css3也支持当下的主流设备及系统。

    但是因为我们的app目标用户比较广泛,很多用户是老年用户,使用比较低版本的系统,这些属性就可能在兼容问题。

     

    我看了一下这个页面的css源码,发现弹框的样式如下:

    .modal {
        display: none;
        max-height: 80%;
        overflow: hidden;
        position: fixed;
        width: 86%;
        top: 50%;
        left: 7%;
        background-color: #fff;
        padding: 0;
        z-index: 12;
        zoom: 1;
        overflow: hidden;
        -webkit-border-radius: 8px;
        border-radius: 8px;
        -webkit-transform: translate3d(0, -52%, 0);
        transform: translate3d(0, -52%, 0);
    }
    

     

    在 http://caniuse.com/ 查了一下transform的兼容性:

     

    结果如下:http://caniuse.com/#search=transform

     

     

    根据查询结果,我们发现:transform不兼容安卓4.3以下版本

    所以,上述BUG产生的原因很可能是因为用了:transform: translate3d(0, -52%, 0) 来实现上下居中导致的。

     

    解决:

    优雅降级:在不影响当前代码功能的前提下,用js判定安卓4.3以下版本的运行环境,因为弹框高度不固定,动态获取弹框高度,重置transform属性值,然后利用margin负值居中。

        var userAgent = navigator.userAgent;
        var index = userAgent.indexOf("Android")
        if (index >= 0) {
            var androidVersion = parseFloat(userAgent.slice(index + 8));
            if (androidVersion < 4.3) {
                var androidH = $('.modal').height();
                $('.modal').css({ 'height': androidH, '-webkit-transform': 'translate3d(0,0,0)', 'transform': 'translate3d(0,0,0)', 'top': '50%', 'margin-top': -androidH / 2 });
            }
        }
    

      

    解决效果:

     

     

    总结思路:

    当我们遇到低版本安卓上界面出现问题,主流设备和系统都正常时,我们可以这样解决:

    1> 查看问题出css源码,重点查看css3的一些新属性;

    2> 去 http://caniuse.com/ 查看这些新属性的兼容性;

    3> 如果bug影响范围较小,可以使用优雅降级,对bug进行特殊处理;但是如果bug原因影响范围较大,建议使用兼容性较好的代码重构原来的代码。

     

    转载于:https://www.cnblogs.com/kevinCoder/p/6489337.html

    展开全文
  • OS逆向开发,突破微信强制升级机制,让低版本也能正常 使用版本过低,无法使用。 问题出现了,那怎么解决呢? 小程很自然地猜测,客户端有一个逻辑,是把当前的版本号与服务器返回的版本号作对比,如果发现当前的...

    (1)安装与运行

    在网上搜索微信的历史版本,下载一个兼容多开的版本(实际上是bundleID不一样),比如5.0版本。当然也可以通charles等,在AppStore上下载微信旧版本,再重签名。

    通过pp助手之类的工具,把旧版本微信安装到手机。

    启动微信,登陆账号,遇到这样的提示:
    在这里插入图片描述

    OS逆向开发,突破微信强制升级机制,让低版本也能正常

    使用版本过低,无法使用。

    问题出现了,那怎么解决呢?

    小程很自然地猜测,客户端有一个逻辑,是把当前的版本号与服务器返回的版本号作对比,如果发现当前的版本号过低,就提示升级。那么,当前的版本号是怎么获取到的呢,它是不是从一个函数返回的呢?如果小程把这个值改掉会怎么样呢?

    (2)突破限制

    同样,先要通过classdump拿到微信的所有类的声明。

    然后搜索"version"关键字,对可能是返回版本值的函数进行注入,观察各个地方的输出。

    注入的办法,用小程上一篇介绍的iOSOpenDev来做即可,而观察输出则使用之前介绍的socat。

    这里给出部分注入的代码的截图:
    在这里插入图片描述
    iOS逆向开发,突破微信强制升级机制,让低版本也能正常使用
    最终可以确认,CUtility::GetVersion就是目标函数,通过一个公共类来返回版本值,这在设计上是很合理的事情了。

    运行微信时,可以在系统日志中看到这样的输出:

    Oct 18 15:14:46 yeah MicroMessenger[2506] : -------CUtility::GetVersion in

    Oct 18 15:14:46 yeah MicroMessenger[2506] : -------CUtility::GetVersion out, ret=352321792

    Oct 18 15:14:46 yeah MicroMessenger[2506] : ------->MicroMessengerAppDelegate::didFinishLaunchingWithOptions in

    其中,352321792就是当前的版本值。

    对CUtility::GetVersion这个函数的返回值作修改,尝试返回452321792(这个值是简单地把最高位加1而来):在这里插入图片描述

    iOS逆向开发,突破微信强制升级机制,让低版本也能正常使用
    再次运行微信,低版本的限制消失了,看到这样的界面:
    在这里插入图片描述
    iOS逆向开发,突破微信强制升级机制,让低版本也能正常使用
    身份验证之后,进入到陈旧的5.0界面:
    在这里插入图片描述
    在这里插入图片描述
    bundleID是一个APP的唯一标识,比如微信6.x版本的bundleID是这样的:
    在这里插入图片描述
    因为微信6.x的bundleID与5.0版本的不一样,这就意味着,同时安装5.0版本与6.x版本的微信是可行的,比如小程就安装了两个(微信多开),运行起来的效果是这样的(录制时的帧率有点低,实际上是两个APP在切换):在这里插入图片描述

    展开全文
  • 需求就是,HTML项目要兼容部分低版本手机浏览器,又不知道怎么手机调试,于是我用的电脑的IE浏览器来调试了,把我们的移动端项目用IE打开,IE的控制台报错一个一个解决,解决一个问题用IE看一次。。解决完成之后...

    需求就是,HTML项目要兼容部分低版本的手机浏览器,又不知道怎么用手机调试,于是我用的电脑的IE浏览器来调试了,把我们的移动端项目用IE打开,IE的控制台报错一个一个解决,解决一个问题用IE看一次。。解决完成之后应该就可以了。哎,解决兼容性真的好坑。。。

    用IE调试的原因:因为电脑上可能除了IE浏览器,其他的浏览器都是兼容我们代码所写的语法,控制台也不报错。比如es6的模板语法``在谷歌等浏览器是可行的,但是在ie就不行,引入的babel依旧是不行的。这是我们可以用最原始的加号(+)的方式进行拼接。

    展开全文
  • 而vant weapp仅适配了微信浏览器内核,对于低版本浏览器兼容性不佳。在低端的Android4、5手机上可能存在css兼容性问题,如遇到样式变形需修改源码中的样式。从uni-app 2.5.3起,App端也支持了腾讯X5内核,可以避免...
  • 兼容低版本的话需要使用参数比较少的重载方法,先 new RectF,传入坐标,然后再将 Rectf 传入 draw 方法。这个问题在教程里没有提到,新手可能会不知道该怎么处理。</p><p>该提问来源于...
  • 即使是运动最基本的听响也一定要选择版本更高的蓝牙耳机品牌,因为,现在手机能支持的版本越来越高,高版本的蓝牙能向下兼容,但是低版本的蓝牙不能向上兼容,而且低版本的稳定性和连接效率偏低,如果不怕买回家玩...
  • Android Fragment 初相识(二)

    千次阅读 2016-11-17 00:11:10
    【1】Fragment 怎么兼容低版本(3.0)?(现在不常用)【2】Fragment 的生命周期 【3】实现 Fragment 之间的通信。  小知识: 快速的修改应用的包名 。 【1】Fragment 怎么兼容低版本(3.0)?(现在不...
  • Android Studio如何发布APK最近做一个手机app,需要做兼容性,因为之前在自己的手机上测试没有问题,但是拿出去后在一台htcA9和一台华为手机上都出现问题,A9可能是因为版本过高(android 6.0)华为应该是版本...
  • 小白用Android stdio 3.0版本写了一个小APP,出现了一些问题: 1.app在虚拟机上运行得好好的,放在真机上运行有时候会出现闪退的情况,不是一打开就闪退,打开运行几次才会出现闪退...小白不知道兼容性问题怎么解决...
  • 4) : 手机版本 5) :证书不正确 2:app崩溃的原因有哪些? 1) :网络的切换有时也会影响app的运行 2) :设备碎片化 3):内存过 4) :第三方服务的问题 5) :出现空指针 6) :内存溢出 3:如何查看app...
  • Android 实现基于RTMP视频播放

    千次阅读 2019-10-21 09:52:06
    这个怎么说,确实很坑,确实能实现播放视频的功能,但是需要build的版本,无法兼容别的功能(eg:权限的管理,build版本必须在23一下,这个就很坑了)。果断的放弃了。再烂别的,中间也找了很...
  • 手机低分辨率下,页面的图标、按钮几乎和PC的显示有许多地方不一样。更干净、更容易操作、更方便。 一十三:视频、图片、框架都支持自适应,但必须按照模板使用文档的css格式来写,不然无效,具体看模板使用文档。...
  • 2020-08-28 重构退群监控,会话列表选中高亮,修复部分低版本微信Crash。 2020-08-13 聊天输入框/表情选择/收藏界面图标优化,修复联系人列表/详情页面若干BUG。 2020-07-27 修复免认证登录后, 主页面一片空白。修复...
  • 升级:Glide到4.5.0(不影响低版本使用) 修复:拼一张功能因图片过多过大导致的oom问题 感谢@Beiler 提出的反馈 2.0.1: 修复bug:单独使用拼图功能时,以图片路径为参数时产生的数组越界bug。 2.0.0: 新增...
  • 项目最低兼容4.0.3,因为objectbox最低支持这个版本 2. 期望拥有的能力(待完成): 2.1 2020.12.01(待完成,可预见的能够帮助工程变强大的工作) 调试模式:应用配置项参数等调试项修改和查看,需要IOC和持久化...
  • Java版本:1.8 数据库:MySQL 框架:Spring + Spring MVC + MyBatis 服务器:Tomcat 前端解析框架:Thymeleaf 开发工具:Idea 2017 版本管理工具:Maven 版本控制工具:GitHub 3.2 实现过程 3.2.1 商品首页实现 ...
  • 当我们在兼容低版本浏览器的时候可能下面的写法可以满足我们的需求(两个属性都写上,浏览器识别的属性直接覆盖前者的属性): <pre><code> css .item1{ opacity:0.1;//IE8以上浏览器识别 ...
  • 如今我们恰逢时机,可以利用丰富的表现手段,为大量强大的设备(如智能手机、平板电脑)创建新颖和极具吸引力的用户界面。UX涵盖了多种学科,包括认知心理学、用户研究、视觉设计等,而所有这些便形成了原型,即一种...
  • 怎么改语言版本? [隐藏功能] A: cFos/cFosSpeed 都是多国语言版本, 只不过在安装时 cFosSpeed 会问你要用什么语言来安装. 那着到底 cFos 安装之后, 还能改语言吗? 答案是确定的. 首先进入 cFos 安装目录, 找到其中...
  • 新版Android开发教程.rar

    千次下载 热门讨论 2010-12-14 15:49:11
    开放手机联盟包括手机制造商、手机芯片厂商和移动运营商几类。目前,联盟成员 数 量已经达到了 43 家。 移动手机联盟创始成员: Aplix 、 Ascender 、 Audience 、 Broadcom 、中国移动、 eBay 、 Esmertec 、谷歌、...

空空如也

空空如也

1 2
收藏数 24
精华内容 9
关键字:

手机怎么兼容低版本