PalActivity.java 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. package com.codeplex.sdlpal;
  2. import org.libsdl.app.SDLActivity;
  3. import android.os.*;
  4. import android.util.*;
  5. import android.media.*;
  6. import android.net.Uri;
  7. import java.io.*;
  8. public class PalActivity extends SDLActivity {
  9. private static final String TAG = "sdlpal-debug";
  10. private static final MediaPlayer mediaPlayer = new MediaPlayer();
  11. private static Uri interFileURI;
  12. private static void JNI_mediaplayer_load(){
  13. Log.v(TAG, "loading midi:" + interFileURI);
  14. mediaPlayer.reset();
  15. mediaPlayer.setLooping(true);
  16. try{
  17. mediaPlayer.setDataSource(mSingleton.getApplicationContext(), interFileURI);
  18. mediaPlayer.prepare();
  19. }catch(IOException e) {
  20. Log.e(TAG, interFileURI.toString() + " not available for playing, check");
  21. }
  22. }
  23. private static void JNI_mediaplayer_play() {
  24. mediaPlayer.start();
  25. }
  26. private static void JNI_mediaplayer_stop() {
  27. mediaPlayer.stop();
  28. }
  29. private static int JNI_mediaplayer_playing() {
  30. return mediaPlayer.isPlaying() ? 1 : 0;
  31. }
  32. private static void JNI_mediaplayer_setvolume(int volume) {
  33. mediaPlayer.setVolume((float)volume/256, (float)volume/256);
  34. }
  35. public static native void setExternalStorage(String str);
  36. public static native void setMIDIInterFile(String str);
  37. @Override
  38. public void onCreate(Bundle savedInstanceState) {
  39. super.onCreate(savedInstanceState);
  40. String appDataPath = mSingleton.getApplicationContext().getFilesDir().getPath();
  41. String interFilePath = appDataPath+"/intermediates.midi";
  42. Log.v(TAG, "java interfile path " + interFilePath);
  43. interFileURI = Uri.fromFile(new File(interFilePath));
  44. setMIDIInterFile(interFilePath);
  45. String externalStorageState = Environment.getExternalStorageState();
  46. if(externalStorageState.equals(Environment.MEDIA_MOUNTED)){
  47. setExternalStorage(Environment.getExternalStorageDirectory().getPath());
  48. Log.v(TAG, "sdcard path " + Environment.getExternalStorageDirectory().getPath());
  49. }
  50. }
  51. }