Android实战:手把手实现“捧腹网”APP(二)-----捧腹APP原型设计、实现框架选取
Android实战:手把手实现“捧腹网”APP(一)—–捧腹网网页分析、数据获取
Android实战:手把手实现“捧腹网”APP(二)—–捧腹APP原型设计、实现框架选取
Android实战:手把手实现“捧腹网”APP(三)—–UI实现,逻辑实现
APP原型设计
在APP的开发过程中,原型设计是必不可少的。用户界面原型必须在先启阶段的初期或在精化阶段一开始建立。整个系统(包括它的“实际”用户界面)的分析、设计和实施必须在原型建立后进行。
如何设计“捧腹网”APP呢?我们先观察他的M站页面结构:
我们可以看出,M站其实类似一个APP,只不过它是运行在微信网页端。 我们可以把这个设计风格,照搬到APP的设计上来。当然需要做些修改,使它更符合APP的常规设计。
原型设计,我们通常采用Axure,有兴趣的可以学习如何使用该软件。(我也只是略会使而已)
下面给出我简单设计的原型图:
原型图中,我们可以看出来,APP其实很简单,一个底部的tab导航,加上一个列表展示就组成了这个简单的APP。 其中列表项,又分为纯文(段子)展示,图片(趣图)展示。
有了产品原型图之后,接下来,我们考虑采用哪些技术、选取哪些开源库,可以更有成效的来实现它。
第三方框架选取
框架的选取,一定是为了能帮助我们更方便的实现该APP才使用的。建议不要为了特意去使用某个技术才去用它,比如这里,我们只是实现一个简单的APP(一两天就可以搞定的),没有必要去考虑用mvp或者是mvvm架构,也没有必要去使用okhttp、retrofit、rxjava等当前比较流行的技术,我们只要封装一个简单的网络请求能够获取网页源码就好了。
当然,如果是为了特意利用新技术,做一个小项目练手,那你可以去使用这些架构、框架,在实战中学习技术,一向是可取的。 不过此处,我们不对架构、网络框架等做过多的介绍,之后,在下一个项目实战中,我也会带着大家边学习新技术,边做一个较为完整、强大的APP。
好,针对“捧腹”APP,我们可以用到哪些开源框架呢?
Butterknife 依赖注入框架,主要用于View组件获取、事件监听处理
官方介绍:
https://github.com/JakeWharton/butterknife/
http://jakewharton.github.io/butterknife/
Glide 一个专注于平滑滚动的图片加载和缓存库
官方介绍:
https://github.com/bumptech/glide
博客详解:
http://mrfu.me/tags/#Glide
Glide的特别之处,在于它还支持Gif的加载处理。因为我们的app中有很多gif图片需要显示,所以选择glide是相当合适的。
PhotoView 图片浏览缩放控件
官方介绍:
https://github.com/chrisbanes/PhotoView
博客详解:
http://blog.csdn.net/zuiwuyuan/article/details/49340465
原理解析:
http://gold.xitu.io/entry/575d0598128fe10060021bdf
我们的app中有很多的图片,作为用户,当然希望能够放大图片,看的更清楚,此时,PhotoView 可以很好的帮助我们实现该功能效果。
Bughd 实现崩溃分析、版本更新
官方介绍:
http://fir.im/
http://bughd.com/product/android
Fir.im是一个免费应用内测托管平台,通过该平台,我们可以把我们做好的app发布出去,供别人下载。app发布上线后,肯定会遇到各种问题,所以我们需要将错误日志收集起来,及时解决问题。 当然解决问题后,版本更新是必不可少的,这时候,我们就需要用到Bughd 啦。
本章小结:
本章主要介绍了两个内容,第一个,设计“捧腹”APP原型,有了原型图,我们能更直观、方便的分析出开发过程中需要用到哪些技术点。 第二个,选择第三方开源框架, 优秀的开源框架,可以帮助我们节省大量的开发时间,实现更多更强大的功能、效果,所以,选择合适的开源框架,会使我们的开发工作事半功倍。
关于“捧腹”APP的具体的实现,下面一章会继续详解。
如果你迫不及待的想看源码,请前往https://github.com/zuiwuyuan/Joke查看。谢谢大家的支持。
Android实战:手把手实现“捧腹网”APP(二)-----捧腹APP原型设计、实现框架选取的更多相关文章
- 移动APP开发使用什么样的原型设计工具比较合适?
原型设计工具有Axure,Balsamiq Mockups,JustinMind,iClap原型工具,等其他原型工具.其中JustinMind比较适合APP开发使用. JustinMind可以输出Ht ...
- Android实战:手把手实现“捧腹网”APP(一)-----捧腹网网页分析、数据获取
Android实战:手把手实现"捧腹网"APP(一)-–捧腹网网页分析.数据获取 Android实战:手把手实现"捧腹网"APP(二)-–捧腹APP原型设计.实 ...
- Android实战:手把手实现“捧腹网”APP(三)-----UI实现,逻辑实现
Android实战:手把手实现"捧腹网"APP(一)-–捧腹网网页分析.数据获取 Android实战:手把手实现"捧腹网"APP(二)-–捧腹APP原型设计.实 ...
- 王家林的81门一站式云计算分布式大数据&移动互联网解决方案课程第14门课程:Android软硬整合设计与框架揭秘: HAL&Framework &Native Service &App&HTML5架构设计与实战开发
掌握Android从底层开发到框架整合技术到上层App开发及HTML5的全部技术: 一次彻底的Android架构.思想和实战技术的洗礼: 彻底掌握Andorid HAL.Android Runtime ...
- Go语言之进阶篇爬捧腹网
1.爬捧腹网 网页规律: https://www.pengfu.com/xiaohua_1.html 下一页 +1 https://www.pengfu.com/xiaohua_2.html 主页 ...
- python3制作捧腹网段子页爬虫
0x01 春节闲着没事(是有多闲),就写了个简单的程序,来爬点笑话看,顺带记录下写程序的过程.第一次接触爬虫是看了这么一个帖子,一个逗逼,爬取煎蛋网上妹子的照片,简直不要太方便.于是乎就自己照猫画虎, ...
- Android项目实战(二十二):启动另一个APP or 重启本APP
一.启动另一个APP 目前公司项目需求,一个主APP,需要打开某些小APP,这些小APP是整合了Unity的,但是还是android程序(所有小APP的包名是已知的). 以前没做过,查询了一下实现方法 ...
- 【Android 应用开发】Android 开发环境下载地址 -- 百度网盘 adt-bundle android-studio sdk adt 下载
19af543b068bdb7f27787c2bc69aba7f Additional Download (32-, 64-bit) Package r10 STL debug info androi ...
- Android开发全套视频教程在线观看网盘下载
千锋金牌讲师老罗老师简介: 国内第一批Android教学讲师,10多年软件开发经验,6年多教学经验,曾担任广东电信北京分公司移动事业部项目经理,主持过微软中国平台考试系统.山西省旅游局智能化平台等大型 ...
随机推荐
- JAVA_环境配置
1:系统环境 windows10 64位 jdk版本:jdk-8u131-windows-x64.exe,下载地址:http://www.oracle.com/technetwork/java/jav ...
- [code] if (x<0)x=0;else if (x>255)x=255;
//颜色范围0-255: // 1.原始: )tem_b=;)tem_b=; )tem_g=;)tem_g=; )tem_r=;)tem_r=; //2.使用条件状态值生成掩码来移除条件分支 tem_ ...
- 《DSP using MATLAB》Problem 7.32
代码: %% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ %% Output In ...
- InnoDB: Error number 24 means ‘Too many open files’
一.问题的描述 备份程序 执行前滚的时候报错.(-apply-log) InnoDB: Errornumber 24 means 'Too many open files'. InnoDB: Some ...
- 一些linux"基本操作"的教程汇总
linux有些操作不用经常忘掉,如果忘掉还要到处找教程,所以想干脆汇总一些写的比较好的教程,免得下次再去找(完全个人向) 1. guake terminal http://blog.csdn.net/ ...
- socket.io的基本使用
服务端: 1.监听客户端连接: io.on("connection",socket=>{ }); 不分组数据传输:传输对象为当前socket 2.1给该socket所有客户端 ...
- @import vs #import - iOS 7
It's a new feature called Modules or "semantic import". There's more info in the WWDC 2013 ...
- 标记扩展和 WPF XAML
本主题介绍 XAML 的标记扩展概念,包括其语法规则.用途以及底层的类对象模型. 标记扩展是 XAML 语言以及 XAML 服务的 .NET 实现的常规功能. 本主题专门详细论述了用于 WPF X ...
- Delphi 设计模式:《HeadFirst设计模式》Delphi7代码---门面模式之HomeTheater[转]
1unit uSubObject; 2 3interface 4 5type 6 7 { TAmplifier与TTuner,TCDPlayer,TDVDPlayer相互 ...
- 严格模式下顶层箭头函数this指向的是全局对象
我们知道普通函数调用,this在非严格模式下指向全局对象,在严格模式下是undefined.那箭头函数呢?我们知道,箭头函数没有自己的this,它的this是最近外层非箭头函数的this,那直接在顶层 ...