`

构建一流移动应用程序的9个最佳实践

阅读更多
概述:移动应用开发是当今的一大热门,如何构建一流的移动应用程序呢?这篇文章可以帮助找寻答案。
构建一流移动应用程序的9个最佳实践

在今天,高速发展的数字化生活已把我们淹没在了成千上万的应用程序之中。创建开发一个应用程序并不困难,看看这惊人的应用程序数量你就明白了,但是这其中能够给人耳目一新,让人印象深刻的应用程序却是万里挑一,屈指可数了。要构建成功的应用程序,除了推广等外部因素以外,我们还应该了解一些关于构建一流应用程序所需的最佳实践。这里,让我们看看关于构建一流移动应用程序的9个最佳实践:

1. 控制文件的大小

作为一个长期与手机打交道的开发者,你怎能忘记手机内存这个对于用户至关重要的部分?释放应用程序内存已经成为用户移动生活中日常的一部分了!现在的人们热衷于音乐、视频、照片等东西,要下载的这些应用程序当然是越小越好。在功能相似的应用程序面前,文件的大小往往会成为用户进行取舍的决定性因素。

对于Android应用程序大小来说:

  • 在Google Play中,你的APK文件尺寸应该限制在50MB以内。
  • 你可以为每个APK文件提供多达4个G的额外数据。

对于iOS应用程序大小来说:

  • iTunes所连接的文件应该限制在500MB以内。

2. 使用ProGuard进行代码优化

ProGuard工具可以显著优化你的设计代码。这个工具可以在sourceforge上使用。你的前辈总是建议你在编码完成之后进行反复测试以进行优化,而ProGuard绝对会助你一臂之力。使用该工具,可以通过删除未使用代码等方式达到优化、减少代码的目的。

3. 删除调试的符号

调试符号只对还处于开发阶段,仍需要调试的应用程序有意义。作为一项最佳实践,你应当将这些调试的符号从本地库(文件)中删除 。

4. 清除调试

移除应用程序的所有调试相关功能是一个很好的建议。你的应用程序通常不会使用相关的调试数据因此Android和iOS操作系统在运行应用程序时并不需要它。强烈建议从应用程序中删除所有相关的调试功能。调试信息只是浪费空间,因此它应该被删除。

5. 对音频知根知底

对于iPhone来说:

  • 压缩的音频文件需要被合适的解压:可使用辅助编解码器来解码AAC、MP3和ALAC (Apple 无损)的音频格式。但这些格式的音频在同一时间都只支持一个音频流,因此如果你需要同时播放多个声音的话,建议你使用IMA4的压缩格式或者线性PCM的未压缩格式。
  • 数据格式和文件格式的转换:在Mac OS X中可使用afconvert工具来进行广泛的音频数据格式和文件类型的转换。
  • 减少音频文件:限制采样频率、比特深度和渠道等方式可以有效的影响音频文件的大小。如果你的应用程序需要运行较长时间,可以考虑将以上参数减少,以达到降低音频数据所占内存使用的目的。

对于Android来说:

  • 音频编解码器具体包括HE-ACCv1、HE-ACCv2、 AAC LC/LTP、 AMR-NB、 AMR-WB、 FLAC、MIDI、 MP3、 PCM/WAVE、Vorbis。因此你可以看到WAV、MP3、MP2、WAV、 AAC、AU、 AC3、 FLAC等音频文件格式能够与Android智能手机兼容。

6. 了解支持的图像格式

对于Android,推荐使用的图片格式包括PNG、JPEG、BMP、WebP、和GIF PNGs。对于iPhone,确保你所使用的所有图片和图标都是PNG格式的。另外,建议不要使用 interlaced PNG(译者注:具体的关于不同类型的PNG图像的介绍>>),Apple上的应用最好使用标准的24位深度的图标和图像。

7. 了解可视化的支持

iTunes U只支持使用H.264视频压缩技术下的MPEG-4标准(含 .mp4 、.m4v或.mov格式),这就可能发生.mov 格式的视频播客无法在大多数的iPods和其它便携设备上播放的情况。为了确保与移动设备兼容,建议只使用H.264视频压缩技术下MPEG-4标准中的.mp4和 .m4v格式。一般的移动设备所支持的视频文件类型有H.263下的 3GPP (.3gp) 和MPEG-4 (.mp4),H.264下的3GPP (.3gp)、MPEG-4 (.mp4)、MPEG-TS(.ts,仅限于Android 3.0+的AAC音频)。

8. PNG图像的缩放与优化

对于应用程序中的PNG格式的图片,你需要考虑在不影响其质量的前提下减少占用的内存大小。在 iOS 中通常也会考虑使用JPEG的图像,它们没有PNG高效,但所占内存更小。请确保这些图片处于合适的比例大小,这样才能避免手机的内存被吃光。

9. 清除垃圾

那些未被利用过的垃圾一直占据着系统空间,这是对系统资源的一种浪费。使用能够同时用于Android和iOS系统的工具来扫描清除项目中未使用过的资源。

 

本文翻译自algoworks.com,原文地址

0
1
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics