changeset 893:4f46b4cd5035

Use immersive fullscreen when available. Updated manifest to theoretically support Android TV.
author Michael Pavone <pavone@retrodev.com>
date Sun, 22 Nov 2015 14:43:51 -0800
parents 381a3b2f6065
children a7774fc2de4b
files Android.mk android/AndroidManifest.xml android/jni/Android.mk android/project.properties android/src/com/retrodev/blastem/BlastEmActivity.java
diffstat 5 files changed, 34 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/Android.mk	Sun Nov 22 14:42:36 2015 -0800
+++ b/Android.mk	Sun Nov 22 14:43:51 2015 -0800
@@ -15,7 +15,7 @@
 	68kinst.c debug.c gst.c psg.c z80_to_x86.c backend.c io.c render_sdl.c \
 	tern.c backend_x86.c gdb_remote.c m68k_core.c romdb.c m68k_core_x86.c \
 	util.c wave.c blastem.c gen.c mem.c vdp.c ym2612.c config.c gen_x86.c \
-	terminal.c z80inst.c menu.c
+	terminal.c z80inst.c menu.c arena.c
 
 LOCAL_SHARED_LIBRARIES := SDL2
 
--- a/android/AndroidManifest.xml	Sun Nov 22 14:42:36 2015 -0800
+++ b/android/AndroidManifest.xml	Sun Nov 22 14:43:51 2015 -0800
@@ -19,9 +19,12 @@
     -->
     <application android:label="@string/app_name"
                  android:icon="@drawable/ic_launcher"
+				 android:banner="@drawable/ic_launcher"
                  android:allowBackup="true"
                  android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
-                 android:hardwareAccelerated="true" >
+                 android:hardwareAccelerated="true"
+				 android:isGame="true"
+				 android:debuggable="true">
         <activity android:name="BlastEmActivity"
                   android:label="@string/app_name"
                   android:configChanges="keyboardHidden|orientation"
@@ -30,15 +33,23 @@
                 <action android:name="android.intent.action.MAIN" />
                 <category android:name="android.intent.category.LAUNCHER" />
             </intent-filter>
+			<intent-filter>
+                <action android:name="android.intent.action.MAIN" />
+                <category android:name="android.intent.category.LEANBACK_LAUNCHER" />
+            </intent-filter>
         </activity>
     </application>
 
     <!-- Android 4.1.1 -->
-    <uses-sdk android:minSdkVersion="16" android:targetSdkVersion="16" />
+    <uses-sdk android:minSdkVersion="16" android:targetSdkVersion="23" />
 
     <!-- OpenGL ES 2.0 -->
-    <uses-feature android:glEsVersion="0x00020000" /> 
+    <uses-feature android:glEsVersion="0x00020000" />
+	
+	<uses-feature android:name="android.hardware.gamepad" android:required="false" />
+	<uses-feature android:name="android.software.leanback" android:required="false" />
+	<uses-feature android:name="android.hardware.touchscreen" android:required="false" />
 
     <!-- Allow writing to external storage -->
-    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
+    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> 
 </manifest> 
--- a/android/jni/Android.mk	Sun Nov 22 14:42:36 2015 -0800
+++ b/android/jni/Android.mk	Sun Nov 22 14:43:51 2015 -0800
@@ -1,1 +1,2 @@
+APP_ABI=x86
 include $(call all-subdir-makefiles)
--- a/android/project.properties	Sun Nov 22 14:42:36 2015 -0800
+++ b/android/project.properties	Sun Nov 22 14:43:51 2015 -0800
@@ -11,4 +11,4 @@
 #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
 
 # Project target.
-target=android-16
+target=android-23
--- a/android/src/com/retrodev/blastem/BlastEmActivity.java	Sun Nov 22 14:42:36 2015 -0800
+++ b/android/src/com/retrodev/blastem/BlastEmActivity.java	Sun Nov 22 14:43:51 2015 -0800
@@ -1,6 +1,22 @@
 package com.retrodev.blastem;
 import org.libsdl.app.SDLActivity;
+import android.os.Build;
+import android.os.Bundle;
+import android.view.View;
+
 
 public class BlastEmActivity extends SDLActivity
 {
+	@Override
+    protected void onCreate(Bundle savedInstanceState) {
+		super.onCreate(savedInstanceState);
+		
+		//set immersive mode on devices that support it
+		if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
+			View blah = mSurface;
+			blah.setSystemUiVisibility(
+				View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
+			);
+		}
+	}
 }
\ No newline at end of file