2017-03-16 78 views
1

我有一個phonegap應用程序,完美地通過phonegap開發iOS應用程序上的本地服務器。PhoneGap建立在應用程序瀏覽器未加載

具體地,爲了

var ref = cordova.InAppBrowser.open('https://subdomain.domain.com', '_blank', 'location=no'); 

工作在dev的應用細的呼叫,然而,當通過經由testflight安裝該應用推到PhoneGap的構建和訪問,使用水化輕鬆更新,該按鈕是完全無響應。

我有一種感覺,沒有插件正在加載,因爲狀態欄也出現故障。

以下是config.xml文件的相關部分:

<plugin name="cordova-plugin-inappbrowser" spec="~1.7.0" /> 
<plugin name="cordova-plugin-statusbar" /> 
<plugin name="cordova-plugin-whitelist" spec="1.3.1" /> 

我知道這不安全,但是,改變的網址我試圖訪問不會改變任何東西:

<allow-navigation href="*" /> 
<allow-intent href="*" /> 
<access origin="*" /> 
<platform name="android"> 
    <allow-intent href="market:*" /> 
</platform> 
<platform name="ios"> 
    <allow-intent href="itms:*" /> 
    <allow-intent href="itms-apps:*" /> 
    <allow-intent href="*" /> 
</platform> 

有問題的按鈕:

<a href="#" id="signUpButton" class="btn btn-default appButton appAlt"><span class="glyphicon glyphicon-shopping-cart" aria-hidden="true"></span> OR SIGN UP</a> 

的JavaScript與此按鈕:

document.addEventListener("deviceready", function(){ 

    deviceReadyDependantFunctions(); 

    initializeApplication(); 

}); 

function deviceReadyDependantFunctions(){ 

alert('initialised!'); 

$('#signUpButton').unbind().click(function(){ 

    console.log('here'); 

    var ref = cordova.InAppBrowser.open('https://subdomain.domain.com?some=variable', '_blank', 'location=no'); 
    ref.addEventListener('loadstart', function(event) { alert(event.url); }); 
    console.log(ref); 
}); 

} 

顯然,有一羣在那裏調試....

的「初始化」警報在所有環境中的火災。

event.url警報會在開發應用程序中觸發,但不會在測試飛行,水合應用程序中觸發。

我一直在嘗試一切,我可以找到糾正這一點......我發現的唯一解決方案是使用一個簡單的href="theUrl.com"並讓系統瀏覽器加載它。這不是一個解決方案...我需要加載在應用程序中的網址。這是一個註冊頁面,並且可以從應用程序訪問它是必不可少的。

事情我已經嘗試:

白名單中的每滲透,雖然有不同的文件說,在應用程序瀏覽器/不受白名單的插件。

使用不同版本的phonegap(<preference name="phonegap-version" value="cli-6.5.0" />)無濟於事。

檢查插件是否存在於phonegap build「插件」選項卡中。他們是。

嘗試用phonegap.js替換對cordova.js的引用。這根本不起作用。

加載js文件的順序(以上調用inappbrowser是在一個單獨的js文件中)。沒有不同。

我在做什麼錯?

或者TestFlight/Hydrated Application組合有什麼奇怪的地方嗎?

你可以看到可笑提交我已經作出,以及這裏的全代碼庫:

https://github.com/andycharrington/yfa/commits/master

任何建議,將大量的讚賞。

謝謝。

+0

對不起,我也嘗試了cordova.InAppBrowser.open函數中「_blank」,「_self」,「_system」的各種變體。 –

+0

此外,我嘗試了內容安全策略的每一個滲透。它目前是:'

+0

您是否嘗試過卸載插件然後重新安裝它們,有時這會產生影響。 – Toxide82

回答

0

重新編譯未修改的代碼與電話差距今天上午建立似乎神奇地修復它。難道你不喜歡它嗎? :)

相關問題