2013-01-11 60 views
0

我试图创建一个完全剥离下来的AVD:没有GPS,没有摄像头等。这是模仿那些绝对可怕的手机,甚至缺乏最基本的东西的用户。如何禁用Android的模拟器相机和假相机?

我创建了一个针对Android 1.6并关闭GPS的AVD,但找不到禁用相机的方法。

我曾尝试在AVD的ini文件中添加“hw.camera = no”,但这似乎没有帮助。

每当我的应用运行在AVD上,它仍然会检测到一个摄像头,Camera.open()仍然会返回一个摄像头对象,我甚至会从中获取一张图片(模拟器生成的一些黑白方块)。有谁知道如何完全删除相机的存在?我需要Camera.open()失败,所以我可以看到我的应用程序在这些条件下的行为。

回答

0

如果一切都失败,请设置Factory类。

class CameraFactory{ 
    boolean debugMode; 
    static Camera open(){ 
     if(debugMode){ 
      return null; //or whatever it does, throw an exception? 
     } 
     else{ 
      return real_camera_open; 
    } 
} 

然后你就可以假没有在相机上良好的硬件

+0

真,我可能会走这条路,但它不完全优雅。我宁愿看看当设备没有相机时会发生什么,最好不购买一个= / – Alex