मैं एक ऑडियो रिकॉर्डर बना रहा हूं जिसे रिकॉर्ड की गई ध्वनि को वापस चलाने की आवश्यकता है। मैं ऑडियो वापस खेलने में बहुत परेशानी में भाग रहा हूँ। मुझे पता है कि फ़ाइल मौजूद है क्योंकि मैंने इसे अपने एसडी कार्ड पर एक फ़ोल्डर में अलग कर दिया है, लेकिन किसी कारण से यह इसे वापस नहीं चला सकता है।एंड्रॉइड मीडियाप्लेयर तैयार विफल: स्थिति = 0x1
public class RecorderEditActivity extends SherlockActivity implements
DatabaseHelper.MetadataListener {
private long position;
private Button playButton = null;
private TextView date = null;
private EditText title = null;
private EditText notes = null;
private Button saveButton = null;
private MediaPlayer mediaPlayer = null;
private boolean isPlaying = false;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.edit_item);
position = getIntent().getExtras().getLong(DatabaseHelper.KEY_ROWID);
playButton = (Button) findViewById(R.id.play);
date = (TextView) findViewById(R.id.recording_date);
title = (EditText) findViewById(R.id.edit_title);
notes = (EditText) findViewById(R.id.edit_notes);
saveButton = (Button) findViewById(R.id.save_edit_button);
mediaPlayer = new MediaPlayer();
DatabaseHelper.getInstance(getApplicationContext()).getMetadataAsync(
position, this);
playButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (!isPlaying) {
playButton.setText(R.string.stop_text);
try {
mediaPlayer = new MediaPlayer();
mediaPlayer
.setDataSource("sdcard/test/"
+ date.toString() + ".3gp");
mediaPlayer.prepare();
mediaPlayer.start();
mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
mp.stop();
}
});
} catch (Exception e) {
Log.e(e.getClass().getName(), e.getMessage(), e);
}
} else {
playButton.setText(R.string.play_text);
mediaPlayer.release();
}
isPlaying = !isPlaying;
}
});
यहाँ LogCat से त्रुटियाँ हैं:
03-20 00:33:40.963: E/MediaPlayer(21268): error (1, -2147483648)
03-20 00:33:40.963: E/java.io.IOException(21268): Prepare failed.: status=0x1
03-20 00:33:40.963: E/java.io.IOException(21268): java.io.IOException: Prepare failed.: status=0x1
03-20 00:33:40.963: E/java.io.IOException(21268): at android.media.MediaPlayer.prepare(Native Method)
03-20 00:33:40.963: E/java.io.IOException(21268): at com.packagename.soundrecorder.RecorderEditActivity$1.onClick(RecorderEditActivity.java:56)
03-20 00:33:40.963: E/java.io.IOException(21268): at android.view.View.performClick(View.java:4204)
03-20 00:33:40.963: E/java.io.IOException(21268): at android.view.View$PerformClick.run(View.java:17355)
03-20 00:33:40.963: E/java.io.IOException(21268): at android.os.Handler.handleCallback(Handler.java:725)
03-20 00:33:40.963: E/java.io.IOException(21268): at android.os.Handler.dispatchMessage(Handler.java:92)
03-20 00:33:40.963: E/java.io.IOException(21268): at android.os.Looper.loop(Looper.java:137)
03-20 00:33:40.963: E/java.io.IOException(21268): at android.app.ActivityThread.main(ActivityThread.java:5041)
03-20 00:33:40.963: E/java.io.IOException(21268): at java.lang.reflect.Method.invokeNative(Native Method)
03-20 00:33:40.963: E/java.io.IOException(21268): at java.lang.reflect.Method.invoke(Method.java:511)
03-20 00:33:40.963: E/java.io.IOException(21268): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
03-20 00:33:40.963: E/java.io.IOException(21268): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
03-20 00:33:40.963: E/java.io.IOException(21268): at dalvik.system.NativeStart.main(Native Method)
उम्मीद है कि किसी की मदद कर सकते हैं मुझे व्याख्या और इस समस्या को हल
यहाँ मेरी कोड है। मैंने शोध का एक टन किया है और कुछ भी मैं मदद करता हूं। धन्यवाद :)
अपने कोड में 'mediaPlayer' वस्तु दो बार अर्थात एक बार छोरों के बाहर और फिर' onClick' समारोह में बनाया जा रहा है। क्या आपने 'getInstance' कॉल से पहले 'MediaPlayer' ऑब्जेक्ट को निकालने का प्रयास किया है? – Ganesh
कृपया उस फ़ाइल को पोस्ट करें जिसे आप –
चलाने की कोशिश कर रहे हैं, क्या आपके पास आपकी मेनिफेस्ट फ़ाइल में <उपयोग-अनुमति एंड्रॉइड: name = "android.permission.READ_EXTERNAL_STORAGE" /> है? –