2011-12-26 6 views
2

現在、私は基本的にWebページを読み込むWebビューであるAndroidアプリを持っています。私はこのような市場へのリンクをしようと試みてきたWebページ...Androidアプリにリンクする方法Android Webviewから

https://market.android.com/details?id=com.google.earth 

http://market.android.com/details?id=com.google.earth 

market://details?id=com.google.earth 

に最初の結果だけで(それが読み込まれている可能性があり、それが彼らの分オーバーのためになっている)白い画面を開きます。

2番目の結果は、ページが移動されたことを示しています。リンクをクリックすると、最初のリンクが実行されます。

3番目の結果は、ページが一時的にダウンしている可能性があることを示しています。 jQueryのモバイルと、私は」使用して、私はロードだ

echo "<a href='https://market.android.com/details?id=com.google.earth' data-role='button'>Upgrade Now</a>"; 

がWebページを忘れないでください...

ここ

は、リンクがどのように見えるかです(むしろ携帯電話自体よりも、オンラインのようなリンクを処理しています) phpでリンクをエコーし​​ます。

ウェブマーケットのウェブビューでAndroidマーケットへのリンクを開くにはどうすればよいですか?

+0

http://stackoverflow.com/questions/3239478/how-to-link-to-android- HELPS market-app – ethrbunny

+0

私のために働いた人はいません... – Joe

+0

jqueryの外でリンクを試してみて、どうなるか見てみましょう。 – ethrbunny

答えて

0

私の場合は、同じ空白/移動された一時的なトラブルが発生していました。私はshouldOverrideUrlLoadingを使用して、ネイティブブラウザが私のページからgoogleに、そして私のページに戻るoauth2フローで使われないようにしたかったのです。私のアンドロイドアプリは自己署名付きの証明書を使ってlocalhost/tomcatと対話していました。私は理由証明書の不一致進める呼び出すために必要な判明:

webView.setWebViewClient(new WebViewClient(){ 
    @Override 
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 
     Log.i("DevAgentSocialMain", "URL: " + url); 
     view.loadUrl(url); 
     return true; 
    } 

    @Override 
    public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) { 
     Log.i("DevAgentSocialMain", "onReceivedError: " + errorCode + " " + description + " url: " + failingUrl); 
     super.onReceivedError(view, errorCode, description, failingUrl); 
    } 

    @Override 
    public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) { 
     Log.i("DevAgentSocialMain", "onReceivedSslError: " + error.getPrimaryError()); 
     //super.onReceivedSslError(view, handler, error); 
     handler.proceed(); 
    } 
}); 
0

これはあなたが

public boolean shouldOverrideUrlLoading(WebView view, String url) 
{ 
    if (url.startsWith("market://")||url.startsWith("vnd:youtube")||url.startsWith("tel:")||url.startsWith("mailto:")||url.startsWith("intent://")) 
    { 
     Intent intent = new Intent(Intent.ACTION_VIEW); 
     intent.setData(Uri.parse(url)); 
     startActivity(intent); 
     return true; 
    } 
    else{ 
     view.loadUrl(url); 
     return true; 
     } 
} 

} 
+2

を試してみてくださいこのコードが質問にどのように答えているか説明してください。 – rfornal

関連する問題