Android开发目前是移动开发中的“当红炸子鸡”,大量Java程序员涌向Android,同时会习惯性地将桌面和Web端的开发/设计经验带到移动设备上。这样的好处是充分利用了移动开发和桌面/Web服务的共性,比如广泛使用的列表、本地数据库等常用组件;坏处是移动和桌面/Web的使用场景和载体完全不同,直接移植桌面端开发的经验有害无益。
比如,手机主要在碎片时间使用,用户容易对复杂的界面设计感到疲惫;同时,移动环境中上网慢,网络连接频率和失败重发机制的设计更有讲究;此外,手机电池续航能力差,后台复杂的计算会加速耗电速度。这些开发理念直接影响用户最终体验,下面我们来讨论一下在Android中如何以用户体验为导向进行开发优化。
虽然不用深入了解底层,但需要对系统有基本的了解。Android系统分层清晰,最底层是Linux Kernel 2.6,之上包含了Webkit、SQLite、OpenGL ES等基础C/C++库,同时Dalvik虚拟机运行于Kernel之上,帮助应用进行底层内存管理(这样使Android应用无法直接进行内存释放)。这些库一方面被系统大量使用,另一方面也通过Framework层提供接口给开发者。此外,Framework层还提供其他系统级的服务,如消息通知服务、位置获取服务、设备信息读取服务等。
由此可见Android对于开发者非常开放和灵活,尽管如此,开发时仍然要注意不要过于随意,以免产品过于复杂而让用户不知所措。当然,除了少数系统级应用开发需要深入了解Framework层实现机制之外,一般第三方应用开发者并不需要深入了解每一层原理,应把重点放在如何理解和灵活运用庞大的Android SDK API。
不友好的体验来自三个方面。
其一是Android的碎片化带来了UI适配问题。Android机型众多,和iPhone相比,界面适配饱受诟病。要保证应用能运行在不同分辨率的手机上,需要理解Android提供的自动适配方案。事实上,Android系统为UI适配做了充分的考虑,只要理解系统对此的精心设计,就能在开发时少走很多弯路,给不同分辨率的用户提供友好的呈现界面。
简单来说可做如下解释:
• 开发时避免绝对布局(AbsoluteLayout),因为这会让你的应用只在测试机上“看上去很美”,放到别处就横七竖八。
• 界面控件大小单位多用DIP(Device Independent Pixels),理由同上。
• 图片尽量使用系统提供的NinePatch技术,能使同一张小图片在不同分辨率的屏幕上保持精度自由缩放。
其二是滥用通知服务,导致用户很容易被打断。典型场景是在通知栏上的各种通知消息,有关无关的都推送,让用户感觉不适。建议是通知适可而止,除非是对用户真正有用的信息,否则最好让用户进入程序后再提示。
其三是主要来自设计师的问题,就是照搬iPhone应用的设计。Android的系统特点不同于iPhone,如程序的栈式管理机制、菜单按钮、返回按钮,从而用户的预期也不尽相同。比如我发现很多设计师喜欢抛弃返回键,模仿iPhone给每一页设计一个软返回按钮。生硬做作的移植会导致与用户预期不一致,是彻底的设计败笔。
安智宝是主打效果的安卓应用推广平台。通过安智宝,用户可以通过自助方式 进行应用推广。作为效果性的推广平台,安智宝利用云技术智能的进行渠道匹 配,对渠道的高效利用,节约用户的每一分钱。用户可以精确的控制应用投放 每天的投放量、渠道质量(留存率等),做到覆盖广、活跃度高、控制精准。
友盟:iOS 13正式发布后对U-Push...
友盟:U-PushSDK6.0.1更新须知
Talkingdata:请用真正的“用户...
友盟:软件著作权登记证书申请攻略
友盟:以自动生成汪峰老师歌词...
谈谈消息推送服务的"送达率"
友盟推送服务如何统计App卸载?
友盟:三步走起 提升 iOS 审核...
友盟:各类 App 如何玩转微社区...
【转载】移动应用统计的基本原...
【转载】【App 运营】快牙:怎...
【转载】友盟指数:大屏、高分...
【转载】数据运营 | 活动社交类...
【转载】指尖上的世界杯
【转载】脸萌PM谈如何使用统计...
【转载】0 到 4000 万玩家,策...
【转载】友盟用户评级如何帮你 ...
【转载】友盟数据工场是如何运...
【转载】4G使得非WiFi环境下的...
【转载】APP 运营必读:怎样通...
Copyright © 2016 - 2020 anzhibao.com . All Right Reserved.
安智宝 版权所有