几个月前,我搁下了打到一半的《只狼》,花了两个星期用原生java码了一个http服务器(可以理解为网站服务器),又花了两个月时间把她移植上了安卓平台并做了界面。
这个软件的唯一作用是传送文件,服务器只是实现目的的手段而已。
写这个软件的想法缘于一年前的某个晚上,我偶然发现PC后台背着我在跑流量,原来是我经常用来传文件的某聊天软件,暂且称之为Q君,在关闭自动更新后还是偷偷更新了。联想到室友用的同厂商游戏平台在后台扫描硬盘的恶劣行径,我决定让这个烂仔滚出我的电脑!但是Q君无疑是目前对我来说最方便的文件传输工具,为了保住节操避免迎来真香结局,我开始萌生自己写一个类似功能的APP的想法。
苦于没学过安卓开发,或者说根本没精力去学,这个想法在TODO清单里搁置了很久,直到今年刚好学了一门安卓开发的课,我也就有充足的理由说服自己来实现这个软件。我在着手写这个软件时对安卓开发没有一点概念,接触后虽然发现技术栈并不复杂,都是缺什么就自学什么,但是因为没有具体又系统地学习,我无法保证软件在各位的手机上都可以顺利运行。
最开始的想法是使用专用的客户端来实现,意味着我在PC平台上也要写一个客户端,但这已经和我的理(lan)念(duo)相冲突了。转念一想,把一个http服务器搬上手机似乎是一个不错的选择,只要其他设备上有浏览器就可以愉快地传送文件。于是我对市面上常用的http服务器进行抓包分析上网查资料,渐渐地,有没有这个APP对我来说已经不重要了,兴趣全投入到如何实现服务器上。服务器在PC平台上实现后,我已经失去了把她移植到安卓平台上的兴趣,但受迫于安卓开发课程需要提交结课作业,也只能硬着头皮做完剩下的UI逻辑代码。结果期末答辩时候,因为软件本身交叉了网络和软件两个学科,把授课老师唬得一愣一愣的。
软件名,CyberPotato(赛博土豆,太怪太弱智了)。不用我多说,在座各位可能比我更清楚Cyber的含义。
界面的设计灵感来源于《辐射4》中动力甲的AR显示屏。我没学过设计,美术也停留在小学兴趣班水平,界面设计上我已经尽力了。
英文看起来似乎和界面更搭配所以就用了英文,但是我非常担心我的工地四级英语出现尬或错误的地方,诚挚希望各位能给我指出。
软件使用完全原生的代码,图标也都是自己设计的,字体使用了微软的Fixedsys字体,但是微软一般很少会和个人开发者过不去 。
打开软件,连接到wifi,在浏览器输入http://[IP]:[端口号]就可以访问网站了,具体怎么上传和下载文件见接下来的操作手册,手册又臭又长,也可以不看自己摸索。
写完这个软件后,我发现连我自己都懒得用,更别说其他人了,估计50%的用户看到主界面会一脸懵,80%的人会因为不知道怎么访问这个土豆服务器进而怒删软件。我也有考虑出个简约界面,比如可以分享访问链接到微信等等一些更傻瓜化的操作,但会不会更新还是看各位的反响吧。如果你会网页开发,在设置选项中,你也可以导出整个网站,自己修改网页代码。
至于为什么会分享一这么屎的软件,因为毕竟没有什么能比在手机上运行一个http服务器更酷的事了。
网盘: https://pan.baidu.com/s/1I8s4l2hEZZHbHfAztxR7LQ 提取码: 7xni
github: https://github.com/CookMyCode/CyberPotato/releases/
非唯一指定邮箱: codig_work@outlook.com
请尽量通过上面两个渠道下载,本软件永久免费,软件不存在任何形式的广告,如果有任何疑问、建议可以通过邮箱联系我,但是无法及时答复,因为作者现在连实习都还没找,饭都快吃不上了,平时又要打游戏睡觉,很忙。出现闪退等无法使用的情况,请注明手机型号和系统版本。未来可能会上架国内应用商店,代码太烂,暂时不打算开源 。
一直很想在机核投稿,但是肚子挤不出没半滴墨水,机核的大部分文章又都是和ACG相关,再者是能引发人去思考的,相比之下,这篇文章low了不少。软件的设计概念也没任何创新,无非是一种类似搭积木的东西,就像是上千种积木散落在房间中,在搭建一个模型前先对这些积木进行分类,分类到一定程度时,心中也就对每种积木的位置有了概念,于是需要什么积木就去哪找,胡乱拼接一通模型就出来了.....
评论区
共 39 条评论热门最新