This is a template for creating an Android NDK project for Android Studio

The following steps are performed on this template:

-Copy/Rename 'untitled' folder to new location

[root]
	local.properties:
		-replace path references to SDK & NDK
	untitled.iml
		-rename file
	(no other changes for root)

	[.idea]
		modules.xml
			-untitled
		gradle.xml
			-path to gradle "gradleHome"
		.name
			-replace content with new program name
		(no other changes for .idea)

		[scopes]
		(no changes required)
		
		[copyright]
		(no changes required)

	[gradle]
	(no changes required)

	[app]
		app.iml
			-untitled
		build.gradle
			-com.example.untitled
			-commandLine 'c:\\ndk\\ndk-build.cmd','-C', file('src/main').absolutePath
		(no other changes required)

		[src/main]
			AndroidManifest.xml
				-com.example.untitled
		(no other changes required)

		[assets]
		(no other changes required)

		[res/values]
			strings.xml
				-untitled
		(no other changes required)

	[jni]
		[temp]
			-replace with a copy of everything in the temp folder
		[c]
			-replace with a copy of everything from the c folder
			(with selective restrictions)
			FILTER:
				*.h
				*.c
				*.cpp
				*.mm
			EXCLUDE:
				[c_compiler/*]
				[*/os/*]
		Application.mk
			-#<QB64_PARTS_DECLARE>
				#Flags for image dependency
				APP_CFLAGS    += -D DEPENDENCY_IMAGE_CODEC
				#Flags for font dependency
				APP_CFLAGS    += -D DEPENDENCY_LOADFONT
				#Flags for audio dependency
				APP_CFLAGS    += -D DEPENDENCY_AUDIO_OUT
				APP_CFLAGS    += -D DEPENDENCY_AUDIO_CONVERSION
				APP_CFLAGS    += -D DEPENDENCY_AUDIO_DECODE

		Android.mk
			-#<QB64_PARTS_BUILD>

-----------------------------------------------------------------------------------------------------------------
include $(CLEAR_VARS)

OPENAL_DIR := c/parts/audio/out/android/OpenAL

AL_SOURCES := \
  $(OPENAL_DIR)/Alc/android.c              \
  $(OPENAL_DIR)/OpenAL32/alAuxEffectSlot.c \
  $(OPENAL_DIR)/OpenAL32/alBuffer.c        \
  $(OPENAL_DIR)/OpenAL32/alDatabuffer.c    \
  $(OPENAL_DIR)/OpenAL32/alEffect.c        \
  $(OPENAL_DIR)/OpenAL32/alError.c         \
  $(OPENAL_DIR)/OpenAL32/alExtension.c     \
  $(OPENAL_DIR)/OpenAL32/alFilter.c        \
  $(OPENAL_DIR)/OpenAL32/alListener.c      \
  $(OPENAL_DIR)/OpenAL32/alSource.c        \
  $(OPENAL_DIR)/OpenAL32/alState.c         \
  $(OPENAL_DIR)/OpenAL32/alThunk.c         \
  $(OPENAL_DIR)/Alc/ALc.c                  \
  $(OPENAL_DIR)/Alc/alcConfig.c            \
  $(OPENAL_DIR)/Alc/alcEcho.c              \
  $(OPENAL_DIR)/Alc/alcModulator.c         \
  $(OPENAL_DIR)/Alc/alcReverb.c            \
  $(OPENAL_DIR)/Alc/alcRing.c              \
  $(OPENAL_DIR)/Alc/alcThread.c            \
  $(OPENAL_DIR)/Alc/ALu.c                  \
  $(OPENAL_DIR)/Alc/bs2b.c                 \
  $(OPENAL_DIR)/Alc/null.c                 \
  $(OPENAL_DIR)/Alc/panning.c              \
  $(OPENAL_DIR)/Alc/mixer.c                \
  $(OPENAL_DIR)/Alc/audiotrack.c           \
  $(OPENAL_DIR)/Alc/opensles.c


LOCAL_MODULE    := parts_audio_out
LOCAL_SRC_FILES := $(AL_SOURCES)

LOCAL_C_INCLUDES := \
  $(HOME)/src/openal-soft/jni/OpenAL \
  $(HOME)/src/openal-soft/jni/OpenAL/include \
  $(HOME)/src/openal-soft/jni/OpenAL/OpenAL32/Include \
  c/parts/audio/out/android/OpenAL/OpenAL32/Include

LOCAL_CFLAGS += \
  -DAL_ALEXT_PROTOTYPES \

MAX_SOURCES_LOW ?= 4
MAX_SOURCES_START ?= 8
MAX_SOURCES_HIGH ?= 64

LOCAL_CFLAGS += -DMAX_SOURCES_LOW=$(MAX_SOURCES_LOW) -DMAX_SOURCES_START=$(MAX_SOURCES_START) -DMAX_SOURCES_HIGH=$(MAX_SOURCES_HIGH)
LOCAL_CFLAGS += -DPOST_FROYO

include $(BUILD_STATIC_LIBRARY)





# PARTS/AUDIO/CONVERSION
include $(CLEAR_VARS)
LOCAL_MODULE := parts_audio_conversion
LOCAL_SRC_FILES := c/parts/audio/conversion/src/samplerate.c
LOCAL_SRC_FILES += c/parts/audio/conversion/src/src_linear.c
LOCAL_SRC_FILES += c/parts/audio/conversion/src/src_sinc.c
LOCAL_SRC_FILES += c/parts/audio/conversion/src/src_zoh.c
#LOCAL_CFLAGS :=
#LOCAL_C_INCLUDES :=
include $(BUILD_STATIC_LIBRARY)
#include $(PREBUILT_STATIC_LIBRARY)

# PARTS/AUDIO/CONVERSION
include $(CLEAR_VARS)
LOCAL_MODULE := parts_audio_decode_mp3
LOCAL_SRC_FILES := c/parts/audio/decode/mp3_mini/src/minimp3.c
#LOCAL_CFLAGS :=
#LOCAL_C_INCLUDES :=
include $(BUILD_STATIC_LIBRARY)
#include $(PREBUILT_STATIC_LIBRARY)


# PARTS/VIDEO/FONT/TTF
include $(CLEAR_VARS)
LOCAL_MODULE := parts_video_font_ttf
LOCAL_SRC_FILES := c/parts/video/font/ttf/src/freetypeamalgam.c
#LOCAL_CFLAGS :=
#LOCAL_C_INCLUDES :=
include $(BUILD_STATIC_LIBRARY)
#include $(PREBUILT_STATIC_LIBRARY)
-----------------------------------------------------------------------------------------------------------------

			-#<QB64_PARTS_REFERENCE>
				LOCAL_STATIC_LIBRARIES += parts_video_font_ttf
				LOCAL_STATIC_LIBRARIES += parts_audio_out
				LOCAL_STATIC_LIBRARIES += parts_audio_conversion
				LOCAL_STATIC_LIBRARIES += parts_audio_decode_mp3	

			(no other changes required)
