**
项目开发准备
**
或许你和我一样,是一位孤军奋战的android开发者,一款android应用都由您一个人包了。在其中我们会碰到各种各样的困难,然后不断的找bug修bug,使自己的作品不断完善。本人正在开发一款菜谱类App,就此记录下App从0到1的整个开发过程。在一款app的开发阶段,需求分析,以及功能性分析是非常重要的,一定要抓住app的定位,具体做什么,如何体现其功能,如何提高app的可操作性、实用性等等,当然UI至关重要,直接影响用户的体感,由于没有美工因此此次就不会做多么的好看了。接下来的几篇文章将记录作者从最初的设计到app的发布一系列流程。
App取名:指尖菜谱
面向人群:家庭主妇、吃货、尝鲜。
项目设计阶段:
明确菜谱App需要实现哪些功能。
功能需求分析:
- 菜谱分类 菜谱类别内容 菜谱某个菜的详细内容
- 菜谱查询:通过搜索获取某道才的详细内容
- 每日一推。随机推荐一道菜(简称:观摩)
- 美食微信精选
- 某个菜谱分享 或 收藏
以上是本款App所要实现的功能,其中很容易看出菜谱查询与菜谱分类查找是最主要的功能,其他的目的是为了提高App的可玩性,更加吸引用户。
就以上功能,接下来将记录一系列的开发过程。
开发环境:
开发平台:androidStudio 2.1.1
compileSdkVersion 23
buildToolsVersion “24.0.2”
框架需求:
现在Android开发,常常会用到各种各样的框架,而且android开发的框架比较杂,种类繁多。作者此次将挑选几个热门的框架进行开发。我想很多人都知道Android开发界的传奇人物Jake Wharton,我们用的很多框架都有他的参与开发的。我们上他的github上一看就知道https://github.com/JakeWharton
好了,这里就不多说了。
暂时我们选用的框架有
网络框架:okhttp
懒人框架:butterKnife(黄牛刀)
不过我这用的okhttp使用的是由一位国产大神对okhttp封装的辅助类okhttputils,github地址https://github.com/hongyangAndroid/okhttputils,上面有详细介绍,可以帮助我们简化开发流程。
重点要说下butterKnife,这是一个非常好用的框架,我们再也不用使用findViewById(int id);去找到对应控件了,直接通过注解的方式来简化这一步骤。具体使用方法查看官网:butterKnife官网
butterKnife的原来:http://blog.youkuaiyun.com/it_faquir/article/details/52910401
暂时选用这两种框架,后续还有需求,再继续添加。
其它所需类库分析:
为了增加界面的美观性与使应用更加高效。我将要使用CardView与RecycleView进行开发,由于这两种控件在建立工程时是没有的,需要导入相应的类库;尽然我们这应用是需要网络的,当然还有必不可少的json数据解析(此项目使用Gson作为解析);
数据来源:
数据来源很关键,由于一个人开发也没有那尽力和时间去开发后台和数据的收集,庆幸的是现在有各种各样的API可以免费使用,这里作者使用的是Mob上的菜谱API以及阿凡达数据的菜谱API,进行多种API结合开发丰富App内容,都是免费的,不过阿凡达数据要一点点钱,前期不要钱。
Mob官网:http://www.mob.com/#/
阿凡达数据官网:http://www.avatardata.cn/
当然你也可以使用聚合数据。此次暂时不采用。
有了API我们的数据再也不用愁了,而且这些数据足以满足我们的功能需求了,即免费,又不麻烦,简单实用,您也无需关系数据的更新,API是个好东西。
界面设计:
就这些API给我们提供的数据,作者进行了界面的设计。为了突出应用的功能与美观(忽略。。。)的界面,在开发之前需要对界面进行粗略的设计(具体完成效果图与实践效果为准,这里仅供参考):
如下图所示所示:。。。
主页:
菜谱页:
精选:
我的:(暂定)
指尖菜谱的准备工作做得差不多了。大体上的指尖菜谱分析阶段就此结束,下一篇将正式进入开发阶段。