0

我使用 Intents 进行录音。在一个上,我的设备 RECORD_SOUND_ACTION 无法访问。如何检查设备上是否有 RECORD_SOUND_ACTION 可用?

我使用这部分代码

Intent intent = new Intent(MediaStore.Audio.Media.RECORD_SOUND_ACTION);
startActivityForResult(intent, RQS_RECORDING);
4

1 回答 1

1

请试试这个:

Intent intent =
new Intent(MediaStore.Audio.Media.RECORD_SOUND_ACTION);  
if (isAvailable(getApplicationContext(), intent)) {  
startActivityForResult(intent, RQS_RECORDING);
} 

public static boolean isAvailable(Context ctx, Intent intent) {  

   final PackageManager mgr = ctx.getPackageManager();  

   List<ResolveInfo> list =  
      mgr.queryIntentActivities(intent,   
      PackageManager.MATCH_DEFAULT_ONLY);  

      return list.size() > 0;  

  } 

这对我来说可以。

于 2013-03-22T09:00:39.430 回答