1、Android客户端实现详细过程A界面:登录和注册(以按钮的方式监听),及IP地址的提取,以及账 户名和密码的提取(以EditView),以Json协议的方式,发给 服务器,收到“ok”,跳转到B界面。以下是界面设计的XML 代码: 实现代码:package com.fs.home;import java.io.IOException;import android.app.Activity;import android.content.Intent;import android.media.AudioManager;import android.media.SoundPool;import a
2、ndroid.os.Bundle;import android.os.Handler;import android.os.Message;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;public class MainAct extends Activity implements OnClickListener EditText editText0; EditText editText1,
3、ipaddr; Button denglub; Button zuceb; MySocket mySocket; private Handler h1; String string0; String string1; Data data; AppSocket appSocket; Override protected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.denglu); mySocket = new MySocket(); ipa
4、ddr = (EditText) findViewById(R.id.EditText01); appSocket = (AppSocket) this.getApplicationContext(); editText0 = (EditText) findViewById(R.id.edittext0); editText1 = (EditText) findViewById(R.id.edittext1); denglub = (Button) findViewById(R.id.denglub); zuceb = (Button) findViewById(R.id.zuceb); de
5、nglub.setOnClickListener(this); zuceb.setOnClickListener(this); appSocket.setSp(new SoundPool(10, AudioManager.STREAM_MUSIC, 5); appSocket.setMusic(appSocket.getSp().load(this, R.raw.button, 1); h1 = new Handler() Override public void handleMessage(Message msg) if (msg.what = 0x1) / 获取当前的Activity上的一
6、个intent Intent intent = new Intent(MainAct.this, TwoActivity.class); / 启动intent对应的Activity startActivity(intent); else if(msg.what = 0x2) try appSocket.getBis().close(); appSocket.getBos().close(); appSocket.getSocket().close(); catch (IOException e) / TODO Auto-generated catch block e.printStackTra
7、ce(); ; public void onClick(View v) string0 = editText0.getText().toString(); string1 = editText1.getText().toString(); System.out.println(string0); System.out.println(string1); data = new Data(string0, string1); switch (v.getId() case R.id.denglub: / 开启initSocket mySocket.initSocket(ipaddr.getText(
8、).toString(), appSocket); appSocket.setSocket(mySocket.getSocket(); appSocket.setIpaddr(ipaddr.getText().toString(); new MyThread(denglub, h1, data, appSocket).start(); break; case R.id.zuceb: / 开启initSocket mySocket.initSocket(ipaddr.getText().toString(), appSocket); new MyThread(zuceb, h1, data, a
9、ppSocket).start(); mySocket.Close(); break; default: break; appSocket.getSp().play(appSocket.getMusic(), 1, 1, 0, 0, 1); B界面:温度、湿度、光照强度的实时显示涉及到界面的更改,用到 Handler技术;另外就是一些按钮的监听,也是以Json 协议 的方式发送到服务器端,并接收被控制的设 备的状态,实时 更新按钮的图标;其次,C界面的跳转也是由一个按钮控制的。以下是B界面的XML设计代码: TextView android:id=+id/text2 android:gravity=left android:layout_width=wrap_content android:text=0 android:layout_gravity=ce
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2