2***@qq.com
2***@qq.com
  • 发布:2017-11-02 09:43
  • 更新:2017-11-07 17:11
  • 阅读:2064

最新版hBuilder的plus.maps.Map在安卓里会闪退。。

分类:HTML5+

之前用10月份的版本都好好的,在11月的版本里一用就导致页面闪退。。。
下面是一个简单的测试页面,这个测试页面没复现闪退的现象,但新开的页面的地图也不显示..
index.html

<!DOCTYPE html>  
<html>  
<head>  
    <meta charset="utf-8">  
    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />  
    <title></title>  
    <script src="js/mui.min.js"></script>  
    <link href="css/mui.min.css" rel="stylesheet"/>  
      
    <style>  
    		#map{  
    			width: 400px;  
    			height: 400px;  
    		}  
    </style>  
      
    <script type="text/javascript" charset="utf-8">  
      	mui.init();  
      	  
      	  
      	mui.plusReady(function(){  
      		var myMap = new plus.maps.Map("map",{position:'absolute'});  
			  
			var button1 = document.getElementById("button1");  
			button1.addEventListener("tap",function(){  
				mui.openWindow("./page1.html","./page1.html");  
			})  
			  
			  
      	})  
      	  
      	  
      	  
    </script>  
</head>  
<body>  
	<div id="map"></div>  
	<button id="button1">开新页面</button>  
	  
</body>  
</html>

page1.html

<!DOCTYPE html>  
<html>  
  
	<head>  
		<meta charset="UTF-8">  
		<title></title>  
	</head>  
  
	<script src="js/mui.min.js"></script>  
	<link href="css/mui.min.css" rel="stylesheet" />  
  
	<style>  
		#map2 {  
			width: 400px;  
			height: 400px;  
		}  
	</style>  
  
	<script>  
		mui.init();  
  
		mui.plusReady(function() {  
			var myMap = new plus.maps.Map("map2",{position:'absolute'});  
		})  
	</script>  
  
	<body>  
		<div id="map2">  
  
		</div>  
  
	</body>  
  
</html>
2017-11-02 09:43 负责人:无 分享
已邀请:
x***@126.com

x***@126.com

我这边也遇到同样的问题,希望能尽快解决

1***@qq.com

1***@qq.com

同样遇到,直接闪退到上一级页面

x***@126.com

x***@126.com

找到问题所在了,创建map对象不能写在mui.plusReady里面,不知道为什么,具体写法参考H5PLUS示例中的maps_map.html代码。

  • 1***@qq.com

    写在外边,地图就加载不出来了啊


    2017-11-02 15:24

Trust

Trust - 少说废话

HBuilder版本信息:HBuilder 8.8.5.201711010242
使用hello h5+例子测试,未能重现崩溃的问题。

请上传一个可以重现问题的例子

1***@qq.com

1***@qq.com

找到原因了。Hello H5+ 示例

map=new plus.maps.Map("map");初始化地图放在setTimeout里边,加一个300的延迟,maps.html才能跳转到maps_map.html页面。但是如果不加延迟,初始化放在外边,页面就不能跳转

  • 1***@qq.com

    但是这个设置的时间很奇葩啊。。必须得300以上,300以下没有效果


    2017-11-02 16:10

  • 1***@qq.com

    以前的版本是不需要加这个延迟的,有时候连执行plus.webview.close()也需要加一个延迟


    2017-11-02 16:12

  • 师大酸梅杨

    对,我也遇到了这个问题,然后这样解决了。

    之前尝试本地打包,发现map地图的jar包是有改动的。具体的源码到没去研究了。


    2017-11-02 17:02

  • 1***@qq.com

    回复 师大酸梅杨: 我10月份的时候打包出来的时候还没这个问题的。不需要加延迟就可以的,不知道为什么现在需要了


    2017-11-02 17:35

  • 2***@qq.com

    回复 1***@qq.com:对,就最新的这个版本有问题,加延迟也没什么用


    2017-11-07 17:26

4***@qq.com

4***@qq.com - 90IT男

我也是这个问题,昨天更新的,今天运行APP,进入地图页面就闪退了,回到上一级页面,之前就好好的,再也不更新新版了,坑爹

  • 1***@qq.com

    不是更新的问题,你不更新也一样的。。。应该是云打包那边服务器的原因了,你给初始化地图加个300的延迟就可以了


    2017-11-03 11:40

  • 2***@qq.com

    打包也是一样的问题


    2017-11-07 17:27

4***@qq.com

4***@qq.com - 90IT男

没卵用啊,我没用云打包,直接真机运行,延迟都加到1S了,还是闪回

  • 1***@qq.com

    我的可以啊,我上边那个评论 H5+ 示例写着了


    2017-11-03 12:00

移动达人

移动达人

用web js版的地图吧,集成的原生地图各种问题太多坑,而且每次升级都可能会遇到不可知的改动,以前运行正常,升级后就不行了。调整了一个月放弃了,现在改用集成web版地图,除了速度稍慢点,功能都能实现。 关键一点是稳定啊,没闪退,没有莫名其妙的各种地图问题!

2***@qq.com

2***@qq.com

我也遇到这个问题,以前都是好好的,升级最新版本后,执行map = new plus.maps.Map("map")闪回,打包后一样

该问题目前已经被锁定, 无法添加新回复