APP五大混乱之源

  我是一名移动应用开发者,从事这个行业每每感觉“高端大气上档次”。但不久前的一件事让我看到了移动互联网的一些灰暗面,让我感到汗颜。

  倒不是个大事情,你或许也碰到过。前几天,刚上大学的表弟拿一部三星手机跟我抱怨:最近自己的手机运行很卡,手指滑动反应迟钝,还时常提醒“空间”已满。不得已忍痛删除了一些照片和游戏程序,但过不了多久空间又不够用了。他起初以为是手机中毒了,但试过了所有手机安全软件都没有查出病毒来。

  我拿过来检查了下,基于对安卓平台的了解,我认为问题的症结不是病毒,也不是手机质量,而是手机被垃圾占满了。我下载了一个猎豹清理大师,一扫描竟然扫出超过3GB的垃圾(手机内置存储是8GB)!自己都吓一跳。

  3GB是个什么概念?相当于拍摄1000张照片(800万像素),或者安装100个手机游戏,下载10部电影。我仔细查看了每一项垃圾扫描结果,发现这3GB基本都是他常用的APP留下的缓存或者残留等垃圾文件:

  1、经常用手机看片,视频类应用有1.2GB的缓存和残留;

  2、已经安装过的APP安装包和升级包有800MB,这是由于他几乎每天都下载新鲜的游戏;

  3、天天上下班都会用手机看新闻,半年多从未清理过,新闻客户端缓存达到400MB;

  4、QQ、微博、微信等社交应用也积累了300MB缓存;

  5、手机浏览器缓存达200MB;

  6、美图应用缓存达100MB

  ……

  在清理了这些垃圾文件后,他的手机就恢复了运行速度,手机操作流畅,也敢放心下载新游戏了。自此,他就养成了每天至少清理一次的习惯,几乎成了强迫症。

  手机修好之后,他连声问我:为什么手机中会有这么多垃圾?这不是智能手机吗?为什么不能智能清理?他的问题触发了我的反思。

  安卓APP五大乱象

  程序产生缓存等垃圾,这我当然早就知道,PC电脑中一样存在,是个不起眼的小事,使用卫士或者管家类产品一键就能清扫干净。但这在手机上其实并不是一件小事。

  第一,智能手机降低了使用门槛,老人小孩都能用,他们对技术完全不懂,更不懂得安装专门工具;第二,手机空间不足是天然瓶颈,不像电脑硬盘动辄1TB、2TB,智能手机目前最大内置存储卡也就128GB,国内80%的手机空间不足4GB!

  如果这么小的空间再被垃圾文件浪费掉,实在不应该。说实话,从开发的角度来说,这真的不是难事,或许就是增加一段代码。但事实恰恰相反,许多智能手机尤其是安卓手机就是一个大垃圾场!

  作为一名移动应用开发者,我自己都看不过去。包括我的产品在内,许多APP在手机里乱放垃圾,手机空间不足与APP的不规范开发息息相关。下面我列举了安卓APP开发中的五个不规范之处,希望能引起同行的重视。

  1、卸载不干净

  在苹果iOS平台上,一个APP卸载后就被完全删除干净;但安卓上大量的APP屁股总擦不干净,卸载后仍然残留了许多文件。尤其是视频类、音乐类等的APP,残留文件更大,往往高达数百MB。

  为什么卸载不干净?我仔细研究了下发现,许多APP开发者为了方便自己获取文件,没有把APP产生的缓存文件放在规范的目录里,而是存放在SD卡的根目录中。实际上,SD卡根目录下的文件夹在卸载之后,不能被删除。即使用户卸载了这个软件,APP运行中产生的缓存文件仍会残留在SD卡中,占用手机大量空间。

  2、缓存不自动清理

  以新闻客户端类APP举例,用户每次预览新闻后,总会留下大量的文字、照片或视频缓存,存放在SD卡中android/data目录下。缓存是为了提高重复访问的速度和节省流量,但其实新闻有很强的时效性,昨天看过的新闻几乎不会再次打开,这些缓存信息就一点儿价值都没有,占用了大量空间,用户不知道去哪里删除,这些APP也不自觉,均不会自动清理。

  3、频繁后台联网自升级

  有统计数据发现,约有20%的常用APP即使不运行时也在后台启动联网。它们在做什么?主要是提交产品及用户使用信息、获取广告、查询是否升级等。而每次APP升级安装后,新的安装包却仍然留在了手机中,变成了无用垃圾文件,同样会造成用户手机的流量和空间无谓地消耗。

  4、广告插件

  熟知安卓生态圈的开发者戏称:安卓软件包里,三成是软件功能代码,七成是广告代码,而苹果则是倒过来的。在中国,这种情况显得特别严重。一切因为特殊的国情:愿意为软件付费的人寥寥,免费软件总得想办法挣钱。

  挣钱的出路在哪里?看起来似乎只有广告。经常看到一个软件捆绑20个以上的广告插件,这些插件由超过50家安卓广告联盟厂商开发并免费提供。

  这种不健康的现状使得安卓应用软件极不纯粹,运行时自然会占用较多的存储资源、网络资源、CPU时间乃至手机电量。

  本来安卓软件可以做得更小巧、更节省空间。但由于广告插件过多,软件体积必然增大,被打包软件下载的广告资源分布在存储卡的各个角落,并且越积越多。同时,由于手机总是联网下载这些广告资源,手机流量和电量都被浪费了。

  5、诱导推广APP下载

  免费APP另一个挣钱的办法是推广其他APP。推广的方式当然也可以称为是广告,目前很多不是按浏览付费,而是按效果付费(CPA),也就是你帮我真真实实地推广了多少安装用户,我才给广告费。因此为了提高收入,提高推广量,不少APP的广告含有特别强的诱导性,能全屏的就全屏,能用美女图的就上美女。

  比如,在APP内展示全屏广告,用户只要一次误点击,推广的APP就被下载安装了。小白用户手机中许多莫名其妙的APP就是这么被安装上的,基本称得上是被强奸,准确说是被诱奸。

  再比如,“积分墙”广告目前在APP中也比较常见,就是在应用内展示积分任务,任务之一就是下载安装推广的一个应用。装了就能获得3000积分,继续闯关,不装?直接Game Over!这种广告在游戏APP中最常见。

  用户“被推广”安装的这些APP大多不是用户本意需要的,如果不卸载同样白白占用了空间。

  APP的修养

  为什么移动应用存在上述这么多不规范之处?首先不可推脱的是,他们对手机垃圾处理的忽视、对消费者的不负责任;其次APP本身免费,为了获得营收,故而采取了灰色手段;此外,安卓这个生态系统也存在一些缺陷。

  众所周知,安卓系统是个开放平台,代码全部开源,许多手机厂商还开发了各种定制系统。APP程序数据想放哪里就放哪里,几乎不受约束。另外,安卓的应用商店不同于苹果iOS只有一个App Store,数量可谓多如牛毛。仅在国内,安卓应用商店就有上百个。

  多则乱,这些应用商店对上架APP的审核标准不一,多数审核不够严格,有的甚至为了获取分发营收就对不规范的APP睁一只眼闭一只眼。安卓系统的开放以及应用审核的不严格就给了APP开发不够规范、存在灰色地带的空间。

  安卓已经是全球最大的移动平台,用户越来越多,它不应该是一个大垃圾场。虽然身份卑微,我也呼吁所有的移动开发者要重视用户体验,还要树立环保意识。借用一位大人物的话,就是要寻求可持续发展。

时间: 2024-08-17 14:20:04

APP五大混乱之源的相关文章

开发者反思:安卓APP五大乱象

本文讲的是 :  开发者反思:安卓APP五大乱象  ,作为移动应用开发者,从事这个行业每每感觉"高端大气上档次".但不久前的一件事让我看到了移动互联网的一些灰暗面,让我感到汗颜. 倒 不是个大事情,你或许也碰到过.前几天,刚上大学的表弟拿一部三星手机跟我抱怨:最近自己的手机运行很卡,手指滑动反应迟钝,还时常提醒"空间"已满.不 得已忍痛删除了一些照片和游戏程序,但过不了多久空间又不够用了.他起初以为是手机中毒了,但试过了所有手机安全软件都没有查出病毒来. 我拿过来检

Appium+python自动化17-启动iOS模拟器APP源码案例

前言 上一篇已经可以启动iOS模拟器上的safari浏览器了,启动app比启动浏览器要复杂一点,本篇以github上的源码为案例详细介绍如何启动iOS模拟器的app   一.clone源码 1.github上Appium的案例源码地址:https://github.com/appium/sample-code.git   2.确保mac上已经安装了git  (不会安装的自己想办法解决吧) 3.在mac本地新建一个文件夹,如:git_test_app,把代码clone到本地 $ cd /git_t

往昔源码站今何在-谈源码下载的细分

很早之前就想写这样一篇文章,可惜搜索不到以前的源码排行了,记得2003年末开始有这样的源码排行,几经修改,很多人在发布的时候,增加上自己的地址,也许这是源码下载站的站长们最开始的软文途径. Chinaz由03版的第二名无可厚非的成为了源码下载站的第一名,虽然他的不足人人都可以说出一点,但是至今能够超越CHINAZ的还未出现,你可以不尊重CHINAZ,但是谁都不可否认,那曾经是一批初级站长成长的地方,包括本人.谁都不可能否认阿飞的成绩,也不可能否定顽石5年如一日的默默更新,CHINAZ的成功也许占

详解Android中的Toast源码_java

Toast源码实现 Toast入口    我们在应用中使用Toast提示的时候,一般都是一行简单的代码调用,如下所示: [java] view plaincopyprint?在CODE上查看代码片派生到我的代码片 Toast.makeText(context, msg, Toast.LENGTH_SHORT).show();     makeText就是Toast的入口,我们从makeText的源码来深入理解Toast的实现.源码如下(frameworks/base/core/java/andr

iOS开源App整理

收集一些社区iPhone客户端源码,都已appstore上线,完整项目. 开源中国 开源中国社区iPhone客户端. Appstore 下载地址:https://itunes.apple.com/cn/app/kai-yuan-zhong-guo/id524298520 Git@OSC源码下载地址: http://git.oschina.net/oschina/iphone-app V2EX for iOS V2EX for iOS,V2EX 社区源码 Appstore 下载地址:https:/

Android天气预报app改进版_Android

最近总是有人来和我说我以前写的一个小app无法正常获取数据~Android简易版天气预报app 今天就又运行了下来查找问题,发现或许是接口有限制吧,不能在多台手机使用同个apikey 然后,发现了我写的代码实在乱七八糟,界面也实在不好看,就又重写了一遍,小小地修改了一遍,开发环境改为了Android Studio 最终效果图如下   工程图如下 一.获取地区信息 做这么一个天气预报app,首先就要获取到国内地区列表 (在我的另一篇博客有介绍:向任意网址发起数据请求) 中国天气网开放有天气预报接口

Android 6.0指纹识别App开发案例_Android

在android 6.0中google终于给android系统加上了指纹识别的支持,这个功能在iPhone上早就已经实现了,并且在很多厂商的定制的ROM中也都自己内部实现这个功能了,这个功能来的有点晚啊.在google全新发布的nexus设备:nexus 5x和nexus 6p中都携带了一颗指纹识别芯片在设备的背面,如下图(图片来自网络): 笔者手中的设备就是图上的那台黑色的nexus 5x,话说这台机器很是好看呢!手感超棒! 废话不多说,下面我出一个指纹识别的demo app,并且详细说明怎么

bootstrap响应式网页设计的9条基本原则!

bootstrap响应式网页设计是针对多屏幕问题的一个很好的解决方案,但从印刷的视角来看有点困难.没有固定的页面尺寸,没有毫米或英寸,没有任何的物理限制,无从下手. 为了desktop和mobile单独使用像素设计的方法也成为了过去,因为越来越多的设备都可以打开网站.因此,我们需要弄清楚bootstrap响应式网页设计的一些基本原则,接受流体网页,而不是与之相抗.为了让它保持简单,我们将着眼于布局(是的,响应式比它更复杂,如果你想了解更多,这是一个很好的开端.) 响应式 vs 自适应网页设计 它

iPhone拍照/摄像软件开发实例

  这个App基于lolfriend的源码改写,完全使用官方API.目前还没实现的功能有:替换 UIImagePickerController的cameraOverlayView;滤镜.其他效果如图,我的测试环境是3.1.2的虚拟机和 3.1.2的iPhone 3GS. 开发实例-iphone7双摄像头拍照"> 附件: CameraDemo.zips 帖子如下: 为什么我联机开发如此简单呢?? 其实今天有点激动的,因为可以通过XCode连接自己的iPod Touch进行程序的运行了. 一般