2017-11-24 6 views
0

APIを必要とするAudioTrack.setVolumeを使用しています。minSdkVersionが16に設定されています。古いデバイスでキャッチエラーを処理する正しい方法はありますか?Android:古いAPIデバイスでエラー/例外をキャッチ

try { 
     audioTrack.setVolume(volume); 
    }catch (Exception e){ 
     // Ignore - setVolume requires API 21 and minSdkVersion is set to 16 
     // Also ignore any IllegalStateExceptions 
    }catch(Error e){ 
     // Ignore 
    } 

私はこれがcatchブロックにもかかわらず、Didn't find class "android.media.AudioTrack$Builderエラーを投げているAPI 23を必要とAudioTrack.Builderための類似したコードブロックを持っています。

答えて

1

代わりののtry-catchあなたは、このようにAPIのバージョンを確認することができます

if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP) { 
     audioTrack.setVolume(volume); 
    }