Android app与PC端交互

app提交信息到PC端mysql数据库

新建名为SignActivity

package com.example.administrator.success;

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

public class SignActivity extends Activity {
    private EditText name;
//    private EditText password;
    private Button signup;
    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_sign);
        name=(EditText) findViewById(R.id.etSgAccount);
//        password=(EditText) findViewById(R.id.etSgPassword);
        signup=(Button) findViewById(R.id.btnSign);
    }
    /*发起HTTP请求*/
    public void onLogin(View v)
    {
        String url="http://182.92.66.60:8083/saveTestApp.jsp";
        new HttpThread(url, name.getText().toString()).start();
    }

}

HttpThread

package com.example.administrator.success;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;

import android.R.string;

public class HttpThread extends Thread {
    String url;
    String name;
//    String password;

    public HttpThread(String url, String name) {
        // TODO Auto-generated constructor stub
        this.url = url;
        this.name = name;
//        this.password = password;
    }

    private void doGet() throws IOException {
        /*将username和password传给Tomcat服务器*/
        url=url+"?name="+name;
        try {
            URL httpUrl = new URL(url);
            /*获取网络连接*/
            HttpURLConnection conn = (HttpURLConnection) httpUrl.openConnection();
            /*设置请求方法为GET方法*/
            conn.setRequestMethod("GET");
            /*设置访问超时时间*/
            conn.setReadTimeout(5000);
            BufferedReader reader=new BufferedReader(new InputStreamReader(conn.getInputStream()));
            String str;
            StringBuffer sb=new StringBuffer();
            //读取服务器返回的信息
            while((str=reader.readLine())!=null)
            {
                sb.append(str);
            }
            //把服务端返回的数据打印出来
            System.out.println("result"+sb.toString());
        } catch (MalformedURLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }

    /*在run中调用doGet*/
    @Override
    public void run() {
        try {
            doGet();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

布局文件activity_sign.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:focusableInTouchMode="true"
    android:background="#ff6699cc"
    android:orientation="vertical"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <RelativeLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:background="#fffffffb"
        android:orientation="horizontal"
        android:padding="40dp" >

        <EditText
            android:id="@+id/etSgAccount"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="30dp"
            android:layout_marginBottom="20dp"
            android:hint="Account"
            android:inputType="textEmailAddress" />

        <EditText
            android:id="@+id/etSgPassword"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/etSgAccount"
            android:layout_marginBottom="20dp"
            android:hint="Password"
            android:inputType="textPassword" />
        <EditText
            android:id="@+id/etSgRePassword"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/etSgPassword"
            android:layout_marginBottom="20dp"
            android:hint="repassword"
            android:inputType="textPassword" />


        <Button
            android:id="@+id/btnSign"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/etSgRePassword"
            android:background="#ff6699cc"
            android:onClick="onLogin"
            android:text="signup"
            android:textColor="#ffffffff"
            android:textSize="24sp" />
    </RelativeLayout>

</LinearLayout>

自己搭一个Tomact服务器,把SignActivity里的url换成自己的就OK了

原文地址:https://www.cnblogs.com/wangyuhangboke/p/8854297.html