CN109347951A - 文件导出方法、装置、计算机设备及计算机可读存储介质 - Google Patents
文件导出方法、装置、计算机设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN109347951A CN109347951A CN201811207988.3A CN201811207988A CN109347951A CN 109347951 A CN109347951 A CN 109347951A CN 201811207988 A CN201811207988 A CN 201811207988A CN 109347951 A CN109347951 A CN 109347951A
- Authority
- CN
- China
- Prior art keywords
- file
- local server
- application program
- server
- socket
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了文件导出方法、装置、设备及计算机可读存储介质,方法包括:判断是否满足预设触发条件;若满足预设触发条件,获取应用程序内封装的用于搭建本地服务器软件包;利用所述本地服务器软件包搭建本地服务器;若检测到所述本地服务器搭建完成,在所述本地服务器上创建文件下载网站,所述文件下载网站包括一文件列表,所述文件列表用于提供供用户浏览以及下载的文件;若所述文件下载网站创建完成,生成所述文件下载网站的地址以供用户根据所述地址导出相应文件。通过实施本方案可以解决现有技术中将IOS系统中应用程序的相关文件导出需要依赖开发工具的问题。
Description
技术领域
本发明涉及文件下载技术领域,尤其涉及一种文件导出方法、装置、计算机设备及计算机可读存储介质。
背景技术
IOS系统(由苹果公司开发的移动操作系统)中的沙盒机制(Sand Box)是一种安全体系,它规定了IOS系统中的所有应用程序只能在其所对应创建的文件系统中读取文件,不可以去其它应用程序所对应的文件系统中访问,每个应用程序所对应创建的文件系统为一个独立隔离的区域,该区域被称为沙盒,其中,每个应用程序中的所有的非代码文件都要保存在每个应用程序所对应的区域内,其中,所有的非代码文件包括:图像、图标、声音、映像、属性列表、文本、视频等文件,因此,在IOS系统中,一般的应用是获取不到其他应用的名称和图标等信息的。
IOS系统的沙盒设计思路是原则上禁止不同的应用程序之间相互访问彼此的数据,每个应用程序之间都是相互隔离的,目前并没有一个有效的方式来做每个应用程序之间的通信,所以不能像安卓系统一样直接查看或导出每个应用程序的内部文件,在某些应用场景中,应用程序的测试人员需要将运行在IOS系统中该应用程序的内部文件导出到电脑上,进而详细了解该应用程序的测试版本在IOS系统中的运行情况以及查找解决该应用程序的测试版本在IOS系统中运行后可能存在的问题,然而,由于IOS系统的沙盒机制的限制,测试人员无法直接查看或导出该应用程序的内部文件。目前,测试人员是将安装有应用程序测试版本的苹果手机拿给开发人员,再由开发人员利用开发工具将该应用程序所对应的整个文件系统导出到电脑上,再给到测试人员,测试人员则需要在整个文件系统中查找需要的资源包,例如,图片或其他文件等。
发明内容
本发明实施例提供了一种文件导出方法、装置、计算机设备及计算机可读存储介质,便于直接导出应用程序的内部文件以及提高文件导出效率。
第一方面,本发明实施例提供了一种文件导出方法,其包括:判断是否满足预设触发条件;若满足预设触发条件,获取应用程序内封装的用于搭建本地服务器软件包;利用所述本地服务器软件包搭建本地服务器;若检测到所述本地服务器搭建完成,在所述本地服务器上创建文件下载网站,所述文件下载网站包括一文件列表,所述文件列表用于提供供用户浏览以及下载的文件;若所述文件下载网站创建完成,生成所述文件下载网站的地址以供用户根据所述地址导出相应文件。
第二方面,本发明实施例还提供了一种文件导出装置,其包括用于执行上述第一方面的方法的单元。
第三方面,本发明实施例还提供了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一方面的方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时可实现上述第一方面的方法。
本发明实施例提供了一种文件导出方法、装置、计算机设备及计算机可读存储介质。本发明实施例能够有效克服现有技术中将IOS系统中应用程序的相关文件导出需要依赖开发工具的问题。本发明实施例通过在应用程序中预设触发条件,当判定满足预设触发条件时,获取应用程序内封装的用于搭建本地服务器软件包以实现自行搭建本地服务器的目的,进而建立可供用户进行访问浏览以及下载文件的本地网站,测试人员通过局域网内的浏览器访问该本地网站并通过超文本传输协议(Hyper Text TransferProtocol,HTTP)直接下载所需文件,该方法便于测试人员随时随地导出应用程序内的资源包等文件,并且不影响该应用程序生产版本的投放使用,大大降低了人工成本,适用于需要从IOS系统的应用程序中导出文件的应用场景。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明第一实施例提供的一种文件导出方法的流程示意图;
图2为本发明第一实施例提供的一种文件导出方法的子流程示意图;
图3为本发明第一实施例提供的一种文件导出方法的另一子流程示意图;
图4为本发明第二实施例提供的一种文件导出方法的流程示意图;
图5为本发明第一实施例提供的一种文件导出装置的示意性框图;
图6为本发明第一实施例提供的一种文件导出装置的第一判断单元的示意性框图;
图7为本发明第一实施例提供的一种文件导出装置的第一搭建单元的示意性框图;
图8为本发明第二实施例提供的一种文件导出装置的示意性框图;以及
图9为本发明实施例提供的一种计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1,其为本发明第一实施例提供的一种文件导出方法的示意性流程图。该文件导出方法应用于一应用程序中,具体地,该应用程序可以安装于配置有IOS系统的台式电脑、平板电脑、手提电脑、智能手机、可穿戴智能手表等终端中。如图1所示,该方法可包括步骤S110至S150。
S110、判断是否满足预设触发条件。
具体地,本发明实施例通过事先在应用程序中设置触发条件并判断当前终端运行情况是否满足预设触发条件。在一实施例中,所述判断是否满足预设触发条件包括步骤S111判断是否存在预设触发动作;步骤S112若存在预设触发动作,查找所述应用程序的预设标记位;步骤S113、根据所查找的预设标记位判断所述应用程序是否属于生产版本;以及步骤S114若不属于生产版本,判定满足预设触发条件。其中,在一实施例中,所述预设触发动作包括摇一摇动作以及语音唤醒动作。在其他实施例中,所述预设触发动作还可以根据用户实际使用需求进行自定义设置,例如,可以将预设触发动作设置为指纹三次连续按压屏幕或控制键的动作。
S120、若满足预设触发条件,获取应用程序内封装的用于搭建本地服务器软件包。
具体地,由于搭建的Web服务器不同,其所采用的用于搭建所述Web服务器的软件包也各不相同,其中所述Web服务器包括互联网信息服务(Microsoft InternetInformation Service,IIS)系统、Apache、Netscape Web Server、Nginx、Lighttpd、Tomcat、Zeus等服务器。例如,在本实施例中,当判定满足预设触发条件时,在应用程序内中查找获取一封装的Node.JS软件包。
S130、利用所述本地服务器软件包搭建本地服务器。
具体地,该应用程序将在其内部获取一封装用于搭建服务器的软件包,并利用该软件包自行搭建本地服务器,其中,所搭建的本地服务器为Web服务器,所述Web服务器一般指网站服务器,也称为WWW服务器,是在互联网上运用最广泛、最重要的服务,采用客户端和服务器(Client/Server,C/S)结构的Web服务器的主要作用就是向浏览器等Web客户端展示文档信息并提供文档下载,让可以访问网络的用户都可以进行访问以及下载。其中,客户端和服务端之间通过HTTP协议来实现相互交流,常见的Web服务器有互联网信息服务(Microsoft Internet Information Service,IIS)系统、Apache、Netscape Web Server、Nginx、Lighttpd、Tomcat、Zeus等。访问和获取WWW信息的程序是客户端,可以为浏览器,如Microsoft internet Explorer(IE)、Netscape Navigator等浏览器,也可以为使用HTTP协议的其它任何软件,另外,所述HTTP协议为超文本传输协议(HyperTextTransferProtocol,HTTP)。
S140、若检测到所述本地服务器搭建完成,在所述本地服务器上创建文件下载网站,所述文件下载网站包括一文件列表,所述文件列表用于提供供用户浏览以及下载的文件。
具体地,所述文件列表用于提供供用户浏览以及下载的文件,其中,所述文件包括系统文件、属性列表、文本文件、图像文件、声音文件以及视频文件,所述文件列表用于汇总所述系统文件、属性列表以及文本文件的文件名称并提供相应的下载链接;还用于显示所述图像文件、声音文件以及视频文件的内容并提供相应的下载链接。例如,在一实施例中,所创建的文件下载网站的网页显示包括不限于系统文件名浏览列表,图片浏览页面以及视频播放页面,利用该图片浏览页面可以直接在网站上展示该应用程序内的图片文件,利用视频播放页面可以直接在该网站上直接播放显示该应用程序内的视频文件,其中,每个所述视频文件包括一播放控制按钮,当接收到该播放控制按钮的触发动作时,获取该视频文件的某段数据流,根据该数据流从应用程序的文件系统中查找该视频文件,取出该视频文件以实现在所述视频播放页面上直接播放的目的。在一实施例中,该文件下载网站所接受的请求为HTTP请求,在该文件下载网站内下载文件是通过HTTP网络协议下载到客户端。
S150、若所述文件下载网站创建完成,生成所述文件下载网站的地址以供用户根据所述地址导出相应文件。
具体地,所生成的所述文件下载网站的地址为URL地址,URL是Web服务器的地址,当所述文件下载网站创建完成,将提供访问所创建的文件下载网站的地址,用户可以在客户端的浏览器输入所提供的URL地址,进而利用该地址来寻找并连接Web服务器,用户可以通过浏览器向服务器发送HTTP请求以访问该文件下载网站,Web服务器接收到该HTTP请求后将响应该请求以将该网站所提供的文件列表返回到用户的浏览器,进而用户可以在该网站所提供的文件列表中点击选取所需的文件进行下载,克服了现有技术中需要依赖开发工具来访问以及导出应用程序内部的文件的问题,且解决了只能将整个应用程序的文件系统导出的问题。其中,在发送HTTP请求之前,需要先在该浏览器上输入该地址来寻找所搭建的Web服务器并与该服务器建立TCP连接,进而实现了在TCP连接中发送HTTP请求的目的,并等待该服务器返回HTTP响应。当所述浏览器接收到所述响应后,就会显示该文件下载网站的内容,在本实施例中,它显示了一文件列表以供用户进行访问以及下载。
在上述实施例中,本方案通过在应用程序中预设触发条件,当判定满足预设触发条件时,获取应用程序内封装的用于搭建本地服务器软件包以实现自行搭建本地服务器的目的,进而建立可供用户进行访问浏览以及下载文件的本地网站,测试人员通过局域网内的浏览器访问该本地网站并可以直接下载所需文件,该方法便于测试人员随时随地导出应用程序内的资源包等文件,能够有效克服现有技术中将IOS系统中应用程序的相关文件导出需要依赖开发工具的问题;并且不影响该应用程序生产版本的投放使用,大大降低了人工成本,适用于需要从IOS系统的应用程序中导出文件的应用场景。
请参阅图2,其为本发明第一实施例提供的一种文件导出方法的子流程示意图,如图2所示,所述步骤S110中的所述判断是否满足预设触发条件的步骤具体包括以下步骤S111-S114。
S111、监听是否存在预设触发动作。
具体地,所述预设触发动作包括摇一摇动作以及语音唤醒动作,在一实施例中,所述步骤S111具体包括以下步骤A-步骤C:
步骤A:检测是否存在摇一摇动作。
步骤B:若存在摇一摇动作,则判定存在预设触发动作;若不存在所述摇一摇动作,检测是否存在语音唤醒动作。
其中,所述检测是否存在语音唤醒动作的步骤具体还包括以下步骤B1-步骤B3:
步骤B1:检测是否存在语音;
步骤B2:判断所述语音是否是预设语音;
步骤B3:若是预设语音,则判定存在语音唤醒动作;若不是预设语音,判定不存在语音唤醒动作。
步骤C:若存在语音唤醒动作,则判定存在预设触发动作;若不存在语音唤醒动作,则判定不存在预设触发动作。
在其他的实施例中,也可先检测是否存在语音唤醒动作再检测是否存在摇一摇动作,在此不对该预设触发动作的检测顺序作具体限制。另外,所述预设触发动作还可以根据用户实际使用需求进行自定义设置,例如,可以将预设触发动作设置为指纹三次连续按压屏幕或控制键的动作。
S112、若存在预设触发动作,查找所述应用程序的预设标记位。
具体地,通过事先在应用程序的软件包上设置一标记位,以实现通过查找该标记位来判断该应用程序的版本的目的。
S113、根据所查找的预设标记位判断所述应用程序是否属于生产版本。
具体地,所述应用程序包括生产版本应用程序以及非生产版本应用程序,所述非生产版本应用程序为正在开发测试的版本,所述生产版本应用程序为用户可以下载安装使用的版本。在一实施例中,将所述生产版本的标记位预设为1,将所述非生产版本的标记位预设为0,通过该标记位为1或者为0判断该应用程序是否属于生产版本,在此不对该标记位作具体限制。本方案在非生产版本应用程序的内获取一封装用于搭建服务器的软件包并成功搭建完成本地服务器,以便于用户可以直接通过局域网的客户端访问该服务器以及导出该应用程序运行测试后的文件,进而测试人员通过所导出的文件可以更加深入了解非生产版本应用程序在IOS系统中的运行情况以及查找解决该非生产版本应用程序在IOS系统中运行后可能存在的问题。
S114、若不属于生产版本,判定满足预设触发条件。
具体地,本方案是在非生产版本应用程序内获取一封装用于搭建服务器的软件包并成功搭建完成本地服务器,通过预设触发条件来判断该应用程序是否属于生产版本,由于生产版本是经测试合格后才正式投放入市场以供用户下载使用的,所以并不需要在该生产版本应用程序的实现本地服务器的功能。
在上述实施例中,通过事先设置触发条件,当安装有该应用程序的终端当前运行情况满足该预设触发条件后,自行搭建完成Web服务器。
请参阅图3,其为本发明第一实施例提供的一种文件导出方法的另一子流程示意图,如图3所示,所述步骤S130中的利用所述本地服务器软件包搭建本地服务器的步骤具体包括以下步骤S131-S133。
S131、获取用于搭建所述本地服务器的软件包并安装。
具体地,由于搭建的Web服务器不同,其所采用的用于搭建所述Web服务器的软件包也各不相同,其中所述Web服务器包括互联网信息服务(Microsoft InternetInformation Service,IIS)系统、Apache、Netscape Web Server、Nginx、Lighttpd、Tomcat、Zeus等服务器。例如,在本实施例中,下载安装一Node.JS软件包;进而利用所安装的Node.JS内的NPM工具完成http-server的全局安装,创建Node.JS文件以用于搭建所述本地服务器,将所创建的Node.JS文件导入到所述应用程序的工程中;利用http-server搭建本地服务器并启动。
S132、将所安装的软件包中用于搭建所述本地服务器的文件导入到所述应用程序的工程中。
具体地,所述将所安装的Node.JS中用于搭建所述本地服务器的文件导入到所述应用程序的工程文件夹中的步骤具体包括以下步骤D-步骤F:
步骤D:利用所安装的Node.JS内的NPM工具完成http-server的全局安装;
步骤E:创建Node.JS文件以用于搭建所述本地服务器;
步骤F:将所创建的Node.JS文件导入到所述应用程序的工程中。
S133、利用http-server搭建本地服务器并启动。
具体地,所述http-server是一个简单的零配置命令行http服务器,可用于本地开发,且功能强大又简单易用。
在上述实施例中,由于Node.JS软件包内建了一个HTTP服务器,可以直接实现一个网站和服务器的组合,进而可以实现快速地搭建一个Web服务器的目的,其中,Node.JS为一服务器语言,利用Java script程序语言开发服务器。
请参阅图4,其为本发明第二实施例提供的一种文件导出方法的流程示意图。该文件导出方法应用于一应用程序中,具体地,该应用程序可以安装于配置有IOS系统的台式电脑、平板电脑、手提电脑、智能手机、可穿戴智能手表等终端中。如图4所示,该方法可包括步骤S210-S330。其中步骤S210-S250与上述实施例中的步骤S110-S150类似,在此不再赘述。下面详细说明本实施例中所增加的步骤S260-步骤S330。
S260、初始化Socket动态库。
具体地,客户端通过初始化Socket动态库可以实现服务器的监听功能。
S270、调用Socket()函数以创建套接字。
其中,Web服务器通过调用Socket()函数创建一个处于监听状态的套接字,进而指定客户端Socket的地址,循环接收新的连接直至绑定Socket成功,从而实现监听的目的,此时客户端处于等待状态,实时监控服务器网络访问连接状态。
S280、调用Bind()函数以将所述套接字绑定到预设端口号上。
具体地,在一实施例中,通过调用Bind()函数将所述套接字绑定到预设端口号上,所述预设端口号可以由用户根据自身业务应用场景而进行自定义设置。
S290、监听所述预设端口号以等待来自浏览器的连接请求。
S300、若存在所述连接请求,响应所述连接请求以建立本地服务器与所述浏览器之间的通信。
具体地,客户端的套接字向服务器端提出连接请求,此时客户端描述出它所要连接的套接字,指出要连接的套接字的相关属性,进而向服务器端的套接字提出请求;当服务器端套接字监听到来自客户端的连接请求之后,立即响应该连接请求并建立一个新进程,再将服务器端的套接字的描述反馈给客户端,由客户端确认之后TCP连接就建立成功,从而实现客户端和服务器器两端之间相互通信、传输数据的目的,另外,该服务器端的套接字将会继续等待监听来自其他客户端的请求。其中,为了建立客户端与服务端器之间的TCP连接,客户端和服务端均会使用套接字。
S310、接收用户通过浏览器进行访问的访问请求。
S320、根据所述访问请求向所述浏览器发送相应的数据。
具体地,当客户端与服务器端建立TCP连接后,会向服务器端发送HTTP请求,服务器端会以一个HTTP响应做应答,客户端会将HTTP的响应内容显示给用户。
S330、若所述访问请求执行完成,关闭释放所述套接字。
在上述实施例中,本方案通过应用程序的内部获取一封装的用于搭建本地服务器软件包,并利用所获取软件包搭建一Web服务器,且该Web服务器创建存在一个处于监听状态的套接字,用于循环接收新的连接;当客户端与服务器端建立连接后,当服务器端接收到来自客户端发送的HTTP请求时,服务器端会以一个HTTP响应做应答,进而,客户端会将HTTP的响应内容显示到该客户端的浏览界面上,以供用户进行浏览以及下载。测试人员通过HTTP的方式访问Web服务器,该方法便于测试人员随时随地导出应用程序内的资源包等文件,能够有效克服现有技术中将IOS系统中应用程序的相关文件导出需要依赖开发工具的问题;并且不影响该应用程序生产版本的投放使用,大大降低了人工成本,适用于需要从IOS系统的应用程序中导出文件的应用场景。
请参阅图5,其为本发明第一实施例提供的一种文件导出装置300的示意性框图。如图5所示,该文件导出装置300对应于图1所示的文件导出方法。该文件导出装置300包括用于执行上述文件导出方法的单元,该文件导出装置300可以被配置于安装有IOS系统的台式电脑、平板电脑、手提电脑、智能手机、可穿戴智能手表等终端中。具体地,请参阅图5,该文件导出装置300包括第一判断单元301、第一获取单元302、第一搭建单元303、第一创建网站单元304以及第一生成单元305。
所述第一判断单元301用于判断是否满足预设触发条件。
所述第一获取单元302用于若满足预设触发条件,获取应用程序内封装的用于搭建本地服务器软件包。
具体地,由于搭建的Web服务器不同,其所采用的用于搭建所述Web服务器的软件包也各不相同,其中所述Web服务器包括互联网信息服务(Microsoft InternetInformation Service,IIS)系统、Apache、Netscape Web Server、Nginx、Lighttpd、Tomcat、Zeus等服务器。例如,在本实施例中,当判定满足预设触发条件时,在应用程序内中查找获取一封装的Node.JS软件包。
所述第一搭建单元303用于利用所述本地服务器软件包搭建本地服务器。
具体地,当判定满足预设触发条件时,第一搭建单元303用于利用所述本地服务器软件包搭建本地服务器,其中,所搭建的本地服务器为Web服务器,所述Web服务器一般指网站服务器,也称为WWW服务器,是在互联网上运用最广泛、最重要的服务,采用客户端和服务器(Client/Server,C/S)结构的Web服务器的主要作用就是向浏览器等Web客户端展示文档信息并提供文档下载,让可以访问网络的用户都可以进行访问以及下载。其中,客户端和服务端之间通过HTTP协议来实现相互交流,常见的Web服务器有互联网信息服务(MicrosoftInternet Information Service,IIS)系统、Apache、Netscape Web Server、Nginx、Lighttpd、Tomcat、Zeus等。访问和获取WWW信息的程序是客户端,可以为浏览器,如Microsoft internet Explorer(IE)、Netscape Navigator等浏览器,也可以为使用HTTP协议的其它任何软件,另外,所述HTTP协议为超文本传输协议(HyperTextTransferProtocol,HTTP)。
所述第一创建网站单元304用于若检测到所述本地服务器搭建完成,在所述本地服务器上创建文件下载网站,所述文件下载网站包括一文件列表,所述文件列表用于提供供用户浏览以及下载的文件。
具体地,所述文件列表用于提供供用户浏览以及下载的文件,其中,所述文件包括系统文件、属性列表、文本文件、图像文件、声音文件以及视频文件,所述文件列表用于汇总所述系统文件、属性列表以及文本文件的文件名称并提供相应的下载链接;还用于显示所述图像文件、声音文件以及视频文件的内容并提供相应的下载链接。
所述第一生成单元305用于若所述文件下载网站创建完成,生成所述文件下载网站的地址以供用户根据所述地址导出相应文件。
具体地,所述地址为URL地址,URL是Web服务器的地址,当所述文件下载网站创建完成,将提供访问所创建的文件下载网站的地址,用户可以在客户端的浏览器输入所提供的URL地址,进而利用该地址来寻找并连接Web服务器,用户可以通过浏览器向服务器发送HTTP请求以访问该文件下载网站。
请参阅图6,其为本发明第一实施例提供的一种文件导出装置300的第一判断单元301的示意性框图,所述第一判断单元301包括监听单元3011、查找单元3012、版本判断单元3013以及判定单元3014。
所述监听单元3011用于监听是否存在预设触发动作。
具体地,所述预设触发动作包括摇一摇动作以及语音唤醒动作,所述监听单元3011用于检测是否存在摇一摇动作;还用于若存在摇一摇动作,则判定存在预设触发动作;若不存在所述摇一摇动作,检测是否存在语音唤醒动作;以及还用于若存在语音唤醒动作,则判定存在预设触发动作;若不存在语音唤醒动作,则判定不存在预设触发动作。
其中,所述监听单元3011具体还用于检测是否存在语音;以及用于判断所述语音是否是预设语音;还用于若是预设语音,则判定存在语音唤醒动作;若不是预设语音,判定不存在语音唤醒动作。
所述查找单元3012用于若存在预设触发动作,查找所述应用程序的预设标记位。
所述版本判断单元3013用于根据所查找的预设标记位判断所述应用程序是否属于生产版本。
具体地,所述应用程序包括生产版本应用程序以及非生产版本应用程序,所述非生产版本应用程序为正在开发测试的版本,所述生产版本应用程序为用户可以下载安装使用的版本。在一实施例中,将所述生产版本的标记位预设为1,将所述非生产版本的标记位预设为0,通过该标记位为1或者为0判断该应用程序是否属于生产版本,在此不对该标记位作具体限制。
所述判定单元3014用于若不属于生产版本,判定满足预设触发条件。
具体地,本方案在非生产版本应用程序内获取一封装用于搭建服务器的软件包并成功搭建完成本地服务器,以便于用户可以直接通过局域网的客户端访问该服务器以及导出该应用程序运行测试后的文件,进而测试人员通过所导出的文件可以更加深入了解非生产版本应用程序在IOS系统中的运行情况以及查找解决该非生产版本应用程序在IOS系统中运行后可能存在的问题。
请参阅图7,其为本发明第一实施例提供的一种文件导出装置300的第一搭建单元303的示意性框图,所述第一搭建单元303包括安装单元3031、导入单元3032以及搭建子单元3033。
所述安装单元3031用于安装用于搭建所述本地服务器的软件包。
具体地,由于搭建的Web服务器不同,其所采用的用于搭建所述Web服务器的软件包也各不相同,其中所述Web服务器包括互联网信息服务(Microsoft InternetInformation Service,IIS)系统、Apache、Netscape Web Server、Nginx、Lighttpd、Tomcat、Zeus等服务器。例如,在本实施例中,下载安装一Node.JS软件包;进而利用所安装的Node.JS内的NPM工具完成http-server的全局安装,创建Node.JS文件以用于搭建所述本地服务器,将所创建的Node.JS文件导入到所述应用程序的工程中;利用http-server搭建本地服务器并启动。
所述导入单元3032用于将所安装的软件包中用于搭建所述本地服务器的文件导入到所述应用程序的工程中。
具体地,所述导入单元3032用于利用所安装的Node.JS内的NPM工具完成http-server的全局安装;还用于创建Node.JS文件以用于搭建所述本地服务器以及用于将所创建的Node.JS文件导入到所述应用程序的工程中。
所述搭建子单元3033用于利用http-server搭建本地服务器并启动。
具体地,所述http-server是一个简单的零配置命令行http服务器,可用于本地开发,且功能强大又简单易用。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述文件导出装置300和各单元的具体实现过程以及效果,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
请参阅图8,其为本发明第二实施例提供的一种文件导出装置400的示意性框图。如图8所示,本发明第二实施例提供的一种文件导出装置400是在上述实施例的基础上增加了初始化单元406、调用创建单元407、调用绑定单元408、监听请求单元409、响应单元410、接收单元411、发送单元412以及关闭单元413,即所述装置400包括第二判断单元401、第二获取单元402、第二搭建单元403、第二创建网站单元404、第二生成单元405、初始化单元406、调用创建单元407、调用绑定单元408、监听请求单元409、响应单元410、接收单元411、发送单元412以及关闭单元413。其中,该第二判断单元401、第二获取单元402、第二搭建单元403、第二创建网站单元404以及第二生成单元405与上述实施例中的第一判断单元301、第一获取单元302、第一搭建单元303、第一创建网站单元304以及第一生成单元305类似,由于其应用过程以及相应功能与上述实施例中所对应的单元类似,在此不再赘述。
所述初始化单元406用于初始化Socket动态库。
所述调用创建单元407用于调用Socket()函数以创建套接字。
具体地,Web服务器通过调用Socket()函数创建一个处于监听状态的套接字,进而指定客户端Socket的地址,循环接收新的连接直至绑定Socket成功,从而实现监听的目的,此时客户端处于等待状态,实时监控服务器网络访问连接状态。
所述调用绑定单元408用于调用Bind()函数以将所述套接字绑定到预设端口号上。
所述监听请求单元409用于监听所述预设端口号以等待来自浏览器的连接请求。
所述响应单元410用于若存在所述连接请求,响应所述连接请求以建立本地服务器与所述浏览器之间的通信。
具体地,客户端的套接字向服务器端提出连接请求,此时客户端描述出它所要连接的套接字,指出要连接的套接字的相关属性,进而向服务器端的套接字提出请求;当服务器端套接字监听到来自客户端的连接请求之后,立即响应该连接请求并建立一个新进程,再将服务器端的套接字的描述反馈给客户端,由客户端确认之后TCP连接就建立成功,从而实现客户端和服务器器两端之间相互通信、传输数据的目的,另外,该服务器端的套接字将会继续等待监听来自其他客户端的请求。其中,为了建立客户端与服务端器之间的TCP连接,客户端和服务端均会使用套接字。
所述接收单元411用于接收用户通过浏览器进行访问的访问请求。
所述发送单元412用于根据所述访问请求向所述浏览器发送相应的数据。
所述关闭单元413用于若所述访问请求执行完成,关闭释放所述套接字。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述装置400和各单元的具体实现过程以及效果,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
上述装置可以实现为一种计算机程序的形式,该计算机程序可以在如图9所示的计算机设备上运行。
请参阅图9,其为本发明实施例提供的一种计算机设备的示意性框图。该计算机设备600可以是终端,也可以是服务器,其中,终端可以是智能手机、平板电脑、笔记本电脑、台式电脑和个人数字助理等电子设备。服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。
参阅图9,该计算机设备600包括通过系统总线601连接的处理器602、存储器和网络接口605,其中,存储器可以包括非易失性存储介质603和内存储器604。
该非易失性存储介质603可存储操作系统6031和计算机程序6032。该计算机程序6032包括程序指令,该程序指令被执行时,可使得处理器602执行一种文件导出方法。
该处理器602用于提供计算和控制能力,以支撑整个计算机设备600的运行。
该内存储器604为非易失性存储介质603中的计算机程序6032的运行提供环境,该计算机程序6032被处理器602执行时,可使得处理器602执行一种文件导出方法。
该网络接口605用于与其它设备进行网络通信。本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备600的限定,具体的计算机设备600可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器602用于运行存储在存储器中的计算机程序6032,以实现如下步骤:判断是否满足预设触发条件;若满足预设触发条件,获取应用程序内封装的用于搭建本地服务器软件包;利用所述本地服务器软件包搭建本地服务器;若检测到所述本地服务器搭建完成,在所述本地服务器上创建文件下载网站,所述文件下载网站包括一文件列表,所述文件列表用于提供供用户浏览以及下载的文件;若所述文件下载网站创建完成,生成所述文件下载网站的地址以供用户根据所述地址导出相应文件。
在一实施例中,处理器602在实现所述判断是否满足预设触发条件的步骤时,具体实现如下步骤:监听是否存在预设触发动作;若存在预设触发动作,查找所述应用程序的预设标记位;根据所查找的预设标记位判断所述应用程序是否属于生产版本;若不属于生产版本,判定满足预设触发条件。
在一实施例中,处理器602在实现所述监听是否存在预设触发动作的步骤时,具体实现如下步骤:检测是否存在摇一摇动作;若存在摇一摇动作,则判定存在预设触发动作;若不存在所述摇一摇动作,检测是否存在语音唤醒动作;若存在语音唤醒动作,则判定存在预设触发动作;若不存在语音唤醒动作,则判定不存在预设触发动作。
在一实施例中,处理器602在实现所述利用所述本地服务器软件包搭建本地服务器的步骤,具体实现如下步骤:安装用于搭建所述本地服务器的软件包;将所安装的软件包中用于搭建所述本地服务器的文件导入到所述应用程序的工程中;利用http-server搭建本地服务器并启动。
在一实施例中,处理器602在实现所述在所述服务器上创建文件下载网站的步骤之后,具体还实现如下步骤:初始化Socket动态库;调用Socket()函数以创建套接字;调用Bind()函数以将所述套接字绑定到预设端口号上;监听所述预设端口号以等待来自浏览器的连接请求;若存在所述连接请求,响应所述连接请求以建立服务器与所述浏览器之间的通信。
在一实施例中,处理器602在实现所述生成所述文件下载网站的地址以供用户根据所述地址导出相应文件的步骤之后,具体还实现如下步骤:接收用户通过浏览器进行访问的访问请求;根据所述访问请求向所述浏览器发送相应的数据;若所述访问请求执行完成,关闭释放所述套接字。
应当理解,在本发明实施例中,处理器602可以是中央处理单元(CentralProcessing Unit,CPU),该处理器602还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可存储于一存储介质中,该存储介质为存储介质。该程序指令被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本发明还提供一种计算机可读存储介质。该计算机可读存储介质存储有计算机程序,其中计算机程序包括程序指令。该程序指令被处理器执行时使处理器执行如上所述的文件导出方法。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种文件导出方法,其特征在于,包括:
判断是否满足预设触发条件;
若满足预设触发条件,获取应用程序内封装的用于搭建本地服务器软件包;
利用所述本地服务器软件包搭建本地服务器;
若检测到所述本地服务器搭建完成,在所述本地服务器上创建文件下载网站,所述文件下载网站包括一文件列表,所述文件列表用于提供供用户浏览以及下载的文件;
若所述文件下载网站创建完成,生成所述文件下载网站的地址以供用户根据所述地址导出相应文件。
2.根据权利要求1所述的文件导出方法,其特征在于,所述判断是否满足预设触发条件,包括:
监听是否存在预设触发动作;
若存在预设触发动作,查找所述应用程序的预设标记位;
根据所查找的预设标记位判断所述应用程序是否属于生产版本;
若不属于生产版本,判定满足预设触发条件。
3.根据权利要求2所述的文件导出方法,其特征在于,所述监听是否存在预设触发动作,包括:
检测是否存在摇一摇动作;
若存在摇一摇动作,则判定存在预设触发动作;若不存在所述摇一摇动作,检测是否存在语音唤醒动作;
若存在语音唤醒动作,则判定存在预设触发动作;若不存在语音唤醒动作,则判定不存在预设触发动作。
4.根据权利要求1所述的文件导出方法,其特征在于,所述利用所述本地服务器软件包搭建本地服务器,包括:
安装用于搭建所述本地服务器的软件包;
将所安装的软件包中用于搭建所述本地服务器的文件导入到所述应用程序的工程中;
利用http-server搭建本地服务器并启动。
5.根据权利要求1所述的文件导出方法,其特征在于,所述生成所述文件下载网站的地址以供用户根据所述地址导出相应文件的步骤之后,还包括:
初始化Socket动态库;
调用Socket()函数以创建套接字;
调用Bind()函数以将所述套接字绑定到预设端口号上;
监听所述预设端口号以等待来自浏览器的连接请求;
若存在所述连接请求,响应所述连接请求以建立本地服务器与所述浏览器之间的通信。
6.根据权利要求5所述的文件导出方法,其特征在于,所述若存在所述连接请求,响应所述连接请求以建立本地服务器与所述浏览器之间的通信的步骤之后,还包括:
接收用户通过浏览器进行访问的访问请求;
根据所述访问请求向所述浏览器发送相应的数据;
若所述访问请求执行完成,关闭释放所述套接字。
7.根据权利要求1所述的文件导出方法,其特征在于,所述文件列表用于提供供用户浏览以及下载的文件,其中,所述文件包括系统文件、属性列表、文本文件、图像文件、声音文件以及视频文件,所述文件列表用于汇总所述系统文件、属性列表以及文本文件的文件名称并提供相应的下载链接;还用于显示所述图像文件、声音文件以及视频文件的内容并提供相应的下载链接。
8.一种文件导出装置,其特征在于,包括用于执行如权利要求1-7任一项所述的文件导出方法的单元。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-7中任一项所述的文件导出方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时可实现如权利要求1-7中任一项所述的文件导出方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811207988.3A CN109347951A (zh) | 2018-10-17 | 2018-10-17 | 文件导出方法、装置、计算机设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811207988.3A CN109347951A (zh) | 2018-10-17 | 2018-10-17 | 文件导出方法、装置、计算机设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109347951A true CN109347951A (zh) | 2019-02-15 |
Family
ID=65308951
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811207988.3A Withdrawn CN109347951A (zh) | 2018-10-17 | 2018-10-17 | 文件导出方法、装置、计算机设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109347951A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110311978A (zh) * | 2019-07-01 | 2019-10-08 | 泰康保险集团股份有限公司 | 浏览器信息处理方法、装置、设备及存储介质 |
CN114979233A (zh) * | 2022-07-19 | 2022-08-30 | 深圳市亿联无限科技有限公司 | 基于域套接字实现模块间同步和异步调用的方法和系统 |
-
2018
- 2018-10-17 CN CN201811207988.3A patent/CN109347951A/zh not_active Withdrawn
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110311978A (zh) * | 2019-07-01 | 2019-10-08 | 泰康保险集团股份有限公司 | 浏览器信息处理方法、装置、设备及存储介质 |
CN114979233A (zh) * | 2022-07-19 | 2022-08-30 | 深圳市亿联无限科技有限公司 | 基于域套接字实现模块间同步和异步调用的方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8527504B1 (en) | Data network content filtering using categorized filtering parameters | |
US20120284696A1 (en) | Method, Apparatuses and a System for Compilation | |
US20140149995A1 (en) | Browser Kernel Switching Method | |
JP5050055B2 (ja) | モバイルデバイスユーザ経験の仮想化 | |
CN102291437A (zh) | 跨平台互联网应用的实现系统及方法 | |
CN104317648B (zh) | 一种监测广告的方法和装置 | |
CN103607502B (zh) | 一种对移动设备的应用进行升级的方法和装置 | |
CN105205072B (zh) | 网页信息的展示方法和系统 | |
CN105867714A (zh) | 应用程序下载方法、装置及系统 | |
CN106997298A (zh) | 一种应用资源获取方法及装置 | |
CN106649446B (zh) | 信息推送方法和装置 | |
CN107203470B (zh) | 页面调试方法和装置 | |
AU2013213683B2 (en) | A method and system of application development for multiple device client platforms | |
CN112988608B (zh) | 数据测试方法、装置、计算机设备及存储介质 | |
CN107181779A (zh) | 访问请求的处理方法、装置和系统 | |
CN108540831A (zh) | 用于推送信息的方法和装置 | |
CN104052769B (zh) | 一种对移动终端应用包含的资源更新的方法、装置和系统 | |
CN112565406B (zh) | 一种灰度发布方法、灰度发布系统及电子设备 | |
CN110069308A (zh) | 页面启动方法、装置、电子设备和存储介质 | |
CN108701018A (zh) | 应用程序的更新方法 | |
CN109347951A (zh) | 文件导出方法、装置、计算机设备及计算机可读存储介质 | |
CN110134410B (zh) | 冷启动用户的个性化信息关联方法、装置及存储介质 | |
CN109857963A (zh) | 本地资源访问方法、装置及电子设备 | |
CN110113391A (zh) | 一种客户端上线方法、装置及一种客户端运行方法、装置 | |
CN110489677A (zh) | 一种基于移动设备识别的应用市场跳转方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20190215 |