昵称_匿名
昵称_匿名
  • 发布:2015-04-18 13:45
  • 更新:2015-04-20 14:22
  • 阅读:3539

用autoclose: false,结果plus.navigator.closeSplashscreen()不起作用

分类:HBuilder

用autoclose: false,结果plus.navigator.closeSplashscreen()不起作用,一直是默认起始图片再转。实在是想不到为什么,跟手机有关吗?有些手机不会有些会什么情况啊?

2015-04-18 13:45 负责人:无 分享
已邀请:
DCloud_UNI_FXY

DCloud_UNI_FXY

贴一下你plus.navigator.closeSplashscreen()的代码

  • 昵称_匿名 (作者)

    能再帮我看一下吗?谢谢很急。拜托了

    2015-04-20 11:14

昵称_匿名

昵称_匿名 (作者)

init : function() {
mui.plusReady(function() {

            var xsydView = plus.webview.getWebviewById("xsyd");  
            if(xsydView){  
                // 手动显示新手引导  
                plus.webview.show("xsyd");  

            }  
            // 关闭程序启动界面  
            plus.navigator.closeSplashscreen();  

        });  

}
这跟手机有关吗?有些手机不行啊。我刚刚用sony的手机测试有问题,用小米、oppo都行?

昵称_匿名

昵称_匿名 (作者)

我刚刚有测试了一下,怎么看都像是bug啊。

/**

  • 判断是否是首次登入

    */
    ;define(function(require, exports, module) {

    var Index = function(){

    };

    Index.prototype = {
    /**

    • 初始化
      */
      init : function() {

      var that = this;  
      
      mui.init();  
      
      // 判断用户是否是首次安装  
      that.initBeginerGuide();  

      },

      /**

    • 按钮事件
    • @param {Object} pageUrl 要打开的界面
    • @param {Object} id 界面ID
      */
      openWindowAction : function(pageUrl, id) {

      mui.openWindow({  
          url: pageUrl,  
          id: id,  
          show: {  
      
              autoShow: false, //  需要在页面中手动调用mui.currentWebview.show();显示   
          },  
          waiting:{  
            autoShow: false,//页面不显示加载圈,默认为true  
         }  
      });  

      },

      // 判断用户是否是首次安装
      initBeginerGuide : function(){

      var that = this;  
      
      var flag = localStorage.getItem("sxgaBeginerGuide");  
      
      console.log(flag);  
      // flag存在,就直接进入主界面,否则进入新手引导  
      if(flag){  
      
          that.openWindowAction("../main/main.html","main");  
      }else{  
      
          localStorage.setItem("sxgaBeginerGuide","1");  
          that.openWindowAction("../grzxXsyd/xsyd.html","xsyd");  
      
      }  

      },

    };

    window.onload = function(){
    var indexObj = new Index();
    indexObj.init();
    };
    });

这是判断是不是首次下载登入,是的话就跳到新手引导页,不是就跳到主界面,但就是断代码,有些手机很顺畅的跳过去,有些手机跳不过,跳不过是新手页或是主界面都没加载。感觉是openwind有点什么问题,或是用法上还有一些特殊情况使openwind无效。

昵称_匿名

昵称_匿名 (作者)

"plus": {
"splashscreen": {
"autoclose": false,/是否自动关闭程序启动界面,true表示应用加载应用入口页面后自动关闭;false则需调plus.navigator.closeSplashscreen()关闭/
"waiting": true
},
我用了这个手动关闭程序启动界面,这个对手机的版本会有要求吗?

DCloud_UNI_FXY

DCloud_UNI_FXY

你的init方法里还需要识别plus是否已经ready

  • 昵称_匿名 (作者)

    我贴的这段代码吗?这段代吗也需要识别plus?

    2015-04-20 14:11

  • 昵称_匿名 (作者)

    这段代码没用到plus也要识别plus,mui.plusready

    2015-04-20 14:13

昵称_匿名

昵称_匿名 (作者)

我贴的这段代码吗?这段代吗也需要识别plus?这段代码没用到plus也要识别plus,mui.plusready

DCloud_UNI_FXY

DCloud_UNI_FXY

你在openWindowAction里边做了plus的识别?

  • 昵称_匿名 (作者)

    在openWindowAction里边做plus的识别?什么意思啊,没用的plus也要用mui.plusReady吗,代码上面贴了,没写mui.plusReady啊。你的意思是plus.navigator.closeSplashscreen()要plus识别吗?这个有识别,plus.navigator.closeSplashscreen()我写在新手引导和主界面的js里,有做plus识别。

    2015-04-20 14:40

  • DCloud_UNI_FXY

    你需要自己打印一下日志,看看新手引导,和主界面执行了没有,

    我猜测的是新手引导或主界面没有open,导致代码没有执行。而这两个没有open的可能原因是你没有做plus识别

    2015-04-20 14:43

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