<a target="_blank" data-rel="external" href="http://www.kidzout.com">www.kidzout.com</a>
Ei especialistas, estou usando o phonegap 2.9.0 e estou usando o código acima para abrir o link no navegador, mas ele abre no mesmo aplicativo ...... como abri-lo no navegador safari?
ele abre o site no mesmo aplicativo e, em seguida, não consigo voltar ao aplicativo, então preciso excluir o aplicativo e instalá-lo novamente ...
_blank
para navegador externo e_self
WebView, verifique minha solução 2015 para Cordova 5.1.1: stackoverflow.com/a/32227524/82609Respostas:
Conforme sugerido em uma pergunta semelhante , use JavaScript para chamar
window.open
com otarget
argumento definido_system
como, de acordo com a documentação do InAppBrowser :Isso deve funcionar, embora uma solução melhor e mais flexível seja interceptar os
click
eventos de todos os links e chamarwindow.open
com argumentos lidos dos atributos do link.Lembre-se de que você deve instalar o plug-in InAppBrowser para que isso funcione:
fonte
Conforme respondido em outras postagens, você tem duas opções diferentes para plataformas diferentes. O que eu faço é:
Como você pode ver, estou verificando a plataforma do dispositivo e, dependendo disso, estou usando um método diferente. No caso de um navegador padrão, deixo o comportamento padrão. A partir de agora a solução funcionará bem no Android, iOS e em um navegador, enquanto a página HTML não será alterada, para que possa ter URLs representados como âncora padrão
A solução requer os plug-ins InAppBrowser e Device
fonte
$ meteor add cordova:[email protected]
Funciona para mim com Android e PG 3.0
fonte
Existem 2 maneiras diferentes de abrir URL no Android e no iphone.
PARA IOS use o seguinte código.
e para o sistema operacional Android, use o seguinte código.
fonte
window.open("http://google.com", '_system')
. Não deve usarnavigator.app.loadUrl
, porque não funcionará commarket://
URLs: nesse caso, apenas fechará seu aplicativo e abrirá na mesma janela .. nem sempre preferível.Enfim este post me ajuda no iOS: http://www.excellentwebworld.com/phonegap-open-a-link-in-safari-or-external-browser/ .
Durante o uso
navigator.app.loadUrl("http://google.com", {openExternal : true});
para Android está OK.Via Cordova 3.3.0.
fonte
Nenhuma dessas respostas é explícita o suficiente para que links externos sejam abertos em cada plataforma. De acordo com os documentos do inAppBrowser :
Instalar
Overwrite window.open (opcional, mas recomendado para simplificar)
Se você não substituir
window.open
, estará usando awindow.open
função nativa e não pode esperar obter os mesmos resultados em várias plataformas.Use-o para abrir links no navegador padrão
Observe que o destino para o inAppBrowser (que é o que o nome do plug-in sugere que deve ser usado) é
'_blank'
, em vez de'_system'
.Sem as etapas acima, não consegui obter links para abrir no aplicativo de navegador padrão de plataforma cruzada.
Crédito extra
Aqui está um exemplo de manipulador de cliques (ao vivo) para os links:
fonte
Se acontecer de você ter o jQuery por perto, você pode interceptar o clique no link desta forma:
Desta forma, você não precisa modificar os links no html, o que pode economizar muito tempo. Eu configurei isso usando um delegado, é por isso que você o vê sendo vinculado ao objeto de documento, com a tag 'a' como o segundo argumento. Desta forma, todas as tags 'a' serão tratadas, independentemente de quando forem adicionadas.
Claro, você ainda precisa instalar o plug-in InAppBrowser:
fonte
Funcionará, mas apenas se você tiver o plugin inappbrowser instalado. Para instalar, usando o terminal, navegue até a pasta www em seu projeto e digite:
ou
Em seguida, seu link será aberto no navegador.
fonte
phonegap local <command>
foi DESCONTINUADO. O comando foi delegado aphonegap <command>
. O comandophonegap local <command>
será removido em breve.cordova plugin add cordova-plugin-inappbrowser
.Com Cordova 5.0 e superior, o plugin InAppBrowser é renomeado no registro do plugin Cordova, então você deve instalá-lo usando
Então use
fonte
Estou usando o PhoneGap Build (v3.4.0), com foco no iOS, e precisava ter essa entrada em meu config.xml para PhoneGap reconhecer o plug-in InAppBrowser.
Depois disso, o uso de window.open (url, target) deve funcionar como esperado, conforme documentado aqui .
fonte
m also using PhoneGap Build (v3.5.x) and added the plugin via the config.xml. But what i get is an InAppBrowser without controls an cannot call the safari browser. I
apenas usando o window.open (). Algum conselho?Também enfrentei o problema de que o link não estava abrindo no navegador. Aqui está minha solução com as etapas:
1: Instale este plugin Cordova.
2: adicione o link aberto no html como segue.
3: este é o passo mais importante devido a isso eu enfrentei muitos problemas: baixe o
cordova.js
arquivo e cole nawww
pasta. Em seguida, faça uma referência disso noindex.html
arquivo.Esta solução funcionará tanto para o ambiente android quanto para o iPhone.
fonte
Como isso :
fonte