[英]Android force closing when trying to use release(); to stop MediaPlayer
[英]Error when trying to use the MediaPlayer() class on an android wear device
package com.jtunes.josh.watchtunes;
import android.app.Activity;
import android.content.Context;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.support.wearable.view.WatchViewStub;
import android.view.View;
import android.widget.TextView;
public class playMedia extends Activity {
private TextView mTextView;
public MediaPlayer myMediaPlayer;
MediaPlayer mediaPlayer;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_play_media);
}
//Play song
public void playButtonClicked(View view) {
Context context = this;
mediaPlayer = new MediaPlayer();
System.out.println("Play button clicked" + mediaPlayer.toString());
try{
MediaPlayer mediaPlayer = MediaPlayer.create(context, R.raw.dre);
mediaPlayer.start();
System.out.println("Song started");
}
catch (Exception e){
System.out.println("Error: " + e);
}
}
}
相同的代码可在正常的Android模拟器/设备上工作,但是当我尝试在Android Wear上进行音频播放时,出现以下错误。 甚至可以在磨损时使用MediaPlayer()吗? 有什么办法解决吗?
07-27 19:12:45.374 7815-7830/com.jtunes.josh.watchtunes E/MediaPlayer﹕ error (1, -2147483648)
07-27 19:12:45.375 7815-7815/com.jtunes.josh.watchtunes D/MediaPlayer﹕ create failed:
java.io.IOException: Prepare failed.: status=0x1
at android.media.MediaPlayer._prepare(Native Method)
at android.media.MediaPlayer.prepare(MediaPlayer.java:1135)
at android.media.MediaPlayer.create(MediaPlayer.java:933)
at android.media.MediaPlayer.create(MediaPlayer.java:904)
at com.jtunes.josh.watchtunes.playMedia.playButtonClicked(playMedia.java:31)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at android.view.View$1.onClick(View.java:4015)
at android.view.View.performClick(View.java:4780)
at android.view.View$PerformClick.run(View.java:19866)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5254)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
07-27 19:12:45.375 7815-7815/com.jtunes.josh.watchtunes I/System.out﹕ Error: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.media.MediaPlayer.start()' on a null object reference
也许尝试:
public class playMedia extends Activity {
private TextView mTextView;
public MediaPlayer myMediaPlayer;
MediaPlayer mediaPlayer;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_play_media);
}
//Play song
public void playButtonClicked(View view) {
Context context = this;
mediaPlayer = new MediaPlayer();
System.out.println("Play button clicked" + mediaPlayer.toString());
try{
mediaPlayer = MediaPlayer.create(context, R.raw.dre);
mediaPlayer.start();
System.out.println("Song started");
}
catch (Exception e){
System.out.println("Error: " + e);
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.