安卓实验报告.docx
- 文档编号:10676757
- 上传时间:2023-02-22
- 格式:DOCX
- 页数:25
- 大小:49.39KB
安卓实验报告.docx
《安卓实验报告.docx》由会员分享,可在线阅读,更多相关《安卓实验报告.docx(25页珍藏版)》请在冰豆网上搜索。
安卓实验报告
安卓实验报告
班级:
xxxxx
学号:
姓名:
xxxx
实验一:
Activity生命周期的测试
一:
实验目的
掌握使用Eclipse开发Android应用开发程序的方法;
掌握Android虚拟设备的创建方法;
了解Android的程序结构;
了解使用命令行创建Android程序方法;
了解Activity生命周期,理解Activity事件回调,onRestoreInstanceState()和onSaveInstanceState两个函数的使用。
二:
实验设备
Eclipse开发Android应用
Android虚拟设备(AVD)
三:
实验内容
(1)正常启动ActivityLife,然后单击用户界面的“结束程序”按钮关闭程序。
(2)正常启动ACtivityLife,然后通过“拨号键”启动内置的拨号程序,再通过“回退建”退出拨号程序,使ActivityLife重新显示在屏幕中。
四:
实验核心代码
packageclassMainActivityextendsActivity{
privatestaticStringTAG="LIFECYCLE";
@Override
protectedvoidonCreate(BundlesavedInstanceState){
(savedInstanceState);
setContentView(TAG,"
(1)onCreate()");
Buttonbutton=(Button)findViewById(newOnClickListener(){
publicvoidonClick(Viewview){
oString().trim();
Stringstr1=().toString().trim();
("姓名:
"+str);
("爱好:
"+str1);
if(arg1==("性别:
"+"男");
elseif(arg1==("性别:
"+"女");
}
});
}
});
}
}
五:
运行结果截图:
实验三:
不同界面的切换
一:
实验目的
掌握各种界面布局的特点和使用方法;
掌握选项菜单,子菜单和快捷菜单的使用方法。
二;实验设备
Eclipse开发Android应用
Android虚拟设备(AVD)
三;实验内容:
设计一个Tab标签页,实现LinearLayout,RelativeLayout,AbsoluteLayout三种分页面之间的切换,每个页面的内容包括用户名和确定,取消两个按钮
四:
实验核心代码:
:
android: name=".Tab1">
android: name=".Tab2">
android: name=".Tab3">
publicclassMainActivityextendsTabActivity{
protectedvoidonCreate(BundlesavedInstanceState){
(savedInstanceState);
setContentViewTabHosttabHost=getTabHost();
(this).inflate(),true);
(this).inflate(),true);
(this).inflate(),true);
("TAB1").
setIndicator("线性布局").setContent("TAB1").
setIndicator("绝对布局").setContent("TAB1").
setIndicator("相对布局").setContent}
}
Tab1,java
publicclassTab1extendsActivity{
publicvoidonCreate(BundlesavedInstanceState){
(savedInstanceState);
setContentView}
}
publicclassTab2extendsActivity{
publicvoidonCreate(BundlesavedInstanceState){
(savedInstanceState);
setContentView}
}
publicclassTab3extendsActivity{
publicvoidonCreate(BundlesavedInstanceState){
(savedInstanceState);
setContentView}
}
五:
运行结果截图:
实验四:
登陆界面和广播消息
一:
实验目的
了解使用Intent进行组件通信的原理;
了解Intent过滤器的原理与匹配机制;
掌握发送和接受广播消息的方法。
二:
实验设备
Eclipse开发Android应用
Android虚拟设备(AVD)
三:
实验内容
先写一个登陆界面,包括用户名,密码,点击登陆时实现页面的跳转功能,在第二个页面使用Intent发送消息,并调用sendBroadcast()函数把Intent携带的消息传送出去,用BroadcastReceiver接受广播消息,在页面下方显示广播内容。
四;实验核心代码:
publicclassMainActivityextendsActivity{
privateButtonbutton;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
(savedInstanceState);
setContentViewbutton=(Button)findViewById(new(){
publicvoidonClick(Viewarg0){
Intentintent=newIntent,;
startActivity(intent);
}
});
}
}
publicclassSecondextendsActivity{
privateButtonbutton2;
privateEditTexteditText;
protectedvoidonCreate(BundlesavedInstanceState){
(savedInstanceState);
setContentViewIntentintent=getIntent();
editText=(EditText)findViewByIdbutton2=(Button)findViewById(new(){
publicvoidonClick(Viewarg0){
Intentintent=newIntent("");
("message",().toString());
sendBroadcast(intent);
}
});
}
publicclassMyBroadcastReceiverextendsBroadcastReceiver{
publicvoidonReceive(Contextcontext,Intentintent){
Stringmsg=("message");
(context,msg,.show();
}
}
android: name=".Second">
name=".MyBroadcastReceiver"> name=""/> 五: 运行结果截图 实验五: Service绑定实现数据运算 一: 实验目的 了解Service的原理和用途; 掌握本地服务的管理和方法; 掌握服务的隐式启动和显示启动方法; 掌握远程服务的绑定和调用方法。 二: 实验设备 Eclipse开发Android应用 Android虚拟设备(AVD) 三: 实验内容 以绑定方式使用Service,获取Service实例,当点击绑定服务时可以实现两个数的求差和比较大小功能,并输出结果,当点击取消绑定服务时,则无法运算。 四: 实验核心代码 publicclassMathServiceextendsService{ privatefinalIBindermBinder=newLocalBinder(); publicclassLocalBinderextendsBinder{ MathServicegetService(){ return; } } publicIBinderonBind(Intentintent){ (this,"本地绑定: MathService",.show(); returnmBinder; } publicbooleanonUnbind(Intentintent){ (this,"取消本地绑定: MathService",.show(); returnfalse; } publiclongsub(longa,longb){ returna-b; } publicintcompare(longa,longb){ if(a>b)return1; elseif(a==b)return0; elsereturn-1; } } publicclassMainActivityextendsActivity{ privateMathServicemathService; privateButtonbutton1; privateButtonbutton2; privateButtonbutton3; privateButtonbutton4; privateEditTexteditText1; privateEditTexteditText2; privateEditTexteditText3; privatebooleanisBound=false; @Override protectedvoidonCreate(BundlesavedInstanceState){ (savedInstanceState); setContentVieweditText1=(EditText)findViewByIdeditText2=(EditText)findViewByIdeditText3=(EditText)findViewByIdbutton1=(Button)findViewByIdbutton2=(Button)findViewByIdbutton3=(Button)findViewByIdbutton4=(Button)findViewById(new(){ publicvoidonClick(Viewv){ if(! isBound){ finalIntentserviceIntent=newIntent( ; bindService(serviceIntent,mConnection,; isBound=true; } } }); (new(){ publicvoidonClick(Viewv){ if(isBound){ isBound=false; unbindService(mConnection); mathService=null; } } }); (new(){ publicvoidonClick(Viewv){ if(mathService==null){ ("未绑定服务"); return; } Stringa=().toString(); longa1=(a); Stringb=().toString(); longb1=(b); longresult=(a1,b1); Stringmsg=(a1)+"-"+(b)+ "="+(result); (msg); } }); (new(){ publicvoidonClick(Viewv){ if(mathService==null){ ("未绑定服务"); return; } Stringa=().toString(); longa1=(a); Stringb=().toString(); longb1=(b); longresult=(a1,b1); if(result==1){ (a+">"+b); } elseif(result==0){ (a+"="+b); } else{ (a+"<"+b); } } }); } privateServiceConnectionmConnection=newServiceConnection(){ publicvoidonServiceDisconnected(ComponentNamearg0){ mathService=null; } publicvoidonServiceConnected(ComponentNamename,IBinderservice){ mathService=(service).getService(); } }; } 实验六: SQLite实现用户的增删改查 一: 实验目的 了解SQLite数据库的特点和体系及结构; 掌握SQLite数据库的建立和操作方法; 理解ContentProvide的用途和原理; 掌握ContentProvider的创建和使用方法。 二: 实验设备 Eclipse开发Android应用 Android虚拟设备(AVD) 三: 实验内容 使用SQlite数据库实现用户(包括: 姓名,年龄,身高)的添加数据,全部显示,清除显示,全部删除,ID删除,ID查询,ID更新的功能。 四: 实验核心代码 publicclassMainActivityextendsActionBarActivity{ privateEditTextet_name; privateEditTextet_sex; privateEditTextet_department; privateEditTextet_id; privateEditTextet_salary; privateMyOpenHelperoh; privateSQLiteDatabasedb; privateTextViewtv; privateLinearLayoutll; @Override protectedvoidonCreate(BundlesavedInstanceState){ (savedInstanceState); setContentViewoh=newMyOpenHelper,"",null,1); db=(); et_name=(EditText)findViewByIdet_sex=(EditText)findViewByIdet_department=(EditText)findViewByIdet_salary=(EditText)findViewByIdet_id=(EditText)findViewByIdll=(LinearLayout)findViewById} publicvoidadd(Viewv){ db=(); Stringname=().toString(); Stringsex=().toString(); Stringdepartment=().toString(); Stringsalary=().toString(); ContentValuesvalues=newContentValues(); ("name",name); ("sex",sex); ("department",department); ("salary",salary); ("staff",null,values); tv=newTextView; ("添加成功"); (); } publicvoidshow(Viewv){ db=(); Cursorcursor=("staff",null,null,null,null,null,null,null); while()){ Stringid=("_id")); Stringname=("name")); Stringsex=("sex")); Stringdepartment=("department")); Stringsalary=("salary")); tv=newTextView; ("ID: "+id+";"+"Name: "+name+";"+"Sex: "+sex+";"+"Department: "+department+";"+"Salary"+salary); (tv); } (); } publicvoidclear(Viewv){ (); } publicvoiddeleteAll(Viewv){ db=(); ("staff",null,null); tv=newTextView; ("删除成功"); (); } publicvoiddeleteById(Viewv){ db=(); Stringid=().toString(); ("staff","_id=",newString[]{id}); (); tv=newTextView; ("ID删除成功"); } publicvoidfindById(Viewv){ db=(); Stringid=().toString(); Cursorcursor=("staff",null,"_id=",newString[]{id},null,null,null,null); while()){ id=("_id")); Stringname=("name")); Stringsex=("sex")); Stringdepartment=("department")); Stringsalary=("salary")); tv=newTextView; (id+";"+name+";"+sex+";"+department+";"+salary); (tv); tv=newTextView; ("ID查询成功"); } (); } publicvoidupdateById(Viewv){ db=(); Stringid=().toString(); Stringname=().toString(); Stringsex=().toString(); Stringdepartment=().toString(); Stringsalary=().toString(); ContentValuesvalues=newContentValues(); ("name",name); ("sex",sex); ("department",department); ("salary",salary); ("staff",values,"_id=",newString[]{id}); tv=newTextView; ("更新ID成功"); (); } } publicclassMyOpenHelperextendsSQLiteOpenHelper{ publicMyOpenHelper(Contextcontext,Stringname,CursorFactoryfactory, intversion){ super(context,name,factory,version); } @Override publicvoidonCreate(SQLiteDatabasedb){ ("createtablestaff(_idintegerprimarykeyautoincrement,nametext,sextext,departmenttext,salaryfloat)"); } @Override publicvoidonUpgrade(SQLiteDatabasedb,intoldVersion,intnewVersion){} } 五: 运行结果截图 实验七: 天气预报 一: 实验目的 了解位置服务的概念; 了解地图密钥的申请方法; 掌握获取地理信息的方法; 二: 实验设备 Eclipse开发Android应用 Android虚拟设备(AVD) 三: 实验内容 写一个项目,实现显
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 报告