프로그래밍 언어/Android

내 Android 애플리케이션에서 직접 Google Play 스토어를 여는 방법

Rateye 2021. 7. 20. 10:50
728x90
반응형
질문 : 내 Android 애플리케이션에서 직접 Google Play 스토어를 여는 방법은 무엇입니까?

다음 코드를 사용하여 Google Play 스토어를 열었습니다.

Intent i = new Intent(android.content.Intent.ACTION_VIEW);
i.setData(Uri.parse("https://play.google.com/store/apps/details?id=my packagename "));
startActivity(i);.

그러나 옵션 (브라우저 / 플레이 스토어)을 선택하는 것과 관련하여 Complete Action View가 표시됩니다. Play 스토어에서 직접 애플리케이션을 열어야합니다.

답변

market:// 접두사를 사용하여이를 수행 할 수 있습니다.

final String appPackageName = getPackageName(); // getPackageName() from Context or Activity object
try {
    startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + appPackageName)));
} catch (android.content.ActivityNotFoundException anfe) {
    startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("https://play.google.com/store/apps/details?id=" + appPackageName)));
}
try {
    startActivity(Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=$packageName")))
} catch (e: ActivityNotFoundException) {
    startActivity(Intent(Intent.ACTION_VIEW, Uri.parse("https://play.google.com/store/apps/details?id=$packageName")))
}

Play 스토어가 대상 장치에 설치되지 않은 경우 Exception 가 발생하기 때문에 여기서 try/catch 블록을 사용합니다.

참고 : Google Play를 구체적으로 타겟팅하려는 경우 market://details?id=<appId> Uri를 처리 할 수있는 것으로 등록 할 수 있습니다 . Berťák 답변을 확인하세요.

출처 : https://stackoverflow.com/questions/11753000/how-to-open-the-google-play-store-directly-from-my-android-application
728x90
반응형