XFile

关于XFile XFile架构 利用XFile打造家用文件服务系统 移动端应用 开发历史 下    载 授    权 联系我们

XFile移动客户端应用入门

XFile客户端支持android 4.1以上版本移动操作系统,包括手机和平板iPad(arm平台)以及电视盒等设备,新的客户端已经整合了上传下载等功能,并支持内置原生播放器,同时也支持第三方在线播放器例如mpv, vlc等.

XFile android 平台客户端(arm)单独下载  : 本地下载 大小: 1056KB (1.89版 build 67 锁定方向,小字体,适合手机 sha1:E2358200EF37621F5A5B3B5036164078863751F7) 

                       本地下载 大小: 1056KB (1.89版,bulid 67 不锁方向,大字体,适合电视,投影等 sha1:6EBAE95D491DFCC63555C566F4B52D368361C692)

 

第三方播放器软件MPV  for android 下载   from Google Play   from F-Droid   (强烈推荐安装这个来自mplayer分支的 开源播放器软件,支持http流播放)

第三方播放器软件VLC for android 下载     from Google Play  from  Mirrors   (该软件的问题: Http流播放第一次可能需要手动初始化)

 

1 家用文件服务器的用途

2 家庭装修时网络结构的布局

3 家用文件服务器硬件采购和组装

4 Windows平台优化部署

5 Linux平台的安装部署

5 服务器端XFile软件的 参数设置

6 手机 平板客户端软件的安装和设置

7 电脑端客户端的使用

8 常见问题和解决方法

 

移动平台的运行截图如下:

电视盒使用XFile效果动画示范     电视盒购买参考建议

   

为什么app只有1000KB,是不是太小了?

原因很简单,我们的设计理念就是,最简单的就是最好的,也许你会告诉我,同样的软件,人家都是要几十MB才能实现,你怎么连人家的零头都不到?因为我们不需要采集用户的信息,也没有广告,没有后台推送,没有大量的美工图片,直接调用第三方播放器app比如MPV VLC,这样精简下来,1000KB就够了,现在你也可以想像下,一个app真的需要做的那么庞大?真的需要面面俱到?

 

android 客户端XFTP使用简介:

XFtp是专门配合我们开发的XFile服务器软件,而编写的运行于android [4.1以上版本]的客户端软件,为了使用XFtp,您应当首先安装XFtp app到您的android手机上.

点 XFTP图标, 将出现登录界面,

     

立即刷新IPV6地址: 如果您已经设置了启用IPV6 email自动更新服务器地址功能,那么会出现 立即刷新IPV6地址的选择项,由于家用宽带拨号上网采用的是动态ip,一般3到15天变更一次,因此,当家里的服务器地址发生了变化,您只需要在这个项目上勾选一下,就可以自动完成服务器地址更新随后完成登录操作.

隐藏参数,当您填写完参数后,您可以勾选本项目,这样会隐藏所有项目,避免误操作.

服务器地址:请填写您XFile服务器实际的IP地址,可以是IPV4地址例如192.168.3.100,也可以是IPV6地址例如:240e:3c82:207a:fe71::3302:5cd8,如果您注册了动态域名,您也可以使用动态域名类似mysite.xyz, mysite.com等,具体请参考XFile服务器软件配置.

端口: 默认是21, 由于电信等ISP商可能屏蔽了家用宽带的常见服务端口例如80,21,443,8080等,如果您需要从外部访问家里的服务器,特别是IPV6情况下,通常这个端口是2121,建议您根据实际情况进行修改.

用户名: 就是您登录所用的账户对应的用户名

口令: 就是您登录账户里对应的口令

服务器握手码: 由于家用宽带采用的是动态公网IP地址,特别是IPV6情况下,而标准的服务例如 ftp/ftps/http/https/POP3/SMTP等都是默认采用的明文口令[SSL / TLS只加密传输部分,对服务器是透明的], 这样,如果是采用动态IP地址建立的服务器,由于无法确保服务器的IP地址就是您填写的IP地址,万一这个IP地址正好被分配给别的用户,而别的用户在这个IP地址部署了蜜罐服务器,这样您的用户名和口令就泄漏了,出现了安全问题. 为了避免这种蜜罐陷阱,我们改进了XFile协议,引入了握手码,也就是服务器的握手码必须和客户端填写的握手码相同,这样即使IP地址变化被别人部署了蜜罐服务器,也能立即识别并中断连接. 该数字如果为0, 则不进行握手码识别.

远程目录: 请保持为空,不需要填写,乱填会导致登录失败.

启用http映射[建议开启] : XFile的强大之处就在于, 它可以自动指令服务器,指令文件以http/https的形式提供,由于http/https流具有比ftp流更快的响应速度,而且android默认就支持http/https流,因此我们强烈建议您开启这个项目,默认为开启,如果您要使用app自带的播放器,这个选项也是必选的.

如果您启用http映射,那么建议您安装mpv播放器作为默认播放器软件 [vlc 目前不支持http流]

如果您不启用http映射,那么建议您安装VLC播放器作为默认的播放器软件 [mpv目前不支持ftp流播放]

强制使用标准FTP协议[不安全]: 这个项目目前已经被屏蔽,毕竟我们的app是专门为XFile服务器配套而开发的,没必要为了兼容其他不安全的服务器软件而拖累app本身.

启用Ftps加密连接: 是否在登录服务器的时候采用TLS/SSL加密, 如果您使用的是公网IP,比如IPV6地址从外部访问,建议您开启这个项目,如果是家庭内部访问,则基本没有必要.

使用默认播放器: 在执行播放[打开]任务时,如果您勾选了本项目,则系统将始终选择您指定的默认程序打开连接的文件,如果不勾选本项目,则每次都打开选择框,请您选择合适的第三方播放器软件[或者应用],一般app安装后第一次运行播放不勾选本项目,而之后则勾选本项目。

使用内置简化播放器: 由于android默认已经支持http/https流播放,因此新版本中我们直接整合了系统自带的流播放器,虽然支持的格式不如第三方播放器软件多,但是支持常见的格式例如.mp3 .mkv等没有问题,这样就不再强制要求安装第三方播放器软件了,但是请注意,整合的系统http流播放器,要求的媒体文件必须是流式编码才能在线播放,所以我们一般还是建议您安装第三方流播放器软件,例如mpv和vlc。

启用备份账户模式: XFile对同一账户,不仅可以支持普通的登录模式,如果服务器端设置了对应的备份账户,那么启用本项目后,将可以登录到对应的备份账户.备份账户模式,其实就是在用户名后添加.back字符串,但是我们特意做了这个选项,这样您就不需要手动添加后缀了. 备份账户模式下,上传,新建目录,删除文件等功能将被激活,而分享等功能将被屏蔽.

遥控模式优化界面,当您使用遥控器时,建议勾选该项目,该项目开启后,界面里除了列表内容,其他按钮检索等全部被隐蔽.

使用二维码连接,如果勾选该项目, 那么当您需要分享某个资源文件的时候,除了给出链接地址,还同时为这个连接地址生成二维码图片,您可以将这个图片通过社交软件如微信等发送给朋友,朋友接收到这个图片并进行识别后,只需要用播放器打开这个连接就可以.[注意,执行分享的时候务必保证是采用IPV6连接的服务器,这样生成的连接才能被其他人分享].

     

 

在所有参数都填写完成,并确认正确后,您可以按 登录 按钮登录到XFile服务器

如果您是以常规模式登录到服务器,那么出现的界面类似下面:

   

   

注意是支持检索功能的

如果是采用的备份账户模式登录到服务器,那么类似下面

   

备份模式下,不支持检索功能

 

 

 

特殊功能,如果您在 登录 按钮上长按,在松手后,将自动进入Ipv6 email设置界面,如下图:

   

完全屏蔽模式:  如果您勾选了这个项目,那么在登录界面将屏蔽掉隐藏参数等所有可以修改参数的条目,启用这个功能后,可以防止例如不懂的人,在操作过程中误修改参数,导致发生无法登录的情况,这在家里老人和小孩操作遥控的情况下特别管用,在勾选该项目后,登录界面只有下面两种之一.

       

在这个页面,如果您勾选 启用IPV6 email地址自动更新系统,那么将出现下面的设置界面 (可以参考这里)

     

需要TLS/SSL加密: 现在一般的邮件服务器都采用的是POP3S协议, 因此除非老古董或者内部邮件服务器,否则一般都支持,默认勾选.

自动删除旧的地址邮件: 由于XFile服务器会在ipv6地址发生变化时向指定的这个邮箱发送邮件,如果你不愿意手工一封封删除旧邮件,那么可以尝试开启这个功能,自动删除旧的通知邮件,只保留最新的一封通知邮件,注意,这个功能是根据邮件主题,邮件头等两个特征进行判断,在一般情况下不会误删其他邮件,但是如果其他邮件采用了相同的邮件主题,同时包含了相同特征码的邮件头,那么确实有可能出现误删除,但是正常情况下一般不会发生,除非特意构造,使用本功能意味着您已经知道并愿意承担这个风险.

邮件服务器地址: 注意这里填写的是POP3/POP3S服务器地址,而不是SMTP服务器地址,我们目前只支持POP3/POP3S协议,一般类似pop.qq.com或者mail.youcom.com等,开头是pop,pop3,mail等.

端口:  这里填写POP3/POP3S服务器的服务端口,一般是995 .(注意不是965,965一般是imap协议,我们不支持)

最多检测邮件数:  由于您用于传递服务器地址的邮箱可能还有其他邮件,或者您只接收而不删除服务器上邮件,导致服务器端积累的邮件可能有几百封之多,而通常服务器都是按时间排列的,因此一般情况下只需要检测队列后面的邮件即可,这个数字可以设置为3到100,建议为10到20,默认10.

邮箱用户名:  就是你邮件服务器登录用户名,一般情况下就是邮件地址账号.

邮箱口令:  登录邮件服务器该邮件账号所对应的口令.

邮件主题:  必须和您的XFile服务器设置的邮件主题保持完全相同,如果为空,则使用默认的邮件主题,注意,该主题必须是有英文字母和/或数字和/或下划线组成,不可以使用中文,如果使用中文或者例如引号句号括号等,会导致出错. 总之,必须和XFile服务器的邮件设置内容里的主题保持一致.

加密密码:  由于垃圾邮件的存在,以及可能出现的恶意邮件攻击,您可以设置邮件的加密密码,如果为空,则使用默认密码,注意,该设置必须和XFile服务器里对应设置保持一致,不相同将导致无法自动识别邮件.

服务器连接超时时间:  如果目标邮件服务器无法在指定时间内响应,就中断连接,单位是秒,默认是30.

自动更新频率:  本软件设计了自动更新功能,当超过指定的时间[单位天],在第一次出现登录界面时,会自动勾选 自动刷新ipv6地址  功能,默认是2,范围1到15

确定按钮: 如果您确认了上面的设置正确,必须按最下面的确定按钮保存参数, 直接返回是不会保存参数的.

 

 

无论是普通模式,还是备份模式,使用手或者遥控点击一个文件,默认动作都是执行在线播放 [或者打开] 操作, 点击目录则进入该目录 , 点击 .. 目录则是返回上级目录

您在选定的项目上长按,将弹出功能菜单,

 

如果您在第一个项目,通常是 .. 目录上长按,如果您是以管理员账户登录到服务器的,那么将会有 服务器关机 和 服务器重启 重发邮件 服务状态等特殊菜单出现, 请千万小心使用这两个关机和重启功能,一个可以直接远程关闭服务器,除非服务器就在您身边,否则您将无法继续访问,除非出现紧急情况,请不要轻易使用这个功能. 而服务器重启则将导致服务器重新启动,您原来添加的分享项目都会消失, 这是两个可以导致服务器发生物理状态改变的功能菜单,请务必小心,如果您要彻底禁止这两个功能,可以通过XFile服务器配置软件里, 禁用远程关机指令,来阻止这两个功能. 2019.04或者更新的版本中,如果服务器开启了动态账户功能,并且是以管理员权限,在内网登录,或者公网使用TLS/SSL加密模式登录,那么会出现创建账户等功能,通过这个功能可以动态创建一个账户,注意,每次创建将导致前一次创建的账户失效,但是已经使用该账户登录到服务器的连接,也会被中断.

重发邮件: 服务器端将立即通知守护线程,如果您已经设置了XFile服务器启用ipv6地址变化通知邮件功能,那么守护线程在接到通知后,一般会在2分钟左右立即重新发送服务器端地址邮件到指定邮箱,该邮件是可以被客户端自动识别会获取服务器地址的. 这个功能主要用在万一不小心使用其它邮箱客户端登录账户,删除了服务器地址邮件,使用这个功能可以补救.

服务状态: 可以快速查询服务器目前的连接状态,以及流量,特别是流量功能,可以用来快速检测播放器软件是否是真的在线播放,或者是伪在线播放。

 

在常规登录模式下,菜单功能如下:

根目录: ,可以立即返回根目录 , 点击 .. 则是返回上级目录,这是有区别的.

在线播放:  等同于您点击文件,将自动调用内部播放器或者第三方播放器,尝试播放[打开]您选择的文件

分享(公开): 将立即映射您选定的文件成一个http/https连接, 这个连接将一直存在,直到您手动取消或者服务器重启, 任何人知道这个连接,只要他/她能够连接到您的服务器[例如IPV6地址],那么他/她不需要任何用户名和密码,就可以直接访问您分享的文件, 分享功能的好处是,您不需要告诉别人用户名和口令,他/她就可以直接通过您分享的连接访问您指定的文件,避免了账户泄漏问题. 请注意, 分享功能需要占用XFile服务里的http总映射条目数,分享太多,可能导致在线播放功能映射失败 [建议总的分享条目数量不要超过32条].注意如果服务器端设置了只允许管理员分享操作,那么其他账户使用本功能将失败.

获取连接: 和分享不同,获取连接将自动映射您选择的文件[如果http选定并可用],该连接是个临时连接,并且限制访问ip为您本人,您发送给其他人是无效的,或者ftp连接[包含了账户口令,可能导致安全问题]

取消分享: 可以取消您或者他人分享的指定文件..

所有分享: 您可以获取所有服务器上已经存在的分享连接

清空分享: 您可以清除所有服务器上已经存在的分享连接.

下载文件: 您可以下载您选定的文件到手机的默认下载目录,注意,如果同名文件已经存在,下载将失败,您需要手动先在本地下载目录下删除同名文件,并非我们不支持覆盖,只是因为安全考虑,我们做了保守的设计.

关于xftp,将打开官方站点的支持页面,也就是本页.

在备份模式下,功能菜单有些不同:

多出了功能菜单 文件上传,删除文件,创建目录等功能, 由于文件上传,删除文件等功能操作上具有一定的风险,因此我们只在备份模式下出现,防止用户误操作导致服务器文件出意外.

删除文件: 就是删除你选定的某个文件

文件上传: 就是从本地选择一个文件,远程上传到服务器当前目录下,注意,如果远程文件已经存在,可能导致失败. 特别提醒,是上传到当前目录下,如果您要上传到子目录,那么必须先进入该子目录,在使用上传菜单功能.

创建目录: 就是在当前目录下新建立一个子目录

 

 

在普通模式下,您可以使用检索功能快速定位到包含指定字符串的文件或者目录, 需要注意的是,XFile为了减少资源开销,检索的深度是3层,也就是主目录下的子目录下的子目录,如果后面继续有很多子目录嵌套,是不会被扫描到的,因为根据我们的经验和测试,在正确设置目录的情况下,3层扫描是最合适的深度.

已知问题:

Android 源代码中Uri类的实现,在遇到ipv6地址加端口模式,例如 http://[FEDC:BA98:7654:3210:FEDC:BA98:7654:3210]:8080/test.mp3会出现解析失败,如果去掉端口 ,也就是默认端口情况下则播放没有问题,例如 http://[FEDC:BA98:7654:3210:FEDC:BA98:7654:3210]/test.mp3 ,因此在使用我们的Xftp app的时候,也会遇到这个困惑,在ipv6环境下,如果不是默认的80/443服务端口,2019.02之前发行的版本会出现播放失败,无论是我们内置播放器还是第三方播放器都会出现失败,这是android本身的Bug引发的,这个Bug早就被提交,但直到2018年12月才开始处理,估计要到android 9或者之后版本才会修复,在我们的客户端2019.02或者更新的版本中,我们已经通过了变通方法绕过了这个缺陷,但无法保证100%管用.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 
(c) 2011-2019 phoenixp2p.com