-3
有没有一种方法可以将值从Android加载到网页上的文本字段,而无需加载/显示WebView?例如,我有两个字符串,并希望在网页上填充两个字段,有没有办法在“后台”中执行此操作,换句话说,无需打开用户可以看到的窗口? 感谢从android显示WebView的网站上的文本字段没有显示WebView
更新
发现探戈
的帮助这是我OkHttpHandler类的解决方案:
public class OkHttpHandler extends AsyncTask<String, Void, String> {
OkHttpClient client = new OkHttpClient();
String cardNumber, privNumber;
public OkHttpHandler(String cardNumber, String privNumber) {
this.cardNumber = cardNumber;
this.privNumber = privNumber;
}
@Override
protected String doInBackground(String... strings) {
RequestBody formBody = new FormBody.Builder()
//Change .add first parameter to the text field you want to populate
.add("CardNbr", cardNumber)
.add("CardPin", privNumber).build();
Request request = new Request.Builder().url(strings[0])
.post(formBody).build();
try {
Response response = client.newCall(request).execute();
if (!response.isSuccessful())
throw new IOException("Unexpected code "+ request.toString());
return response.body().string();
} catch (Exception e) {
}
return null;
}
}
我MainActivity类别的一个片段,我打印响应到日志
OkHttpHandler handler = new OkHttpHandler(items.get(0).getNumber(), items.get(0).getPrivNumber());
String result = "";
try {
result = handler.execute("urlHere.com").get();
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
}
Log.d("returned value", result);
欢迎。请访问帮助中心,了解如何提出一个好问题。 http://stackoverflow.com/help/how-to-ask – polka