CN112702380A - 私有云盘移动版 - Google Patents

私有云盘移动版 Download PDF

Info

Publication number
CN112702380A
CN112702380A CN202010842053.3A CN202010842053A CN112702380A CN 112702380 A CN112702380 A CN 112702380A CN 202010842053 A CN202010842053 A CN 202010842053A CN 112702380 A CN112702380 A CN 112702380A
Authority
CN
China
Prior art keywords
client
file
uploading
downloading
request
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.)
Pending
Application number
CN202010842053.3A
Other languages
English (en)
Inventor
李彦江
王兵
王振德
周龙
李金胜
王金波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Weiling Qingdao Network Security Research Institute Co ltd
CETC 30 Research Institute
Original Assignee
Weiling Qingdao Network Security Research Institute Co ltd
CETC 30 Research Institute
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Weiling Qingdao Network Security Research Institute Co ltd, CETC 30 Research Institute filed Critical Weiling Qingdao Network Security Research Institute Co ltd
Priority to CN202010842053.3A priority Critical patent/CN112702380A/zh
Publication of CN112702380A publication Critical patent/CN112702380A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/315Object-oriented languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • H04L63/0838Network architectures or network communication protocols for network security for authentication of entities using passwords using one-time-passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/18Network architectures or network communication protocols for network security using different networks or channels, e.g. using out of band channels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • H04L69/162Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

纬领奇普云盘移动版v1.0是一款可以安装到装有Android操作***的手机平台中,是可供客户直接使用的手机客户端;还用于接收客户端发送的http请求,并处理请求,再将处理结果反馈给客户端;不仅具有灵活的***架构、为用户提供安全便捷的电子文档管理功能,而且还为用户提供文档共享协作和文档的分布式备份存储功能。

Description

私有云盘移动版
技术领域
私有云盘移动版v1.0是一款可以安装到装有Android操作***的手机平台中,是可供客户直接使用的手机客户端,不仅具有灵活的***架构、为用户提供安全便捷的电子文档管理功能,而且还为用户提供文档共享协作和文档的分布式备份存储功能。
背景技术
android客户端为打包完成的apk文件,可安装到装有Android操作***的手机平台中,是可供客户直接使用的手机客户端;Web服务器用于接收客户端发送的http请求,并处理请求,再将处理结果反馈给客户端;MongoDB用于存储客户信息和文件元信息数据;OpenStack云盘用于存储客户文件。
发明内容
1.在存储上采用了基于OpenStack的云存储技术,采用了Swift分布式对象存储,能够低成本且可靠地存储海量数据,并能根据存储需要进行扩展;其内置容灾备份机制,有效地保证了文件的存储安全性;其内置负载均衡器则有效地保证了存储***的稳定性。
2.服务端采用Flask框架,并配合MongoDB数据库,对客户端发来的请求进行处理。MongoDB使用c++/boost编写,性能高效,使用JSON的变种BSON作为内部存储的格式和语法,查询直接使用JSON语法,速度快,Flask是一个基于python语言的Web框架,采用Flask框架可方便地对MongoDB数据库进行查询和读写等操作。
3.客户端采用JAVA语言开发,技术要点如下:
3.1.采用Fragment做分页显示。一个主Activity下多个Fragment作为显示页面,主要适用于多页面切换,方便模块间的协作,同时避免多Activity产生的频繁创建和销毁。
3.2.主体网络采用OkHttp3作为网络通信框架。
OkHttp是一个当前主流的网络请求的开源框架,优点如下:
1)支持http2,对一台机器的所有请求共享同一个socket;
2)socket自动选择最好路线,并支持自动重连,拥有自动维护的socket连接池,减少握手次数,减少了请求延迟,共享Socket,减少对服务器的请求次数;
3)基于Headers的缓存策略减少重复的网络请求;
4)拥有Interceptors轻松处理请求与响应(自动处理GZip压缩);
5)通过缓存避免重复的请求;
6)请求失败时自动重试主机的其他ip,自动重定向。
3.3. app底部导航栏使用BottomNavigationBar进行分页切换。
3.4. 文件的上传下载使用server + AsyncTask回调模式。采用后台服务模式,主要是为了避免页面切换导致的中断传输,传输上传下载类都继承了AsyncTask这个轻量级异步类,可以将进度和结果传递给UI,由于需要多任务同时进行,所以采用executeOnExecutor模式,并发进行同时任务数量为:CPU数量×2+1。
3.5. 文件的上传下载使用SQLiteDatabase将上传下载信息数据保存到本地。把上传或下载的当前信息写入数据中,当进程被突然关闭时,下次再登录时可直接从数据中读取,并继续之前中断的传输。本客户端可支持文件上传和下载的断点续传。
4.上传下载打包说明如下:
1)python环境安装pyinstaller,然后cmd到scripts目录下,并把需要打包的py文件和附带的图片文件复制到该目录下;
2)执行pyinstaller -f -w xx.py -i xx.png 生成带logo且无控制台的exe文件
上传文件生成
pyinstaller -F -w yunpanupclient.py -i logo.ico
下载文件生成
pyinstaller -F -w yunpan.py -i uplogo.ico
3)下载安装打包工具Inno Setup。然后执行file->new操作,按提示对上一步生成的exe文件和附件打包成安装文件;
上传文件配置
下载文件配置
打开生成的.iss文件,添加写入注册表的内容。然后点击生成安装包(run),这样得到一个可修改注册表的安装文件。
4)将两个安装包全部放在weblinksoft(可自定)目录下,在该目录下新建install.bat文件,写入:
**@echo off
cls
start /wait weblinksoft\wlyunpan.exe
start /wait weblinksoft\yunpanupcilent.exe
stop
新建main.vbs文件,写入:
Set shell = Wscript.createobject("wscript.shell")
shell.run "weblinksoft\install.bat",0
5)上述文件夹右键->添加到压缩文件,在压缩选项中选中“创建自解压格式压缩文件”;切换到“高级”,打开“自解压选项”,在设置中,添加提取后运行weblinksoft/main.vbs,模式中设置安静模式为“全部隐藏”,更新中设置覆盖方式为“全部覆盖”。
6)行生成的exe文件,检查是否能正常安装。
7)上传到openstack,替换旧的。
具体实施方式
【实施例】
点击手机上的私有云盘app图标,打开私有云盘。
1.启动页
默认3秒后跳转到登录页。若想快速进入登录页,可点击启动页中的“跳过”按钮。
2.登录页
2.1.用户名密码登录
用户通过输入用户名、密码进行登录,登录时需要填写验证码。前台登录账号全部由后台管理员录入,前台用户无注册权限。
2.2.手机动态码登录
用户通过输入用户名(手机号)后获取短信验证码,输入短信验证码正确后允许登陆。非注册用户点击“获取验证码”按钮时,提示“该手机号未注册”。
2.3.微信登陆
首次微信登录用户需要绑定手机号。非注册用户点击“获取验证码”按钮时,提示“该手机号未注册”。下次微信登录后,若已绑定手机号,可直接登录。
3.我的资源
3.1.顶部导航栏
3.1.1 文件分类
筛选当前目录下所有文件的分类,可筛选为:图片文件、视频文件、音频文件、文档文件和其他文件。
3.1.2 上传文件
上传文件分为上传图片、上传视频、上传音频、上传其他文件;
新建文件夹:点击新建文件夹后输入新建文件夹名称,完成后在当前目录下完成新文件夹创建。
3.1.3 传输列表
选择文件进行上传或下载后,会在传输列表图标上有气泡提示数量。
上传列表:上传列表显示上传中任务的缩略图标、上传进度和暂停/开始按钮。
下载列表:下载列表显示下载中任务的缩略图标、下载进度和暂停/开始按钮。
3.1.4 排序
对当前目录下所有文件进行排序显示,默认排序方式以时间先后顺序显示,最晚上传的显示在最上方,文件夹始终在显示列表的最上方。可对文件列表按时间、文件大小、文件名排序。
3.2.选择
选中某个文件或文件夹后,会在底部弹出功能操作框。
下载:对所有选择的文件进行下载。
分享:对所有选择的文件进行分享(不可选择文件夹);选择完成后点击“分享”按钮跳转至选择用户列表(即组织架构界面),对分享对象可多选,勾选完毕后,点击当前界面的“分享”按钮进行分享。
重命名:对文件或文件夹重命名。
删除:对文件或文件夹删除。
移动至:将文件移动至某个其他的文件夹下。
左滑某个文件或文件夹,也可实现删除操作。
3.3.搜索栏
对输入的关键词进行非完全匹配,匹配对象为文件/文件夹名。
4.分享中心
我的分享:可对分享任务/记录进行选择(可多选)、撤销分享、删除记录。
与我分享:可对分享任务/记录进行选择(可多选)、接收、删除记录。
5.个人中心
5.1.用户卡片
显示姓名、所属部门、云盘用量、头像。
5.2.绑定手机号
显示当前绑定的手机号。
5.3.修改密码
输入原密码和新密码完成密码修改。
5.4.退出登录
点击后退出当前账户登录状态,回到登录界面。
6.手机按键操作
在“我的资源”中,可通过点击返回键,进行文件目录返回操作;在传输列表中,可通过点击返回键,进行返回主界面操作;在其他界面中,会有相应退出登录提示。

Claims (8)

1.纬领奇普云盘移动版根据技术背景客户端为打包完成的apk文件,可安装到装有Android操作***的手机平台中,是可供客户直接使用的手机客户端;Web服务器用于接收客户端发送的http请求,并处理请求,再将处理结果反馈给客户端;MongoDB用于存储客户信息和文件元信息数据;OpenStack云盘用于存储客户文件。
2.根据权利要求一所述的对本产品在存储上采用了基于OpenStack的云存储技术,采用了Swift分布式对象存储,其特征是能够低成本且可靠地存储海量数据,并能根据存储需要进行扩展;其内置容灾备份机制,有效地保证了文件的存储安全性;其内置负载均衡器则有效地保证了存储***的稳定性。
3.根据权利要求一所述的对本产品服务端采用Flask框架,并配合MongoDB数据库,对客户端发来的请求进行处理,其特征是MongoDB使用c++/boost编写,性能高效,使用JSON的变种BSON作为内部存储的格式和语法,查询直接使用JSON语法,速度快,Flask是一个基于python语言的Web框架,采用Flask框架可方便地对MongoDB数据库进行查询和读写等操作。
4.根据权利要求一所述的客户端,主要采用JAVA语言开发:(1)采用Fragment做分页显示;(2)主体网络采用OkHttp3作为网络通信框架;(3)app底部导航栏使用BottomNavigationBar进行分页切换;(4)文件的上传下载使用server + AsyncTask回调模式;(5)文件的上传下载使用SQLiteDatabase将上传下载信息数据保存到本地。
5.根据权利要求四所述的(1)采用Fragment做分页显示,一个主Activity下多个Fragment作为显示页面,其特征是适用于多页面切换,方便模块间的协作,同时避免多Activity产生的频繁创建和销毁。
6.根据权利要求四所述的(2)对主体网络采用OkHttp3作为网络通信框架,OkHttp是一个当前主流的网络请求的开源框架,其特征是:1)支持http2,对一台机器的所有请求共享同一个socket;2)socket自动选择最好路线,并支持自动重连,拥有自动维护的socket连接池,减少握手次数,减少了请求延迟,共享Socket,减少对服务器的请求次数;3)基于Headers的缓存策略减少重复的网络请求;4)拥有Interceptors轻松处理请求与响应(自动处理GZip压缩);5)通过缓存避免重复的请求;6)请求失败时自动重试主机的其他ip,自动重定向。
7.根据权利要求四所述的(4)对文件的上传下载使用server + AsyncTask回调模式,采用后台服务模式,其特征是为了避免页面切换导致的中断传输,传输上传下载类都继承了AsyncTask这个轻量级异步类,可以将进度和结果传递给UI,由于需要多任务同时进行,所以采用executeOnExecutor模式,并发进行同时任务数量为:CPU数量×2+1。
8.根据权利要求四所述的(5)对文件的上传下载使用SQLiteDatabase将上传下载信息数据保存到本地,其特征是数据不易丢失,当把上传或下载的当前信息写入数据中,若进程被突然关闭,下次再登录时可直接从数据中读取,并继续之前中断的传输,本客户端可支持文件上传和下载的断点续传。
CN202010842053.3A 2020-08-20 2020-08-20 私有云盘移动版 Pending CN112702380A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010842053.3A CN112702380A (zh) 2020-08-20 2020-08-20 私有云盘移动版

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010842053.3A CN112702380A (zh) 2020-08-20 2020-08-20 私有云盘移动版

Publications (1)

Publication Number Publication Date
CN112702380A true CN112702380A (zh) 2021-04-23

Family

ID=75506878

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010842053.3A Pending CN112702380A (zh) 2020-08-20 2020-08-20 私有云盘移动版

Country Status (1)

Country Link
CN (1) CN112702380A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113205309A (zh) * 2021-04-30 2021-08-03 中国十九冶集团有限公司 基于私有云的复杂表格文件多人协作方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102148835A (zh) * 2011-04-27 2011-08-10 许式伟 一种电子文档传递和分享的方法和***
CN105812391A (zh) * 2016-05-16 2016-07-27 广州鼎鼎信息科技有限公司 一种安全的云存储***
CN110191128A (zh) * 2019-05-30 2019-08-30 山东浪潮商用***有限公司 一种基于hdfs的税务文件共享***及实现方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102148835A (zh) * 2011-04-27 2011-08-10 许式伟 一种电子文档传递和分享的方法和***
CN105812391A (zh) * 2016-05-16 2016-07-27 广州鼎鼎信息科技有限公司 一种安全的云存储***
CN110191128A (zh) * 2019-05-30 2019-08-30 山东浪潮商用***有限公司 一种基于hdfs的税务文件共享***及实现方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
原建伟: "中小企业云盘***的设计与实现", 《电子设计工程》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113205309A (zh) * 2021-04-30 2021-08-03 中国十九冶集团有限公司 基于私有云的复杂表格文件多人协作方法

Similar Documents

Publication Publication Date Title
JP6774499B2 (ja) オフラインでのハイブリッドアプリケーションへのアクセスの提供
US11689515B2 (en) Information processing device, information management method, and information processing system
US8627310B2 (en) Capturing multi-disk virtual machine images automatically
US10659566B1 (en) Demo recording utility
KR101343148B1 (ko) 자동화된 디바이스 드라이버 관리
KR102121626B1 (ko) 네트워크 스토리지 서비스에서 어플리케이션과 파일타입의 관련
CN114207586A (zh) 用于容器部署的动态映像合成
US9483492B2 (en) Terminal and method for providing application-related data
US8880660B2 (en) Information-processing device, communication system, computer readable medium, and information-processing method
EP2019358A1 (en) A method and a system for the creation and deployment of a virtual machine appliance on virtualised servers
JP2016529599A (ja) コンテンツクリップボードの同期
US9912747B2 (en) Browser and system for download and download method
US20160306704A1 (en) Portable Data Archiving Device
EP1389390A2 (en) Web-based file manipulating system
WO2014012449A1 (zh) 桌面同步方法、装置、处理中心及***
US9680885B2 (en) Information processing apparatus and terminal device that communicate with each other
US8005851B2 (en) Streaming virtual disk for virtual applications
CN103064703A (zh) 使用按需分阶段的快速应用流传输
WO2014176679A1 (en) Method and system for processing data files using distributed services
US20160344819A1 (en) Remote document signing
CN110795278B (zh) 用于提供文件级恢复的***和方法
CN110968331A (zh) 应用程序运行的方法和装置
CN110928554A (zh) 一种部署方法、装置、设备及存储介质
CN113395340A (zh) 一种信息更新方法、装置、设备、***和可读存储介质
CN104601666A (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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20210423