मेरे पास .ogg
ऑडियो फ़ाइल चलाने के लिए कोड है, जिसे मैंने इंटरनेट से डाउनलोड किया है। मैं कोई त्रुटि है, तो मैं इसे चला सकते हैं, लेकिन फिर ऐप्लिकेशन क्रैश:मैं एंड्रॉइड में ऑडियो फाइल कैसे चला सकता हूं?
package play.my.sound;
import android.app.Activity;
import android.media.AudioManager;
import android.media.SoundPool;
import android.media.SoundPool.OnLoadCompleteListener;
import android.os.Bundle;
import android.util.Log;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
public class PlaySound2Activity extends Activity {
private SoundPool soundPool;
private int soundID;
boolean loaded = false;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
View view = findViewById(R.id.textView1);
view.setOnClickListener((OnClickListener) this);
// Set the hardware buttons to control the music
this.setVolumeControlStream(AudioManager.STREAM_MUSIC);
// Load the sound
soundPool = new SoundPool(10, AudioManager.STREAM_MUSIC, 0);
soundPool.setOnLoadCompleteListener(new OnLoadCompleteListener() {
public void onLoadComplete(SoundPool soundPool, int sampleId,
int status) {
loaded = true;
}
});
soundID = soundPool.load("sound1.ogg", 1);
}
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
// Getting the user sound settings
AudioManager audioManager = (AudioManager) getSystemService (AUDIO_SERVICE);
float actualVolume = (float) audioManager
.getStreamVolume(AudioManager.STREAM_MUSIC);
float maxVolume = (float) audioManager
.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
float volume = actualVolume/maxVolume;
// Is the sound loaded already?
if (loaded) {
soundPool.play(soundID, volume, volume, 1, 0, 1f);
Log.e("Test", "Played sound");
}
}
return false;
}
}
मुझे लगता है कि मैं दो समस्याएं हैं:
मैं
main.xml
फ़ाइल में इस डाल:<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:text="Click on the screen to start playing" android:id="@+id/textView1" android:layout_width="fill_parent" android:layout_height="fill_parent"></TextView> </LinearLayout>
और मैं पता नहीं है कि यह सही है या नहीं।मैंने
sound1.ogg
कोworkspace->SoundPlay2
फ़ोल्डर में फ़ाइल डाली क्योंकि रेस फ़ोल्डर में मुझे समस्याएं थीं, और साथ ही, मैंने इसे दो रेज फ़ोल्डर्स में रखने की कोशिश की।[2012-01-04 19:38:16 - PlaySound2] Failed to install PlaySound2.apk on device 'emulator-5554': timeout [2012-01-04 19:38:16 - PlaySound2] Launch canceled! [2012-01-04 19:47:33 - PlaySound2] Error in an XML file: aborting build. [2012-01-04 19:52:34 - PlaySound2] res\layout\main.xml:0: error: Resource entry main is already defined. [2012-01-04 19:52:34 - PlaySound2] res\layout\main.out.xml:0: Originally defined here. [2012-01-04 19:52:34 - PlaySound2] C:\Users\Natalia\workspace\PlaySound2\res\layout\main.out.xml:1: error: Error parsing XML: no element found
मैं "Android Sounds - Tutorial" से इस उदाहरण ले लिया:
यह मेरा कंसोल से है। मैं एक ऑडियो फ़ाइल, विशेष रूप से, एक .wav
फ़ाइल खेलना चाहता हूं।
मुझे नहीं पता कि मीडिया मीडिया प्लेयर और उनकी विशेषता (डुरनशन, नमूना दर ...) में अनुमति देने वाली फ़ाइलों के बारे में मुझे कुछ जानकारी कहां मिल सकती है, क्या आप मुझे बता सकते हैं कि मुझे यह कहां मिल सकता है ??
यह मेरी लॉग बिल्ली में गड़बड़ त्रुटि है: ई/एंड्रॉइड रनटाइम (739): java.lang.RuntimeException: गतिविधि शुरू करने में असमर्थ ComponentInfo {play.my.sound/play.my.sound.PlaySound2Activity}: जावा .lang.ClassCastException: play.my.sound.PlaySound2Activity को android.view पर नहीं डाला जा सकता है। $ OnClickListener –
देखें क्यों आप सरल उत्तरों को खोजने के लिए Google में खोज नहीं करते हैं। Google में "समर्थित ऑडियो प्रारूप" की एक साधारण खोज http://developer.android.com/guide/appendix/media-formats.html उत्पन्न हुई। http://developer.android.com/guide/topics/media/mediaplayer.html – manjusg