2013-07-31 19 views
13

iOS cihazlarda Cordova 3.0 kullanılırken yerel tarayıcılardaki bağlantıları nasıl açıyorsunuz?Cordova 3.0 - iOS'ta harici tarayıcıda bağlantı açma

İnsanlar, window.open(url, "_system") kullanmayı önerdi, ancak bu Cordova 3.0'da çalışmıyor.

Benim girişimi

if(navigator.app) // Android 
    navigator.app.loadUrl(url, {openExternal:true}) 
else // iOS and others 
    window.open(url, "_system") // opens in the app, not in safari 

kimse Cordova 3.0 ile çalışan bir çözümün biliyor mu ?
Teşekkür

+0

WebView'da' _self' açmak için buraya benim 2015 cevap kontrol edin ve tarayıcı: http://stackoverflow.com/questions/32208609/cordova-why-would-inappbrowser-plugin-be-required-to-open-links-in-system-brows/32227524 –

cevap

19

NOT: Şimdi bir cihaz düzeyinde eklentisi, inAppBrowser gerekir çalışmak window.open('somelink', '_system') yapmak. İşte yükleme talimatları 3.0 Dokümanlar'ından itibaren

Cordova 3.0 itibariyle şunlardır:

sürüm 3.0 itibariyle Cordova eklentileri cihaz düzeyinde API'leri uygular.

$ cordova plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-inappbrowser.git 
$ cordova plugin rm org.apache.cordova.core.inappbrowser 

Bu komutlar hedeflenen tüm platformlar için geçerli, ancak aşağıda açıklanan platforma özel yapılandırma ayarlarını değiştirin: bir proje için bu özelliği eklemek veya kaldırmak için, komut satırı arabirimi açıklanan Cli en eklentisi komutunu kullanın:

iOS

<feature name="InAppBrowser"> 
    <param name="ios-package" value="CDVInAppBrowser" /> 
</feature> 

(config.xml) Ben sadece bu test edilmiş ve çalışır.

+8

InAppBrowser eklentisi göründüğünü belirterek değer "_system" bağlantılarının da ele alınmasını sağlar ([http://cordova.apache.org/docs/en/3.1.0/cordova_inappbrow] http://cordova.apache.org/docs/en/3.1.0/cordova_inappbrowser_inappbrowser.md.html#window.open) –

+0

Bu doğrudur. Bundan bahsetmeyi unuttum. – dannytenaglias

+0

@dannytenaglias devam edin ve cevabınıza koyun. Gibi bir şey: NOT: yapmak için window.open ('somelink', '_system') 'yapmak için şimdi bir cihaz düzeyinde eklenti, inAppBrowser gerekir. Cordova 3.0'dan itibaren yükleme talimatları: –

4

InAppBrowser eklentisini yüklemek:

$ cordova plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-inappbrowser.git 
$ cordova plugin rm org.apache.cordova.core.inappbrowser 

ve .js dosyasında eklentisi yürütün: Harici içinde `_blank`

//exec(successCallback, errorCallback, pluginName, pluginMethod, params) 
cordova.exec(null, null, "InAppBrowser", "open", [url, "_system"]); 
İlgili konular