Определите, существует ли приложение в магазине Google Play программно

Есть ли способ проверить, доступно ли приложение в Google Play, если не показывает тост или активность?

2
0
494
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Чтобы проверить, существует ли приложение в игровом магазине, используйте любые сетевые библиотеки, такие как Retrofit, Volley и т. д. Сделайте запрос GET, используя приведенный ниже URL-адрес

https://play.google.com/store/apps/details?id = "application.packagename"

Используйте этот URL-адрес и добавьте к нему имя пакета приложения, которое вы хотите проверить.

В ответе на запрос проверьте код состояния, если он 200, пакет существует, иначе 404 его не будет.

Я имею в виду, какой код я должен написать при нажатии кнопки, чтобы проверить, работает ли приложение?

Cristina99 23.04.2018 11:23

Пожалуйста, проверьте обновленный ответ.

Manoj Perumarath 23.04.2018 11:29
Ответ принят как подходящий

На вашей кнопке нажмите, чтобы выполнить эту задачу (и измените идентификатор приложения на свой, чтобы проверить свой случай)

new AsyncTask<Void, Boolean, Boolean>() {
                    @Override
                    protected Boolean doInBackground(Void... voids) {
                        boolean b = isAppLiveOnPlayStore("com.yourapp.id");
                        return b;
                    }

                    @Override
                    protected void onPostExecute(Boolean aBoolean) {
                        super.onPostExecute(aBoolean);

                        if (aBoolean){
                            Toast.makeText(MainActivity.this, "App is Live", Toast.LENGTH_SHORT).show();
                        }
                        else {
                            Toast.makeText(MainActivity.this, "App is not Live", Toast.LENGTH_SHORT).show();
                        }

                    }
                }.execute();

public  boolean isAppLiveOnPlayStore(String appid) {

        try {
            HttpURLConnection conn = (HttpURLConnection) (new URL("https://play.google.com/store/apps/details?id = "+appid))
                    .openConnection();
            conn.setUseCaches(false);
            conn.connect();
            int status = conn.getResponseCode();
            conn.disconnect();
            return status==200;
        } catch (Exception e) {
            Log.e("isAppLiveOnPlayStore", e.toString());
        }
        return false;
    }

Я сделал это, но когда я нажимаю на кнопку, появляется сообщение «К сожалению, остановлено».

Cristina99 23.04.2018 11:46

вы добавили разрешение в манифест? если нет, добавьте: <uses-permission android: name = "android.permission.INTERNET" />

Deven 23.04.2018 11:49
Спасибо теперь работает Отлично.
Cristina99 23.04.2018 12:04

Другие вопросы по теме