第二天沖刺傳送門

第三四天沖刺傳送門

这一天我们主要是弄网页前台设计跟框架设计,这方面主要是由张奇聪负责。我们在amaze ui,smart ui,angularjs+bootstrap中挑选,最终选择了amaze ui作为模板来设计前台。首先做出了标题以及基本框架,里面有用户登陆,注册,第一行模块是用于分不同系别,每个系别里面都有还有三个模块,第一个模块是用于师生们闲聊,第二个模块是用于师生们活动,第三个模块是用于师生们交易。我们还想再加一些友情链接,比如失物招领,外卖点餐,兼职,培训,校园包车,二手交易等等,只为服务广商所有师生们!我们还会把广商里发生的重大事件或重大新闻优先用公告展示出来,第一官方消息也会先告示所有师生们,绝对比其它博客快速,准确,可靠,便于让师生们第一时间得到消息。我们会尽量做成为广商第一博客!

我们设计的网页基本页面是这样的:

说起Amaze UI框架设计,想必大家也会很熟悉了。因为我们这次前台是为了同Android现有的标准Amaze UI框架所匹配,所以我们必须与后台的设计相结合好。我们所设计的Foreground Service,在过去,一部分的这种需求往往采用SharedPreference的方式在不同的界面间实现共享,这样做不仅有一些额外的开销(文件IO),同时数据类型和逻辑的受限也比较明显。而且,当状态较为复杂时,每次在状态切换(如屏幕旋转)后重建状态的性能代价也可能影响到用户体验。其实,Amaze UI机制完全可以优雅的达成上述前台服务的需求,得益于Amaze UI本身与界面的紧密联系,可以方便的实现服务与UI的双向互通;受益于Amaze UI自动的生命周期管理,不必刻意提防内存泄露;借助Amaze UI的切换保留(retain)机制,可以在状态切换期间保持服务不中止。另外,由于Amaze UI的生命周期管理是由框架自动完成的,所以开发者也完全不必在Activity的生命周期事件代码中加入各种服务相关的冗赘处理,让代码更简洁清晰。

下面图是我们设计前台框架时的一些代码:

想我们前台的创建其实与后台也很相似的,也是需要按需创建的,我在制作前台时还需要看好与后台的交互,让用户感觉到用起来很舒畅,没有什么瑕疵问题,实实在在让用户觉得我们的广商第一博客真心好!

最后我们进行了程序测试:前台服务由于不直接涉及界面布局,因此完全不必在屏幕旋转等状态切换中重建,从而有效降低这一过程中的体验延迟,导致实现跨状态切换保持服务不流畅。为了解决这个问题,我在百度上找了好久才找打一个解决方法,就是在Amaze UI的初始化过程中将自身设定为『可保持』:

@Override public void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setRetainInstance(true);
} 身为我们这次前台设计和框架设计的主要负责人张奇聪在这几天也辛苦了,为了布置好我们项目的第一步可谓是下足了功夫,也很努力,值得表扬,为我们接下来后台工作和Android工作打下了坚实的基础!

广商博客冲刺第三天new的更多相关文章

  1. 广商博客冲刺第二天new

    队名:雷锋队 队员:叶子鹏 王佳宁 张奇聪 张振演 曾柏树 项目:广商博客(嵌入APP) 执笔人:王佳宁 第一天沖刺傳送門 第三天沖刺傳送門 今天主要是写需求分析,在经过组员的热烈地讨论,需求分析如下 ...

  2. 广商博客冲刺第四五天new

    第三天沖刺傳送門 第六七天沖刺傳送門 以上的前台设计架构已经完成了,现在来完成前台的安卓设计. 首先我们配置了Android SDK Manager 使得程序能在安卓环境下运行. 这就完成了前台安卓的 ...

  3. 广商博客冲刺第六七天new

    第四五天沖刺傳送門 第一版的網頁已經放到 云服務器(估計快到期了) 傳送門. (不怎么會玩服務器啊..求指教..目前問題如下: 1.我的電腦mysql密碼跟服務器的密碼不一樣..上傳的時候要把代碼里面 ...

  4. 广商博客沖刺第一天(new ver):

    項目名稱:廣商博客 沖刺二天傳送門 此次Sprint的目标:全部sprint任務完成 时间:1星期左右 每日立会 Daily Standup Meeting: 1#A3008 晚上8点开始,大概1小时 ...

  5. 【干货】利用MVC5+EF6搭建博客系统(三)添加Nlog日志、缓存机制(MemoryCache、RedisCache)、创建控制器父类BaseController

    PS:如果图片模糊,鼠标右击复制图片网址,然后在浏览器中打开即可. 一.回顾系统进度以及本章概要 目前博客系统已经数据库创建.以及依赖注入Autofac集成,接下来就是日志和缓存集成,这里日志用的是N ...

  6. Node.js 博客实例(三)添加文件上传功能

    原教程 https://github.com/nswbmw/N-blog/wiki/_pages的第三章 上传文件眼下有三种方法: 使用 Express 自带的文件上传功能,不涉及数据库 使用 For ...

  7. github+hexo搭建自己的博客网站(三)主题之外的一些基本配置(图片位置,文章目录功能)

    使用的yilia主题之后,还需要进行自己的定制配置 1.图片的位置 比如打赏的支付宝二维码图片,是在当前博客的source/assets/img/下 (不是当前主题) 配置:(在yilia主题下文件里 ...

  8. Web前端:博客美化:三、右上角的Github Ribbon

    1.保存图片到博客园相册 2.复制代码到可以放html代码的地方 我因为数量问题把这段sei到了 页首Html代码 <a href="https://github.com/zhengw ...

  9. 万里长征第二步——django个人博客(第三步 —— 设置一些全局变量)

    可以将一些全局变量设置在settingg.py里 #网站的基本信息配置 SITE_NAME = 'John的个人博客' SITE_DESC = '专注学习Python开发,欢迎和大家交流' WEIBO ...

随机推荐

  1. c++ 常成员函数 和 常对象

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/zhuyingqingfen/article/details/31751111 先明白几个概念: 1. ...

  2. PAT A1112 Stucked Keyboard (20 分)——字符串

    On a broken keyboard, some of the keys are always stucked. So when you type some sentences, the char ...

  3. PAT A1145 Hashing - Average Search Time (25 分)——hash 散列的平方探查法

    The task of this problem is simple: insert a sequence of distinct positive integers into a hash tabl ...

  4. Android学习之基础知识九 — 数据存储(持久化技术)之SQLite数据库存储

    前面一讲介绍了数据持久化技术的前两种:文件存储.SharedPreferences存储.下面介绍第三种技术:SQLite数据库存储 一.SQLite数据库存储 SQLite数据库是一款轻量级的关系型数 ...

  5. jmeter(十三)常见问题及解决方法

    jmeter作为一个开源的纯Java性能测试工具,工作中极大的方便了我们进行接口.性能测试,但使用过程中也遇到了很多的问题,下面就记录一下自己遇到的问题,后续会不断更新... 1.获取日志 在使用jm ...

  6. 关于for,while,dowhile效率测试

    引言 大家都知道每种循环对应的效率是不同的,书中都说在循环中使用减法的效率是比加法的效率高的,具体情况是怎么样,我们将详细列出各循环的执行效率问题.本文通过查看汇编代码比较各循环的效率以及i++,++ ...

  7. Docker中运行Dockerfile时报错“cannot allocate memory”

    今天运行Dockerfile脚本时报错了,现记录下来: Step / : RUN -bin/myagent symlink /proc/mounts /var/lib/docker/overlay/2 ...

  8. Luogu4640 BJWC2008 王之财宝 容斥、Lucas

    传送门 题意:有$N$种物品,其中$T$个物品有限定数量$B_i$,其他则没有限定.问从中取出不超过$M$个物品的方案数,对质数$P$取模.$N,M \leq 10^9 , T \leq 15 , P ...

  9. Luogu1084 NOIP2012D2T3 疫情控制 二分答案、搜索、贪心、倍增

    题目传送门 题意太长就不给了 发现答案具有单调性(额外的时间不会对答案造成影响),故考虑二分答案. 贪心地想,在二分了一个时间之后,军队尽量往上走更好.所以我们预处理倍增数组,在二分时间之后通过倍增看 ...

  10. anglarjs1.6.3+owin 实现验证之一:统一拒绝非登录访问。

    1.anglarjs端在app.js(即anglar的入口js),注册.factory("messageService",使得每次来自html客户端的请求都能带有一个值,如AKey ...