I've just received my newest toy: the MK802 Android MiniPC (
http://www.ebay.com/itm/320933605374 ) and it looks great. Now I wonder if we can compile MCServer as an android app using the NDK.
FakeTruth, you said something about it being really easy, care to provide a simple testing APK that I could try installing?

ye i want to test my HTC Wildfire with it

HTC Wildfire the old model? That thing suxx, it's way too slow even by Android phone standards.
Wildfire S forgot the S xD
I haven't had the pleasure of seeing that one in action, but I've heard they improved it much over the previous model
I'm not sure a phone is a good device to test, though, since most phones don't have too much free RAM. Usually the RAM is already taken up by the processes needed to take care of the phone hardware. Well, we'll see, when FakeTruth succeeds compiling the APK

there is only one way to find out if it works

Code:
$ ndk-build -j4
Compile++ thumb : mcserver <= Bindings.cpp
Compile++ thumb : mcserver <= BioGen.cpp
Compile++ thumb : mcserver <= BlockArea.cpp
Compile++ thumb : mcserver <= BlockID.cpp
Compile++ thumb : mcserver <= Block.cpp
Compile++ thumb : mcserver <= BlockDoor.cpp
Compile++ thumb : mcserver <= BlockPiston.cpp
Compile++ thumb : mcserver <= BlockRedstone.cpp
Compile++ thumb : mcserver <= BlockRedstoneRepeater.cpp
Compile++ thumb : mcserver <= cAggressiveMonster.cpp
Compile++ thumb : mcserver <= cAuthenticator.cpp
Compile++ thumb : mcserver <= Caves.cpp
Compile++ thumb : mcserver <= cBlockingTCPLink.cpp
Compile++ thumb : mcserver <= cBlockToPickup.cpp
Compile++ thumb : mcserver <= cCavespider.cpp
Compile++ thumb : mcserver <= cChatColor.cpp
Compile++ thumb : mcserver <= cChestEntity.cpp
Compile++ thumb : mcserver <= cChicken.cpp
Compile++ thumb : mcserver <= cChunk.cpp
Compile++ thumb : mcserver <= cChunkGenerator.cpp
Compile++ thumb : mcserver <= cChunkMap.cpp
Compile++ thumb : mcserver <= cCow.cpp
Compile++ thumb : mcserver <= cClientHandle.cpp
Compile++ thumb : mcserver <= cCraftingWindow.cpp
Compile++ thumb : mcserver <= cCreativeInventory.cpp
Compile++ thumb : mcserver <= cCreeper.cpp
Compile++ thumb : mcserver <= cCriticalSection.cpp
Compile++ thumb : mcserver <= cCuboid.cpp
Compile++ thumb : mcserver <= cEnderman.cpp
Compile++ thumb : mcserver <= cEntity.cpp
Compile++ thumb : mcserver <= cEvent.cpp
Compile++ thumb : mcserver <= cFile.cpp
Compile++ thumb : mcserver <= cFileFormatUpdater.cpp
Compile++ thumb : mcserver <= cFireSimulator.cpp
Compile++ thumb : mcserver <= cFluidSimulator.cpp
Compile++ thumb : mcserver <= cFurnaceEntity.cpp
Compile++ thumb : mcserver <= cFurnaceRecipe.cpp
Compile++ thumb : mcserver <= cFurnaceWindow.cpp
Compile++ thumb : mcserver <= cGhast.cpp
Compile++ thumb : mcserver <= cGroup.cpp
Compile++ thumb : mcserver <= cGroupManager.cpp
Compile++ thumb : mcserver <= cHeartBeat.cpp
Compile++ thumb : mcserver <= ChunkSender.cpp
Compile++ thumb : mcserver <= cInventory.cpp
Compile++ thumb : mcserver <= cIsThread.cpp
Compile++ thumb : mcserver <= cItem.cpp
Compile++ thumb : mcserver <= cLavaSimulator.cpp
Compile++ thumb : mcserver <= cLog.cpp
Compile++ thumb : mcserver <= cLuaChunk.cpp
Compile++ thumb : mcserver <= cLuaCommandBinder.cpp
Compile++ thumb : mcserver <= cMakeDir.cpp
Compile++ thumb : mcserver <= cMCLogger.cpp
Compile++ thumb : mcserver <= cMonster.cpp
Compile++ thumb : mcserver <= cMonsterConfig.cpp
Compile++ thumb : mcserver <= cNoise.cpp
Compile++ thumb : mcserver <= CompoGen.cpp
Compile++ thumb : mcserver <= cPassiveAggressiveMonster.cpp
Compile++ thumb : mcserver <= cPassiveMonster.cpp
Compile++ thumb : mcserver <= cPawn.cpp
Compile++ thumb : mcserver <= cPickup.cpp
Compile++ thumb : mcserver <= cPig.cpp
Compile++ thumb : mcserver <= cPiston.cpp
Compile++ thumb : mcserver <= cPlayer.cpp
Compile++ thumb : mcserver <= cPlugin.cpp
Compile++ thumb : mcserver <= cPluginManager.cpp
Compile++ thumb : mcserver <= cPlugin_Lua.cpp
In file included from ./squirrel_3_0_1_stable/sqrat/sqrat.h:38,
from jni/../source/cPlugin_Squirrel.h:3,
from jni/../source/cPluginManager.cpp:7:
./squirrel_3_0_1_stable/sqrat/sqrat/sqratScript.h: In member function 'void Sqrat::Script::CompileString(const Sqrat::string&)':
./squirrel_3_0_1_stable/sqrat/sqrat/sqratScript.h:55: error: exception handling disabled, use -fexceptions to enable
/cygdrive/d/android-ndk-r8/build/core/build-binary.mk:243: recipe for target `obj/local/armeabi/objs/mcserver/__/source/cPluginManager.o' failed
make: *** [obj/local/armeabi/objs/mcserver/__/source/cPluginManager.o] Error 1
make: *** Waiting for unfinished jobs....
Oh god, it's using exceptions D: The Android NDK does not support exceptions
Alright, everything compiled. Now I need to tell Java to run MCServer. I already managed to log something from C++
Sweet
Two minutes later:
![[Image: 2it2yo6.png]](http://i46.tinypic.com/2it2yo6.png)
My god it works (almost)
I tried again with forgetful sceme ( disk IO probably needs a lot of work ) and I got 3.4 chunks per second on my HTC Desire (1GHz I think)