在我的Android应用中,我需要使用以下格式从某些API端点获取确切的值:
{
WebElement element = driver.find_element_by_link_text("Cancel")
actions builder = ActionChains(driver)
builder.move_to_element(element)
element.perform
}
获取“谢谢!您的文件已成功提交!”的最佳方法是什么?使用https://demo.com/api/v1/?msg=Thank+you!+Your+files+were+submitted+successfully!&status=Successful
进行显示?
要添加的特殊说明:
有一种获取查询的方法是Kotlin
。但是它带有一个错误,即无法将值中的android.net.URI.getQueryParameter()
或特殊字符解析为空格字符。
Android 6.0版本删除了对Apache HTTP客户端的支持,这就是+
也不起作用的原因。
答案 0 :(得分:0)
使用android.net.UrlQuerySanitizer
来解析上述形式的API端点中的各个值,如下所示:
import android.net.UrlQuerySanitizer
//..
val sanitizer = UrlQuerySanitizer()
sanitizer.setAllowUnregisteredParamaters(true)
sanitizer.parseUrl(url)
var msg : String? = sanitizer.getValue("msg")
//For removing the "+" signs or any other unwanted signs to get a displayable message like the question:
msg?.let {
if (it.contains("+")) {
msg = it.replace("+", " ")
}
}