?[package:][type:]na
public static final class drawable {
public static final int ic_launcher=0x7f020000;
}
- public static final class id {
- public static final int videoView=0x7f080000;
- }
public static final class layout {
public static final int activity_connection=0x7f030000;
public static final int activity_game=0x7f030001;
@@ -110,7 +107,7 @@ or to a theme attribute in the form "?[package:][type:]na
Must be a reference to another resource, in the form "@[+][package:]type:name
"
or to a theme attribute in the form "?[package:][type:]name
".
- @attr name android:buttonBarButtonStyle
+ @attr name com.limelight:buttonBarButtonStyle
*/
public static final int ButtonBarContainerTheme_buttonBarButtonStyle = 1;
/**
@@ -120,7 +117,7 @@ or to a theme attribute in the form "?[package:][type:]na
Must be a reference to another resource, in the form "@[+][package:]type:name
"
or to a theme attribute in the form "?[package:][type:]name
".
- @attr name android:buttonBarStyle
+ @attr name com.limelight:buttonBarStyle
*/
public static final int ButtonBarContainerTheme_buttonBarStyle = 0;
};
diff --git a/libs/ouya-sdk.jar b/libs/ouya-sdk.jar
new file mode 100644
index 00000000..3f03fdd8
Binary files /dev/null and b/libs/ouya-sdk.jar differ
diff --git a/res/layout/activity_game.xml b/res/layout/activity_game.xml
index 26f62b06..d27db23d 100644
--- a/res/layout/activity_game.xml
+++ b/res/layout/activity_game.xml
@@ -5,9 +5,9 @@
android:background="#0099cc"
tools:context=".Game" >
-
+ android:layout_height="match_parent" /> -->
diff --git a/src/com/limelight/Connection.java b/src/com/limelight/Connection.java
index bdc715b5..ab5aac3b 100644
--- a/src/com/limelight/Connection.java
+++ b/src/com/limelight/Connection.java
@@ -16,22 +16,7 @@ public class Connection extends Activity {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_connection);
- new Thread(new Runnable() {
-
- @Override
- public void run() {
- try {
- new NvConnection("141.213.191.238").doShit();
- } catch (XmlPullParserException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- } catch (IOException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
-
- }).start();
+
}
}
diff --git a/src/com/limelight/Game.java b/src/com/limelight/Game.java
index 913b4db8..638bcc69 100644
--- a/src/com/limelight/Game.java
+++ b/src/com/limelight/Game.java
@@ -1,8 +1,18 @@
package com.limelight;
+import java.io.IOException;
+
+import org.xmlpull.v1.XmlPullParserException;
+
+import com.limelight.nvstream.NvConnection;
+import com.limelight.nvstream.input.NvController;
+import com.limelight.nvstream.input.NvInputPacket;
+
+import tv.ouya.console.api.OuyaController;
import android.app.Activity;
import android.net.Uri;
import android.os.Bundle;
+import android.view.KeyEvent;
import android.widget.MediaController;
import android.widget.VideoView;
@@ -10,13 +20,33 @@ import android.widget.VideoView;
public class Game extends Activity {
private VideoView vv;
private MediaController mc;
+ private short inputMap = 0x0000;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
+ OuyaController.init(this);
+
+ new Thread(new Runnable() {
+
+ @Override
+ public void run() {
+ try {
+ new NvConnection("141.213.191.238").doShit();
+ } catch (XmlPullParserException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+
+ }).start();
+
setContentView(R.layout.activity_game);
- vv = (VideoView) findViewById(R.id.videoView);
+ /*vv = (VideoView) findViewById(R.id.videoView);
mc = new MediaController(this);
mc.setAnchorView(vv);
@@ -25,6 +55,139 @@ public class Game extends Activity {
vv.setMediaController(mc);
vv.setVideoURI(video);
- vv.start();
+ vv.start();*/
+ }
+
+ @Override
+ public boolean onKeyDown(int keyCode, KeyEvent event) {
+// int player = OuyaController.getPlayerNumByDeviceId(event.getDeviceId());
+
+ switch (keyCode) {
+ case OuyaController.BUTTON_MENU:
+ System.out.println("Pressed Menu Button");
+ inputMap |= NvInputPacket.PLAY_FLAG;
+ break;
+ case OuyaController.BUTTON_DPAD_LEFT:
+ System.out.println("Pressed Dpad Left");
+ inputMap |= NvInputPacket.LEFT_FLAG;
+ break;
+ case OuyaController.BUTTON_DPAD_RIGHT:
+ System.out.println("Pressed Dpad Right");
+ inputMap |= NvInputPacket.RIGHT_FLAG;
+ break;
+ case OuyaController.BUTTON_DPAD_UP:
+ System.out.println("Pressed Dpad Up");
+ inputMap |= NvInputPacket.UP_FLAG;
+ break;
+ case OuyaController.BUTTON_DPAD_DOWN:
+ System.out.println("Pressed Dpad Down");
+ inputMap |= NvInputPacket.DOWN_FLAG;
+ break;
+ case OuyaController.BUTTON_A:
+ System.out.println("Pressed A");
+ inputMap |= NvInputPacket.B_FLAG;
+ break;
+ case OuyaController.BUTTON_O:
+ System.out.println("Pressed O");
+ inputMap |= NvInputPacket.A_FLAG;
+ break;
+ case OuyaController.BUTTON_U:
+ System.out.println("Pressed U");
+ inputMap |= NvInputPacket.X_FLAG;
+ break;
+ case OuyaController.BUTTON_Y:
+ System.out.println("Pressed Y");
+ inputMap |= NvInputPacket.Y_FLAG;
+ break;
+ case OuyaController.BUTTON_L1:
+ System.out.println("Pressed L1");
+ inputMap |= NvInputPacket.LB_FLAG;
+ break;
+ case OuyaController.BUTTON_R1:
+ System.out.println("Pressed R1");
+ inputMap |= NvInputPacket.RB_FLAG;
+ break;
+ case OuyaController.BUTTON_L3:
+ System.out.println("Pressed L3");
+ inputMap |= NvInputPacket.LS_CLK_FLAG;
+ break;
+ case OuyaController.BUTTON_R3:
+ System.out.println("Pressed R3");
+ inputMap |= NvInputPacket.RS_CLK_FLAG;
+ break;
+ default:
+ System.out.println("Pressed some button: " + keyCode);
+ return super.onKeyDown(keyCode, event);
+ }
+ sendInputPacket();
+ return true;
+ }
+
+ @Override
+ public boolean onKeyUp(int keyCode, KeyEvent event) {
+ switch (keyCode) {
+ case OuyaController.BUTTON_MENU:
+ System.out.println("Released Menu Button");
+ inputMap &= ~NvInputPacket.PLAY_FLAG;
+ break;
+ case OuyaController.BUTTON_DPAD_LEFT:
+ System.out.println("Released Dpad Left");
+ inputMap &= ~NvInputPacket.LEFT_FLAG;
+ break;
+ case OuyaController.BUTTON_DPAD_RIGHT:
+ System.out.println("Released Dpad Right");
+ inputMap &= ~NvInputPacket.RIGHT_FLAG;
+ break;
+ case OuyaController.BUTTON_DPAD_UP:
+ System.out.println("Released Dpad Up");
+ inputMap &= ~NvInputPacket.UP_FLAG;
+ break;
+ case OuyaController.BUTTON_DPAD_DOWN:
+ System.out.println("Released Dpad Down");
+ inputMap &= ~NvInputPacket.DOWN_FLAG;
+ break;
+ case OuyaController.BUTTON_A:
+ System.out.println("Released A");
+ inputMap &= ~NvInputPacket.B_FLAG;
+ break;
+ case OuyaController.BUTTON_O:
+ System.out.println("Released O");
+ inputMap &= ~NvInputPacket.A_FLAG;
+ break;
+ case OuyaController.BUTTON_U:
+ System.out.println("Released U");
+ inputMap &= ~NvInputPacket.X_FLAG;
+ break;
+ case OuyaController.BUTTON_Y:
+ System.out.println("Released Y");
+ inputMap &= ~NvInputPacket.Y_FLAG;
+ break;
+ case OuyaController.BUTTON_L1:
+ System.out.println("Released L1");
+ inputMap &= ~NvInputPacket.LB_FLAG;
+ break;
+ case OuyaController.BUTTON_R1:
+ System.out.println("Released R1");
+ inputMap &= ~NvInputPacket.RB_FLAG;
+ break;
+ case OuyaController.BUTTON_L3:
+ System.out.println("Released L3");
+ inputMap &= ~NvInputPacket.LS_CLK_FLAG;
+ break;
+ case OuyaController.BUTTON_R3:
+ System.out.println("Released R3");
+ inputMap &= ~NvInputPacket.RS_CLK_FLAG;
+ break;
+ default:
+ System.out.println("Released some button: " + keyCode);
+ return super.onKeyUp(keyCode, event);
+ }
+ sendInputPacket();
+ return true;
+ }
+
+ private void sendInputPacket() {
+ NvInputPacket inputPacket = new NvInputPacket(inputMap, (byte)0, (byte)0, (byte)0, (byte)0);
+
}
}
diff --git a/src/com/limelight/nvstream/NvConnection.java b/src/com/limelight/nvstream/NvConnection.java
index 3edf4d03..0ad0b132 100644
--- a/src/com/limelight/nvstream/NvConnection.java
+++ b/src/com/limelight/nvstream/NvConnection.java
@@ -4,6 +4,8 @@ import java.io.IOException;
import org.xmlpull.v1.XmlPullParserException;
+import com.limelight.nvstream.input.NvController;
+
public class NvConnection {
private String host;
diff --git a/src/com/limelight/nvstream/NvController.java b/src/com/limelight/nvstream/input/NvController.java
similarity index 96%
rename from src/com/limelight/nvstream/NvController.java
rename to src/com/limelight/nvstream/input/NvController.java
index c2a88659..1b63aa3d 100644
--- a/src/com/limelight/nvstream/NvController.java
+++ b/src/com/limelight/nvstream/input/NvController.java
@@ -1,4 +1,4 @@
-package com.limelight.nvstream;
+package com.limelight.nvstream.input;
import java.io.IOException;
import java.io.OutputStream;
@@ -7,6 +7,7 @@ import java.net.UnknownHostException;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
+
public class NvController {
public final static int PORT = 35043;
diff --git a/src/com/limelight/nvstream/NvInputPacket.java b/src/com/limelight/nvstream/input/NvInputPacket.java
similarity index 97%
rename from src/com/limelight/nvstream/NvInputPacket.java
rename to src/com/limelight/nvstream/input/NvInputPacket.java
index 642fbd35..967731e8 100644
--- a/src/com/limelight/nvstream/NvInputPacket.java
+++ b/src/com/limelight/nvstream/input/NvInputPacket.java
@@ -1,4 +1,4 @@
-package com.limelight.nvstream;
+package com.limelight.nvstream.input;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;