Google URL сокращения не работает

Привет, я создаю приложение, в котором пользователь может отправлять карточки другому пользователю, но когда я нажимаю кнопку Отправить, я пытаюсь использовать сокращение URL-адреса для отправки ссылки, но мое сокращение URL-адреса не работает вообще, оно всегда показывает сообщение об ошибке, что сокращение URL-адреса не удалось. Я Я провел некоторое исследование SO, но не нашел правильного решения. Я знаю, что что-то не так, но не знаю, какая часть ниже, это мой код для сокращения URL.

 public void getShortenedUrl(String url, final int sendType){
            try {
                if (NetworkInfo.isNetworkAvailable(getActivity())) {
                    final boolean isMyCard=getArguments().getBoolean("isMyCard");
                    final String sharedTo=ceShareVia.getText().toString();
                    final String[] addresses = sharedTo.split(",");
                    LongUrl data = new LongUrl(url);
                    Call<LongUrl> cardResponseCall = ApiClientMain.getApiClient("https://www.googleapis.com/urlshortener/v1/")
                            .getShortenedUrl("application/json",ApplicationData.GOOGLE_URL_SHORTENER_KEY, data);
                    pbShare.setVisibility(View.VISIBLE);
                    cardResponseCall.enqueue(new retrofit2.Callback<LongUrl>() {
                        @Override
                        public void onResponse(Call<LongUrl> call, Response<LongUrl> response) {
                            pbShare.setVisibility(View.GONE);
                            if (response != null && response.body() != null) {
                                String url = response.body().getId();
                                String message;
                                if(isMyCard) {
                                     message = "Hello," + "\n"
                                            + "Thanks for connecting!\n\n" + introMessage + "\n\n" + url + "\n\nRegards,\n"
                                            + preferenceManager.getPreferenceValues(PreferenceConstant.PERSON_NAME)
                                            + "\n" + "Have a nice day!";
                                }else {
                                    message = "Hello," + "\n"
                                            + "Thanks for connecting!\n\n" + introMessageOther + "\n\n" + url + "\n\nRegards,\n"
                                            + preferenceManager.getPreferenceValues(PreferenceConstant.PERSON_NAME)
                                            + "\n" + "Have a nice day!";
                                }


                                switch (sendType){
                                    case 0:
                                        sendEmail(addresses,"My Business Card",message);
                                        break;
                                    case 1:
                                        sendSms(sharedTo,message);
                                        break;
                                    case 2:
                                        shareTextUrl(message);
                                        break;
                                }
                            }
                            else {
                                Toast.makeText(getActivity(),"Url shortening failed",Toast.LENGTH_SHORT).show();
                            }
                        }

                        @Override
                        public void onFailure(Call<LongUrl> call, Throwable t) {
                            pbShare.setVisibility(View.GONE);

                            Toast.makeText(getActivity(),"Url shortening failed",Toast.LENGTH_SHORT).show();
                        }
                    });
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
        }

а вот модель класса для длинных URL

public class LongUrl {
    @SerializedName("longUrl")
    @Expose
    private String longUrl;
    @SerializedName("id")
    @Expose
    private String id;
    @SerializedName("kind")
    @Expose
    private String kind;

    public String getLongUrl() {
        return longUrl;
    }

    public void setLongUrl(String longUrl) {
        this.longUrl = longUrl;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getKind() {
        return kind;
    }

    public void setKind(String kind) {
        this.kind = kind;
    }

    public LongUrl(){

    }

    public LongUrl(String longUrl){
        this.longUrl = longUrl;
    }
}

1 ответ

Google URL Shortener выключен.

ОФИЦИАЛЬНЫЙ РЕЛИЗ

Начиная с 30 марта 2018 года, мы будем отказываться от поддержки сокращателя URL goo.gl. С 13 апреля 2018 года только существующие пользователи смогут создавать короткие ссылки на консоли goo.gl. Вы сможете просматривать свои аналитические данные и загружать информацию о коротких ссылках в формате csv на срок до одного года до 30 марта 2019 года, когда мы прекратим goo.gl. Ранее созданные ссылки будут продолжать перенаправлять по назначению.

Прочитайте этот блог для более подробной информации.

Если это новый проект, вы не можете создать сокращенный URL с помощью API

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