简易的手机管家的设计与实现_第1页
简易的手机管家的设计与实现_第2页
简易的手机管家的设计与实现_第3页
简易的手机管家的设计与实现_第4页
简易的手机管家的设计与实现_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

简易的手机管家的设计与实现目录第一章绪论 11.1系统开发背景 1第二章需求分析 12.1可行性分析 12.1.1技术可行性 12.1.2经济可行性 12.1.3操作可行性 12.1.4法律可行性 22.2业务流程 2第三章概要设计 33.1文件管理 33.2骚扰拦截 3第四章详细设计与系统实现 44.1模块设计 44.1.1文件管理的详细设计 54.1.2骚扰拦截的详细设计 11第五章系统测试以及软件安装 135.1测试报告 13结论 13参考文献 13绪论1.1系统开发背景随着当代通信行业的迅猛发展,手机几乎每个人都会有,人们的隐私越来越暴露,也给顾客带来了诸多不便。通过对市场的大量调查结合我们的专业知识,基于现在最热门的手机智能操作系统(Android)开发了一款手机管家,赋予了它管理手机文献和电话骚扰拦截功效。需求分析2.1可行性分析2.1.1技术可行性诸多博客中都有诸多有关手机管家的介绍,我们身边有诸多学习Android的老师同窗能够协助我们。2.1.2经济可行性我们是自行开发的系统,成本能够无视不计,尚有后期维护的费用也相对比较低廉。2.1.3操作可行性软件编程完毕后可直接在手机上测试运行2.1.4法律可行性本系统开发不会侵犯别人、集体或国家利益,不存在侵权等问题,不违反国家法律,因此含有法律可行性。2.2业务流程如图2—如图2—SEQ如图2—\*ARABIC1骚扰拦截骚扰拦截文献管理文献打开重命名文献删除文献加入拦截号码图2-图2-SEQ图2-\*ARABIC1概要设计3.1文献管理首先是获取现在与否是根目录,然后把文献的途径设立给我们要显示的View。然后用一种ArrayList来装我们目录下的全部的文献或者文献夹。把这个文献夹的父类装到我们的列表中去,然后把这个文献夹下的子文献都拿到,也装在列表中,然后调用Adapter显示出来。3.2骚扰拦截其实在android在1.1版本后就已经把Phone类的有关API给隐藏起来了,想要用代码实现挂断电话的功效,就必须通过AIDL才行,然后运用反射来使用其办法在程序中新建一种包,包名必须为:ernal.telephony,由于使用aidl。要监听电话状态,当来电时,检测来电号码与否符合拦截原则(这个拦截原则是我们自己定的,我们拦截指定号码如实现一种黑名单的功效)具体设计与系统实现4.1模块设计本软件分为两个功效模块:文献管理、骚扰拦截如图4-SEQ如图4-\*ARABIC1所示图4-图4-SEQ图4-\*ARABIC1

4.1.1文献管理的具体设计通过获取文献的根目录对文献进行打开、重命名、删除的操做如图4-如图4-SEQ如图4-\*ARABIC2所示图4-图4-SEQ图4-\*ARABIC打开文献打开文献需要懂得文献的类型,我们通过办法getMIMEType()获取文献类型代码以下:privateStringgetMIMEType(Filefile){

Stringtype="";

Stringname=file.getName();

Stringend=name.substring(name.lastIndexOf(".")+1,name.length()).toLowerCase();

if(end.equals("m4a")||end.equals("mp3")||end.equals("wav")){

type="audio";

}

elseif(end.equals("mp4")||end.equals("3gp")){

type="video";

}

elseif(end.equals("jpg")||end.equals("png")||end.equals("jpeg")||end.equals("bmp")||end.equals("gif")){

type="image";

}else{

type="*";

}

type+="/*";

returntype;

}打开文献需要调用系统应用,通过办法openFile()办法里Intent.FLAG_ACTIVITY_NEW_TASK与Intent.ACTION_VIEW实现,代码以下:

privatevoidopenFile(Filefile){

Intentintent=newIntent();

intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

intent.setAction(Intent.ACTION_VIEW);

Stringtype=getMIMEType(file);

intent.setDataAndType(Uri.fromFile(file),type);

try{

startActivity(intent);

}catch(Exceptione){

Toast.makeText(this,"未知类型,不能打开",Toast.LENGTH_SHORT).show();

}

}

重命名文献获取文献的根目录,进行重命名如图4-SEQ如图4-\*ARABIC3所示图4-图4-SEQ图4-\*ARABIC3获取文献的根目录file.getParentFile().getPath()然后判断文献与否可读再进行命名操作,代码以下:if(newFile.exists()){

//排除没有修改状况

if(!modifyName.equals(file.getName())){

//弹出对话框

newAlertDialog.Builder(MainFile.this)

.setTitle("注意!")

.setMessage("文献名已存在,与否覆盖?")

.setPositiveButton("拟定",newDialogInterface.OnClickListener(){

@Override

publicvoidonClick(DialogInterfacedialog,intwhich){

if(file.renameTo(newFile)){

showFileDir(fpath);

displayToast("重命名成功!");

}else{

displayToast("重命名失败!");

}

}

})

.setNegativeButton("取消",newDialogInterface.OnClickListener(){

@Override

publicvoidonClick(DialogInterfacedialog,intwhich){

}

}.show();

}

}else{

if(file.renameTo(newFile)){

showFileDir(fpath);

displayToast("重命名成功!");

}else{

displayToast("重命名失败!");

}}删除文献判断文献与否存在然后删除如图4-SEQ如图4-\*ARABIC如图4-SEQ如图4-\*ARABIC4所示图4-SEQ图4-\*ARABIC4通过File类中的delete()办法进行删除,代码以下:if(file!=null)

{

try

{

Filefile2=file;

file2.delete();

result=true;

}

catch(Exceptione)

{

e.printStackTrace();

result=false;

}

}4.1.2骚扰拦截的具体设计对来自黑名单中的电话进行拦截如图4-如图4-SEQ如图4-\*ARABIC5图4-图4-SEQ图4-\*ARABIC保存需拦截的号码通过SharedPreferences把要拦截的号码存起来,代码以下:SharedPreferencessp=context.getSharedPreferences("phone",Context.MODE_PRIVATE);

sp.edit().putString(key,value).commit();监听电话状态进行拦截通过BroadcastReceiver采用广播机制向全体广播监听手机电话未接听、通话中、挂断三种状态,在未接听的状态中核对黑名单电话进行拦截,代码以下:Methodmethod=clazz.getDeclaredMethod("getITelephony",(Class<?>)null);

//设立可访问

method.setAccessible(true);

//执行办法

ITelephonyiTelephony=(ITelephony)method.invoke(tm,(Object)null);

//判断

//得到号码

Stringn=PrefUtil.getString(context,"number","").trim();

if(n.equals(number)){

iTelephony.endCall();

}系统测试以及软件安装5.1测试报告软件在中兴手机型号为NX513J,android版本为5.1.1中测试通过,文献管理模块在测试打开文献的时候部分文献打不开,我们通过下载别的应用,再用软件打开就成功了,原来此型号手机并没有预装打开全部软件的应用骚扰拦截模块测试过程通过,只要设立好黑名单电话后,对方拨打电话就会提示在通话中,移除黑名单后则恢复正常。结论通过本次课程设计我们对android的知识有了系统的理解,也增强动手实践的能力,我们也学会了怎么快速查阅资料,怎么解决问题的能力。本次课程设计非常感谢我们的老师予以我们的协助。参考文献

杨云君.

Android的设计与实现[M].

北京:机械工业出版社,:5-65.

李刚.疯狂Android

讲义[M].

北京:电子工业出版社,:12-87.赛奎春.JAVA工程应用与项目实践[M].机械工业出版社,.8:23-294姚昱旻,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论