简易手机管家设计与实现.docx

上传人:b****1 文档编号:3400577 上传时间:2023-05-05 格式:DOCX 页数:11 大小:278.79KB
下载 相关 举报
简易手机管家设计与实现.docx_第1页
第1页 / 共11页
简易手机管家设计与实现.docx_第2页
第2页 / 共11页
简易手机管家设计与实现.docx_第3页
第3页 / 共11页
简易手机管家设计与实现.docx_第4页
第4页 / 共11页
简易手机管家设计与实现.docx_第5页
第5页 / 共11页
简易手机管家设计与实现.docx_第6页
第6页 / 共11页
简易手机管家设计与实现.docx_第7页
第7页 / 共11页
简易手机管家设计与实现.docx_第8页
第8页 / 共11页
简易手机管家设计与实现.docx_第9页
第9页 / 共11页
简易手机管家设计与实现.docx_第10页
第10页 / 共11页
简易手机管家设计与实现.docx_第11页
第11页 / 共11页
亲,该文档总共11页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

简易手机管家设计与实现.docx

《简易手机管家设计与实现.docx》由会员分享,可在线阅读,更多相关《简易手机管家设计与实现.docx(11页珍藏版)》请在冰点文库上搜索。

简易手机管家设计与实现.docx

简易手机管家设计与实现

简易的手机管家的设计与实现

第一章绪论

1.1系统开发背景

随着现代通信行业的迅猛发展,手机几乎每个人都会有,人们的隐私越来越暴露,也给用户带来了诸多不便。

通过对市场的大量调查结合我们的专业知识,基于现在最热门的手机智能操作系统(Android)开发了一款手机管家,赋予了它管理手机文件和电话骚扰拦截功能。

第二章需求分析

2.1可行性分析

2.1.1技术可行性

很多博客中都有很多关于手机管家的介绍,我们身边有很多学习Android的老师同学可以帮助我们。

2.1.2经济可行性

我们是自行开发的系统,成本可以忽略不计,还有后期维护的费用也相对比较低廉。

2.1.3操作可行性

软件编程完成后可直接在手机上测试运行

2.1.4法律可行性

本系统开发不会侵犯他人、集体或国家利益,不存在侵权等问题,不违反国家法律,因此具有法律可行性。

2.2业务流程

用户使用手机管家软件可以管理文件和骚扰拦截,用户系统的业务用

第三章概要设计

3.1文件管理

1.首先是获取当前是否是根目录,然后把文件的路径设置给我们要显示的View。

2.然后用一个ArrayList来装我们目录下的所有的文件或者文件夹。

3.把这个文件夹的父类装到我们的列表中去,然后把这个文件夹下的子文件都拿到,也装在列表中,然后调用Adapter显示出来。

3.2骚扰拦截

其实在android在1.1版本后就已经把Phone类的相关API给隐藏起来了,想要用代码实现挂断电话的功能,就必须通过AIDL才行,然后利用反射来使用其方法

1.在程序中新建一个包,包名必须为:

com.android.internal.telephony,因为使用aidl。

2.要监听电话状态,当来电时,检测来电号码是否符合拦截标准(这个拦截标准是我们自己定的,我们拦截指定号码如实现一个黑名单的功能)

第四章详细设计与系统实现

4.1模块设计

本软件分为两个功能模块:

文件管理、骚扰拦截

如图4-1所示

图4-1

4.1.1文件管理的详细设计

通过获取文件的根目录对文件进行打开、重命名、删除的操做

如图4-2所示

图4-2

4.1.1.1打开文件

打开文件需要知道文件的类型,我们通过方法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.1.1.2重命名文件

获取文件的根目录,进行重命名

如图4-3所示

图4-3

获取文件的根目录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.1.1.3删除文件

判断文件是否存在然后删除

如图4-4所示

图4-4

通过File类中的delete()方法进行删除,代码如下:

if(file!

=null)

{

try

{

Filefile2=file;

file2.delete();

result=true;

}

catch(Exceptione)

{

e.printStackTrace();

result=false;

}

}

4.1.2骚扰拦截的详细设计

对来自黑名单中的电话进行拦截

如图4-5

图4-5

4.1.2.1保存需拦截的号码

通过SharedPreferences把要拦截的号码存起来,代码如下:

SharedPreferencessp=context.getSharedPreferences("phone",Context.MODE_PRIVATE);

sp.edit().putString(key,value).commit();

4.1.2.2监听电话状态进行拦截

通过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的知识有了系统的了解,也增强动手实践的能力,我们也学会了怎么快速查阅资料,怎么解决问题的能力。

本次课程设计非常感谢我们的老师给予我们的帮助。

参考文献

1. 杨云君. Android的设计与实现[M]. 北京:

机械工业出版社,2017:

5-65.

2.  李刚.疯狂Android 讲义[M]. 北京:

电子工业出版社,2013:

12-87.

3.赛奎春.JAVA工程应用与项目实践[M].机械工业出版社,2002.8:

23-294

4.姚昱旻,刘卫国.Android的架构与应用开发研究[J].计算机系统应用,2008,17(11):

110-112

5. (美)阿诺德,KenArnold,等.Java程序设计语言[M].北京:

人民邮电出版社,2006

6.RetoMeier.ProfessionalAndroid2ApplicationDevelopment[M].Birmingham,UK:

Wrox,2010

7.杨丰盛.Android技术内幕.系统卷[M].北京:

机械工业出版社,2011

8.BruceEckel.Java编程思想[M].机械工业出版社,2003.10:

1-378

 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 工作范文 > 制度规范

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2