Android实验报告—网络通信_网络通信编程实验报告
Android实验报告—网络通信由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“网络通信编程实验报告”。
实验三
Android网络通信
实验目的:
本实验的目的是使学生深入了解利用Intent实现进程间的通信过程。学会利用Intent进行Activity的跳转,以及链接网页信息;学会利用Intent将其他Activity的信息返回到Activity中的方法。体会Activity间通信的过程。
实验要求:
编程实现下述功能:主界面上有一个“登录”按钮和“链接网页”按钮,点击“登录”按钮后打开一个新的Activity;新的Activity上面有输入用户名和密码的控件(如下图所示)点击“链接网页”按钮,新的Activity上面有输入Uri信息的控件,可以链接到相应的网站,在用户关闭这个Activity后,返回到主界面中
程序界面如下图所示:
[实现提示]
1、建立Android工程,其中 工程名称:WebCommunication579
包名称:cn.edu.bistu.dj1001.WebCommunication579 Activity名称:WebCommunication5792、工程建立完毕后,首先进行界面设计,建立相应的子Layout界面
3、在工程中添加相应的.java文件,处理各个Activity的事件响应
4、在Manifest中添加新建的Activity信息,进行注册。
程序源码:
主界面java文件代码: package cn.deu.bistu.dj1001.WebCommunication579;
import android.app.Activity;import android.content.Intent;import android.net.Uri;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.TextView;
public cla WebCommunication579 extends Activity { private Button btnLogin,btnGoToWeb;private TextView show;private static final int SUBACTIVITY1 = 1;@Override
public void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState);setContentView(R.layout.main);btnLogin=(Button)findViewById(R.id.btnLogin);btnGoToWeb=(Button)findViewById(R.id.btnGoToWeb);show=(TextView)findViewById(R.id.A1show);
btnLogin.setOnClickListener(new OnClickListener(){ public void onClick(View v){ Intent intent = new Intent(WebCommunication592.this, activity1.cla);
startActivityForResult(intent, SUBACTIVITY1);
}});btnGoToWeb.setOnClickListener(new OnClickListener(){ public void onClick(View v){ Intent intent = new Intent(WebCommunication592.this, activity2.cla);startActivity(intent);}});} protected void onActivityResult(int requestCode, int resultCode, Intent data){ super.onActivityResult(requestCode, resultCode, data);switch(requestCode){ case SUBACTIVITY1: if(resultCode == RESULT_OK){Uri uriData = data.getData();show.setText(uriData.toString());} break;}};} 界面一java文件代码:
package cn.deu.bistu.dj1001.WebCommunication579;
import android.app.Activity;import android.content.Intent;import android.net.Uri;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;
public cla activity1 extends Activity { private Button btnOK,btnCancel;private EditText edtInput;public void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState);setContentView(R.layout.activity1);edtInput=(EditText)findViewById(R.id.edtA1Input);btnOK=(Button)findViewById(R.id.btnA1OK);btnCancel=(Button)findViewById(R.id.btnA1Cancel);btnOK.setOnClickListener(new OnClickListener(){
public void onClick(View v){ String uriString = edtInput.getText().toString();Uri data = Uri.parse(uriString);Intent result = new Intent(null, data);setResult(RESULT_OK, result);finish();}});btnCancel.setOnClickListener(new OnClickListener(){ public void onClick(View view){ finish();}});}} 界面二java文件代码:
package cn.deu.bistu.dj1001.WebCommunication579;
import android.app.Activity;import android.content.Intent;import android.net.Uri;import android.os.Bundle;
import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;
public cla activity2 extends Activity { private EditText edtInput;private Button btnOK,btnCancel;public void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState);setContentView(R.layout.activity2);edtInput=(EditText)findViewById(R.id.edtA2Input);btnOK=(Button)findViewById(R.id.btnA2OK);btnCancel=(Button)findViewById(R.id.btnA2Cancel);btnOK.setOnClickListener(new OnClickListener(){ public void onClick(View v){ Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(edtInput.getText().toString()));startActivity(intent);}});btnCancel.setOnClickListener(new OnClickListener(){
public void onClick(View v){
finish();
}});}} 主界面的xml文件代码:
xmlns:android=“http://schemas.android.com/apk/res/android” android:orientation=“Horizontal” android:layout_width=“fill_parent” android:layout_height=“fill_parent”>
android:text=“登录”
android:id=“@+id/btnLogin”
android:layout_width=“wrap_content”
android:layout_height=“wrap_content”>
android:text=“链接网页”
android:id=“@+id/btnGoToWeb”
android:layout_width=“wrap_content”
android:layout_height=“wrap_content”>
android:text=“”
android:id=“@+id/A1show” android:layout_width=“wrap_content”
android:layout_height=“wrap_content”>
界面一的xml文件代码:
android:orientation=“Horizontal” android:layout_width=“fill_parent” android:layout_height=“fill_parent”
xmlns:android=“http://schemas.android.com/apk/res/android”>
android:layout_width=“wrap_content” android:layout_height=“wrap_content”>
android:text=“用户名和密码:”
android:layout_width=“wrap_content”
android:layout_height=“wrap_content”>
android:text=“”
android:id=“@+id/edtA1Input”
android:layout_width=“wrap_content”
android:layout_height=“wrap_content”>
android:layout_width=“wrap_content” android:layout_height=“wrap_content”>
android:text=“确定”
android:id=“@+id/btnA1OK”
android:layout_width=“wrap_content”
android:layout_height=“wrap_content”>
android:text=“取消 ”
android:id=“@+id/btnA1Cancel”
android:layout_width=“wrap_content”
android:layout_height=“wrap_content”>
界面二的xml文件代码:
xmlns:android=“http://schemas.android.com/apk/res/android”>
android:text=“”
android:id=“@+id/edtA2Input”
android:layout_width=“match_parent”
android:layout_height=“wrap_content”>
android:text=“确定”
android:id=“@+id/btnA2OK”
android:layout_width=“wrap_content”
android:layout_height=“wrap_content”>
android:text=“取消”
android:id=“@+id/btnA2Cancel”
android:layout_width=“wrap_content”
android:layout_height=“wrap_content”>
程序运行结果:
程序包:
主界面:
点击登录按钮后:
点击确定按钮后:
点击链接网页按钮后:
点击确定按钮后:
实验心得体会:
通过本次实验深入了解了Intent实现进程间的通信过程。熟悉了利用Intent将其他Activity的信息返回到Activity中的方法,可以更熟练的使用安卓编程软件。