与WCF休息服务通信Android应用程序

问题描述 投票:0回答:1

我正在尝试使用WCF REST服务来传达我的Android应用程序,但是当我运行Android应用程序时,总会出现一条消息,说不幸的是,Android应用程序已停止。

下面是我对该服务的调用,我的应用程序只有一个活动,当点击执行事件LogarOnserver时有一个Button,如下所示。在服务返回响应之后,我将其接收并放入TextView(_myPassWord)。

package com.arduino.ligthautomation;

import java.io.IOException;

import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.ResponseHandler;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.BasicResponseHandler;
import org.apache.http.impl.client.DefaultHttpClient;


import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;


 public class RegisterActivity extends Activity  {

EditText _myPassWord ;
EditText _myLogin;
private static final String URL_STRING =      "http://192.168.0.3:8080/lightautomationservice/1";

@Override

public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);

    //mostrando tela de login
    setContentView(R.layout.login);

     _myPassWord = (EditText)  findViewById(R.id.editTextPassword);
     _myLogin = (EditText)  findViewById(R.id.editTextUsuario);




}

public void logarOnServer (View v) throws IOException
{
    try{

         HttpClient httpclient = new DefaultHttpClient();
         HttpGet request = new HttpGet("http://192.168.0.3:8080/lightautomationservice/1");
         ResponseHandler<String> handler = new BasicResponseHandler();
         //you result will be String :
         String result = httpclient.execute(request, handler);

         _myLogin.setText(result);

           } catch (ClientProtocolException e) {
           // TODO Auto-generated catch block
            e.printStackTrace();
           } catch (IOException e) {
            // TODO Auto-generated catch block
             e.printStackTrace();
           }
}

}
java android wcf apache rest
1个回答
0
投票

只是一个疯狂的猜测:你正在主(UI)线程上做一个网络请求。一个大不,不。

查找AsyncTask

© www.soinside.com 2019 - 2024. All rights reserved.