#if defined(__ANDROID__)
-default const char * AndroidInterface_GetLibLocation();
+default const char * AndroidInterface_GetLibLocation(Module m);
#include <android/log.h>
#include <android/native_activity.h>
{
const char * libLocation = null;
#if defined(__ANDROID__)
- libLocation = AndroidInterface_GetLibLocation();
+ libLocation = AndroidInterface_GetLibLocation(fromModule.application);
#endif
library = Instance_Module_Load(libLocation, name, &Load, &Unload);
}
#include <locale.h>
#include <pthread.h>
#include <unistd.h>
+#include <sys/prctl.h>
#include <android/configuration.h>
#include <android/looper.h>
void pre_exec_cmd(AppCommand cmd)
{
- PrintLn("pre_exec_cmd: ", cmd);
+ //PrintLn("pre_exec_cmd: ", cmd);
switch(cmd)
{
case inputChanged:
void post_exec_cmd(AppCommand cmd)
{
- PrintLn("post_exec_cmd: ", cmd);
+ //PrintLn("post_exec_cmd: ", cmd);
switch(cmd)
{
case termWindow:
__thisModule = null;
__androidCurrentModule = null;
+ prctl(PR_SET_DUMPABLE, 1);
+
LOGI("Creating: %p\n", activity);
//(*activity->vm)->AttachCurrentThread(activity->vm, &env, 0);
eModule_Load(__androidCurrentModule, "ecere", publicAccess);
+ /*
if(activity->internalDataPath) PrintLn("internalDataPath is ", activity->internalDataPath);
if(activity->externalDataPath) PrintLn("externalDataPath is ", activity->externalDataPath);
{
char tmp[256];
PrintLn("cwd is ", GetWorkingDir(tmp, sizeof(tmp)));
}
+ */
ANativeActivity_setWindowFlags(activity, AWINDOW_FLAG_FULLSCREEN|AWINDOW_FLAG_KEEP_SCREEN_ON, 0 );
app = AndroidActivity { activity = activity, moduleName = moduleName };
static AndroidActivity androidActivity;
-default const char * AndroidInterface_GetLibLocation()
+default const char * AndroidInterface_GetLibLocation(Application a)
{
- if(androidActivity)
- {
- static char loc[MAX_LOCATION];
- sprintf(loc, "/data/data/com.ecere.%s/lib/lib", androidActivity.moduleName);
- return loc;
- }
- return null;
+ static char loc[MAX_LOCATION];
+ // sprintf(loc, "/data/data/com.ecere.%s/lib/lib", a.argv[0]);
+ sprintf(loc, "/data/app/com.ecere.%s-1/lib/arm64/lib", a.argv[0]);
+ return loc;
}
static bool gotInit;