繁体   English   中英

制作一个 Unity Android 原生媒体播放器插件

[英]Making a Unity Android Native Media Player plugin

我正在制作一个原生的 android 媒体播放器插件,一切正常,插件加载正确,参数正确传递给插件,甚至播放器启动,但似乎什么都没有播放,没有声音出来。源代码是:

package com.bluedreamcatcher.nativemediaplayerplugin;

import android.media.AudioManager;
import android.media.MediaPlayer;
import android.os.AsyncTask;
import android.util.Log;


import java.io.IOException;

public class NativeMediaPlayer {

public MediaPlayer mediaPlayer;
public void StreamMedia(String URL) {
    Log.d("Unity",URL);

     mediaPlayer = new MediaPlayer();

    mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);

    try {

        mediaPlayer.setDataSource(URL);

        mediaPlayer.prepareAsync();

        try {

            mediaPlayer.start();

        }catch (Exception ex){
            Log.d("Unity",ex.getMessage());
        }

        if(mediaPlayer.isPlaying()){
            Log.d("Unity","playing");
        }
    } catch (Exception eX) {
        String error;
        error = eX.toString();
        Log.d("Unity",error);
    }
}
        }

好的,经过一些修改后,我更改了代码,现在它可以作为基本的 android 原生媒体播放器插件运行。代码如下:

package com.bluedreamcatcher.nativemediaplayerplugin;

import android.media.AudioManager;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnPreparedListener;
import android.util.Log;

public class NativeMediaPlayer {
public MediaPlayer mediaPlayer;
public void StreamMedia(String URL) {
    Log.d("Unity",URL);
     mediaPlayer = new MediaPlayer();
    try {
        mediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC);
        mediaPlayer.setDataSource(URL);
        mediaPlayer.prepareAsync();

    } catch (Exception eX) {
        String error;
        error = eX.toString();
        Log.d("Unity",error);

    }
    mediaPlayer.setOnPreparedListener(new OnPreparedListener() {
        public void onPrepared(MediaPlayer mp) {
            mp.start();
        }
    });

}

}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM