我正在尝试使用以下代码“打开”网页:
public HttpResponse hitUrl(String url) {
try {
HttpClient httpclient = new DefaultHttpClient();
HttpResponse response = httpclient.execute(new HttpGet(url));
return response;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
并调用该方法
hitUrl("http://www.test.com/Example.php");
我的 PHP 代码是:
<?php
$userdatei = fopen ("example.txt","r");
$zeile = fgets($userdatei, 500);
$zeile++;
fclose($userdatei);
$schreiben = fopen ("example.txt","w");
fwrite($schreiben, $zeile);
fclose($schreiben);
echo $zeile;
?>
但是 PHP 不算数。如果我用浏览器打开 PHP,它确实很重要!但是没有这段代码。它出什么问题了?是的,我们在清单中使用了互联网许可
编辑:这里是完整的代码:
package com.example.phpcheck;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button b1=(Button)findViewById(R.id.button1);
b1.setOnClickListener(new View.OnClickListener() { //Neu Button
public void onClick(View view) {
hitUrl("http://www.test.com/Example.php");
}
});
}
public HttpResponse hitUrl(String url) {
try {
HttpClient httpclient = new DefaultHttpClient();
HttpResponse response = httpclient.execute(new HttpGet(url));
return response;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
这里是完整的logcat:
03-12 17:52:11.942: W/ActivityThread(21149): 应用程序 com.example.phpcheck 正在等待端口 8100 上的调试器... 03-12 17:52:52.926: W/System.err(21149) : android.os.NetworkOnMainThreadException 03-12 17:52:52.950: W/System.err(21149): 在 android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1117) 03-12 17:52:52.950: W/System.err(21149): 在 java.net.InetAddress.lookupHostByName(InetAddress.java:385) 03-12 17:52:52.950: W/System.err(21149): 在 java.net.InetAddress.getAllByNameImpl (InetAddress.java:236) 03-12 17:52:52.950: W/System.err(21149): 在 java.net.InetAddress.getAllByName(InetAddress.java:214) 03-12 17:52:52.950: W /System.err(21149): 在 org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:137) 03-12 17:52:52.958:W/System.err(21149): 在 org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164) 03-12 17:52:52.958: W/System.err(21149): 在 org .apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119) 03-12 17:52:52.958:W/System.err(21149):在 org.apache.http.impl.client.DefaultRequestDirector。执行(DefaultRequestDirector.java:360)03-12 17:52:52.958:W/System.err(21149):在 org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)03-12 17:52:52.958: W/System.err(21149): 在 org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487) 03-12 17:52:52.965: W/System.err (21149): 在 org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465) 03-12 17:52:52.965: W/System.err(21149): 在 com.example.phpcheck。MainActivity.hitUrl(MainActivity.java:35) 03-12 17:52:52.965: W/System.err(21149): 在 com.example.phpcheck.MainActivity$1.onClick(MainActivity.java:27) 03-12 17 :52:52.965:W / System.err(21149):在android.view.View.performClick(View.java:4204)03-12 17:52:52.965:W / System.err(21149):在android。 view.View$PerformClick.run(View.java:17355) 03-12 17:52:52.965: W/System.err(21149): 在 android.os.Handler.handleCallback(Handler.java:725) 03-12 17:52:52.965: W/System.err(21149): 在 android.os.Handler.dispatchMessage(Handler.java:92) 03-12 17:52:52.973: W/System.err(21149): 在 android .os.Looper.loop(Looper.java:137) 03-12 17:52:52.973: W/System.err(21149): 在 android.app.ActivityThread.main(ActivityThread.java:5226) 03-12 17 :52:52.973:W / System.err(21149):在java.lang.reflect.Method。invokeNative(本机方法)03-12 17:52:52.973:W/System.err(21149):在 java.lang.reflect.Method.invoke(Method.java:511)03-12 17:52:52.973:W /System.err(21149): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:795) 03-12 17:52:52.973: W/System.err(21149): 在 com. android.internal.os.ZygoteInit.main(ZygoteInit.java:562) 03-12 17:52:52.981: W/System.err(21149): at dalvik.system.NativeStart.main(Native Method) 03-12 17 :54:18.692: W/System.err(21931): android.os.NetworkOnMainThreadException 03-12 17:54:18.692: W/System.err(21931): 在 android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode. java:1117) 03-12 17:54:18.692: W/System.err(21931): 在 java.net.InetAddress.lookupHostByName(InetAddress.java:385) 03-12 17:54:18.692: W/System。错误(21931):在 java.net.InetAddress。getAllByNameImpl(InetAddress.java:236) 03-12 17:54:18.692: W/System.err(21931): 在 java.net.InetAddress.getAllByName(InetAddress.java:214) 03-12 17:54:18.692: W/System.err(21931): 在 org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:137) 03-12 17:54:18.700: W/System.err(21931): 在 org .apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164) 03-12 17:54:18.700: W/System.err(21931): at org.apache.http.impl.conn.AbstractPooledConnAdapter。打开(AbstractPooledConnAdapter.java:119)03-12 17:54:18.700:W/System.err(21931):在 org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360)03-12 17:54:18.700: W/System.err(21931): 在 org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555) 03-12 17:54:18.700: W/System.err(21931): 在 org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487) 03-12 17:54:18.700: W/System.err(21931): 在 org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465) 03-12 17:54:18.700: W/System.err(21931): 在 com .example.phpcheck.MainActivity.hitUrl(MainActivity.java:35) 03-12 17:54:18.700: W/System.err(21931): at com.example.phpcheck.MainActivity$1.onClick(MainActivity.java:27 ) 03-12 17:54:18.700: W/System.err(21931): 在 android.view.View.performClick(View.java:4204) 03-12 17:54:18.700: W/System.err(21931 ): 在 android.view.View$PerformClick.run(View.java:17355) 03-12 17:54:18.700: W/System.err(21931): 在 android.os.Handler.handleCallback(Handler.java: 725) 03-12 17:54:18.700: W/System.err(21931): 在安卓。os.Handler.dispatchMessage(Handler.java:92) 03-12 17:54:18.700: W/System.err(21931): 在 android.os.Looper.loop(Looper.java:137) 03-12 17: 54:18.700: W/System.err(21931): 在 android.app.ActivityThread.main(ActivityThread.java:5226) 03-12 17:54:18.700: W/System.err(21931): 在 java.lang .reflect.Method.invokeNative(Native Method) 03-12 17:54:18.700: W/System.err(21931): at java.lang.reflect.Method.invoke(Method.java:511) 03-12 17: 54:18.700: W/System.err(21931): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:795) 03-12 17:54:18.700: W/System.err(21931 ): 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:562) 03-12 17:54:18.700: W/System.err(21931): 在 dalvik.system.NativeStart.main(Native Method )错误(21931):在 android.os.Looper.loop(Looper.java:137)03-12 17:54:18.700:W/System.err(21931):在 android.app.ActivityThread.main(ActivityThread.java :5226) 03-12 17:54:18.700: W/System.err(21931): 在 java.lang.reflect.Method.invokeNative(Native Method) 03-12 17:54:18.700: W/System.err( 21931): 在 java.lang.reflect.Method.invoke(Method.java:511) 03-12 17:54:18.700: W/System.err(21931): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller .run(ZygoteInit.java:795) 03-12 17:54:18.700: W/System.err(21931): 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:562) 03-12 17 :54:18.700:W / System.err(21931):在dalvik.system.NativeStart.main(本机方法)错误(21931):在 android.os.Looper.loop(Looper.java:137)03-12 17:54:18.700:W/System.err(21931):在 android.app.ActivityThread.main(ActivityThread.java :5226) 03-12 17:54:18.700: W/System.err(21931): 在 java.lang.reflect.Method.invokeNative(Native Method) 03-12 17:54:18.700: W/System.err( 21931): 在 java.lang.reflect.Method.invoke(Method.java:511) 03-12 17:54:18.700: W/System.err(21931): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller .run(ZygoteInit.java:795) 03-12 17:54:18.700: W/System.err(21931): 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:562) 03-12 17 :54:18.700:W / System.err(21931):在dalvik.system.NativeStart.main(本机方法)java:5226) 03-12 17:54:18.700: W/System.err(21931): 在 java.lang.reflect.Method.invokeNative(Native Method) 03-12 17:54:18.700: W/System.err (21931): 在 java.lang.reflect.Method.invoke(Method.java:511) 03-12 17:54:18.700: W/System.err(21931): 在 com.android.internal.os.ZygoteInit$ MethodAndArgsCaller.run(ZygoteInit.java:795) 03-12 17:54:18.700: W/System.err(21931): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:562) 03-12 17:54:18.700:W/System.err(21931):在 dalvik.system.NativeStart.main(本机方法)java:5226) 03-12 17:54:18.700: W/System.err(21931): 在 java.lang.reflect.Method.invokeNative(Native Method) 03-12 17:54:18.700: W/System.err (21931): 在 java.lang.reflect.Method.invoke(Method.java:511) 03-12 17:54:18.700: W/System.err(21931): 在 com.android.internal.os.ZygoteInit$ MethodAndArgsCaller.run(ZygoteInit.java:795) 03-12 17:54:18.700: W/System.err(21931): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:562) 03-12 17:54:18.700:W/System.err(21931):在 dalvik.system.NativeStart.main(本机方法)ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:795) 03-12 17:54:18.700: W/System.err(21931): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:562) 03 -12 17:54:18.700:W/System.err(21931):在 dalvik.system.NativeStart.main(本机方法)ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:795) 03-12 17:54:18.700: W/System.err(21931): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:562) 03 -12 17:54:18.700:W/System.err(21931):在 dalvik.system.NativeStart.main(本机方法)