Liên kết đến ứng dụng sẽ không mở trong Google Play


14

Tôi đang sử dụng định dạng URI http://play.google.com/store/apps/details?id=<package_name>được mô tả trong Liên kết với ứng dụng của bạn trên Google Play để mở ứng dụng trong Android Market hoặc Google Play để cài đặt nó. Nhưng nó chỉ mở nó trong trình duyệt như nó sẽ làm trên máy tính để bàn. Và khi Installđược nhấp, nó yêu cầu người dùng đăng nhập để cài đặt.

Làm cách nào tôi có thể liên kết ứng dụng trong Google Play để người dùng có thể cài đặt ứng dụng?


Điều này thật kỳ lạ, vì trên thiết bị của tôi, trình duyệt thẳng lên từ chối mở các liên kết Market và mở ứng dụng Market. Tôi sẽ đến Settings -> Applications -> Manage applicationsvà xóa các mặc định cho trình duyệt để đảm bảo rằng điều đó không gây ra sự cố. Nếu điều đó không hoạt động: Bạn có thiết bị gì? Bạn đã thử gõ URL trực tiếp vào trình duyệt và xem điều gì xảy ra chưa? Chính xác thì liên kết này xuất hiện ở đâu? (Trên một trang web hoặc trong một ứng dụng khác?)
Matthew Đọc

@MatthewRead Tôi đã thử sử dụng liên kết từ tin nhắn, mã QR, email, ... Và điều tương tự. Ngoài ra, tôi đã thử trên các thiết bị Android khác nhau, không chỉ một và cùng một vấn đề.
slybloty

Hãy thử thay thế http bằng https. Nó có thể trông ngớ ngẩn, nhưng hãy thử nó.
Android Quesito

@SachinShekhar Tôi đã sử dụng cả httphttps. Thậm chí market. Và kết quả tương tự.
slybloty

Trình duyệt web của bạn là gì? Trình duyệt Android mặc định và Dolphin HD tự động chuyển hướng đến ứng dụng Play Store (hoặc, ít nhất là hỏi) ...
Android Quesito

Câu trả lời:


10

Hãy thử trực tiếp điều này nếu liên kết có nguồn gốc từ một ứng dụng cho Android để xử lý:

market://details?id=<package_name>

Lưu ý: Không có tên miền và máy chủ lưu trữ.


Thật thú vị khi cách này hoạt động. Nó hướng đến thị trường đúng cách. Cảm ơn.
slybloty

3
Điều này sẽ chỉ hoạt động trên thiết bị Android. Thử điều này trong một trình duyệt máy tính để bàn sẽ không hoạt động.
ale

@AlEverett Trừ khi có trình xử lý giao thức thị trường trong trình duyệt máy tính để bàn để chèn tên miền và máy chủ lưu trữ. :)
Android Quesito

Trên thực tế, nó không hoạt động ngay cả trong các trình duyệt web Android. Nó dự định sử dụng trong phát triển ứng dụng.
Android Quesito

Sau đó, nếu đây là một câu hỏi phát triển ứng dụng, nó ở sai vị trí.
ale

6

Tôi đang sử dụng mã dưới đây và nó hoạt động tốt với điện thoại và trình giả lập của tôi.

Đối với điện thoại có ứng dụng Google Play, nó sẽ tự động mở ứng dụng. Đối với trình giả lập (không có ứng dụng Google Play), nó sẽ tự động mở trình duyệt.

try { 
  Intent intent = new Intent(Intent.ACTION_VIEW);
  intent.setData(Uri.parse("market://details?id=com.example"));
  startActivity(intent);
} catch (Exception e) { //google play app is not installed
  Intent intent = new Intent(Intent.ACTION_VIEW);
  intent.setData(Uri.parse("https://play.google.com/store/apps/details?id=com.example"));
  startActivity(intent);
}

1
+1 để thử / bắt. Trên thực tế, đôi khi nếu không có ứng dụng Google Play được cài đặt trên thiết bị, chúng tôi sẽ gặp sự cố khi thử mở một ứng dụng có URL bắt đầu bằng "market: // chi tiết? Id ="
anticafe

1

Trước hết, người dùng thực sự có thể cài đặt ứng dụng từ thị trường. Anh ta không thể làm điều đó trực tiếp mà chỉ khiến Google cài đặt ứng dụng từ xa thông qua trang web, như anh ta sẽ làm nếu anh ta duyệt thị trường trên PC của mình.

Thứ hai, bạn đang thử nghiệm trình duyệt này với cái gì? Opera không được tích hợp tốt vào Android và sẽ không mở URL phát trong ứng dụng. Trong thực tế, tôi không chắc chắn ngay cả trình duyệt gốc sẽ.

Có lẽ bạn chỉ nên sử dụng market://liên kết thay vì http://liên kết.


Đây là trình duyệt Android mà nó mở bằng thay vì ứng dụng. Liên kết được truy cập từ thiết bị. Tôi muốn người dùng có thể cài đặt ứng dụng bằng cách nhấp vào liên kết và được chuyển hướng đến Market hoặc Google Play.
slybloty


0

Tôi tìm thấy giải pháp đơn giản và dễ dàng.

  1. làm một trang html bất cứ nơi nào. <meta http-equiv="REFRESH" content="0; URL=market://details?id=package_name" />
  2. Mở trình duyệt và gõ URL html này
  3. bạn sẽ thấy ứng dụng của mình trong ứng dụng thị trường chơi

0

Để có một giải pháp hoạt động theo cách tốt nhất có thể cho máy tính để bàn / Android / di động không phải Android:

HTML:

<a id="play-store-link" href="http://play.google.com/store/apps/details?id=$PACKAGE_NAME">

JS:

if (navigator.userAgent.match(/android/i)) {
    document.getElementById('play-store-link').href = 'market://details?id=$PACKAGE_NAME';
}

nhưng điều này không hoạt động với trình duyệt Opera
KiKMak
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.