二次开发2015年开发mapgis igserver入门手册_第1页
二次开发2015年开发mapgis igserver入门手册_第2页
二次开发2015年开发mapgis igserver入门手册_第3页
二次开发2015年开发mapgis igserver入门手册_第4页
二次开发2015年开发mapgis igserver入门手册_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

1、目录MapGIS IGServer Flex 快速入门I目录I前言1第 1 章 准备初识 Flex 与二次开发21.1 Flex 与其开发工具21.2 基于 Flex 的二次开发..4二次开发方式2二次开发 SDK3二次开发环境4版本说明4第 2 章 开始开发环境配置62.1Flex 开发环境配置62.1.1 安装 Flex 集成开发环境62.1.2 安装 FlashPalyer 插件7GIS 平台安装配置7GIS 服务配置发布132.22.3第 3 章 入门创建第一个应用153.13.2创建第一个Flex 工程15创建第一个 Flex 应用20IMapGI

2、S IGServer Flex 快速入门前言互联网 GIS 是 Internet 技术应用于 GIS 开发的产物。GIS 通过 WWW 功能得以扩展,真正成为一种大众使用的工具。互联网与 GIS 的融为 GIS 应用的催化剂,推动着 GIS 在各行业的普及应用。为了更好地满足产业发展及用户的个性化需求,中地数码于 2014年推出首款云 GIS 软件MapGIS 10。MapGIS IGServer,客户的个性化需求,提供一个功能全面、性能稳定、简便易用的高效互联网地理信息系统开发平台。该平台采用新一代的 T-C-V 软件结构,提供开放式的跨平台网络GIS 服务体系与二次开发框架,同时具备 GI

3、S 服务共享发布与行业开发应用的功能。基于 MapGIS IGServer 平台的二次开发体系,不受技术环境的制约,全面支持跨平台,可快速构建行业应用,实现系统集成。本文档为基于 Flex 的 MapGIS IGServer 二次开发入门手册,希望读者最好能够了解掌握一些基础知识:具备一些 Web 方面或 GIS 的基础知识,了解网页制作与 Web 开发技术,以及 Flex 的相关知识。.1.MapGIS IGServer 开发系列第1章 准备初识 Flex 与二次开发1.1 Flex 与其开发工具Flex 通常是指 Adobe Flex,是最初由 Macromedia 公司在 2004 年

4、3 月发布的,基于其专有的 Macromedia Flash 平台,它是涵盖了支持 RIA(Rich Internet Applications)的开发和部署的一系列技术组合。Flex 是一个用来创建丰富信息的互联网应用程序的服务器组件。Flex内置的界面可以由 Macromeida Flash器显示在客户端系统上。Flex 是一个企业级富互联网应用的表示层解决方案;也是一种应用程序框架。富互联网应用程序 RIA(Rich Internet Application),即将桌面应用程序的强交互性与传统 Web 应用的灵活性结合起来,为用户带来全新的体验。RIA 的富客户端采用异步这是一种安全、具

5、备良好适应性的服务器运行模式。服务端通信,Flex 序列(AS,Flex 的包括编译工具和 IDE,通过编写 MXML(类 XML 标记语言)和 ActionScript语言,从 Flash 移植过来)代码,用编译器来生成 SWF 文件,使用浏览器的 Flash Player 插件进行。目前,随着互联网富客户端的发展,几乎每一个用户浏览器都安装了 Flash Player 插件,为 Flex 的应用奠定了基础。Flex 技术包括以下几个主要技术框架:(1) 描述应用程序界面的 XML 语言(MXML);(2) 符合 ECMA 规范的语言(ActionScript),处理用户和系统的数据模型;(

6、3) 一个基础类库;(4) 运行时的即时服务;(5) 把 MXML 与 ActionScript 文件编译生成 swf 文件的编译器。,构建复杂的1.2 基于 Flex 的二次开发1.2.1二次开发方式MapGIS IGServer 全面支持 Flex 的二次开发方式,即在客户端采用功能强大、优势突出的 Flex 实现。依托全新的 MapGIS IGServer 平台的 GIS 服务,采用 Flex 作为客户端,以用户为中心,为企业级 WebGIS 应用提供强大可靠的支持,为用户提供个性化网络 GIS 服务和丰富惊炫的视觉体验。MapGIS IGServer 平台已提供功能全面的 GIS 数据

7、服务与功能服务,全部封装为 SOAP 和REST 风格服务。Flex 二次开发,提供功能全面的 Flex SDK。作为二次开发用户,主要关注客户端层的 SDK,了解二次开发原理即可。基于 Flex 的二次开发具有如下两种开发模式:.2.MapGIS IGServer Flex 快速入门n纯 Flex 式:纯 Flex 采用 Flex IDE(如 Flex Builder)作为开发平台,全部使用 Flex SDK 封装的控件或接口进行二次开发。WebGIS 展现和交互,数据通讯,业务逻辑都可以在 Flex Builder 中实现,网页仅仅是一个载体。混合式:客户端使用 Flex API + Ja

8、vaScript 来进行开发,同时服务器端可采用 J2EE或.NET 扩展功能,提供了最大的灵活性和向前兼容性。n上述两种模式各具特点,完全可以满足初、中、高级开发者以及小、中、大型项目的开发需求。1.2.2二次开发 SDKMapGIS IGServer 平台提供的 SDK 包括两个部分:一套为基础开发库,不用户修改;另一套为开源库,用户在此开发库上进行修改或扩展开发。(1)基础库表 1-1 Flex 开发基础库(2)开源库表 1-2 Flex 开发开源库控件(主要).3.SDK说明功能说明地图ConditionInput、MapDocDataViewer条件相关控件地图编辑Annotatio

9、nStyle、Editor、PointStyle、LineStyle、PolygonStyle编辑功能相关控件统计分析Chart统计图窗口分析控件空间分析BufferAnalyse 、 ClipAnalyse 、 NetAnalyse 、OverLayAnalyse、TopAnalyse空间分析相关控件投影转换Project投影转换控件公交换乘BusAnalyse公交换乘窗口控件GPS 导航GPSGPS控件OGC 功能OGCCatalog、OGCConditionInput、OGC 服务相关控件SDK说明功能说明zdims2.0.swcAdobe Flex Builder 3.0 对应的基础开

10、发库包括地图显示、基本操作、绘制等基础功能zdims4.0.swcAdobe Flash Builder 4.0 对应的基础开发库zdims4.5.swcAdobe Flash Builder 4.5 对应的基础开发库MapGIS IGServer 开发系列注意:目前,主要提供 2.0、4.0、4.5 三个版本的SDK,其中 4.5 版本为新版本(做了很多优化和更新),推荐使用。关于MapGIS IGServer 基于Flex 的 SDK 的更新,请随时关注MapGIS发布信息。1.2.3二次开发环境基于 Flex 的 WebGIS 二次开发,需要安装配置 GIS 开发平台环境和 Flex 开

11、发环境,详见第 2 章内容。其中,Flex 二次开发使用的开发语言与工具等开发环境,如表 1-3 所示:表 1-3 MapGIS IGServer Flex 开发环境注:Flex 作为富客户端的Web 开发技术,可以结合.NET/Java 的服务器端开发,灵活扩展。1.2.4版本说明MapGIS IGServer 开发平台包括.NET 与 Java 两个版本,提供 REST 和 SOAP 两种风格且一致的 IGServer 服务接口,以及富客户端开发的 Flex 二次开发库。基于 Flex 的二次开发,.NET 与 Java 体系的 WebGIS 开发使用同一套客户端开发库Flex SDK。因

12、此,使用这套 SDK 开发的 WebGIS 具有很好的兼容性,易于维护、迁移和部署。nn.NET:MapGIS IGServer for .NET 平台(GIS 服务)+ 基于 Flex 的二次开发 SDK;Java:MapGIS IGServer for Java 平台(GIS 服务)+ 基于 Flex 的二次开发 SDK。其中,目前提供的 Flex SDK 的基础库有如下三个版本,向下兼容:nnnAdobe Flex Builder 3 提供的 zdims2.0.swc; Adobe Flash Builder 4 提供的 zdims4.0.swc;Adobe Flash Builder

13、4.5/ Adobe Flash Builder 4.6 提供的 zdims4.5.swc。上述三个版本的基础库,zdims4.5.swc 为新版本,进行全面优化和更新,推荐使用。关于 MapGIS IGServer 基于 Flex 的 SDK 的更新,请随时关注 MapGIS发布信息。.4.开发方式服务器端语言开发环境Adobe Flex Builder 3.0C#.NETAdobe Flash Builder 4 及以上FlexJava.NET:Microsoft Visual Studio 2005/2008/2010Java:Eclipse3.0/My Eclipse 6.0/My E

14、clipse 8.0客户端语言MXMLActionScriptJavaScriptOataViewer、OGCEditor、OGCToolBar基本操作Measure 、 Scale 、 IMSCatalog 、 Magnifier 、NavigationBar基本操作相关控件图层类控件LayerConditionInPut、 LayerDataViewer、LayerDisplaySet、LayerEditor、LayerInfo图层显示、编辑、结果显示等图层类控件MapGIS IGServer Flex 快速入门在基于 Flex SDK 的二次开发中,地图服务使用 IGServer 平台内

15、置的转发器,即将地图服务地址参数( serverAddress ) 设置为转发器地址, 由 GIS 服务器+/igs/rest/ims/relayhandler 组成,根据实际应用的 GIS 服务器环境配置。IP+ 服务端口nn.NET 版服务Java 版服务默认转发地址:默认转发地址:;。Flex SDK 封装了几乎涵盖全部 WebGIS 功能的 API,提供丰富的功能控件,同时提供灵活的扩展机制。不同版本的 GIS 服务器,共用同一套 Flex SDK,提供一致的二次开发应用模式。因此,基于 Flex SDK 开发的纯 Flex 模式的 WebGIS 应用,具有很好的兼容性,无论GIS 服

16、务器环境使用的是.NET 版本还是 Java 版本,均可移植部署,维护简便。.5.MapGIS IGServer 开发系列第2章 开始开发环境配置MapGIS IGServer 基于 Flex 的二次开发,需要分别安装配置 Flex 开发环境、MapGIS IGServer 平台与 GIS 服务配置发布,这是进行二次开发前的必备工作。总体环境配置如下:(1) 安装 Flex 集成开发环境;(2) 安装 GIS 开发平台:安装 MapGIS IGServer 平台,构建 GIS 服务器环境;(3) GIS 服务器配置与 GIS 服务配置发布:n服务器配置:安装平台后,在服务管理器(MapGIS

17、Server Manager)中已默认配置本的 GIS 服务器,根据实际开发环境进行配置,本地开发使用默认配置即可;n数据组织与发布:根据开发中采用的地图加载方式(地图类型),在 MapGIS 10 平台中准备数据,并在 MapGIS Server Manager 中发布相应的地图服务。2.1 Flex 开发环境配置基于 Flex 的二次开发环境,需要安装配置 Flex 集成开发环境和两个 FlashPlayer 插件, 具体的环境配置将在下述章节里讲述。Flex 集成开发环境目前主要使用 Flex Builder 3、Flash Build 4 系列版本,根据使用的二次开发库版本而定。2.1

18、.1安装 Flex 集成开发环境基于 Flex 的二次开发环境,需要安装配置 Flex 集成开发环境和两个 FlashPlayer 插件。一般地,Flex 集成开发环境版本与 Flex 开发库版本一致,可以向下兼容(Flash Builder 版本不高于 Flex SDK 的版本)。下面以安装 4.0 版本的 Flex 集成开发环境为例。注:本手册使用MapGIS IGServer Flex 的开发库zdims4.5.swc,最好使用 Flash Builder 4.5/Flash Builder 4.6 版本。安装 Flex 集成开发环境Flash Builder 4,双击其安装程序后,根据

19、安装界面提示安装即可。安装好 Flash Builder 4 之后会自动安装 flex sdk 4,无需手动安装。.6.MapGIS IGServer Flex 快速入门图 2-1 Flash Builder 安装界面注:Flash Builder 4 的安装包与安装帮助手册均可到Adobe 公司的上。2.1.2安装 FlashPalyer 插件安装 Flash Builder 4 开发环境后,需要安装 FlashPalyer 插件,实现基于 Flex 开发后的程序。需要安装的插件如下:1、安装 FlashPalyer 插件,不同的浏览器内核选择相应的安装文件进行安装。插件:安装 Adobe

20、Flash Player Active 7.exe插件:安 Adobe Flash Player Plugin 7.exennIE 内核的 flash非 IE 内核的 flash2、安装 flashplayer 的 debug 程序,用于调试 AS程序。n安装 flashplayer_10_ax_debug 程序安装完成后,就可以Flex 程序和调试 AS 程序了。2.2 GIS 平台安装配置MapGIS IGServer 是一个全面跨平台的 GIS 服务共享开发应用平台,对安装环境无特定的要求,广泛支持各种软件、硬件、以及数据库。该平台包括 Java 与.

21、NET 两种技术体系, IGServer.Java 支持 Windows 系列、Unix、Liux 等操作系统,IGServer.NET 应用于 Windows 系列操作系统。为达到较好的性能,建议硬件使用 1GHZ 以上的 CPU 与 1G 以上的内存,三维功能需要显卡支持。GIS 环境配置需要安装 MapGIS IGServer 平台,总体环境配置如下:1.2.安装 MapGIS 开发者;安装 MapGIS IGServer 开发平台,以 MapGIS IGServer for .NET 安装为例;.7.MapGIS IGServer 开发系列(1)运行安装程序,弹出安装初始界面,“”按钮

22、;图 2-2 安装界面协议的界面,“我接受协议中的条款”,然后(2)进入用户按钮;“”图 2-3 用户协议界面(3)提供默认安装、自定义安装、完全安装三种方式,在此可以推荐选择默认安装或完全安装类型,然后“”按钮;图 2-4 选择安装类型界面.8.MapGIS IGServer Flex 快速入门(4)根据应用选择要安装的安装包(模块),一般全部,然后“”按钮;图 2-5 选择需要的安装包(5)在此将检测系统必备组件,没有则将先安装必备组件,全部检测通过后单;图 2-6 系统环境检测界面进入选择安装路径界面,默认安装在 C 盘,可以根据实际需要选择安装路径,然(6)后“”按钮;图 2-7 安装

23、路径设置界面.9.MapGIS IGServer 开发系列(7)进入安装过程界面,将依次安装平台的各个包,显示当前安装包信息和进度;安装完成后将弹出一个提示框,可选择是否查看安装信息;最后完成”按钮;图 2-8 安装进度界面图 2-9 安装完成提示框图 2-10 基本包安装完成界面(8)安装基本将进入“安装应用程序”界面,“安装”按钮进行安装;.10.MapGIS IGServer Flex 快速入门图 2-11 安装应用程序界面进入安装应用程序的安装过程界面,在此将依次安装和配置 MapGIS IGServer 相关(9)模块,显示当前进度;完成时会弹出一个提示定”即可;框,提示“安装”,“

24、确图 2-12 安装应用程序进度界面.11.MapGIS IGServer 开发系列图 2-13 应用程序安装提示(10) 最后“完成”按钮,将弹出 MapGIS IGServer 的服务管理器窗口,即MapGISServer Manager 的。图 2-14 MapGIS Server Manager 登录界面安装平台后平台服务默认自动启动,包括 MapGIS 数据服务(MapGISDataStorageService)和 IGServer 服务(MapGIS IGServer)。通常这两个服务为自动启动,如果未启动,则需要手动全部启动。.12.MapGIS IGServer Flex 快速

25、入门图 2-15 启动数据服务与IGS 服务2.3 GIS 服务配置发布安装 MapGIS IGServer 开发平台后,要根据开发需求配置数据与 GIS 服务,详细配置说明请参见MapGIS IGServer 服务配置指南操作手册。注:GIS 服务管理器中默认配置了本的GIS 服务,即GIS 服务器与管理服务器配置在同一台上,可根据开发部署的需要进行更改配置。开发前,基于应用的具体需求,可根据开发中采用的出图方式(地图类型)组织制作地图(矢量地图文档或瓦片地图)。n矢量地图组织发布:在 MapGIS 10 桌面工具中组织地图文档(*.mapx),然后在 MapGIS 10 工作空间中附加此地

26、图文档的地理数据库,并通过 MapGIS Server Manager 发布此矢量地图文档;矢量图层不需发布。瓦片地图组织发布:通过 MapGIS 10 桌面工具瓦片裁剪工具裁剪得到瓦片地图(*.TDF),或使用已有瓦片地图(*.HDF/*.TDF),然后通过 MapGIS Server Manager发布瓦片地图。n本手册入门示例需要使用瓦片数据 WhMap.HDF,开发前需通过 GIS 服务管理器(MapGIS Server Manager)发布此瓦片数据服务。在此,以发布瓦片地图为例,步骤如下:(1) 先将需要发布的瓦片数据WhMap.HDF 放置到GIS 服务器所在 PC 机上的任意指

27、定位置。也可以放置到平台的默认路径.MapGIS 10Sample 下。(2) 登陆平台的服务器管理站点MapGIS Server Manager,.NET 版默认地址:,Java 版默认地址:块的地图服务菜单下发布瓦片地图 WhMap.HDF。发布。在数据仓库管理模后,数据信息会以列表的形式展现,如图 2-16 所示。点击已发布的地图数据名称,可以预览地图和查看数据是否发布。.13.MapGIS IGServer 开发系列图 2-16 发布 MapGIS 地图服务.14.MapGIS IGServer Flex 快速入门第3章 入门创建第一个应用3.1 创建第一个 Flex 工程在开始菜单中

28、,找到 Flex 集成开发环境(AdobeàAdobe Flash Builder 4),进入 Adobe Flash Builder 4 主界面。打开后,(1)选择“新建”菜单,创建一个 Flex Project 工程,如图 3-1 所示;或者在“包管理器(Flex Navigator)”中,右键空白处,选择“新建(New)”à“Flex 项目(FlexProject)”,如图3-2 所示;图 3-1 Flash Builder 4 中新建工程(一)图 3-2 Flash Builder 4 中新建工程(二).15.MapGIS IGServer 开发系列图 3-3 Fl

29、ash Builder 4 中新建工程(三)输入工程名,如 firstmap,选择“浏览”项选择工程存放的路径,并根据二次开发(2)库的版本选择相应的 Flex SDK 版本,然后点击“”按钮,弹出选择编译文件存放路径的框,使用默认值即可。图 3-4 Flash Builder4 中输入工程名.16.MapGIS IGServer Flex 快速入门图 3-5 选择编译存放路径”按钮,进入设置源数据和基础开发库的页面。具体分为如下两个部(3)“分:a:在“源路径”选项卡中设置源数据目录和主程序文件,使用默认值即可,如图所示:3-6图 3-6 确定源数据目录和主程序文件b:在“库路径”选项卡中设

30、置基础开发库,即右侧的“添加 SWC”按钮,选择MapGIS IGServer 的基础二次开发库文件(例如 zdims4.5.swc),最后点击文件选择 “OK”按钮即可。框的.17.MapGIS IGServer 开发系列图 3-7 添加SWC 文件图 3-8 选择MapGIS IGServer 提供的 SWC 文件.18.MapGIS IGServer Flex 快速入门图 3-9 已添加 SWC 文件图 3-10 SWC 文件内容注:zdims4.5.swc 是MapGIS IGServer 基于Flex 的基础开发库,提供基本的功能控件。关于MapGISIGServer 基于Flex

31、的 SDK 的更新,请随时关注 MapGIS发布信息。(4) 最后框中的“完成”按钮,完成新工程的创建,如下图所示:.19.MapGIS IGServer 开发系列图 3-11 新建工程的主界面工程生成后,切换到左边的“组件”窗口,在“自定义”目录下增加了一些基础功能控件,如 IMSMap 等。如下图所示:图 3-12 基础功能控件到此为止,一个新的 Flex project 工程创建完成。在此基础上完成基于 MapGIS IGServer平台的二次开发,具体步骤在下面的章节中介绍。3.2 创建第一个 Flex 应用地图显示是 WebGIS 中最基础的功能。下面将在 3.1 节的基础上介绍如何

32、创建第一个应用程序,实现地图基本显示功能。在 MapGIS IGServer 平台中,MapGIS 地图显示主要分为三种方式,即瓦片地图显示、矢量地图文档显示、矢量图层显示。下面以瓦片地图显示为例,具体介绍创建一个瓦片地图显示功能应用程序的全过程。.20.MapGIS IGServer Flex 快速入门瓦片地图显示功能需要使用地图容器控件(IMSMap)和瓦片图层控件(TileLayer),依次拖动控件并设置相关参数实现。开发前将瓦片地图(裁剪好的瓦片)配置到 GIS 服务器中, 即发布瓦片地图,并启动服务。实现步骤如下:(1)在 Flash Builder 4 中打开 3.1 章节中新建的

33、 firstmap 工程,双击 firstmap.mxml,选择窗口“设计”按钮,切换到设计界面。图 3-13 firstmap 设计页面加载一个地图容器控件 IMSMap:切换到左侧“组件”窗口,在“自定义”目录中找到 IMSMap 控件,直接将其拖到项目的设计页面里。(2)图 3-14 加载 IMSMap 控件然后切换到右侧的 Flex 属性视窗,根据整体布局需求调整该控件的大小、位置等属性。此控件的大小为地图域的大小,可根据需要自行设置。.21.(3)MapGIS IGServer 开发系列图 3-15 设置 IMSMap 控件的属性注:在项目应用中,通常借助 Flex 提供的控件进行布

34、局,灵活运用。如使用 HBox 控件横向布局,VBox 控件纵向布局,这样就导致功能控件在 IE 窗口缩放时出现重叠现象。有关在 Flex 中布局的控件使用或一些技巧,请参见Flex 的使用手册等相关资料。如果需要在工程中实现显示地图外的其它功能,需要设置 IMSMap 组件的 id 属性,即把其 id 属性设置为“mapContainer”,并这个 id 的值,如下图所示:图 3-16 IMSMap 控件公共属性在设计页面拖动控件的时候,在源码页面会生成相应的代码。可以在设计页面上直接拖控件和设置相关属性,也可在源码页面手动添加相应功能的代码。上述拖动 IMSMap 控件并设置属性后生成如下

35、代码:.22.MapGIS IGServer Flex 快速入门(4)实现一个瓦片地图显示的功能:在左侧“组件”视窗的“自定义”目录下找到TileLayer控件,将其拖动到地图容器里(注意一定要将 TileLayer 控件拖到地图容器中,否则无效)。图 3-17 加载 TileLayer 控件设置参数,主要包括瓦片地图的名称、地址、范围和显示级数。(5)a:根据所要显示的瓦片图片信息,在 TileLayer 控件 Flex 属性视窗的 MapGisIMS 目录下分别设置各参数值,主要为 hdfName 与 serverAddress 两项。图 3-18 设置 TileLayer 控件的属性重要

36、参数注释:.23.<map:IMSMap horizontalCenter="0" verticalCenter="0" width="600" height="400" id="mapContainer"></map:IMSMap>MapGIS IGServer 开发系列nhdfName:瓦片地图服务名称。例如示例数据 WhMap.HDF,在服务管理器中已发布该数据,即此处名称参数为“WhMap”。serverAddress:地图服务地址,使用 IGServer 内置的转发器的地址,由 GIS 服务器IP+服务端口+/igs/rest/ims/relayhandler 组成。如果是使用.NET 版的本地 GIS 数据n服务,则此项可以使用默认值要根据连接的 GIS 服务器的具体配置进行设置。;否则b:瓦片地图的范围与要显示的瓦片级数一般在地图容器控件 IMSMap 的 MapGisIMS 属性组进行设置。图 3-19 在 IMSMap 控件中设置瓦片地图的范围与级数瓦片地图范围可通过 MapGIS IGServ

温馨提示

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

评论

0/150

提交评论