android实验用户通讯功能.docx
- 文档编号:28375606
- 上传时间:2023-07-10
- 格式:DOCX
- 页数:23
- 大小:1.99MB
android实验用户通讯功能.docx
《android实验用户通讯功能.docx》由会员分享,可在线阅读,更多相关《android实验用户通讯功能.docx(23页珍藏版)》请在冰豆网上搜索。
android实验用户通讯功能
学生实验报告
学期:
2015-2016年第二学期
班级:
15计科专升本
学号:
150********8
姓名:
田林玉
指导老师:
李长松
课程名称:
android开发
填写说明
1、填写实验报告须字迹工整,使用黑色钢笔或签字笔填写。
2、课程编号和课程名称必须和教务系统中保持一致,实验项目名称填写须完整规范,不能省略或使用简称。
3、每个实验项目应填写一份实验报告。
如同一个实验项目分多次进行,可在实验报告中写明。
4、如果实验报告页面不够,可分成两个实验报告填写。
实验目录及成绩登记
序号
实验日期
实验项目名称
实验成绩
备注
1
2016、6、1
android开发实现用户通讯功能
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
实验报告最终成绩:
指导教师签名:
说明:
实验项目顺序和名称由学生填写,必须前后保持一致;实验成绩以百分制计,由实验指导教师填写并签名,一般不能涂改,确有涂改的,应在备注栏说明原因;实验报告部分最终成绩为所有实验项目成绩的平均值。
实验报告
实验日期:
2016年6月1日星期三
实验项目名称
android开发实现保存用户等信息
实验项目类型
□演示型□验证型□基本训练型
综合型□设计型□提高型
实验指导教师
李长松
实验地点
实验楼502
是否分组
否
小组其他成员
1、实验目的及要求
(1)掌握基本的LinearLayout和RelativeLayout的区别
(2)熟悉android开发的步骤及安装过程。
(3)熟悉android中的文件的读和写。
2、实验使用的主要设备(含软件系统)
(1)操作系统:
WindowsXP
2)软件:
jdk、eclipse、adt、androidsdk及配置好环境好变量
三、实验操作过程及内容
前期:
配置android开发环境
eclipse下载地址:
www.eclipse.org
eclipse+adt+sdk下载地址:
第一步:
先安装jdk
第二步:
安装eclipse及配置环境变量
第三步:
安装ADT
第五步:
安装sdk
//MainActivity.Java
packagecom.sdwu.io;
importjava.io.File;
importjava.io.FileInputStream;
importjava.io.FileNotFoundException;
importjava.io.FileOutputStream;
importjava.io.InputStream;
importjava.io.OutputStream;
importandroid.app.Activity;
importandroid.app.ActionBar;
importandroid.app.Fragment;
importandroid.content.Context;
importandroid.content.Intent;
importandroid.graphics.drawable.GradientDrawable.Orientation;
importandroid.os.Bundle;
importandroid.view.LayoutInflater;
importandroid.view.Menu;
importandroid.view.MenuItem;
importandroid.view.View;
importandroid.view.ViewGroup;
importandroid.widget.Button;
importandroid.widget.EditText;
importandroid.widget.LinearLayout;
importandroid.widget.TextView;
importandroid.widget.Toast;
importandroid.os.Build;
publicclassMainActivityextendsActivity{
LinearLayoutll;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//获取到id为ll的线性布局
ll=(LinearLayout)findViewById(R.id.ll);
}
publicvoidsave(Viewv){
//获取输入姓名的组件
EditTextusername=(EditText)findViewById(R.id.username);
//获取输入的值
Stringname=username.getText().toString();
EditTexttel=(EditText)findViewById(R.id.tel);
Stringnum=tel.getText().toString();
Stringinfo=name+"\r\n"+num;
try{
//获取输出流
FileOutputStreamfos;
fos=openFileOutput(name,Context.MODE_PRIVATE);
//向文件中写入数据
fos.write(info.getBytes());
//刷新流
fos.flush();
//关闭流
fos.close();
Toast.makeText(this,"保存成功",Toast.LENGTH_LONG).show();
}catch(Exceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}
//yemiantiaozhuan
publicvoidfind(Viewv){
Intentin=newIntent(this,showActivity.class);
startActivity(in);
}
}
//layout布局文件activity_main.xml
android=" xmlns: tools=" android: layout_width="match_parent" android: layout_height="wrap_content" android: background="@drawable/h"> android: id="@+id/ll" android: layout_width="match_parent" android: layout_height="match_parent" android: orientation="vertical"> --写入注释--> android: layout_width="wrap_content" android: layout_height="wrap_content" android: text="姓名"/> android: id="@+id/username" android: layout_width="match_parent" android: layout_height="wrap_content" /> android: layout_width="wrap_content" android: layout_height="wrap_content" android: text="号码"/> android: id="@+id/tel" android: layout_width="match_parent" android: layout_height="wrap_content" /> android: layout_width="wrap_content" android: layout_height="wrap_content" android: text="年龄"/> android: id="@+id/tel" android: layout_width="match_parent" android: layout_height="wrap_content" /> android: layout_width="wrap_content" android: layout_height="wrap_content" android: text="性别"/> android: orientation="horizontal" android: layout_width="wrap_content" android: layout_height="wrap_content" > android: id="@+id/nan" android: layout_width="wrap_content" android: layout_height="wrap_content" android: text="男"/> android: id="@+id/nv" android: layout_width="wrap_content" android: layout_height="wrap_content" android: text="女"/> //AndroidManifest.xml xmlversion="1.0"encoding="utf-8"? > android=" package="com.sdwu.io" android: versionCode="1" android: versionName="1.0"> android: minSdkVersion="19" android: targetSdkVersion="19"/> name="android.permission.CALL_PHONE"/> android: allowBackup="true" android: icon="@drawable/su" android: label="@string/app_name" android: theme="@style/AppTheme" > android: name="com.sdwu.io.MainActivity" android: label="@string/app_name"> name="android.intent.action.MAIN"/> name="android.intent.category.LAUNCHER"/> name="com.sdwu.io.showActivity"> //showActivity.java packagecom.sdwu.io; importjava.io.File; importjava.io.FileInputStream; importjava.io.FileNotFoundException; importjava.io.FileOutputStream; importjava.io.InputStream; importjava.io.OutputStream; importandroid.app.Activity; importandroid.app.ActionBar; importandroid.app.AlertDialog; importandroid.app.Fragment; importandroid.content.Context; importandroid.content.Intent; importandroid.graphics.drawable.GradientDrawable.Orientation; import.Uri; importandroid.os.Bundle; importandroid.view.LayoutInflater; importandroid.view.Menu; importandroid.view.MenuItem; importandroid.view.View; importandroid.view.View.OnClickListener; importandroid.view.ViewGroup; importandroid.widget.Button; importandroid.widget.EditText; importandroid.widget.ImageButton; importandroid.widget.LinearLayout; importandroid.widget.TextView; importandroid.widget.Toast; importandroid.os.Build; publicclassshowActivityextendsActivity{ LinearLayoutll; @Override protectedvoidonCreate(BundlesavedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.show); //获取到id为ll的线性布局 ll=(LinearLayout)findViewById(R.id.show_layout); find(); } publicvoidfind(){ //获取保存文件的路径data/data/com.sdwu.io/files Filefile=getFilesDir(); //将file文件夹内的所有文件以及子文件夹的名称返回 StringfileName[]=file.list();//list是file的类, //声明输入流对象 FileInputStreamfis; for(Stringname: fileName){ try{ //获取输入流 fis=openFileInput(name); byteb[]=newbyte[1024]; //读文件 fis.read(b); fis.close(); finalStringinfo=newString(b).trim();//string加成final //定义一个现行布局,存一个人的信息 LinearLayoutlinearLayout=newLinearLayout(this); //存放联系人的姓名和号码 TextViewtv=newTextView(this); tv.setText(info); //hujiao //ImageButtonbutton=newImageButton(this); Buttonbutton=newButton(this); button.setText("呼叫"); //编辑 Buttonbj=newButton(this); bj.setText("编辑"); Buttondel=newButton(this); del.setText("删除"); //为按钮添加单击事件 button.setOnClickListener(newOnClickListener(){ @Override publicvoidonClick(Viewarg0){ //TODOAuto-generatedmethodstub //Math.random(); Toast.makeText(showActivity.this,info.split("\r\n")[1],Toast.LENGTH_LONG).show(); Intentin=newIntent(Intent.ACTION_CALL,Uri.parse("tel: "+info.split("\r\n")[1])); //Intentin=newIntent(Intent.ACTION_CALL,Uri.parse("tel: "+"12345678900")); startActivity(in); } }); bj.setOnClickListener(newOnClickListener(){ @Override publicvoidonClick(Viewv){ Toast.makeText(showActivity.this,info.split("\r\n")[0],Toast.LENGTH_LONG).show(); //Intentin=newIntent(Intent.ACTION_CALL,Uri.parse("tel: "+info.split("\r\n")[1])); //Intentin=newIntent(Intent.ACTION_CALL,Uri.parse("tel: "+"12345678900")); //startActivity(in); } }); del.setOnClickListener(newOnClickListener(){ @Override publicvoidonClick(Viewv){ Toast.makeText(showActivity.this,"确定要删除此联系人吗? ",Toast.LENGTH_LONG).show(); } }); linearLayout.addView(tv); linearLayout.addView(button); //后来添加的 linearLayout.addView(bj); //删除 linearLayout.addView(del); ll.addView(linearLayout); }catch(Exceptione){ e.printStackTrace(); } } } } //show.xml android=" xmlns: tools=" android: layout_width="match_parent" android: layout_height="match_parent" android: background="@drawable/bf" android: measureAllChildren="false"> android: layout_width="match_parent" android: layout_height="match_parent" android: orientation="vertical" android: id="@+id/show_layout">
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- android 实验 用户 通讯 功能
![提示](https://static.bdocx.com/images/bang_tan.gif)