ANDROID.UF.MEDIAPLAYER
UF (Use Freed) 指摘は、リソースが解放された後にリソースを使用する試みがある場合に報告されます。ANDROID.UF.MEDIAPLAYER 警告は、MediaPlayer が解放された後に MediaPlayer の使用を試みていることを示します。
例 1
コピー
public boolean onKeyDown(final int keyCode, final KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_DPAD_CENTER) {
MediaPlayer mp = new MediaPlayer();
try {
mp.setDataSource(PATH_TO_FILE);
mp.prepare();
} catch (IOException e) {
mp.release();
}
mp.start();
mp.release();
return true;
}
return super.onKeyDown(keyCode, event);
}
IOException の場合に解放 (33 行目) される「mp」を使用する試みがあるため、ANDROID.UF.MEDIAPLAYER が 35 行目のスニペットに対して報告されます。
拡張機能
このチェッカーは、Klocwork knowledge base (ナレッジベース) を利用して拡張できます。詳細については、Java 解析のチューニングを参照してください。