> 백엔드 개발 > PHP 튜토리얼 > 안드로이드는 PHP 웹 페이지 콘텐츠를 가져옵니다

안드로이드는 PHP 웹 페이지 콘텐츠를 가져옵니다

WBOY
풀어 주다: 2016-07-29 09:14:54
원래의
920명이 탐색했습니다.

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());
 
}
 
}
});
 
 
 
}
}
로그인 후 복사

코드 2:
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();
로그인 후 복사

코드 3
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 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿