diff --git a/raylib/platform_android.c b/raylib/platform_android.c index beeabf7..7f9021d 100644 --- a/raylib/platform_android.c +++ b/raylib/platform_android.c @@ -1,11 +1,3 @@ // +build android -#include "_cgo_export.h" -struct android_app *GetAndroidApp(); - -void android_init() { - struct android_app *app; - app = GetAndroidApp(); - asset_manager = app->activity->assetManager; -} diff --git a/raylib/platform_android.go b/raylib/platform_android.go index 3a9525d..82a0586 100644 --- a/raylib/platform_android.go +++ b/raylib/platform_android.go @@ -10,10 +10,11 @@ package rl #include #include -extern void android_init(); extern struct ANativeActivity *GetANativeActivity(void); -static AAssetManager* asset_manager; +static AAssetManager* getAssetManager(){ + return GetANativeActivity()->assetManager; +} static const char* getInternalStoragePath(){ return GetANativeActivity()->internalDataPath; } @@ -37,7 +38,6 @@ func InitWindow(width int32, height int32, title string) { defer C.free(unsafe.Pointer(ctitle)) C.InitWindow(cwidth, cheight, ctitle) - C.android_init() } // SetCallbackFunc - Sets callback function @@ -102,7 +102,7 @@ func OpenAsset(name string) (Asset, error) { cname := C.CString(name) defer C.free(unsafe.Pointer(cname)) - a := &asset{C.AAssetManager_open(C.asset_manager, cname, C.AASSET_MODE_UNKNOWN)} + a := &asset{C.AAssetManager_open(C.getAssetManager(), cname, C.AASSET_MODE_UNKNOWN)} if a.ptr == nil { return nil, fmt.Errorf("asset file could not be opened")