在android浏览器中运行Json链接
我需要在浏览器中运行Json链接,但我不想打开浏览器在android浏览器中运行Json链接,android,json,browser,webview,Android,Json,Browser,Webview,我需要在浏览器中运行Json链接,但我不想打开浏览器 webView = (WebView) findViewById(R.id.webView1); webView.getSettings().setJavaScriptEnabled(true); webView.loadUrl("http://www.JsonLink.com"); 此代码在浏览器中打开我。 我需要在后台打开这个。 谢谢。如果您试图从URL加载JSON对象,请尝试以下代码: Connectivity
webView = (WebView) findViewById(R.id.webView1);
webView.getSettings().setJavaScriptEnabled(true);
webView.loadUrl("http://www.JsonLink.com");
此代码在浏览器中打开我。
我需要在后台打开这个。
谢谢。如果您试图从URL加载JSON对象,请尝试以下代码:
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo ni = cm.getActiveNetworkInfo();
if(ni != null && ni.isConnected()){
new Thread(new Runnable(){
@Override
public void run() {
URL url = new URL("http://yourlink.com/");
HttpURLConnection con = (HttpURLConnection) url.openConnection();
con.setReadTimeout(15000);
con.setConnectTimeout(15000);
con.setRequestMethod("GET");
con.setDoInput(true);
con.connect();
int response = con.getResponseCode();
Log.d("Response", Integer.toString(response));
InputStreamReader is = new InputStreamReader(con.getInputStream());
BufferedReader reader = new BufferedReader(is);
StringBuilder builder = new StringBuilder();
for(String line=null; (line=reader.readLine())!=null;){
builder.append(line);
}
con.disconnect();
String jsonString = new String(builder.toString());
try{
JSONObject jsonObj = new JSONObject(jsonString);
}catch(JSONException e){
//TODO: Your error handling
}
}
}).start();
}else{
Log.d("Network", "Not Connected");
}
请注意,这是在一个单独的线程上完成的,因为我们正在执行网络操作。您需要在线程外部定义jsonObj
,或者如果需要进行UI更新,则以不同的方式将其发送到主线程,等等
希望这有帮助