如今的通信真是方便,走到哪里都有网络。Wifi的利用已经到了很普及的程度。即使走到没有wifi信号的地方,利用手机信号也能上网。(若是连手机信号都没有,那就没办法了)

智能手机的使用也大慷慨面了各个年龄人群的上网。

曾经的手机,wifi上网和手机信号的上网必须人工进行切换(打开wifi上网开关之后手动关闭手机信号上网,反之亦然),而在如今的智能手机里,我们仅仅需同一时候打开Wifi开关和手机上网的开关,操作系统会自己主动进行切换。一般是有wifi信号的地方优先使用wifi信号。没有wifi信号的地方使用手机信号上网(至少我使用过的Android和Apple手机都是这样)。由于相比較而言,wifi上网是免费的(在眼下情况下。可能有一天会收费),而手机信号上网则是收费的。

   那我们仅仅要同一时候打开wifi和手机上网的开关即可了?

这样设置之后的手机使用起来确实非常方便。随时都能上网(仅仅要有网络),不再须要手动切换。但这种设置会在不知不觉中耗尽我们的网络流量(此处土豪请无视)。

安装流量监控软件吧,非常多流量监控软件的设置稍显繁琐,另外还须要root,可能并非全部人都愿意这样做。

    而我想设计一款简洁易用,符合多数中老年人以及部分年轻人使用方式的网络状态提醒应用。

众所周知。中国已经进入了老龄化社会。老年人占社会总人口的比例将会越来越大。而在中老年人中使用智能手机的比例也越来越大(在我周围的上年纪的人大都在使用智能手机)。所以我便想到了做这么一款应用。它的特点大概有下面几点:

   1,更简洁的上网设置

我所谓的简洁的上网设置。事实上就是不在应用里添加上网设置的功能。

大多数的智能手机操作系统都带有上网功能设置的选项,并且都已经做的很全面了。

比方会自己主动记录wifi的上网设置内容(password等)。会自己主动将手机上网切换到wifi上网状态(若是有有效的wifi信号)。所以仅仅须要让用户在系统设置里面把该设置的上网选项设置好即可了。

应用唯一要做的可能就是当打开应用时确保wifi上网和手机信号上网的开关是打开的。

   2。更明显的状态提醒

大、大、大(秉承着重要的事情说三遍的原则)。图片要大。字体要大。全部的提醒都要显眼。

人到中老年,非常多功能都在退化。特别是视力。所以全部显示的信息都必须以让他们看得清为前提。图片提示要明白,一看就懂,同一时候配合文字提示。尽最大程度让全部的人都能看明白(美观也是要考虑的)。非常多智能手机的网络状态仅仅有一个小图标提示。图标又小,含义又不明白(有些图标到如今为止我也没搞明白是干嘛的)。实际使用过程中中老年人确实非常难搞清楚。

所以应用要做的状态提醒的一大特征就是:清楚、明白的传达网络状态。

    3,更人性的网络切换

这个事实上有点难定义。由于即使在中老年用户中也会有玩智能手机玩的非常溜的潮人存在。我思来想去。结合我周围的中老年亲戚朋友的亲生经历。

最后总结下来。所谓的人性化,对于大多数的用户来说,就是简单。所谓的简单。就是由应用程序替他们完毕一些手动的操作。

对于他们来说,曾经须要自己动手完毕的操作(哪怕是点一下屏幕),如今能自己主动完毕了。他们也就不须要记那么多操作步骤了。

年长的人,记忆力总是会不如年轻人。

智能手机尽管智能,非常多操作也是要人工去完毕的。而那些操作步骤,对于年轻人来说可能不算什么,但对于中老年人那但是须要花费一定时间去记忆的,并且即使记住了也有可能非常快忘记。

    那什么才是人性化的网络切换:

下面的分析仅针对中老年人。以及部分年轻人的需求。

首先须要对智能手机的正常使用状态有一个定义。当手机屏幕为解锁状态的时候,我觉得是在正常使用;而当手机屏幕处于锁定状态的时候,我觉得是非正常使用。

此处的定义仅针对上面提到的这些人群。

当然会有一些特例。如手机网络通话时,或者听在线音乐时。后面会给出解释。

所以这里的网络切换我会这样定义:

    当屏幕解锁时。优先切换到有效的wifi网络,没有wifi网络切换到手机信号网路。

   当屏幕锁定时。关闭手机信号网络,仅仅使用wifi网络。

  

应用提示三种网络状态

本着重要的事情说三遍的原则,全部的提示框都会弹出三次

前面提过。使用手机信号上网是要收费的,而使用wifi是免费的(至少到眼下为止)。这对于中老年用户来说特别敏感。

所以当确实须要使用网络时(也即是屏幕解锁时),我才会把手机信号网络作为备选。

而当不须要使用网络时(也即是屏幕锁定时),我会把手机信号网络关闭。

那假设手机在进行网络通话,或者听在线音乐时怎样解决?

首先我并没有限制使用wifi网络,也就是仅仅要有有效的wifi网络。即使手机锁屏也能正常使用这些功能。其次对于以上我提到的人群来说,使用这些功能的人应该也不会非常多。(土豪请自己主动忽略此文)

所以网络状态提醒应用的网络切换流程图会是这样:

   对于应用的机型适配:

由于手头的机器不多,所以到眼下为止在下面机器上做了測试:

小米3           Android 4.4

一加            Android 4.3

    下面是应用的下载链接,使用手机扫描二维码之后下载:

网络状态提醒应用下载链接

去我们的博客能看到很多其它内容: 

    優態客(Yourtechnic)的博客:www.yourtechnic.com

    優態客(Yourtechnic)的联系方式:postmaster@yourtechnic.com


用YourAPP开发网络状态提醒应用的更多相关文章

  1. iOS开发 -------- 网络状态监测

    一 示例代码 需要先把第三方Reachability下载导入到工程中  下载网址  https://github.com/tonymillion/Reachability 1 封装网络工具类 Netw ...

  2. ios网络开发 网络状态检查

    http://www.cnblogs.com/hanjun/archive/2012/12/01/2797622.html 网络连接中用到的类: 一.Reachability 1.添加 Reachab ...

  3. iOS开发网络篇—Reachability检测网络状态

    前言:当应用程序需要访问网络的时候,它首先应该检查设备的网络状态,确认设备的网络环境及连接情况,并针对这些情况提醒用户做出相应的处理.最好能监听设备的网络状态的改变,当设备网络状态连接.断开时,程序也 ...

  4. Android开发——监听Android手机的网络状态

    0. 前言 在Android开发中监听手机的网络状态是一个常见的功能,比如在没网的状态下进行提醒并引导用户打开网络设置,或者在非wifi状态下开启无图模式等等.因此本篇将网上的资料进行了整理总结,方便 ...

  5. iOS开发网络篇—监测网络状态(转)

    文章转载自:http://www.cnblogs.com/wendingding/p/3950114.html iOS开发网络篇—监测网络状态 一.说明 在网络应用中,需要对用户设备的网络状态进行实时 ...

  6. iOS开发——网络篇——数据安全(MD5),HTTPS,检测网络状态

    一.数据安全 1.提交用户的隐私数据一定要使用POST请求提交用户的隐私数据GET请求的所有参数都直接暴露在URL中请求的URL一般会记录在服务器的访问日志中服务器的访问日志是黑客攻击的重点对象之一 ...

  7. iOS开发网络篇—监测网络状态

    iOS开发网络篇—监测网络状态 一.说明 在网络应用中,需要对用户设备的网络状态进行实时监控,有两个目的: (1)让用户了解自己的网络状态,防止一些误会(比如怪应用无能) (2)根据用户的网络状态进行 ...

  8. OS开发网络篇—监测网络状态

    iOS开发网络篇—监测网络状态 一.说明 在网络应用中,需要对用户设备的网络状态进行实时监控,有两个目的: (1)让用户了解自己的网络状态,防止一些误会(比如怪应用无能) (2)根据用户的网络状态进行 ...

  9. android开发获取网络状态,wifi,wap,2g,3g.工具类(一)

    android开发获取网络状态整理: package com.gzcivil.utils; import android.content.Context; import android.net.Con ...

随机推荐

  1. [SDOI2010] 古代猪文 (快速幂+中国剩余定理+欧拉定理+卢卡斯定理) 解题报告

    题目链接:https://www.luogu.org/problemnew/show/P2480 题目背景 “在那山的那边海的那边有一群小肥猪.他们活泼又聪明,他们调皮又灵敏.他们自由自在生活在那绿色 ...

  2. Android--Fragment与Activity通信

    package com.example.testfragment; import com.example.testfragment.MainFargment.BackString; import an ...

  3. BZOJ 3931 Dijkstra+网络流

    思路: (我能说按照题意模拟么) 用long long inf 要开大--. //By SiriusRen #include <queue> #include <cstdio> ...

  4. SpringMVC后台使用对象接受参数字符串转日期

    在springMVC配置文件中加入: <bean id="dateConvert" class="com.iomp.util.DateConvert"/& ...

  5. @synchronized 再考察

    核心是:将标示对象与锁建立关联. 线程 锁 标识: 异常: NSString *test = @"test"; @try {     // Allocates a lock for ...

  6. es6 学习2 模板字符

    es6模板字符简直是开发者的福音啊,解决了ES5在字符串功能上的痛点. 1.第一个用途,基本的字符串格式化.将表达式嵌入字符串中进行拼接.用${}来界定 //es5 var name = 'lux' ...

  7. linux命令find命令详解

    find 查找文件 find 哪里 什么类型 什么名字 -maxdepth 最大的深度 查找目录的最大深度    find -maxdepth 1 -type d -type 找什么类型的 f fil ...

  8. 【redis】redis命令集

    参考资料: http://www.cnblogs.com/woshimrf/p/5198361.html

  9. Object-C,四则运算计算器

    下面是是一个比较复杂的类. 定义一个四则运算计算器Caculator的接口和实现. 在main函数中,让用户输入四则运算表达式,比如a+b,a-b. 最后,在控制台输出结果. 用到的语法:接口.类的定 ...

  10. Unity Shader (二)Cg语言

    一.Cg基本数据类型 float 32位浮点数 half 16位浮点数 int 32位整型 fixed 12位定点数 bool 布尔数据 simpler* 纹理对象的句柄( the handle to ...