什么可能导致应用程序在某些设备上运行而在其他设备上不运行

  • 本文关键字:运行 其他 应用程序 android
  • 更新时间 :
  • 英文 :


我经常听说一些应用程序可以在某些型号或品牌上运行,但同样的应用程序在其他设备上崩溃,或者根本无法运行。

我真的不明白。android api在所有运行相同版本android的设备上都是一样的吗?你还有别的主意吗?

  • 一些设备有不同的原生API实现,例如AudioRecord可能在某些设备上只支持22050 Hz,即使文档说44100在所有设备上都支持。

  • 你的应用程序可能会因为不同的性能而崩溃,例如,如果某些设备测量布局较慢,但你期望布局在特定时间在其他线程中布局-你可能会崩溃。

  • 有些设备没有内置Geocoder,所以会崩溃。

  • 一些设备的内存较少,如果你的应用程序占用内存太多,可能会导致OutOfMemoryError崩溃。

  • 有些设备没有Google Play服务。

  • 有些设备没有摄像头/加速计/气压计/蓝牙等,如果你在使用它之前没有检查它的可用性,它会崩溃。

还有很多要说的,但是您必须查看崩溃日志以跟踪特定问题。

很多小事。某些设备内存不足。硬件驱动程序中的bug。对硬件会以某种方式做出反应的微妙假设。硬件功能不强——例如,有些触摸屏只能检测到2根手指,有些可以检测到10根手指。当然,他们可能会使用稍微不同的Android版本,有/没有一些错误修复,或者有一些自定义更改。然而,99%的情况下,你的应用是可以运行的,这真的不是什么大问题,除非你推动硬件。

嗯,是的,android版本和api是一样的。但是想想手机上不同的硬件。有的人可能有相机,有的人可能没有。一个有256mb的ram,另一个2g。屏幕大小和dpi相同。

所以这不仅仅是软件问题…

最新更新