http://blog.csdn.net/kaiqiangzhang001/article/details/8350938
http://www.kuqin.com/shuoit/20140108/337497.html
http://blog.csdn.net/lzz360/article/details/16887237
http://blog.sina.com.cn/s/blog_5a48dd2d0100tw0u.html
http://bbs.51cto.com/thread-954839-1.html
1. AndroidManifest.xml권한 추가:
<사용-권한 android:name="android.permission.INTERNET" /><사용-권한 android:name="android.허가.ACCESS_NETWORK_STATE" />
Android 3.0 이상에서는 네트워크, 다운로드 등 시간이 많이 걸리는 작업을 메인 스레드에서 실행할 수 없습니다. UI 스레드에서 httpClient의 직접 작업을 허용하지 않습니다
그래서 방법 1: 액세스하려면 새 스레드를 시작하세요.
방법 2: 새 스레드를 시작하지 않으려면 다음 코드를 추가하여 엄격한 제한을 취소하세요
StrictMode.ThreadPolicypolicy=new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
3. 페이지 콘텐츠 코드:
코드 1:
package List.com.list; import org.apache.http.HttpResponse; import org.apache.http.client.methods.HttpGet; import org.apache.http.impl.client.DefaultHttpClient; import org.apache.http.util.EntityUtils; import org.json.JSONArray; import android.app.<strong>Activity</strong>; import android.os.Bundle; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.ListView; public class List<strong>Activity</strong> extends <strong>Activity</strong> { /** Called when the <strong>Activity</strong> is first created. */ public Button b = null; public String s=null; public ListView listview1=null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); b = (Button) findViewById(R.id.button1); listview1=(ListView) findViewById(R.id.listview1); b.setOnClickListener(new OnClickListener() { public void onClick(View v) { // TODO Auto-generated method stub HttpGet httpget = new HttpGet("http://192.168.0.110:80/json/index.php"); HttpResponse httpresponse; try { //执行gethttp提交 httpresponse = new DefaultHttpClient().execute(httpget); if(httpresponse.getStatusLine().getStatusCode()==200){ //如果成功吧返回的数据转换成string类型 String s=EntityUtils.toString(httpresponse.getEntity()); Log.i("JSON",s); //声明一个json数组 JSONArray js JSONArray(s); //声明一个数据组,长度他json数组的长度一样 String[] data=new String[jsonarray.length()]; //<strong>循环</strong>输出 for(int i=0;i<jsonarray.length();i++){ Log.i("dd",jsonarray.getJSONObject(i).getString("ddd")); Log.i("tt",jsonarray.getJSONObject(i).getString("title")); //把结果存到一个数组里; data[i]=jsonarray.getJSONObject(i).getString("ddd")+jsonarray.getJSONObject(i).getString("title"); } ArrayAdapter<String> arrayadapter=new ArrayAdapter<String>(List<strong>Activity</strong>.this, android.R.layout.simple_expandable_list_item_1,data); //设置listview数据; listview1.setAdapter(arrayadapter); } } catch (<strong>Exception</strong> e) { Log.i("E",e.getMessage().toString()); } } }); } }
new Thread(){ public void run(){ client = new DefaultHttpClient(); StringBuilder builder = new StringBuilder(); HttpGet myget = new HttpGet("http://10.0.2.2/testAndroid.php"); //HttpGet myget = new HttpGet("http://www.crazyit.org"); try { HttpResponse response = client.execute(myget); HttpEntity entity = response.getEntity(); BufferedReader reader = new BufferedReader(new InputStreamReader(entity.getContent())); for (String s = reader.readLine(); s != null; s = reader.readLine()) { builder.append(s); } JSONObject jsonObject = new JSONObject(builder.toString()); String re_password = jsonObject.getString("password"); } catch (<strong>Exception</strong> e) { e.printStackTrace(); } } }.start();
void getInput(){ try { URL url = new URL("http://www.google.cn/"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setDoInput(true); conn.setConnectTimeout(10000); conn.setRequestMethod("GET"); conn.setRequestProperty("accept", "*/*"); String location = conn.getRequestProperty("location"); int resCode = conn.getResponseCode(); conn.connect(); InputStream stream = conn.getInputStream(); byte[] data=new byte[102400]; int length=stream.read(data); String str=new String(data,0,length); conn.disconnect(); System.out.println(str); stream.close(); } catch(<strong>Exception</strong> ee) { System.out.print("ee:"+ee.getMessage()); } }
위 내용은 콘텐츠 측면을 포함하여 Android가 PHP 웹페이지 콘텐츠를 얻는 방법을 소개합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.