홈>
다음과 같이 URL에 대한 짧은 링크를 만들어야합니다. howdoyoudo.co.il?id=123&evaluator=7
다음 코드를 사용하면 howdoyoudo.co.il?id=123
으로 연결되는 부분 단축키가 있습니다.이howdoyoudo.co.il?id=123%26evaluator=7과 같은 URL을 패스로 설정하려고했습니다. 부분 URL이있는 바로 가기가 계속 표시됩니다.
코드는 다음과 같습니다-
String evaluationLink = "howdoyoudo.co.il?id=123%26evaluator=7";
String longLink = "https://k5xt4.app.goo.gl/?link=" + evaluationLink;
Task<ShortDynamicLink> shortLinkTask = FirebaseDynamicLinks.getInstance().createDynamicLink()
.setLongLink(Uri.parse(longLink))
.buildShortDynamicLink()
.addOnCompleteListener(new OnCompleteListener<ShortDynamicLink>() {
@Override
public void onComplete(@NonNull Task<ShortDynamicLink> task) {
if (task.isSuccessful()) {
Uri shortLink = task.getResult().getShortLink();
Uri flowchartLink = task.getResult().getPreviewLink();
//Partial shortLink :(
} else {
// Error
}
}
});
업데이트 된 코드 :
Short i = 10; //for testing only
String evaluationLink = "http://howdoyoudo.co.il?id=123";
String longLink = "https://k5xt4.app.goo.gl/?link=" + evaluationLink + "&evaluatorID=" + Integer.toString(i);
String encodedLink = null;
try {
encodedLink = URLEncoder.encode(longLink, "UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
Task<ShortDynamicLink> shortLinkTask = FirebaseDynamicLinks.getInstance().createDynamicLink()
.setLongLink(Uri.parse(encodedLink))
.buildShortDynamicLink()
.addOnCompleteListener(new OnCompleteListener<ShortDynamicLink>() {
@Override
public void onComplete(@NonNull Task<ShortDynamicLink> task) {
if (task.isSuccessful()) {
// Short link created
Uri shortLink = task.getResult().getShortLink();
Uri flowchartLink =task.getResult().getPreviewLink();
//
} else {
// Error
// ...
}
}
});
- 답변 # 1
- 답변 # 2
여러 매개 변수가있는 링크를 보내려면 인코딩하는 것이 적절하지만 문제를 일으키는 부분 만이 아니라 전체 링크를 인코딩해야합니다.
또한 링크에는 URL 체계 (이 경우 http 또는 https)가 포함되어야합니다.
String evaluationLink = "http://howdoyoudo.co.il?id=123&evaluator=7"; String encodedLink = URLEncoder.encode(evaluationLink, "UTF-8");
참조 : Firebase를 사용하여 동적 링크에서 추가 매개 변수를 얻는 방법
관련 자료
- google cloud firestore - int 유형은 문자열 유형의 하위 유형이 아닙니다 Flutter Firebase
- Flutter (\ t) 문자열 값 정렬 문제
- sql server - SQL 문제에서 문자열 바꾸기
- Firebase 동적 링크 하위 도메인 구성
- 동적 문자열 변수를 사용하여 Python 함수 호출
- sql server - BCP 용 SQL 쿼리 생성시 문자열 형식화 문제
- ios - screen_view에 문제가있는 최신 Ti SDK 903 GA가 포함 된 Firebase 분석
- android - react-native-firebase를 사용하여 Firebase 동적 링크에서 쿼리 매개 변수를 받으려면 어떻게해야하나요?
- http - REST API로 Firebase 동적 링크를 만드는 방법
- unity3d - unity - dynamiclinkreceived 콜백 이벤트에서 firebase short dynamic link 수신
- android - ListView Firebase 문제의 모든 데이터를 표시합니다
- Firebase 동적 링크를 사용하여 Android에서 짧은 URL 링크를 얻는 방법은 무엇입니까?
해결 :
먼저 다음과 같은 매개 변수로 링크를 인코딩했습니다.
문자열을 이렇게 짧게 설정 한 것보다 -p
마지막으로 다음 코드를 사용하여longLink단축을 요청했습니다-