No virtual method setOutputFile Ljava/io/File V in class Landroid/media/MediaRecorder
今天在使用MediaRecorder
時進行音訊錄製時報錯 java.lang.NoSuchMethodError: No virtual method setOutputFile(Ljava/io/File;)V in class Landroid/media/MediaRecorder; or its super classes (declaration of ‘android.media.MediaRecorder’ appears in /system/framework/framework.jar) 如下圖:
解決過程
如圖錯誤的原因就是在使用MediaRecorder
的setOutputFile(file)
傳入一個File檔案時報錯,
但是仔細看了一下seOutputFIile
有三個過載方法,如下圖
這就鬱悶了,傳入File檔案物件就報錯,系統api有問題嗎,然後就是將引數改成圖中所示,傳入檔案的絕對路徑,String型別試試,發現沒問,解決了,事後查了查原因,在SDK 26之前setOutputFile()
方法中引數沒有File過載方法,如下圖
即在API 版本小於26時,只有以上兩個過載方法,那麼如果想要使用此方法傳入file檔案則需加上校驗:即可解決
//設定輸出檔案
if(Build.VERSION.SDK_INT < 26){
//若api低於26,呼叫setOutputFile(String path)
mediaRecorder.setOutputFile(file.getAbsolutePath());
}else{
//若API高於26 使用setOutputFile(File path)
mediaRecorder.setOutputFile(file);
}
特此記錄一下。
相關文章
- java.lang.NoSuchMethodError:Nostatic method init(Landroid/content/Context;Ljava/lang/String;Ljava/laJavaErrorAndroidContext
- java.lang.NoSuchMethodError: No static method getFont(Landroid/content/Context;ILandroid/util/Typ...JavaErrorAndroidContext
- How to Convert Class File to Java File Online?Java
- 反射--Class物件功能--獲取Method反射物件
- How to Convert a Class File to a Ja
- Attempt to invoke virtual method ‘int android.view.View.getImportantForAccessibility()‘ on a null obAndroidViewImportNull
- File與IO基礎
- 一文理解class.getClassLoader().getResourceAsStream(file)和class.getResourceAsStream(file)區別
- IO_FILE——FSOP、house of orange
- IO_FILE——leak 任意讀
- io流-file類的使用
- java.lang.NullPointerException: Attempt to invoke virtual method 'int android.content.Intent.getI...JavaNullExceptionAndroidIntent
- 如何處理SAP CRM Web Service錯誤 - Virtual Interface Method XXXX not supportedWeb
- The number of method references in a .dex file cannot exceed 64K.
- Method Swizzling 為什麼要先呼叫 class_addMethod?
- Android中MediaRecorderAndroid
- IO流-File類的建立功能
- 【問題處理】ORA-01113 file xxx need media recovery
- MIT6.0001 筆記,LECTURE 8:Object Oriented Programming (class,object,method)MIT筆記Object
- [20210331]Disk file operations IO與exadata.txt
- [20210326]Disk file operations IO與RAC.txt
- Using V$BACKUP_ASYNC_IO / V$BACKUP_SYNC_IO to Monitor RMAN PerformanceORM
- 10.26 V$SESSION_WAIT_CLASSSessionAI
- class_model v2
- 原創:java.lang.UnsupportedClassVersionError: Bad version number in .class fileJavaError
- IO流-File類的概述和構造方法構造方法
- java.io.File中mkdir()和mkdirs()區別Java
- java.lang.VerifyError: class scala.collection.mutable.WrappedArray overrides final method(已解決)JavaErrorAPPIDE
- 使用System.IO.File.Create()時注意的問題
- 暑期自學 Day 04 | File 類 和 IO 流(四)
- 暑期自學 Day 05 | File 類 和 IO 流(五)
- 暑期自學 Day 01 | File 類 和 IO 流(一)
- 暑期自學 Day 02 | File 類 和 IO 流(二)
- 暑期自學 Day 03 | File 類 和 IO 流(三)
- CTF 中 glibc堆利用 及 IO_FILE 總結
- android音視訊指南-MediaRecorder概述Android
- java.lang.IllegalArgumentException: Unsupported class file major version xx解決之道JavaException
- Java程式設計基礎20——異常&IO(File類)Java程式設計