ANDROID.UF.MEDIAPLAYER

当尝试使用已被释放的资源时,就会报告 UF(使用已释放)问题。ANDROID.UF.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);
     }

针对第 35 行的代码段报告 ANDROID.UF.MEDIAPLAYER,因为第 33 行发生 IOException 时,尝试使用已释放的 mp。

扩展

此检查器可通过 Klocwork 知识库进行扩展。有关详情,请参阅调整 Java 分析。