记忆枕厂家
免费服务热线

Free service

hotline

010-00000000
记忆枕厂家
热门搜索:
技术资讯
当前位置:首页 > 技术资讯

实战分享我用这几款工具开发出了一款图片检索游戏

发布时间:2020-01-17 19:08:42 阅读: 来源:记忆枕厂家

导语:Matt Makai是一个Twilio程序员,他和我希望利用Twilio推出的最新功能做一款App应用。我选择了Cheer Up图片递送服务,同时利用Flickr的应用程序接口为用户提供个性化图片。

只有当开发完成一款App应用之后,你才能知道它的真正价值。

Matt Makai是一个Twilio程序员(Twilio服务可以帮助开发者在其应用里融入电话、短信等功能),他和我希望利用Twilio推出的最新功能做一款App应用。我选择了Cheer Up图片递送服务,同时利用Flickr的应用程序接口为用户提供个性化图片。

我们决定使用Flickr标签作为图片检索系统。人们通常会有很多理由使用Flickr标签,但其实都不会有太多意义。因为Flickr应用的用户,基本上会把一半以上的时间用在传递照片上。

但是我们却可以利用这一点。现在,我们要介绍的就是Picture Roulette这款多媒体短信服务应用上,你自己也可以轻松尝试开发一下。这其实算是给Flickr用户打造的一款惩罚小游戏,用户可以在查询栏内输入一个或多个单词搜索图片,如果Flickr发送给你的照片是你要查询的内容,那么你赢了!如果不是,你就要被罚一杯酒。

实际上,这和我们期望开发的应用有所差距,但是这款应用还是挺好玩儿的,而且每个图片短信相当便宜,只有两美分。

下面就介绍一下Picture Roulette是如何在你手机上运行的:

必要条件

你需要一个Twilio账号,该账号必须用手机号码注册,并支付五美元才能完成。之后你需要按照Twilio提示的步骤完成注册。接着,你还需要AccountSID和加密AuthorTOken,以及一个Flickr API号码。在Flickr App Garden里面(见下图),你可以选择创建一款非商业性App(Flickr会给你提供一个非商业性的许可),随后Flickr会立刻为你生成一个公钥和一个密钥。在我们开发的这款应用里面,是不需要密钥的,但是这个密钥信息还是要保存好的。

最后,你还需要一个免费Heroku账号(Heroku是一个支持多种编程语言的云平台即服务)。我们会用到Heroku在GitHub上的一键部署按键,这样你就不用再去做一些困难的编程作业了。这个按键功能是在上个月发布到GitHub上的,用户可以在自己Heroku账户下开发GitHub App应用,而且无需复制代码库。

操作说明

在我们的Picture Roulette GitHub代码库里,你可以在Readme文档里面点击紫色的Heroku按键,这样就可以立即登录到Heroku上面了。

一旦登录上Heroku,在输入完你的Flickr API公钥之后,这款App就会提示你输入自己的Twilio AccountSID和加密AuthToken。

点击免费部署(Deploy for Free),等待构建App,有时这个操作需要的时间还是比较长的。一旦所有的步骤都完成之后,就可以点击屏幕底部的查看(view it)按键了。(如下图所示)

虽然App正确部署完成,但是它整体的感觉并不会让人觉得非常兴奋。正如下图截屏显示的那样,Heroku只会简单地告诉你,应用部署完成了。现在,按照它的提示,复制浏览器URL到用你手机号码注册的Twilio消息文本框内。

现在,转到你的Twilio账户下,然后进入号码(Number)标签。点击你的Twilio号码,然后把之前的URL复制到Messaging Request URL文本框内,再点击保存。

现在,尝试在你的手机上面的Twilio账户下输入一个文本单词,等待大约20秒,或许,Flickr应该就会给你发送一张和你输入那个单词相关的照片啦。

如何操作

如果你查看Picture Roulette的代码库,可能会注意到里面文档中的代码基本上没有超过50行的。这全靠Python应用程序的功劳,它可以让Twilio和Flickr的应用程序接口完成绝大多数工作。此外,我们这款应用还使用了Flask,一个Python微框架,将所有代码都整合在一起。

这个程序的核心都在views.py这个文档里面啦,Matt引入了Twilio和Flickr的API,并设置了三个功能。

l 发送图片:它是Heroku App部署之后的一个功能,如果你的App能够正常发布,当你在网页浏览器上访问图片信息的时候,这个功能可以把这个图片信息显示在手机上面。

l 获取Flickr图片:它可以让这个小游戏保持新鲜有趣,就算你天天玩儿这款应用。该功能可以调用Flickr API,利用标签识别出前25个结果,然后它会从这25个结果中随机挑选一个,发送给你。举个例子,如果你不断地发送一个单词,比如南瓜,但是每次检索到的图片都是不一样的。而且,我们知道Flickr上的用户会不断上传新图片,因此前25个搜索结果也会不断变化。

l 发送twiml多媒体短信息:实际上TwiML的意思就是Twilio置标语言,这个功能可以和Twilio的多媒体短信息应用程序接口交互。它实际上算是一系列指令,给用户输入的内容做出回应,告诉Twilio该做什么。在我们这个程序里面,这个功能其实就是告诉Twilio给用户返回一条图片信息。

在Picture Roulette GitHub代码库上的其他文档,基本上都使用了Flask框架和Heroku进行交互,因此都可以轻松部署。下图是我们这款应用在实际应用中的大致情况:

如果你也部署了Picture Roulette,并觉得很好玩儿,可以告诉我们。如果你们都什么建议,能让这个App变得更好,欢迎在下面评论栏里给出意见。

BANGCAMP创业邦成长营,创业邦旗下孵化计划。第四期全新升级,60个名额正式开启招募!现在报名,将有机会获得资机构对接、创业导师面对面指导、2016创新中国春季峰会展示、创业邦媒体矩阵深度传播!创新原力,伴你前行!

即刻报名第四期!

医生在线咨询

就医挂号怎么预约

就医挂号网上预约