add Android project for DMiner

This commit is contained in:
Vadim Lopatin 2016-04-26 16:17:24 +03:00
parent 7cacca8964
commit 5cd49dd25e
8 changed files with 148 additions and 0 deletions

View File

@ -0,0 +1,38 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- BEGIN_INCLUDE(manifest) -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.dlangui.dminer"
android:versionCode="1"
android:versionName="1.0">
<!-- This is the platform API where NativeActivity was introduced. -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-sdk android:minSdkVersion="19" android:targetSdkVersion="19"/>
<!-- This .apk has no Java code itself, so set hasCode to false. -->
<application android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
android:hasCode="false">
<!-- Our activity is the built-in NativeActivity framework class.
This will take care of integrating with our NDK code. -->
<activity android:name="android.app.NativeActivity"
android:label="@string/app_name"
android:configChanges="orientation|keyboardHidden|locale|screenSize|screenLayout|locale"
android:launchMode="singleTask"
android:windowSoftInputMode="stateHidden"
android:screenOrientation="landscape"
>
<!-- Tell NativeActivity the name of or .so -->
<meta-data android:name="android.app.lib_name"
android:value="dlangui-activity" />
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
<!-- END_INCLUDE(manifest) -->

View File

@ -0,0 +1,19 @@
This is template for DlangUI Android project.
============================================
Copy this directory to some DlangUI project's directory to allow Android builds.
Modify android_app.mk, android_build_config.mk
android_app.mk
==============
Update LOCAL_SRC_FILES to include all your project's files.
android_build_config.mk
=======================
Update paths to Android NDK, SDK, DlangUI source directory.

View File

@ -0,0 +1,26 @@
# List application source files here
# application library name ("app" -> libapp.so)
LOCAL_MODULE=dlangui-activity
# applicatino source files: put list of your source files here
LOCAL_SRC_FILES="\
../src/minermain.d \
../src/dminer/core/minetypes.d \
../src/dminer/core/blocks.d \
../src/dminer/core/generators.d \
../src/dminer/core/world.d \
../src/dminer/core/terrain.d \
../src/dminer/core/chunk.d \
-J../views \
-J../views/res \
-J../views/res/mdpi \
-J../views/res/i18n \
-release -enable-inlining -O3 \
"
# Additional libraries to link
LOCAL_LDLIBS=""
# Android SDK target
ANDROID_TARGET="android-19"

View File

@ -0,0 +1,11 @@
#!/bin/sh
#=========================================================================
# Modify this file to specify DLANGUI, Android NDK, SDK and LDC2 locations.
export DLANGUI_DIR=$HOME/src/d/dlangui
export NDK=$HOME/android-ndk-r11c
export SDK=$HOME/android-sdk-linux
export LDC=$HOME/ldc2-android-arm-0.17.0-alpha2-linux-x86_64
export NDK_ARCH=x86_64
export JAVA_HOME=/usr/lib/jvm/java-8-oracle/

View File

@ -0,0 +1,42 @@
#!/bin/sh
# load settings for paths
. ./android_build_config.mk
echo ""
echo "===================================="
echo "DlangUI Build for Android native app"
echo "===================================="
echo "DLANGUI_DIR: $DLANGUI_DIR"
echo "NDK: $NDK"
echo "SDK: $SDK"
echo "LDC: $LDC"
# dlangui sources
. $DLANGUI_DIR/android/dlangui_source_files.mk
# local application sources
. ./android_app.mk
warn () {
echo "$0:" "$@" >&2
}
die () {
rc=$1
shift
warn "$@"
exit $rc
}
# LDC2 arm build
. $DLANGUI_DIR/android/android_ldc_armv7a.mk
echo "Updating ant project..."
#=========================================================
$SDK/tools/android update project -p . -s --target $ANDROID_TARGET || die 3 "Android Project update is failed"
echo "Building APK..."
#=========================================================
ant debug || die 4 "Android APK creation is failed"
echo "Successful."

View File

@ -0,0 +1,4 @@
#!/bin/sh
. ./android_build_config.mk
$SDK/platform-tools/adb install -r bin/NativeActivity-debug.apk

View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">DlangUI Miner</string>
</resources>

View File

@ -0,0 +1,4 @@
#!/bin/sh
. ./android_build_config.mk
$SDK/platform-tools/adb logcat | less