जब मैं निम्नलिखित कोडAudioRecord वस्तु एक परियोजना में आरंभ नहीं
record = new AudioRecord(MediaRecorder.AudioSource.MIC, sampleRate, AudioFormat.CHANNEL_IN_MONO, AudioFormat.ENCODING_PCM_8BIT, BYTE_OF_SAMPLE * bufferSampleSize);
record.startRecording();
तब मैं logcat में अपवाद निम्न हो रही है का उपयोग करते हुए अपना नेक्सस 5 के माध्यम से एक ऑडियो रिकार्ड करने की कोशिश कर रहा हूँ:
E/AudioRecord: AudioFlinger could not create record track, status: -1
E/AudioRecord-JNI: Error creating AudioRecord instance: initialization check failed with status -1.
E/android.media.AudioRecord: Error code -20 when initializing native AudioRecord object.
E/AndroidRuntime: FATAL EXCEPTION: Thread-855
E/AndroidRuntime: Process: com.*.*, PID: 14206
E/AndroidRuntime: java.lang.IllegalStateException: startRecording() called on an uninitialized AudioRecord.
E/AndroidRuntime: at android.media.AudioRecord.startRecording(AudioRecord.java:885)
E/AndroidRuntime: at com.*.*.MainActivity$Looper.run(MainActivity.java:265)
E/Surface: getSlotFromBufferLocked: unknown buffer: 0x9e476d00
मैं मैंने मैनिफेस्ट फ़ाइल में निम्न पंक्ति जोड़ दी है।
<uses-permission android:name="android.permission.RECORD_AUDIO" />
मैंने AudioRecord object not initializing का परीक्षण किया है। काम करने वाले उन समाधानों में से कोई भी नहीं।
लेकिन यह एक और परियोजना में काम कर रहा है। क्या कुछ याद आ रही है?
आप सबसे अच्छे हैं! –
बिल्कुल मेरी समस्या है! – StarWind0
क्या मेरे सभी उपयोगकर्ताओं को सेटिंग्स में जाना है और इसे मैन्युअल रूप से अनुमति देना है? क्या मैं इसे प्रोग्रामेटिक रूप से नहीं कर सकता। – nilsi