0

このコードでウェブページを「開こう」としています:

    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): dalvik.system.NativeStart.main(ネイティブ メソッド) 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/システム。 err(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): org.apache.http.impl.conn.AbstractPooledConnAdapter で。 open (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): 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): Android で。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(ネイティブ メソッド) 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(ネイティブ メソッドで)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(ネイティブ メソッド) 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(ネイティブ メソッド) で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(ネイティブ メソッド) 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(ネイティブ メソッド) 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(ネイティブ メソッド) 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 (ネイティブ メソッド) で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 (ネイティブ メソッド) で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 (ネイティブ メソッド) で

4

1 に答える 1

0

とった:

「hitURL」の前にこのコード行を追加するだけです

StrictMode.ThreadPolicy policy = new   
StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);

すべての助けをありがとう:)

于 2013-03-12T17:07:22.740 に答える