mapabc 地图失效不能进行任何操作

问题:mapabc 地图失效不能进行任何操作


原因:因为项目要用webview加载网页,网页中有视频要播放,要播放视频要手机要装flash插件,并在AndroidManifest.xml 中的application 节点时加硬件加速android:hardwareAccelerated="true",就因为加了硬件加速,使得mapabc地图任何操作都失效。为什么加了会冲突具体原因还没有追查.....


解决方法:把android:hardwareAccelerated="true" 从application节点中移到 需要播放视频的activity 节点下。


后续:太坑爹了,下午用同事一台没有root过的三星i9100来测试又发现了同样的问题,搞了好久才发现是 “强制进行GPU 渲染”被钩上了,取消掉就好了。后来想着intent到“开发者选项”中让用户取消掉,但是这让用户操作太不人性化了。


        所以花了些时间查了一下关于Hardware Acceleration 的文档:http://developer.android.com/guide/topics/graphics/hardware-accel.html 

        发现从Android3.0 (API level11)开始,Android的2D显示管道被设计得更加支持硬加速了.硬加速使用GPU承担了所有在View的canvas上执行的绘制操作.

  启用硬加速最简单的的方法是对整个应用启用硬件速.如果你的应用只使用标准的view和Drawable,全局启用硬加速将不会带来任何负面影响.然而,因为硬加速不是被所有的2D绘制所支持,所以启用它时可能对你的自定义绘制产生影响.出现的问题经常是不可见的,也可能是异常,或错误地显示了像素.为了避免这些问题,Android提供了在以下各级别上启用或禁止硬加速的能力:

       Application

       Activity

       Window

       View


最后通过添加MapView.setLayerType(View.LAYER_TYPE_SOFTWARE, null); 代码 来禁止MapView的硬件加速功能。


大笑这个bug出现一周了,之前有点忙就没花时间去研究,现在终于解决了;难过技术太差了,要好好学习才行。






  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值