Android模拟器与真实设备

yan*_*nko 39 android

开发人员应该注意哪些不同之处?

Jir*_*iri 31

我知道这些限制:

  1. 预装软件.真实设备可以预先安装比模拟器更多的应用程序.
  2. 您无法在模拟器中使用"捕获"照片/视频功能.

根据模拟器文档,其局限性是:

模拟器的功能限制包括:

  • 不支持拨打或接听实际的电话.但是,您可以通过模拟器控制台模拟电话呼叫(放置和接收).

  • 不支持USB连接

  • 不支持设备连接耳机
  • 不支持确定网络连接状态
  • 不支持确定电池充电水平和AC充电状态
  • 不支持确定SD卡插入/弹出
  • 不支持蓝牙

IMO你可以使用模拟器来简化UI开发,在"设备屏幕"上查看UI,确保应用程序布局正常,app可以运行,你可以通过模拟gps位置,网络速度或消息等来测试一些特殊情况.但是必须在真实设备上进行测试.

  • 此外,模拟器图像不能与您的Google帐户绑定,因此您无法测试与此相关的任何内容(GMail,您的真实联系人,市场,日历等). (3认同)
  • 这是许可问题.该模拟器基于Android的开源构建,但专有的Google应用程序需要与手机供应商或移动运营商达成协议. (2认同)
  • 所以,如果你想在一些新奇怪的设备上安装android,那么你也不能拥有Google应用程序,我是对的吗? (2认同)

Wil*_*ill 11

使用1.5 SDK存在以下限制(来自SDK网站):

  • 不支持拨打或接听实际的电话.但是,您可以通过模拟器控制台模拟拨打和接听的电话.
  • 不支持USB连接
  • 不支持相机/视频捕捉(输入).
  • 不支持设备连接耳机
  • 不支持确定连接状态
  • 不支持确定电池充电水平和AC充电状态
  • 不支持确定SD卡插入/移除
  • 不支持蓝牙
  • 不支持多点触控

根据经验,我注意到实际开发中存在以下差异:

  • 您将能够在模拟器中忽略将导致设备崩溃的错误(例如,不关闭游标)
  • 您与设备的交互方式与模拟器不同.我使用横向模式使用真实设备比使用模拟器更多.
  • 有一个不同的CPU.在真实设备上,模拟器上速度很快的东西会变慢.
  • 您可以使用该设备进行养狗.使用模拟器进行狗食更难.

如果您需要真正的设备测试人员,这里有一个谷歌小组.


Amb*_*ika 8

人们无法使用模拟器测试触摸事件,模拟器必须通过鼠标点击模拟器进行测试,任何开发人员都要开发基于触摸屏的应用程序.


Ale*_*lli 7

我要说的主要是有几个"真正的设备"目前正在使用Android,并且会有更多,有不同的硬件禀赋 - 有些会有GPS而有些则不会,同样适用于触摸屏,真正的键盘而不是虚拟屏幕,相机分辨率等等

虽然操作系统会为您做很多繁重的工作,但您仍然希望确保您的设计具有对您打算支持的每个Android设备都有意义的用户体验,尽管其硬件功能有所不同 - 从这个意义上讲,为Android设计应用程序更类似于为Linux,Windows或Web设计它们(满足各种硬件配置细节),而不是像Mac或iPhone(你需要考虑更窄的集合)可能的硬件配置).

模拟器是(或试图成为;-)"一个"Android设备 - 但会有其他("真正的";-)具有不同的屏幕分辨率,输入外围设备等等...