10

Androidデバイスで開いた場合、自分のWebサイトをGooglePlayマーケットの特定のアプリにリダイレクトしたいと思います。http://developer.android.com/guide/publishing/publishing.htmlの指示に従いました:

"Display the details screen for a specific application: http://play.google.com/store/apps/details?id=<package_name>".

ユーザーがアクティブにクリックしているリンクとうまく連携します。

<a href="http://play.google.com/store/apps/details?id=<package_name>">Download app</a>

しかし、JavaScriptでデバイスを検出し、ブラウザをリダイレクトしようとすると、http:// ...がhttps:// ...に自動的に変更され、ユーザーはGooglePlayアプリではなくGooglePlayWebサイトにリダイレクトされます。電話。

if(navigator.userAgent.toLowerCase().indexOf("android") > -1) {
    if(confirm("Download app?")) {
        window.location.href= "http://play.google.com/store/apps/details?id=<package_name>";
    }
}

この動作を変更する方法はありますか?私のテストデバイスはAndroid2.3.3を搭載したSamsungGalaxyですか?

4

3 に答える 3

17

これはうまくいくようです。リダイレクトは、デフォルトのブラウザを使用しているときにGoogle Playアプリを開きますが、Chromeを使用している場合はリンクをhttps://play.google...に変換します

if(navigator.userAgent.toLowerCase().indexOf("android") > -1) {
    if(confirm("Download app?")) {
        window.location.href= "market://details?id=<packagename>";
    }
}
于 2012-04-18T12:02:00.007 に答える
5

Google Playアプリにリダイレクトする場合は、サーバーからリダイレクトしてみてください。

クライアント側の試行は機能しません。

PHPの例

    header("Location: market://details?id=com.your.app");
于 2015-08-18T11:00:17.577 に答える
1

受け入れられた回答が機能しないか、このエラーでChromeで開くことができない場合

エラー:ERR_UNKNOWN_URL_SCHEME

window.location.hrefを次のようにwindow.locationに変更します

if(navigator.userAgent.toLowerCase().indexOf("android") > -1) {
 if(confirm("Download app?")) {
    window.location= "market://details?id=<packagename>";
 }
}
于 2015-05-02T04:59:04.983 に答える