QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

OpenSignal 给出的 Android 现状分析及技巧

  • 2013-08-29
  • 本文字数:1125 字

    阅读完需:约 4 分钟

OpenSignal 上登出了一篇文章,深入分析了当今移动应用开发者们的工作。_ 这份 _ 最新的 Android Fragmentation Visualized报告(_Android_ 碎片化报告),针对开发_Android_ 应用所面对的挑战提供了若干独家视角。不出意料地,挑战主要来自于Android 这个当前盛行的移动操作系统的众多版本。

面对庞杂的设备类型创造一致的用户接口,并让应用针对这些不同大小的屏幕提供可预测的用户体验,需要面对众多的困难。报告中使用内容详实、信息量大的图表强调了这些问题。

该报告的作者认为,随着 _Android_ 的飞跃性增长和成功,这些多样性差异也将愈演愈烈。他们还进一步断言,虽然 _Android_ 主题的这些变种,毫无疑问将为开发者们摆出难题,但仍将更多地表现为优势而不是劣势。

在这种情况下,移动开发者应该对这样的持续需求做好心理准备:在尽可能多的_Android_ 版本和设备类型上,测试其应用的性能。这将有助于在这些变体之间实现可接受的用户体验。

另外强调的一点是,鉴于_Android_ 拥有全世界范围的用户基础的特质,开发者需要谨慎地考虑应用内容所面对的环境,以适应多种不同文化的内在情感。

一条可以精简测试的策略,是将这项工作聚焦于三星的_Android_ 版本屏幕尺寸,因为他们在智能机市场中占据了最大份额。

Open Signal__ 的 __James发布了一篇与之呼应的文章,在其中列出了 40 条针对开发者的 _Android_ 优化建议,并推荐了实现高质量编码的一些方法。例如在 _Tip2_ 中,_James_ 展示了开发者如何利用有益的 _Android_ 资源文件夹结构——可以用来改变屏幕分辨率和其他视觉特性,例如在横竖屏幕之间切换;或是针对阿拉伯语的内容,将页面布局改为从右向左。另外,对于在较小尺寸屏幕上展现应用,_OpenSignal_ 的专家还展示了如何利用 ActionBarSherlock来隐藏 _Action Bar_ 以节省宝贵的屏幕资源。这是一项基本的技巧!

_Tip8_ 展示了如何从下拉菜单中选择不同的屏幕尺寸,运用图形布局工具来作针对性的预览。在 _Tip9_ 中,_James_ 建议缩放所有的图片。Tip15_ 则建议放弃 _onDraw,转而定制开发自己的图形。_Tip20_ 讲述的是,要获得一致性,开发者应该定制他们全部用户界面插件(Widget)。

_Tip21_ 展示了如何使用_XML_ 文件,让按钮被选中的时候发生改变。_Tip36_ 建议追溯_StackTraces_ ,因为其文件被_ProGuard_ 特性所隐藏。_Tip39_ 鼓励开发者们在其工作中创建设备池,以针对应用测试提供更好的支持。

在今天, _iOS_ 和 _Android_ 之间的差异,更像是桌面版本的苹果 _MACOS_ 和 _Windows_ 之间的差异。类似地,_James_ 暗示为 _Android_ 开发应用远比针对 _iOS_ 要困难。他向入门开发者们推荐使用 StackOverflow来帮助他们解决代码中的问题。

查看英文原文: Android Stats and Tricks from OpenSignal

2013-08-29 03:161673
用户头像

发布了 256 篇内容, 共 77.3 次阅读, 收获喜欢 10 次。

关注

评论

发布
暂无评论
发现更多内容

微信视频号如何用 PC 电脑做直播?

boshi

直播 视频号

开发协同,高效管理 | 社区征文

武师叔

初夏征文

混沌工程,了解一下

华为云开发者联盟

云计算 测试 后端 混沌工程 华为云

如何使用物联网低代码平台进行流程管理?

AIRIOT

低代码 物联网,

直播回顾 | 云原生混部系统 Koordinator 架构详解(附完整PPT)

阿里巴巴云原生

阿里云 架构 云原生 混部 Koordinator

游戏资产复用:更快找到所需游戏资产的新方法

龙智—DevSecOps解决方案

游戏开发 游戏资产 艾尔登法环 游戏资产复用

Fabric.js 手动加粗文本iText

德育处主任

canvas FabricJS 6月月更

远程办公之:如何成为时间管理大师?| 社区征文

甜甜的白桃

初夏征文

好用的人事管理软件有哪些?人事管理系统软件排名!

优秀

企业管理软件 OA管理系统

Python 设计模式:适配器模式

宇宙之一粟

设计模式 适配器模式 6月月更

如何通过7个步骤编写出色的在线用户手册

小炮

学C++还是学Java?做软件研发还需掌握哪些知识和技能?

dvlinker

Java c++ 数据库 网络知识 汇编代码

活动报名 | MongoDB 5.0 时序存储特性介绍

MongoDB中文社区

mongodb

Helix QAC更新至2022.1版本,将持续提供高标准合规覆盖率

龙智—DevSecOps解决方案

C语言 静态代码分析 Helix QAC 代码合规率 代码合规

八大误区,逐个击破(终篇):云难以扩展、定制性差,还会让管理员失去控制权?

龙智—DevSecOps解决方案

Atlassian 云版 版本选择 迁移上云

openGauss Developer Day 2022正式开启,与开发者共建开源数据库根社区

Flutter中的GetX状态管理用起来真的那么香吗?

岛上码农

flutter ios 移动端开发 安卓开发 6月月更

准备好迁移上云了?请收下这份迁移步骤清单

龙智—DevSecOps解决方案

迁移计划 迁移上云计划 迁移上云步骤 上云步骤清单 云迁移策略

火线沙龙第26期-多云安全专场

腾源会

直播分享| 腾讯云 MongoDB 智能诊断及性能优化实践

MongoDB中文社区

mongodb

在宇宙的眼眸下,如何正确地关心东数西算?

脑极体

应用实践 | Apache Doris 整合 Iceberg + Flink CDC 构建实时湖仓一体的联邦查询分析架构

SelectDB

数据库 flink Doris iceberg

SLSA: 成功SBOM的促进剂

安势信息

开源 开源软件供应链 软件物料清单 SBOM SLSA

RabbitMQ基础知识

龙空白白

RabbitMQ

小程序容器到底是什么

Geek_99967b

JDBC 在性能测试中的应用

阿里巴巴云原生

阿里云 云原生 JDBC 压测

区块哈希竞猜游戏系统开发(dapp)

薇電13242772558

哈希值

脚本之美│VBS 入门交互实战

Windows Server 6月月更 VBS 脚本之美

RabbitMQ访问Web端口报错User can only log in via localhost

龙空白白

为什么你的数据图谱分析图上只显示一个值?

清林情报分析师

数据分析 可视化 知识图谱 三元组 情报分析

如何轻松快速构建区块链应用?技术大牛带来一线技术实践分享

腾源会

OpenSignal给出的Android现状分析及技巧_Android/iOS_Martin Monroe_InfoQ精选文章