云炬公益:云炬网络致力于社会公益服务,平台收入的50%以上将进行公益慈善捐赠(不定期公示)
详情介绍

资源编号

1595

最后更新

2024-03-06
摘要 :

1 引言 1.1研究背景 Android曾经是一家创立于旧金山的公司的名字,该公司于2005年8月份被Google收购,并从此踏上了飞速发展的道路。经过这几年的发展,它已经发展成了一……

1 引言

1.1研究背景

Android曾经是一家创立于旧金山的公司的名字,该公司于2005年8月份被Google收购,并从此踏上了飞速发展的道路。经过这几年的发展,它已经发展成了一个平台、一个生态体系。Android是基于Linux核心的开源系统。随着Android平台的不断完善,它在市场上占有率快速增长,越来越多的手机厂商开始选择Android系统作为其主要发展方向。随着智能手机的普及,在使用过程中如何保护隐私,监控流量或是手机丢了以后怎么办是用户普遍关心的问题。同时Android平台的开放性构筑了其软件生态的繁荣和多样性给病毒木马提供了可乘之机,它们可以通过篡改正常软件,固件植入,非法获取高权限等多种手段入侵手机,普通用户很难察觉,手机作为个人通信工具,每天跟随用户,保存了很多个人隐私,手机的丢失很容易让用户的隐私或个人信息被别人盗取,这也是目前用户非常关心的问题。

1.2研究现状

随着移动通信技术的发展,移动终端发生了巨大的变化,朝着智能化的方向不断迈进。研究机构Gartner 称,2011年第一季度手机销量共计4.278 亿部,较上年同期增长19%,其中智能手机销量所占比例为23.6%。该机构称,2011年第一季度智能手机销量较上年同期增长85%。与此同时,移动通信网络也在不断演进,从1G、2G、3G 到LTE,另外就是大量WiFi 热点的部署以及终端开始普遍支持WiFi,业务带宽瓶颈逐渐缓解。

伴随着终端智能化及网络宽带化的趋势,移动互联网业务层出不穷,日益繁荣。但与此同时,移动终端越来越多的涉及商业秘密和个人隐私等敏感信息。移动终端也面临各种安全威胁,如恶意订购、自动拨打声讯台、自动联网等,造成用户的话费损失;马软件可以控制用户的移动终端,盗取账户、监听通话、发送本地信息等。移动终端作为移动互联网时代最主要的载体,面临着严峻的安全挑战。

如今,手机卫士产品主要有几个主流软件商提供,功能五花八门,令用户眼花缭乱,其实一些功能对大多数用户来说根本无用,不仅占用手机资源,而且操作复杂,用户体验差,因此开发一款简单易用,功能强大的手机安全卫士具有很大的市场潜力。手机安全软件是一种可以对病毒、木马等一切意境的对手机有危害的程序代码进行清除的程序工具,它也是管理安全的软件程序。目前安全软件可分为杀毒软件,系统工具和反流氓软件。

1.3研究内容

本次毕业设计主要想开发出一套Android平台的安全助手,本系统对手机安全问题和手机管理有着很好的支持。该助手目前实现的有手机防盗功能:我们可以通过我们当时绑定的手机号码进行防盗,也可以通过GPS进行追踪;软件管理:应用的列表展示,应用的卸载,运行与分享等;通讯管理:此功能可以设置黑名单避免用户受到干扰;程序锁:此功能可以的将一些不想让他人看到的程序进行加锁;进程管理:显示所有运行进程列表和内存占用大小,选中的进程进行一键清理;关于我们:我们可以将我们的客服联系方式留在上面。

1.4论文结构

本文的第一部分我们介绍了本次系统的研究背景,现状,内容,和本文结构;第二部分我们主要讲述了Android的一些相关技术和环境的搭建;第三部分系统设计,主要的是设计与分析本系统的功能模块;第四部分系统实现,主要的是实现本系统的功能模块和实现步骤;第五部分系统测试,主要的是针对我们的系统进行测试并完善;最后一部分是总结系统完成怎么样,有什么缺陷等。

2 系统设计

2.1搭建Android开发环境

1.安装并配置JDK:到官网下载jdk文件,根据自己的操作系统选择适合的位数的JDK,下载完毕之后我们配置环境变量,先设置JAVA_HOME这个系统变量名称,变量值为JDK在你电脑上的安装路径,如:E:ProgramFilesJavajdk1.7.0_75,然后在PATH属性变量后加:;%JAVA_HOME%bin即可。

2.安装配置Android SDK:为了免去安装步骤,我们选择下载SDK的压缩包,点击【android-sdk_r24.0.2-windows.zip】这个超链接,进行下载,下载完毕之后我们对其解压,双击SDK Manager.exe进行安装即可。

3.下载ADT插件:为了使得Android应用的创建,运行和调试更加方便快捷,Android的开发团队专门针对Eclipse IDE定制了一个插件:Android Development Tools(ADT)。

4.下载安装Eclipse2.2 Eclipse 中的Android工程结构如1图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图 1 Android工程结构图

2.2系统模块总体设计

开发环境准备好以后,我们需要将系统的总体的模块设计出来,整体项目综合运用Android知识点,MVC框架构建项目,本项目所实现的功能模块主要包含以下几个:手机防盗模块,SIM卡变更报警、GPS追踪、远程销毁数据、远程锁闭手机四个子模块;通信卫士模块,黑名单管理、电话拦截、短信拦截三个子模块;软件管理模块,显示所有软件、卸载软件、启动软件、分享软件四个子模块。进程管理模块,显示所有正在运行的进程和剩余内存、一键清理两个子模块;流量统计模块,显示软件消耗的流量;手机杀毒模块,检测病毒、清除病毒两个子模块;系统优化模块,缓存清理、SD卡清理两个子模块;高级工具模块,手机号码归属地查询、常用号码查询、备份短信、还原短信、程序锁五个子模块;设置中心模块,自动更新设置、来电归属地显示设置、黑名单拦截设置、程序锁设置、归属地提示框风格、归属地提示框位置六个子模块。通过需求分析和系统可行性设计出来系统模块总设计如2图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图 2系统模块图

2.2.1 手机防盗模块设计

针对Android手机丢失后或被有意窃取我们手机中的隐私信息等安全隐患,我们将设计出此功能。

绑定安全手机号码:当我们第一次登录安全助手的时候,需判断当前SIM卡号是否和被保护的SIM卡号是否相同,如果不相同,则手机将在后台自动发送短信给我们绑定的安全号码,那么我们的手机就会大大提高了安全性。

设置报警指令:当我们首次登录安全助手时,如果匹配到当前手机可能遗失,那么这个功能就会给我们自动报警。

设置远程开启防盗指令:开启远程手机防盗功能,用一个广播接收监听手机的启动状态,启动完将判断远程防盗是否开启,并且用TelephonyManager的getSimSerialNumber()方法获取到手机的SIM卡串号,对比手机串号是否一致,从而显示手机有没有被盗。

设置远程锁屏密码:当判断手机已经被盗,那么我们的后台将会启动一个锁屏程序将手机进行锁屏。

2.2.2 通讯卫士模块设计

拦截电话:用户在我们的添加黑名单的页面添加一条黑名单,那么我们后台将会拦截到此号码来电,直接挂掉,避免用户受到骚扰电话。

拦截短信:用户添加一个黑名单的号码,当这个号码发来信息的时候,后台将此短信进行删除,从而用户就看不到垃圾信息。

全部拦截:用户添加的所有号码,不管是来电还是短信,用户都不会看到。

添加黑名单业务流程如3图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图 3添加黑名单图

通过手机号码进行过滤用户设置的黑名单,将不想看到的手机来电和手机短信进行过滤,数据库设计表如4图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图 4黑名单数据表图

黑名单表中的字段:id为主键;number为手机号码;status为拦截的状态

2.2.3 软件管理模块设计

当今的手机应用数不胜数,但同时又面临了一个问题,比如当我们遇到急事,想使用QQ的时候,但是我们手机上的应用多达过百,找了半天又找不到。此功能就是解决类似的问题,我们可以启动某个应用程序,卸载一些不用的软件,可以将我们想用的程序分享给小伙伴。软件管理如5图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图 5软件管理图

2.2.4 进程管理模块设计

当前Android手机有一致命的缺点就是内存大小,如果我们点了很多的程序不关那么我们手机将卡的不动,正因为这样,我们Android的性能就大大降低了。那些我们暂时不需要的软件我们就可以将它关闭,释放内存,此功能可以将内存信息以及运行中进程详细信息展示给用户,然后用户自如的终止某个程序。因此,我们设计出此功能,设计流程如6图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图 6进程模块图

2.2.5 系统优化模块设计

我们都使用过Android手机,如果我们手机打开的应用过多或者长时间不关机,那么我们的手机很可能就会卡住。那是因为由于Android手机的内存有限,那么我们就需要将不定时的清除手机中的缓存数据,此功能将打开系统自带的查看应用程序详情,进行缓存清除。还有一个优化是我们第一次进入系统的时候,我们写的监听器就会监听软件服务器看是否有新的软件更新,如果有,那么我们将提醒我们的用户将软件进行更新升级,以免功能不能使用等一些BUG。

2.2.6 程序锁模块设计

我们每个人都想有自己的隐私空间,比方说有的时候我们需要将自己的手机借给弟弟妹妹玩的时候,这时我们就不想让他人看到自己的隐私,那么此功能可以将我们的一些程序上锁,比如短信,通讯录和短信等,那么其他人就不能使用这些功能,做到了保护用户隐私的功能。用户再也不需要给屏幕加密码锁,只需要给需要保护的程序上锁即可,当第一次使用上锁的程序的时候才会要我们输入密码,只有当下次锁屏完之后我们就再需要解锁了。数据库表设计如7图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图 7程序锁定数据库表

2.2.7 手机杀毒模块设计

手机杀毒功能也是我们平时最常用的应用程序,我们需要将市场上收集的病毒建一张表进行数据库存储,下面我们称作病毒表,我们将手机程序扫描出来和病毒表里的病毒进行一一比对,如果比对上那么就是病毒,这边即将采用多线程进行清除工作,如果我们没有比对到病毒,那么手机是暂时安全的状态。手机病毒比对并进行查杀如8图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图 8查杀病毒流程图

3系统实现

3.1系统优化模块

3.1.1更新软件功能实现

该模块先是我们第一次进入系统的时候,我们的监听器就会第一时间监听中央服务器的软件是否发布过,如果发布过新的版本,那么用户的界面就会弹出一个提醒用户更新软件的信息。用户可以选择暂时不更新,那么这个操作就有可能会影响后续的软件使用问题,也可以选择立即更新。其设计是我们先上传最新版本的系统,当检测出有新的版本可以升级时,我们在onClick方法中获取到下载新的软件的网路地址即可

软件更新提醒如9图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图9提醒更新界面图

当用户选择更新我们系统,那么将会出现这样的界面,如10图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图10正在更新软件

3.1.2清除缓存功能实现

正如我们知道的那样,我们使用某些应用程序的时候就会有一些不必要的文件下载到手机上来,比如说我们使用浏览器浏览网页的时候,我们并不想一些没用的图片下载下来,但是手机就会缓存下来,此功能有一键清除缓存的功能。如11图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图11清除缓存页面

3.2手机防盗模块

当我们第一次打开软件的时候,这时候我们将必须进入手机防盗模块的绑定安全号码,当我们的手机遗失的时候,我们将通过这个号码就能找到我们的手机,如果别人捡到此手机,插入的手机卡跟我们设置的手机号不一致的时候,此手机将会自动启动我们的锁屏。其设计是使用系统服务TelephonyManager读取手机卡的序列号,我们将安全号码输入以后,我们需要创建BootPhoneReceiver监听手机卡是否会变:

 

实现如12图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图12绑定安全号码

显而易见,此安全助手我们也必须加程序锁,当我们进入助手的时候,系统就会提醒我们输入程序锁的密码,如图13所示:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图13应用程序主界面密码认证

终于我们进入了程序的主页面,其设计是先创建主页面的Activity和布局文档,我们自定义一个adapter继承父类即可,实现如图14所示:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图14程序主页面

3.3程序锁模块

首先,我们先建一张程序锁表,我们使用的是SQLite数据库,那么写的类就必须继承SQLiteOpenHelper,然后在onCreate这个方法里面写语句,然后,我们点击某个应用的时候,也就是我们点击的应用是我们想加锁的应用,那么将此应用的包名加入到我们刚建的数据表中,并且在上面显示一个锁标志。当我们又点击一次的时候,也就是想解锁的时候我们将把此应用的包名从数据库中删除即可,并且显示已解锁的标志。

因为程序锁表有加锁和未加锁的状态,那么我们将有两个显示的页面未加锁的应用如15图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图15未加锁的应用

已加锁应用如16图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图16加锁应用

当我们给我们的必要的软件上程序锁后,如果我们想要使用我们这个软件,那么我们就必须要输入程序锁的密码才能够继续使用,否则不能继续使用。当用户使用我们加了程序锁的应用,如17图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图 17 验证程序密码页面

3.4病毒查杀模块

此功能模块我们需要先将收集来的病毒的信息存入到数据库中,我们知道每一个病毒都有一个唯一的信息,也就是通过md5信息加密过的。当我们用户使用此模块的时候,我们将遍历出我们手机中的所有的应用程序,用手机上的应用程序的md5信息与病毒数据库中的信息进行一一比对,如果比对上,那么我们就提示用户对其查杀,查杀过程也就是卸载程序的过程,查杀完毕将继续进行扫描,直到扫描结束。

遍历所有的应用程序如18图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图18遍历比对病毒中

当发现病毒的时候,我们的系统将提示用户将病毒进行查杀,如19图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图19提示用户查杀病毒

3.5通讯卫士模块

此功能也是我们常用功能之一,我们将监听来电服务和短信服务,从而判断来电号码和短信号码是否是黑名单中的手机号码,如果是,那么我们将主动的拦截此号码来电以及删除短信信息,为保障用户的生活。其设计就是将用户输入的黑名单存入数据库,创建一个监听BlackPhoneReceiver,将内容与我们数据库中的号码进行比对即可;挂断黑名单来电我们是通过Android里面的api方法endCall;删除电话记录即可。其部分代码为:

public class BlackNumberService extends Service {

@Nullable

@Override

public IBinder onBind(Intent intent) {

return null;

}

@Override

public void onCreate() {

super.onCreate();

}

@Override

public void onDestroy() {

super.onDestroy();

}

}

当然,我们可以任意的添加黑名单号码,黑名单管理页面如20图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图20黑名单管理页面

当我们点击新增黑名单的按钮,新增黑名单号码如21图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图21新增号码

3.6软件管理模块

此功能也是我们最为常用的功能之一,使用该功能我们将遍历出我们手机中的所有的应用,我们点击某个应用的时候,我们将会显示出此程序的一些详细的信息,我们也可以将此软件进行增删改查,还有一个实用的功能是,我们可以点击发送,可以将此软件分享或者发送给朋友。其设计是通过listview将软件遍历出来,在每条信息上加上运行、卸载、分享这三个单击事件,当用户点击的时候会触发相应的Activity。

当我们进入软件管理这个模块的时候,将会显示如22图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图22管理首页

当我们点击某一个应用的时候,将会出现如23图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图23软件的操作

3.7号码归属地模块

此功能模块主要给用户提供归属地查询功能,当我们收到一个短信的时候,我们又不知道该号码是哪里的,我们是否认识,这时,我们就想知道号码是哪里的,从而判断这个号码的主人我们是否认识,这样安全性就大大的提高了。我们将用户输入的号码和手机号码归属地数据库进行比对,从而将数据显示出来。其设计是我们先创建一个监听服务PhoneAddressService,先获取TelephonyManager,通过listen方法实现,然后我们自己写一个监听器继承PhoneStateListener重新写onCallStateChanged方法。其部分代码为:

public static String getAddress(Context context, String number) {

String address = "未知号码";

String path = new File(context.getFilesDir(), DB_NAME).getAbsolutePath();

SQLiteDatabase database = SQLiteDatabase.openDatabase(path, null, SQLiteDatabase.OPEN_READONLY);

if (number.matches("^1[3-8]\d{9}$")) {

Cursor cursor = database.rawQuery("select location from data2 where id=(select outkey from data1 where id=?)",

new String[]{number.substring(0, 7)});

if (cursor.moveToFirst()) {

address = cursor.getString(0);

}

cursor.close();

}

当用户在输入框输入一个号码的时候,我们将查询出来的信息,其设计是一个QueryAddressActivity,我们通过前7查询对应的区域,再根据4位区号再进行查询,如果号码就3-4位那么是紧急号码,如果都不满足,那么就是未知。如24图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图24查询号码

此模块还有一个常用的号码是,我们可以查询出一些常用号码,这样方便用户的生活。常用号码显示如25图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图25号码列表

3.8设置中心模块

此功能是我们可以查询出我们哪些功能可以使用,哪些功能我们不想使用,但是这样就有一个问题,就是我们需要每次进来的时候将重新读取我们的所有的应用,以免出现脏读的数据信息。

当我们对一些设置进行管理的时候,如26图:

[开题报告+论文+源码]基于Android平台的手机安全助手的设计与实现

图26设置中心

4 系统测试

4.1 测试目的以及原因

测试目的是让我们在开发周期的时候今早发现多的bug,从而上线的时候尽量顺利进行。程序员写代码大多是比较疲劳的状态写的代码,那么错误率肯定很高,还有一点的是在一些边界值(最大值和最小值)的时候我们就会犯一些错误,这也是恰恰最容易出现错误的地方。

4.2 软件测试原则

我们深知测试的优点很多,但是测试也会花费昂贵费用,而且测试几乎都是死循环,我们想要测试出所有的问题bug那肯定是不能实现的,而且测试的时间肯定是非常久,且是浪费时间。所以我们将测试个差不多的情况就可以上线使用,然后继续开发测试修复。

4.3 常用测试

主要有黑盒测试:测试结果,白盒测试:测试源码较多,静态测试:检查程序代码、界面或文档可能存在的错误的过程,动态测试:检查输出结果和预期结果匹配度。还有我们最为常见的单元测试和集成测试等。

4.4 测试实现

(1)手机防盗模块的测试:主要测试我们先绑定一个安全号码,然后我们将换上另一张手机卡和我们将安全助手上程序锁,看是否有对应的效果。

测试用例表如表1所示:

表1手机防盗模块测试

序号 输入 预期 实际 测试
1 换SIM卡 显示提醒 正确显示提醒 通过
2 打开安全助手 提示输入密码 正确提示 通过

(2)病毒查杀模块的测试:主要测试我们先下载一些未认证的数据证书到手机上,在病毒表中加入此数据,点击病毒查杀,看是否有对应效果。

测试用例表如表2所示:

表2查杀病毒模块测试

序号 输入 预期 实际 测试
1 点击查杀病毒 可以清除病毒文件 能够清除 通过

(3)通讯卫士模块测试:主要测试我们先将一个手机号加入黑名单,用该手机发短信、打电话进行测试,看是否有对应效果。

测试用例表如表3所示:

表3通讯卫士模块测试

序号 输入 预期 实际 测试
1 拦截来电 没有收到来电 能够拦截 通过
2 拦截短信 没有收到短信 能够拦截 通过
3 全部拦截 拦截短信电话 能够拦截 通过

(4)软件管理模块测试:主要测试我们点击分享、运行、卸载,看是否有对应效果。

测试用例表如表4所示:

表4软件管理模块测试

序号 输入 预期 实际 测试
1 点击运行 运行软件 能够运行 通过
2 点击分享 分享给好友 成功分享 通过
3 点击卸载 卸载软件 卸载成功 通过

(5)号码归属地模块测试:主要测试我们进行拨打一个号码和查询一个号码,看是否有对应效果。

测试用例表如表5所示:

表5号码归属地模块测试

序号 输入 预期 实际 测试
1 拨打一个电话 显示归属地 能显示归属地 通过
2 查询正确号码 显示归属地 能够显示 通过
3 查询错误号码 显示归属地 能够显示 通过

5 总结

此系统是基于Android平台集成的,首先我通过学习Android基本知识,后来我慢慢的接触了Linux操作系统,linux操作系统相对Windows来说更要胜出一筹,通过java技术遵循三层架构的特点编写的代码,并采用restful风格进行处理。此系统实现了防盗模块,通讯模块,软件管理模块,进程模块,杀毒模块,优化模块设置模块,归属地模块,其基本功能已经实现并可以使用。安全保障主要是通过防盗模块里面有设置安全号码、设置程序锁,杀毒模块和通讯模块中的黑名单将对用户进行全面的保护,不受干扰。同时,通过我们的调查我们也加入了进程管理和软件管理模块,可以让用户使用更加顺畅。

但是一些功能中还是有点缺陷,比如说手机防盗模块中功能,我们手机遗失的时候,我们系统判断出此手机已经遗失,那么我们可以将自动拨号打紧急号码,还有的是我们可以调用手机的前置摄像头将疑犯的面容拍摄下来发给我们绑定的邮箱,没有实现恢复用户误删除的数据,没有实现亲情号码联机等等。今后,作为一个手机安全助手软件,这些功能还远远不够,还需进一步的完善与实现。

 

致谢

通过本次论文的编写过程,从构思到实现,那就是一个质的突变。首先,在此我要特别感谢我的导师陈琪,对我的论文材料和论文进行反复审阅并指出其中的不足之处。终于,在xx老师的精心教导下,已经完成了该助手的大体功能模块。

毕业设计结束的同时,也就是说我们的大学生活将要正式结束了,我也要感谢我的室友和我的同事们,平时有什么不懂的地方我就不停的问他们,谢谢他们不管多晚的去问题,他们都会热心的帮助我解决问题,非常地感谢他们!

最后,我要向对本文进行评阅和参与答辩的各位老师表示深深的谢意。在此,非常的感谢他们!

版权: 转载请注明出处:https://study.yunjunet.cn/1595.html

下一篇:

已经没有下一篇了!

相关推荐
2024-03-06

1 引言 1.1研究背景 Android曾经是一家创立于旧金山的公司的名字,该公司于2005年8月份被Google收购…

726 套餐
2024-02-02

云炬源码商品供应系统项目部署演示视频是对云炬源码商品供应系统项目的部署、配置和使用进行全面介…

1,015 云朵
2024-02-02

云炬源码物资管理系统项目部署演示视频是对云炬源码物资管理系统的部署、配置和使用进行全面介绍的…

766 套餐
2024-02-02

云炬源码企业财务管理系统项目部署演示视频是一段详细展示云炬源码企业财务管理系统如何进行项目部…

586 套餐
2024-02-02

云炬源码陶瓷工厂进销存系统项目部署演示视频是为了展示云炬源码陶瓷工厂进销存系统的部署过程和功…

284 套餐
2024-02-02

技术可行性:该系统采用了先进的信息技术和供应链管理理念,通过整合资源、优化流程、降低成本等…

929 套餐
发表评论
暂无评论

还没有评论呢,快来抢沙发~

助力内容变现

将您的收入提升到一个新的水平

点击联系客服

云炬客服竭诚为您服务!

客服电话

19966519194

客服邮箱

2042132648@qq.com

扫描二维码

关注微信公众号

扫描二维码

手机访问本站