2012-09-25 51 views
1

要检查相机是否正在运行与否我写这些代码没能获得相机运行状态

ActivityManager actvityManager = (ActivityManager)this.getSystemService(ACTIVITY_SERVICE); 
    String packageName = actvityManager.getRunningTasks(1).get(0).topActivity.getPackageName(); 
    if(packageName.equals("android.hardware.camera")||packageName.equals("com.android.camera")){ 
     Camera_status = "STATUS_ON"; 
     System.out.println("===on==="); 
    }else{ 
     Camera_status = "STATUS_OFF"; 
     System.out.println("====off===="); 
    } 

通过使用此,我能够得到正确的结果在Android模拟器,但在测试在真实设备我无法得到正确的结果。根据CommonsWare发布的here的答案,我认为他是正确的。所以朋友们可以知道如何以编程方式获取相机开/关状态。

+0

您是否试图了解您拥有哪些流程以及哪一个流程实际上是相机? – njzk2

+0

是...在LogCat中我得到09-25 18:09:15.514:I/ActivityManager(61):显示com.android.camera/.Camera:+ 873ms –

+0

我的意思是,就像在procInfos列表中。显然,它不在那里,所以你可以发布列表的内容? – njzk2

回答

2

试试这个它的工作!

+0

感谢它也为我工作。 –