浏览代码

Show Git revision: Android

Yihua LOU 8 年之前
父节点
当前提交
f7b33bbfd2

+ 3 - 2
android/app/src/main/cpp/Android.mk

@@ -5,6 +5,7 @@ SDL_PATH := $(SDLPAL_PATH)/3rd/SDL
 include $(SDL_PATH)/Android.mk
 include $(SDL_PATH)/Android.mk
 
 
 include $(CLEAR_VARS)
 include $(CLEAR_VARS)
+GENERATED := -DPAL_HAS_GIT_REVISION $(shell $(SDLPAL_PATH)/scripts/gengitrev)
 LOCAL_PATH := $(NDK_LOCAL_PATH)
 LOCAL_PATH := $(NDK_LOCAL_PATH)
 LOCAL_MODULE := main
 LOCAL_MODULE := main
 
 
@@ -21,9 +22,9 @@ LOCAL_SRC_FILES := $(SDL_PATH)/src/main/android/SDL_android_main.c \
     $(wildcard $(LOCAL_PATH)/*.cpp) \
     $(wildcard $(LOCAL_PATH)/*.cpp) \
     $(wildcard $(LOCAL_PATH)/*.c)
     $(wildcard $(LOCAL_PATH)/*.c)
 
 
-LOCAL_CFLAGS += -std=gnu99 -DPAL_HAS_PLATFORM_SPECIFIC_UTILS
+LOCAL_CFLAGS += -std=gnu99 -DPAL_HAS_PLATFORM_SPECIFIC_UTILS $(GENERATED)
 
 
-LOCAL_CPPFLAGS += -std=c++11
+LOCAL_CPPFLAGS += -std=c++11 -DPAL_HAS_PLATFORM_SPECIFIC_UTILS $(GENERATED)
 
 
 LOCAL_SHARED_LIBRARIES := SDL2
 LOCAL_SHARED_LIBRARIES := SDL2
 
 

+ 12 - 0
android/app/src/main/cpp/android_jni.cpp

@@ -14,6 +14,7 @@
 #include "global.h"
 #include "global.h"
 #include "palcfg.h"
 #include "palcfg.h"
 #include "util.h"
 #include "util.h"
+#include "generated.h"
 
 
 #include <string>
 #include <string>
 
 
@@ -83,6 +84,17 @@ JNIEXPORT void JNICALL Java_io_github_sdlpal_PalActivity_setScreenSize(JNIEnv *e
     g_screenHeight = height;
     g_screenHeight = height;
 }
 }
 
 
+/*
+ * Class:     io_github_sdlpal_SettingsActivity
+ * Method:    getGitRevision
+ * Signature: (V)Ljava/lang/String;
+ */
+EXTERN_C_LINKAGE
+JNIEXPORT jstring JNICALL Java_io_github_sdlpal_SettingsActivity_getGitRevision(JNIEnv *env, jclass cls)
+{
+    return env->NewStringUTF(PAL_GIT_REVISION);
+}
+
 /*
 /*
  * Class:     io_github_sdlpal_SettingsActivity
  * Class:     io_github_sdlpal_SettingsActivity
  * Method:    loadConfigFile
  * Method:    loadConfigFile

+ 2 - 0
android/app/src/main/java/io/github/sdlpal/SettingsActivity.java

@@ -29,6 +29,7 @@ public class SettingsActivity extends AppCompatActivity {
     public static native boolean setConfigBoolean(String item, boolean value);
     public static native boolean setConfigBoolean(String item, boolean value);
     public static native boolean setConfigInt(String item, int value);
     public static native boolean setConfigInt(String item, int value);
     public static native boolean setConfigString(String item, String value);
     public static native boolean setConfigString(String item, String value);
+    public static native String getGitRevision();
 
 
     private static final String KeepAspectRatio = "KeepAspectRatio";
     private static final String KeepAspectRatio = "KeepAspectRatio";
     private static final String LaunchSetting = "LaunchSetting";
     private static final String LaunchSetting = "LaunchSetting";
@@ -66,6 +67,7 @@ public class SettingsActivity extends AppCompatActivity {
         setContentView(R.layout.activity_settings);
         setContentView(R.layout.activity_settings);
         Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
         Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
         setSupportActionBar(toolbar);
         setSupportActionBar(toolbar);
+        toolbar.setSubtitle(getResources().getString(R.string.title_settings) + " (" + getGitRevision() + ")");
 
 
         ((SwitchCompat)findViewById(R.id.swMsgFile)).setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
         ((SwitchCompat)findViewById(R.id.swMsgFile)).setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
             @Override
             @Override

+ 1 - 1
android/app/src/main/res/layout/activity_settings.xml

@@ -17,7 +17,7 @@
             android:layout_height="?attr/actionBarSize"
             android:layout_height="?attr/actionBarSize"
             app:popupTheme="@style/AppTheme.PopupOverlay"
             app:popupTheme="@style/AppTheme.PopupOverlay"
             app:subtitle="@string/title_settings"
             app:subtitle="@string/title_settings"
-            app:title="SDLPal" />
+            app:title="@string/app_name" />
 
 
     </android.support.design.widget.AppBarLayout>
     </android.support.design.widget.AppBarLayout>