Для android я бы использовал String android.net.Uri.encode (String s)
Кодирует символы в данной строке как «%» - экранированные октеты, используя схему UTF-8 , Листовые буквы («A-Z», «a-z»), номера («0-9») и незарезервированные символы («_- !. ~ '() *») нетронуты. Кодирует все остальные символы.
blockquote>Ex /
String urlEncoded = "http://stackoverflow.com/search?q=" + Uri.encode(query);