Java 从另一个类启动MediaPlayer
如何从非活动类启动MediaPlayer?我需要一份我主要活动的参考资料Java 从另一个类启动MediaPlayer,java,android,Java,Android,如何从非活动类启动MediaPlayer?我需要一份我主要活动的参考资料 MediaPlayer mp = MediaPlayer.create([WhatToPutHere], R.raw.cpiano); mp.start(); 将媒体播放器创建为public static,通过将类名与媒体播放器对象一起使用,您可以在Java类或活动中随时启动媒体播放器。是的,当然可以。这是一个例子: class mMP { private Context _context;
MediaPlayer mp = MediaPlayer.create([WhatToPutHere], R.raw.cpiano);
mp.start();
将媒体播放器创建为
public static
,通过将类名与媒体播放器对象一起使用,您可以在Java类或活动中随时启动媒体播放器。是的,当然可以。这是一个例子:
class mMP {
private Context _context;
private _resId;
public mMP(Context context,int resId){
this._context=context;
this._resId=resId;
}
public void playSong(){
MediaPlayer mp=MediaPlayer.create(_context, _resId);
if(mp!=null)
mp.start();
}
}
然后从Activity、Service或BroadcastReceiver调用此命令:
new mMP(this,id).playSong();
或使静态无效,如:
class yourClass{public static void playMusic(Context c,int resId){MediaPlayermp=MediaPlayer.create(c,resId);if(mp!=null) mp.start()}}
然后从活动中调用函数<代码>你的班级。播放音乐(这个,剩余)代码>它引用到活动,因此您可以在活动类中:
public static Activity activity;
然后在你的课堂上,你可以得到这样的活动:
MediaPlayer mediaPlayer = MediaPlayer.create(ActivityClassName.activity, R.);
mediaPlayer.start();
在media player中使用类名是什么意思?如果在类外使用公共静态变量或对象,则需要指定类名,如MainActivity.mp.start();我必须在[WhattoPutche]中输入什么?然后它会说“这里没有sich参考”,公共静态MediaPlayer mp;全局执行,mp=MediaPlayer.create(this,R.raw.cpiano);内部onCreate();但我不想从活动中调用它。我需要从一个对象调用它