GLBasic forum

Main forum => GLBasic - en => Topic started by: Kitty Hello on 2022-Dec-13

Title: Android - errors loading a project
Post by: Kitty Hello on 2022-Dec-13
Hello. Now it's me having trouble. I deleted the android_studio folder and re-created everything. Then fired up the freshly installed Android Studio and got some errors:
Code (glbasic) Select

cvc-complex-type.2.4.a: Invalid content was found starting with element 'extension-level'. One of '{layoutlib}' is expected.
cvc-complex-type.2.4.a: Invalid content was found starting with element 'base-extension'. One of '{codename, tag}' is expected.

> java.lang.NullPointerException (no error message)

* Try:
Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Exception is:
org.gradle.api.ProjectConfigurationException: A problem occurred configuring project ':app'.
at org.gradle.configuration.project.LifecycleProjectEvaluator.wrapException(LifecycleProjectEvaluator.java:79)
at org.gradle.configuration.project.LifecycleProjectEvaluator.addConfigurationFailure(LifecycleProjectEvaluator.java:72)
at org.gradle.configuration.project.LifecycleProjectEvaluator.access$600(LifecycleProjectEvaluator.java:53)
at org.gradle.configuration.project.LifecycleProjectEvaluator$NotifyAfterEvaluate.run(LifecycleProjectEvaluator.java:198)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:301)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:293)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:175)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
at org.gradle.configuration.project.LifecycleProjectEvaluator$EvaluateProject$1.run(LifecycleProjectEvaluator.java:111)
at org.gradle.internal.Factories$1.create(Factories.java:25)
at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:183)
at org.gradle.internal.work.StopShieldingWorkerLeaseService.withLocks(StopShieldingWorkerLeaseService.java:40)
at org.gradle.api.internal.project.DefaultProjectStateRegistry$ProjectStateImpl.withProjectLock(DefaultProjectStateRegistry.java:226)
at org.gradle.api.internal.project.DefaultProjectStateRegistry$ProjectStateImpl.withMutableState(DefaultProjectStateRegistry.java:220)
at org.gradle.api.internal.project.DefaultProjectStateRegistry$ProjectStateImpl.withMutableState(DefaultProjectStateRegistry.java:186)
at org.gradle.configuration.project.LifecycleProjectEvaluator$EvaluateProject.run(LifecycleProjectEvaluator.java:95)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:301)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:293)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:175)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
at org.gradle.configuration.project.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:67)
at org.gradle.api.internal.project.DefaultProject.evaluate(DefaultProject.java:693)
at org.gradle.api.internal.project.DefaultProject.evaluate(DefaultProject.java:141)
at org.gradle.execution.TaskPathProjectEvaluator.configure(TaskPathProjectEvaluator.java:35)
at org.gradle.execution.TaskPathProjectEvaluator.configureHierarchy(TaskPathProjectEvaluator.java:62)
at org.gradle.configuration.DefaultBuildConfigurer.configure(DefaultBuildConfigurer.java:41)
at org.gradle.initialization.DefaultGradleLauncher$ConfigureBuild.run(DefaultGradleLauncher.java:302)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:301)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:293)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:175)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
at org.gradle.initialization.DefaultGradleLauncher.configureBuild(DefaultGradleLauncher.java:210)
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:151)
at org.gradle.initialization.DefaultGradleLauncher.executeTasks(DefaultGradleLauncher.java:134)
at org.gradle.internal.invocation.GradleBuildController$1.execute(GradleBuildController.java:58)
at org.gradle.internal.invocation.GradleBuildController$1.execute(GradleBuildController.java:55)
at org.gradle.internal.invocation.GradleBuildController$3.create(GradleBuildController.java:82)
at org.gradle.internal.invocation.GradleBuildController$3.create(GradleBuildController.java:75)
at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:183)
at org.gradle.internal.work.StopShieldingWorkerLeaseService.withLocks(StopShieldingWorkerLeaseService.java:40)
at org.gradle.internal.invocation.GradleBuildController.doBuild(GradleBuildController.java:75)
at org.gradle.internal.invocation.GradleBuildController.run(GradleBuildController.java:55)
at org.gradle.tooling.internal.provider.runner.ClientProvidedPhasedActionRunner.run(ClientProvidedPhasedActionRunner.java:60)
at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
at org.gradle.launcher.exec.BuildOutcomeReportingBuildActionRunner.run(BuildOutcomeReportingBuildActionRunner.java:58)
at org.gradle.tooling.internal.provider.ValidatingBuildActionRunner.run(ValidatingBuildActionRunner.java:32)
at org.gradle.launcher.exec.BuildCompletionNotifyingBuildActionRunner.run(BuildCompletionNotifyingBuildActionRunner.java:39)
at org.gradle.launcher.exec.RunAsBuildOperationBuildActionRunner$3.call(RunAsBuildOperationBuildActionRunner.java:49)
at org.gradle.launcher.exec.RunAsBuildOperationBuildActionRunner$3.call(RunAsBuildOperationBuildActionRunner.java:44)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:315)
at org.gradle.internal.operations.DefaultBuildOperationExecutor$CallableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:305)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:175)
at org.gradle.internal.operations.DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:101)
at org.gradle.internal.operations.DelegatingBuildOperationExecutor.call(DelegatingBuildOperationExecutor.java:36)
at org.gradle.launcher.exec.RunAsBuildOperationBuildActionRunner.run(RunAsBuildOperationBuildActionRunner.java:44)
at org.gradle.launcher.exec.InProcessBuildActionExecuter$1.transform(InProcessBuildActionExecuter.java:49)
at org.gradle.launcher.exec.InProcessBuildActionExecuter$1.transform(InProcessBuildActionExecuter.java:46)
at org.gradle.composite.internal.DefaultRootBuildState.run(DefaultRootBuildState.java:78)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:46)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:31)
at org.gradle.launcher.exec.BuildTreeScopeBuildActionExecuter.execute(BuildTreeScopeBuildActionExecuter.java:42)
at org.gradle.launcher.exec.BuildTreeScopeBuildActionExecuter.execute(BuildTreeScopeBuildActionExecuter.java:28)
at org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:78)
at org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:52)
at org.gradle.tooling.internal.provider.SubscribableBuildActionExecuter.execute(SubscribableBuildActionExecuter.java:59)
at org.gradle.tooling.internal.provider.SubscribableBuildActionExecuter.execute(SubscribableBuildActionExecuter.java:36)
at org.gradle.tooling.internal.provider.SessionScopeBuildActionExecuter.execute(SessionScopeBuildActionExecuter.java:68)
at org.gradle.tooling.internal.provider.SessionScopeBuildActionExecuter.execute(SessionScopeBuildActionExecuter.java:38)
at org.gradle.tooling.internal.provider.GradleThreadBuildActionExecuter.execute(GradleThreadBuildActionExecuter.java:37)
at org.gradle.tooling.internal.provider.GradleThreadBuildActionExecuter.execute(GradleThreadBuildActionExecuter.java:26)
at org.gradle.tooling.internal.provider.ParallelismConfigurationBuildActionExecuter.execute(ParallelismConfigurationBuildActionExecuter.java:43)
at org.gradle.tooling.internal.provider.ParallelismConfigurationBuildActionExecuter.execute(ParallelismConfigurationBuildActionExecuter.java:29)
at org.gradle.tooling.internal.provider.StartParamsValidatingActionExecuter.execute(StartParamsValidatingActionExecuter.java:60)
at org.gradle.tooling.internal.provider.StartParamsValidatingActionExecuter.execute(StartParamsValidatingActionExecuter.java:32)
at org.gradle.tooling.internal.provider.SessionFailureReportingActionExecuter.execute(SessionFailureReportingActionExecuter.java:55)
at org.gradle.tooling.internal.provider.SessionFailureReportingActionExecuter.execute(SessionFailureReportingActionExecuter.java:41)
at org.gradle.tooling.internal.provider.SetupLoggingActionExecuter.execute(SetupLoggingActionExecuter.java:48)
at org.gradle.tooling.internal.provider.SetupLoggingActionExecuter.execute(SetupLoggingActionExecuter.java:32)
at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:67)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:37)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72)
at org.gradle.util.Swapper.swap(Swapper.java:38)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
at org.gradle.launcher.daemon.server.exec.LogAndCheckHealth.execute(LogAndCheckHealth.java:55)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:62)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:81)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:104)
at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50)
at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:295)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
Caused by: java.lang.NullPointerException
at com.android.build.gradle.internal.ndk.NdkHandler.getPlatformVersion(NdkHandler.java:121)
at com.android.build.gradle.internal.ndk.NdkHandler.supports64Bits(NdkHandler.java:221)
at com.android.build.gradle.internal.ndk.NdkHandler.getSupportedAbis(NdkHandler.java:269)
at com.android.build.gradle.tasks.ExternalNativeJsonGenerator.createImpl(ExternalNativeJsonGenerator.java:563)
at com.android.build.gradle.tasks.ExternalNativeJsonGenerator.create(ExternalNativeJsonGenerator.java:480)
at com.android.build.gradle.internal.TaskManager.createExternalNativeBuildJsonGenerators(TaskManager.java:1519)
...
[/ocde]

When I try to build, I get:
[code=glbasic]
java.lang.IllegalArgumentException: Each request requires the same not null build mode to be set
at com.android.tools.idea.gradle.project.build.invoker.GradleBuildInvokerImpl.executeAssembleTasks(GradleBuildInvokerImpl.kt:165)
at com.android.tools.idea.gradle.project.build.invoker.GradleBuildInvokerImpl.assemble(GradleBuildInvokerImpl.kt:211)
at com.android.tools.idea.gradle.project.build.invoker.GradleBuildInvokerImpl.assemble(GradleBuildInvokerImpl.kt:205)
at com.android.tools.idea.gradle.actions.MakeGradleProjectAction.doPerform(MakeGradleProjectAction.java:45)
at com.android.tools.idea.gradle.actions.AndroidStudioGradleAction.actionPerformed(AndroidStudioGradleAction.java:63)
at com.intellij.openapi.actionSystem.ex.ActionUtil.lambda$performActionDumbAwareWithCallbacks$4(ActionUtil.java:239)
at com.intellij.openapi.actionSystem.ex.ActionUtil.performDumbAwareWithCallbacks(ActionUtil.java:260)
at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAwareWithCallbacks(ActionUtil.java:239)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.lambda$performAction$0(ActionMenuItem.java:277)
at com.intellij.openapi.wm.impl.FocusManagerImpl.runOnOwnContext(FocusManagerImpl.java:236)
at com.intellij.openapi.wm.impl.IdeFocusManagerImpl.runOnOwnContext(IdeFocusManagerImpl.java:67)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.performAction(ActionMenuItem.java:269)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.actionPerformed(ActionMenuItem.java:284)
at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem.lambda$fireActionPerformed$2(ActionMenuItem.java:111)
at com.intellij.openapi.application.TransactionGuardImpl.performUserActivity(TransactionGuardImpl.java:94)
at com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerformed(ActionMenuItem.java:111)
at com.intellij.ui.plaf.beg.BegMenuItemUI.doClick(BegMenuItemUI.java:541)
at com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleased(BegMenuItemUI.java:571)
at java.desktop/java.awt.Component.processMouseEvent(Component.java:6654)
at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3345)
at java.desktop/java.awt.Component.processEvent(Component.java:6419)
at java.desktop/java.awt.Container.processEvent(Container.java:2263)
at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5029)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4861)
at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918)
at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4547)
at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307)
at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2790)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4861)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:778)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:727)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:751)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:749)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:748)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:891)
at com.intellij.ide.IdeEventQueue.dispatchMouseEvent(IdeEventQueue.java:820)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:757)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$6(IdeEventQueue.java:447)
at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:818)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$7(IdeEventQueue.java:446)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:805)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:498)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

Can someone help me, please :)
Title: Re: Android - errors loading a project
Post by: spacefractal on 2022-Dec-13
Im havent touched Android in about a year and yet to reinstall anything my self.

When im google it, its could been something like this, etc the Java Virtual Machine is not setup:

https://stackoverflow.com/questions/49788977/faced-with-org-gradle-api-projectconfigurationexception-error-on-my-gradle-bu

Title: Re: Android - errors loading a project
Post by: Kitty Hello on 2022-Dec-13
I found, I had to change
In File -> Project Structure, set Android Gradle Plugin Version 7.0.3 And Gradle Version 7.0.2.
I chose 7.3.1 and 7.6.
Then, Android Studio downloaded the NDK for me and it seems, that it built it properly.
Now, stdafx_sdl.h is missing :)
It's quite an adventure.
Title: Re: Android - errors loading a project
Post by: Kitty Hello on 2022-Dec-24
One step further. Still getting 3 errors now:
Code (glbasic) Select

> Task :app:buildNdkBuildDebug[arm64-v8a] FAILED
C/C++: ld: error: C:\Users\gf\Documents\GLBasic\TwinTris\distribute\android_studio\app\build\intermediates\cxx\Debug\636m5v26/obj/local/arm64-v8a/objs-debug/main/glbasic/lib_glbasic.o: unable to find library from dependent library specifier: SDL.lib
...

Execution failed for task ':app:checkDebugAarMetadata'.
> Configuration `:app:debugRuntimeClasspath` contains AndroidX dependencies, but the `android.useAndroidX` property is not enabled, which may cause runtime issues.
  Set `android.useAndroidX=true` in the `gradle.properties` file and retry.
....


> com.android.ide.common.process.ProcessException: make: Nothing to be done for 'SDL2'.
  make: Nothing to be done for 'SDL2_mixer'.
  make: Nothing to be done for 'hidapi'.
  make: Nothing to be done for 'jpg'.
  [arm64-v8a] SharedLibrary  : libmain.so
 
  C++ build system [build] failed while executing:
      @echo off
      "C:\\Users\\gf\\AppData\\Local\\Android\\Sdk\\ndk\\23.1.7779620\\ndk-build.cmd" ^
        "NDK_PROJECT_PATH=null" ^
        "APP_BUILD_SCRIPT=C:\\Users\\gf\\Documents\\GLBasic\\TwinTris\\distribute\\android_studio\\app\\jni\\Android.mk" ^
        "NDK_APPLICATION_MK=C:\\Users\\gf\\Documents\\GLBasic\\TwinTris\\distribute\\android_studio\\app\\jni\\Application.mk" ^
        "APP_ABI=arm64-v8a" ^
        "NDK_ALL_ABIS=arm64-v8a" ^
        "NDK_DEBUG=1" ^
        "NDK_OUT=C:\\Users\\gf\\Documents\\GLBasic\\TwinTris\\distribute\\android_studio\\app\\build\\intermediates\\cxx\\Debug\\636m5v26/obj" ^
        "NDK_LIBS_OUT=C:\\Users\\gf\\Documents\\GLBasic\\TwinTris\\distribute\\android_studio\\app\\build\\intermediates\\cxx\\Debug\\636m5v26/lib" ^
        "APP_PLATFORM=android-18" ^
        SDL2 ^
        SDL2_mixer ^
        hidapi ^
        jpg ^
        main ^
        mpg123 ^
        png ^
        zlib
    from C:\Users\gf\Documents\GLBasic\TwinTris\distribute\android_studio\app
  ld: error: C:\Users\gf\Documents\GLBasic\TwinTris\distribute\android_studio\app\build\intermediates\cxx\Debug\636m5v26/obj/local/arm64-v8a/objs-debug/main/glbasic/lib_glbasic.o: unable to find library from dependent library specifier: SDL.lib
  ld: error: C:\Users\gf\Documents\GLBasic\TwinTris\distribute\android_studio\app\build\intermediates\cxx\Debug\636m5v26/obj/local/arm64-v8a/objs-debug/main/glbasic/lib_glbasic.o: unable to find library from dependent library specifier: SDL_mixer.lib
  ld: error: C:\Users\gf\Documents\GLBasic\TwinTris\distribute\android_studio\app\build\intermediates\cxx\Debug\636m5v26/obj/local/arm64-v8a/objs-debug/main/glbasic/lib_glbasic.o: unable to find library from dependent library specifier: SDLmain.lib
  ld: error: C:\Users\gf\Documents\GLBasic\TwinTris\distribute\android_studio\app\build\intermediates\cxx\Debug\636m5v26/obj/local/arm64-v8a/objs-debug/main/glbasic/lib_glbasic.o: unable to find library from dependent library specifier: SDL_mixer.lib
  clang++: error: linker command failed with exit code 1 (use -v to see invocation)
  make: *** [C:/Users/gf/AppData/Local/Android/Sdk/ndk/23.1.7779620/build//../build/core/build-binary.mk:715: C:\Users\gf\Documents\GLBasic\TwinTris\distribute\android_studio\app\build\intermediates\cxx\Debug\636m5v26/obj/local/arm64-v8a/libmain.so] Error 1

Title: Re: Android - errors loading a project
Post by: spacefractal on 2023-Feb-09
chosen to delete the android studio mess thread and is now looking into it again. What im can see, we need to update the grandle and plugin version in the newest Android Studio what we have used.

Also we need somehow to spefifik which NDK version as well CMAKE we using as its seen they are not downloaded, and then its cant run the SO file.... hmmm.

But in the other work Grandle does do something on a fresh Window 10 installation (on a another machine).
Title: Re: Android - errors loading a project
Post by: MrPlow on 2023-Feb-09
Hi, all

I havent been here due to work etc etc ...

I am still managing my android apps...

I use NDK Resolution Outcome: Project settings: Gradle model version=5.1.1, NDK version=21.0.6113669

And recently today just build an update with aab package for api 33 (android 13)
[premature - it builds but it wont run yet, need changes for manifest and other android 12-13 requirements - which are done within Android studio itself]

Seems to work fine for me...
I have not been upgrading gradle as that would lead me into a mess i expect....
Title: Re: Android - errors loading a project
Post by: MrPlow on 2023-Feb-09
In the past I  posted a reply and jni folder link to a past forum user for helping get past some of the jni code bugs....etc
Title: Re: Android - errors loading a project
Post by: MrPlow on 2023-Feb-09
Also, the build of a new android studio project has a few steps to go through before builds can work...
one of the first is the icon creation for missing icons in android studio itself...then manifest format to an acceptable correct version...and app package name etc etc..

I think some of those are on past posts of mine & fractals too....
its a mini checklist of sorts...
Title: Re: Android - errors loading a project
Post by: MrPlow on 2023-Feb-09
Post where I shared jni folder for fixing a devs build...might help...?

https://www.glbasic.com/forum/index.php?topic=11520.msg101672#msg101672
Title: Re: Android - errors loading a project
Post by: spacefractal on 2023-Feb-09
in the newest Android Studio (Electric Eel), we can no longer uses Grandle v5.1.1 as its was the newest im could get it to work property. For us, its would been better to get it to work again wiith that version, even we could still stick to a older version of Android Studio (im not remember which version its was).

So this would take some time and hopefully can get it fully works with the newest Android Studio version with a newer grandle and plugin to a least version 7. Various things has been changed, and grandle like 5.1.1 has long time been depreacted (im do wonder why its so still listed in Android Studio, when we cant uses it?).

You also might have a older version of Android Studio.

Howover HTML5 is fun really.

PS. Grandle diddent want to work at all on the main machine, but recently actuelly purchased a new "old" machine for a another project, but here Android Studio grandle thing does work. So something installation has been failed for me.
Title: Re: Android - errors loading a project
Post by: MrPlow on 2023-Feb-10
I am using Android Studio 3.5.3

I'm not getting any annoying messages to update or anything...yet
Title: Re: Android - errors loading a project
Post by: MrPlow on 2023-Feb-11
Update:
Using current gradle and android studio 3.5.3

I built Android 12 version of one of my apps...

Only other requirement
compsdkver = 31
targetsdk = 31
minsdk = 23

in manifest file you need to add in following exported line

  android:exported="true"

Code (glbasic) Select
<activity android:name="SDLGlbasic"

            android:theme="@style/MyTheme"
            android:label="@string/app_name"
            android:screenOrientation="sensor"
            android:minAspectRatio="1.2"
            android:maxAspectRatio="2.4"
            android:exported="true"
            android:configChanges="keyboard|keyboardHidden|orientation|screenSize|uiMode">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
                <category android:name="android.intent.category.LEANBACK_LAUNCHER" />
            </intent-filter>
        </activity>


Title: Re: Android - errors loading a project
Post by: spacefractal on 2023-Feb-13
we do still want to uses the newest version and the pitfalls its might have. Gernot and me also have plans to ditch Android as its too hard too maintain it. But, the fixes im have do with HTML5 is very good and could been used as a base for extractly Android and so on.

So that why im currectly have choosen to have focus on that.

android studio 3.5.3 is a quite older version from 2019.

But nice to know.
Title: Re: Android - errors loading a project
Post by: MrPlow on 2023-Feb-14
Quote from: spacefractal on 2023-Feb-13
we do still want to uses the newest version and the pitfalls its might have. Gernot and me also have plans to ditch Android as its too hard too maintain it. But, the fixes im have do with HTML5 is very good and could been used as a base for extractly Android and so on.

So that why im currectly have choosen to have focus on that.

android studio 3.5.3 is a quite older version from 2019.

But nice to know.

But Android is main use for me - HTML5 is nice too, but does not perform like Android jni apps do...
I wouldn't be able to publish or update apps if android was removed...

I have a small issue with a converted app project

Getting this odd bug...
1 error only ... so quite simple answer for this i think?

lib_glbasic.cpp:11954: error: undefined reference to '__GLBASIC__::__MainGameSub_()'
Title: Re: Android - errors loading a project
Post by: spacefractal on 2023-Feb-14
Im have changed so much, so PowerUp Elevation perform just like its was a native app. only missing for testing is game controller and way to integrate ads or such.

Im also only checked my Snoopy game and PowerUp Elevations. Both games performs very well.

Also we might move to html5/webgl apps for Android (Android Studio would still been required throught), because its can been easier to mainsteam it.

Im have no idea about the issue with that line only with no code to look at.

Property a external call that should not been do that. No idea. can been anything.

howover im do using html5/webgl platform, and NOT the normal html5 one also showing (that one fails its seen, but we also dont need it throught).
Title: Re: Android - errors loading a project
Post by: MrPlow on 2023-Feb-14
Hey, I sorted the issue  =D
It was a MainSub call being made for iphone, palmos part of the code...
soon as i took ifdef iphone out of my code - it worked!!

=D
Title: Re: Android - errors loading a project
Post by: MrPlow on 2023-Feb-14
Hi SF,

If you look and the zip jni folder I posted other day...this worked for other users trying to build Android and they built fine after using it...

... something got broken from updates -- but that jni version folder is good...and works for a lot of the Android and now is working for API 31 (Android 12)
:D
You did the development for this - and if the "core" is working, no need to deviate or discard it - ok - the newer Android Studios might be an issue (as you mentioned earlier - im not up to speed on that...)



- sound and music (good)
- controllers usb or bluetooth (good) (uses keymappings)
- interstitial admob adverts (perfect)
- asset loading (good)
- 2D speed / performance - as good as unity (or better), but with a smaller filesize!




Title: Re: Android - errors loading a project
Post by: spacefractal on 2023-Feb-14
but Google, like Apple does, breaks things constactly and uses hours and hours and just to get stuff working again, again. Im just simply tired of it. so native stuff is out really. Sorry, but that it. Yes im might have discarded old stuff. but that is what its are now.

Howover we dont completly remove Android. But want to implement HTML5/JavaScript as a Android app instead, so we dont need to maintime multiply code or when stuff got changed.

So admob is still need those java stuff, which im believe can been converted as its are.

Im is currectly looking how gamecontrollers works. Its not working yet, but have property done the javascript part to detect controllers and buttons, but need to find out how to pass the string back to c++. When im have get this stuff working, then the same code would works just the same on Android with no changes required. Its actuelly the last main thing needs to do.

Im can also tell resize works much much much stable with html5/Javascript, which could crash very easy on Android (one of the many crashes is property due that). Im could example newer get windowred mode to work on Chromecast as its crahsed after a few window resize, so hence they are only on fullscreen.

Assest loading is a issue yet throught as im have not checked how this works, but anything is in a single data file, so of course the whole need to been downloaded first. But its only took few secs on a 65mb big game.

So the html5 is a lot of progressing..... Hence im like the platform and want to have the focus on that one now.

When that platform is fully working as intended, im will pass this to Android back (and its property could works on iOS too).
Title: Re: Android - errors loading a project
Post by: MrPlow on 2023-Feb-15
Yes, but can you leave the android publishing button there, and have a separate one for your Android HTML5 or whatever/

I have 40+ apps on android. granted not all need many updates but still good to have...

Not much has changed or broken for me for android for a long time...
Ok, this new studio update is obviously a bigger update...
Title: Re: Android - errors loading a project
Post by: MrPlow on 2023-Feb-15
BTW - i tried your game, looks very good on html5!
My desktop browser was not as smooth as my mobile browser...some small Animation jerks on desktop chrome.
but mobile was not fitting to the screen correctly... i could only 25% of window for game...
Title: Re: Android - errors loading a project
Post by: spacefractal on 2023-Feb-15
im just updated. also Chrome can been very annoying, if its run from a cache rather than actuelly version (im was forced to clear anything recently to fix the issue.

The just uploaded version is v1.14.1 and hopefully its works as intended.

Here its run so smooth (flawless 60+fps) as its could on my windows machine and on a Android 12 motorola phone with both Opera and Chrome.

The main test has been on Microsoft Edge on Windows 10 on desktop as this is the browser installed by default.

Btw the focus as a test game is PowerUP Elevation. Im have not updated Snoppy yet using all changes. Snoppy is a game that run a little bit slow on purpose, due nature of the resolution its using (96x64px).

on mobile? which browser. Its clearly howover recommended to uses Chrome me think, dispite the cache issue im cant do anything with.
Title: Re: Android - errors loading a project
Post by: MrPlow on 2023-Feb-15
I think i ran it on my phone samsung browser...probably older version...
Title: Re: Android - errors loading a project
Post by: spacefractal on 2023-Feb-15
perforcement is ineeded slowere, but im do depend its can been variered from device to device and the browser on that device might have limited to such a fps to save battery power.

On the cheap huweiii Android 10, the game ran about 30fps. Im do should add a more clean 30fps version (im just need to add that option), but the game was still very playable.

Still, im really like html5 platform, which is something im have missed back from about 20 years ago: Doing browser games.
Title: Re: Android - errors loading a project
Post by: Kitty Hello on 2023-Feb-24
I could not hire anyone on fiverr to fix our Android troubles. So, maybe using an old Android Studio version, that sill works and then slowly upgrading the gradle version might give a clue?
Last resort: HTML5 :(
Title: Re: Android - errors loading a project
Post by: spacefractal on 2023-Feb-24
Bugger.

Plow can still updte his app using a quite older Android Studio throught.

Anyway im do personally have more fun with html5 currectly, its its can been slowere. Its depend on games doing of course.
Title: Re: Android - errors loading a project
Post by: Kitty Hello on 2023-Feb-28
I got it working, by starting an SDL project from scratch. I will now slowly move the Java parts back in. But hey, it's compiling :)
Title: Re: Android - errors loading a project
Post by: spacefractal on 2023-Feb-28
cool.
Title: Re: Android - errors loading a project
Post by: Kitty Hello on 2023-Feb-28
Hours of trying - the error comes when upgrading gradle from 7.1.0 to 7.4.1.
What are you doing, google!?

Luckily I zipped the project before the upgrade. Bad is - I can't open the unzipped backup again. AS crashes. Are people really working with this crap?
Title: Re: Android - errors loading a project
Post by: spacefractal on 2023-Mar-02
Im think Android Studio is stabile like hell :-D. Im miss the Android.bat days, which was much more easier. yes, we could uses older version, but this is as im said, a cat after mouse game with the big companies.

For me im must say html is more fun really. We still miss few thing, but after the fixes im have done, its playable. Only gamecontrollers is not working. but this is not about it in this thread.
Title: Re: Android - errors loading a project
Post by: MrPlow on 2023-Mar-02
Hi, Gernot
Do you need to have the gradle version so high?
I am compiling right now for api 31 with older gradle...

dependencies {
        //classpath 'com.android.tools.build:gradle:3.4.1'
        classpath 'com.android.tools.build:gradle:3.5.4'

gradle.wrapper.properties (file)
distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip

I did need to modify for a new permissions bug...SDLGlbasic.java  (noticed high crash rate - so fix below should work)


Code (glbasic) Select
public static String getStringResourceByName(String aString, String aDefault) {
        //String packageName = SDLActivity.mSingleton.getPackageName();
        String packageName = BuildConfig.APPLICATION_ID;


Title: Re: Android - errors loading a project
Post by: spacefractal on 2023-Mar-02
gradle-5.4.1 is no longer supported in newest Android Studio, and we dont want using old Android Studio. Its seen he got it to work with a newer grandle that is supported (here using 7.1.0). so its the right way he do.

Also he have enable sdl controller thing, no idea its works. so this might meant we uses both code this time.

We make sure we do that change you did, which is a area im have not checked at all. so here you can do right.

SDLActivity.mSingleton.getPackage() can been a leaf from old android.bat version, no longer needed. More because we do extends its activaty without modify it directly, unlike the old version. Its property used a depreacted code.
Title: Re: Android - errors loading a project
Post by: MrPlow on 2023-Apr-05
Thanks for info on this...
Currently resolved other issues - I had a to use mintargetSDK of 26 for targetSDk of 31
which is not an issue..

And adding this seems to resolve a pendingIntent crashbug...for Android 12 users
Code (glbasic) Select
// For apps targeting Android 12, add WorkManager dependency.
    constraints {
        implementation('androidx.work:work-runtime:2.7.0') {
            because '''androidx.work:work-runtime:2.1.0 pulled from
      play-services-ads has a bug using PendingIntent without
      FLAG_IMMUTABLE or FLAG_MUTABLE and will fail in Apps
      targeting S+.'''
        }
}




I am trying next to fix interstitials to work for 20.4.0 GMS admob

Will update how I get on...
Title: Re: Android - errors loading a project
Post by: Kitty Hello on 2023-Apr-17
Android studio suggested another update of the gradle plugin and... it finally works!
I'll update the GIT tonight.
Title: Re: Android - errors loading a project
Post by: MrPlow on 2023-Apr-17
Excellent - assume it wont force update my existing android projects?
and the new Android format will fire on a new clean project only?

Title: Re: Android - errors loading a project
Post by: MrPlow on 2023-Apr-17
Did you upload your aab to Google as well?
Title: Re: Android - errors loading a project
Post by: Kitty Hello on 2023-Apr-21
No, just on git currently. But it should be quite stable. I just swa, there's a new Android Studio upgrade, again. Let's hope for the best.
Title: Re: Android - errors loading a project
Post by: MrPlow on 2023-Sep-09
Gernot,
if needed I could run the odd aab or apk file for you on my Browserstacks account... manually runs / tests from Android 8 to 14
I since found other interesting requirements to get my aab packages to run correctly "extract native libs"  etc.