본문 바로가기
네이티브/Android

Android Uri.getQueryParameter에 + 들어가면 빈칸으로 바뀝니다.

by 우보틀 2022. 1. 12.

최근에 다이나믹링크를 구현하던중 정보를 링크에 query로 담았을때 +가 빈칸으로 변경되는 이슈가 있었습니다.

같은 다이나믹 링크를 공유했을때 ios에서는 이슈가 없어서 안드로이드 쪽의 이슈로 생각하고 접근하였습니다.

 

첫번째 사진은 예시를 나타낸 것이고 

두번째 사진은 getQueryParameter로 가져왔을때 +가 빈칸으로 변경되어 나타나는 모습입니다.

 

getQueryParameter가 의심이 됩니다.

한번 코드를 살펴봅시다

return 값이 뭔가 수상하네요. convertPlus 파라미터도 있고 한번 더 들어가 봅시다

appendDecoded가 builder의 값을 변경해주는것 같습니다.  appendDecoded를 찾아가 봅시다

 

범인을 찾았습니다!!! 

이전에 convertPlus 옵션이 true로 되어있었는데 여기서 '+' 대신 ' '를  append 하고 있었네요

 

getQueryParameter에 옵션을 주지 못하게 되어있으면서 왜 +가 무조건 ' '가 되어 반환하는지는 잘 모르겠네요 ㅜㅜㅜ 정책상의 이슈이려나.... 알고 계신분은 말씀해주세요!! 

 

결국 getQueryParameters 메소드를 사용하여 해당 이슈는 해결하였습니다!