前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >我的开源项目,趣享GIF源代码已正式公开

我的开源项目,趣享GIF源代码已正式公开

作者头像
用户1158055
发布2019-07-03 12:37:40
5860
发布2019-07-03 12:37:40
举报
文章被收录于专栏:郭霖郭霖郭霖

大家早上好,猪年春节将至,先跟大家拜个早年。

自从上个月发布了我编写了两年之久的开源项目趣享GIF的App版本,不少朋友都一直在博客、微信公众号上催问我什么时候开放源代码?为了能够尽量将源代码公开,我这一个多月也是没少忙活,基本上是每天下班就开始抓紧写代码,尽量能早一天是一天。

可能有些朋友不明白,项目不是已经开发好了吗,还有什么东西要写的呢?这是因为开源版和非开源版本在某些地方是不一样的,比如说非开源版本登录是使用的QQ、微信、微博这种第三方登录的方式,而开源版用不了,因为第三方登录一定要验证App的包名和签名才行,大家在各自电脑上打出来的APK包签名肯定是验证不通过的。

于是在开源版本中,我将登录方式改成了手机号登录,之所以我一直排斥做传统的账号密码登录功能,是因为这样还需要专门开发一套账号管理系统,包括设置密保问题,以及找回密码等功能,太过于麻烦。而使用第三方登录和手机号登录,就相当于把安全性问题交给了第三方解决,我这里就相对轻松了很多,用户登录也方便了很多。

手机号登录功能我一开始选用的是阿里云的短信服务,结果因为我开发服务器使用的语言是Ruby,而阿里云并没有提供Ruby的SDK,得用原始的HTTP方式来对接才行。但是阿里云短信服务的原始对接方式太复杂了,各种身份验证绕来绕去,我实在没搞定,最终换成了腾讯云的短信服务,在这方面着实花了不少时间。

除了修改了登录功能之外,我还调整了App的主题颜色,使用绿色作为开源版的主色调,还修改了几个由大家测出来的Bug。并且大家在试用了趣享GIF之后提出来了不少建议,本来我是想将这些建议也一一优化的,但是这样就肯定无法赶在春节之前开源出来了,最终我决定将这些建议缓一缓,先发一个初始的开源版,以后再慢慢进行版本迭代吧。

开源版本和之前发布的非开源版本功能基本是完全一致的,因此大家应该也体验的差不多了,我这里就简单再发几张截图吧。

可以看到,开源版的Logo以及整体App的主色调我都进行了调整。

手机号由于不方便在截图里面显示出来,登录功能就不跟大家演示了,总之如果这是一个已注册的手机号,那么登录成功后将会直接跳转至主界面,如果是未注册的手机号,那么会跳转到注册界面。

注册界面如下图所示:

由于这是非第三方登录的情况,我无法像第三方登录时那样自动获取到第三方账号的昵称和头像,因此昵称需要自己手动输入才行,头像使用的是一个系统默认的图标,当然大家后面可以再自行进行修改。注册成功会自动跳转到主界面。

浏览GIF界面如下图所示,这些大家应该都很熟悉了:

分享动画效果,可以将图片分享到QQ、微信、微博、或者保存到手机:

点赞动画效果:

发布GIF趣图:

应大家的建议,增加了一键回到顶部的功能,点击当前页面的Tab项即可一键回到顶部:

由于没有了第三方账号的头像,默认的个人主页界面可能并不会很好看,如下图所示:

但是你可以点击Fab按钮来对你的个人主页进行随意的定制,编辑出好看的个人主页:

设置界面如下图所示:

关于界面也进行了一些调整:

更多功能就不再向大家演示了,因为很多朋友对这个App已经很熟悉了。那么就话不多说,接下来进入到本篇文章最重要的部分,公开趣享GIF的源代码。目前趣享GIF已在GitHub上开源,大家可以随手点一下Star,算是对我的支持吧,项目主页地址是:

http://github.com/guolindev/giffun

另外需要提醒大家一点的是,趣享GIF的源代码仅供学习和交流使用,严禁用于任何商业用途,否则我将保持一切追究法律责任的权力。当然,如果你是通过这个App的源码学到了很多知识,然后应用到了自己的项目当中,这种我是非常欢迎的,但如果只是在我的源码基础上稍微改了改代码或者界面,然后就拿去用作赚钱目的,这种行为是不被允许的。

本来考虑到服务器安全的问题,我有想过客户端与服务器接口通讯的这部分代码不进行开源,但是后来仔细考量之后我还是决定将所有的源代码都进行公开。我不知道这样会不会导致一些我没考虑到的服务器漏洞暴露出来,但是请大家不要试图对我的服务器进行攻击,我不是专业的服务器开发人员,这个服务器的存在只是为了方便大家更好地学习。

好的,该讲的差不多都讲完了,最后祝大家猪年大吉。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019年01月29日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
访问管理
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档