2013-03-14 78 views
3

我們使用PhoneGap/Cordova 2.4。我們無法關閉Android側的啓動畫面的自動隱藏功能 。我的期望 是,直到有navigator.splashscreen.hide()的 explictit調用纔會隱藏啓動畫面。然而,對於我們的應用程序, 啓動畫面更早被隱藏。這向用戶顯示尚未準備好與之交互的HTML頁面 。科爾多瓦/ Phonegap無法關閉Android上的自動隱藏啓動屏幕

每科爾多瓦文檔,我們更新了我們的Java代碼看起來像這樣

import android.os.Bundle; 
import org.apache.cordova.*; 

public class MyApp extends DroidGap 
{ 
    @Override 
    public void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     super.setIntegerProperty("splashscreen", R.drawable.splash); 
     super.loadUrl(Config.getStartUrl(), 5000); 
    } 
} 

在這段JavaScript代碼,我們有這樣的設置方法結束。然而,正如我提到的 ,啓動畫面隱藏得更早。另外,當我們將 這一行取出時,啓動畫面仍然隱藏。這是代碼:

// tons of setup code ... 
    Backbone.history.start() 
    Backbone.trigger('app:ready') 

    navigator.splashscreen.hide() 

我們還將這兩個選項添加到www/config.xml中。我應該注意到AutoHideSplashScreen適用於iOs應用程序,但似乎對android應用程序沒有影響。另一個選項,我從一個例子中發現,因爲我在過去幾天裏一直在尋找互聯網解決這個問題的方法。

<preference name="AutoHideSplashScreen" value="false" /> 
<preference name="auto-hide-splash-screen" value="false" /> 

任何幫助將是偉大的。

由於提前,

凱文

+0

你有沒有找到解決辦法呢?我仍然遇到與PG 3.3 – 2014-02-23 21:28:42

+0

在這裏同樣的問題掙扎的這個問題。請讓我們知道您是否以及如何設法解決它? – AdityaSaxena 2014-09-27 07:03:52

回答

2

只需設置爲開機畫面顯示時間很大數字。例如。而不是

super.loadUrl(Config.getStartUrl(), 5000); 

做:

super.loadUrl(Config.getStartUrl(), 60000); // 60 seconds 

這真的不要緊,珍惜你把這裏的,只要它足夠大,當你的JavaScript/CSS/HTML滿載,超時尚未發生。

2

你可以只添加

<preference name="SplashScreenDelay" value="100000" /> 

您的config.xml後來只是將其刪除編程就像你當你想要完成的。

0

呼叫後,必須deviceready

.run(function($ionicPlatform, $cordovaSplashscreen) { 
    $ionicPlatform.ready(function() { 
     $cordovaSplashscreen.hide(); 
    }) 
}); 

至少,這對我的作品進行。希望它也適用於你們。

相關問題