[英]google url shortening not working
嗨,我正在制作一個用戶可以向其他用戶發送卡片的應用程序,但是當我單擊“發送”時,我試圖使用URL縮短來發送鏈接,但是我的URL縮短根本不起作用,它總是顯示錯誤消息,URL縮短失敗,我在SO上做了一些研究,但是沒有找到合適的解決方案,我知道有些地方不正確,但是下面的部分是我不知道的,這是我縮短網址的代碼
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();
}
}
這是Long 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;
}
}
Google URL Shortener被拒絕。
從2018年3月30日開始,我們將拒絕對goo.gl URL Shorter的支持。 從2018年4月13日開始,只有現有用戶才能在goo.gl控制台上創建短鏈接。 您將可以查看您的分析數據並以csv格式下載您的短鏈接信息長達一年,直到2019年3月30日,我們將終止goo.gl。 先前創建的鏈接將繼續重定向到其預期的目的地。
如果這是一個新項目,則無法使用API創建“縮短URL”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.