Qt 5.15.16 with Android API 34 and AGP 8.1.1: QtLoader.java:54: error: package org.kde.necessitas.ministro does not exist
-
Hey,
We're trying to update our Android app to use API 34 (to comply with Google Play). Simply updating to API 34 works fine, but we get warnings telling us to upgrade the Android Gradle Plugin to support API 34, and when we do, building our Android app yields the following errors in the task compileReleaseJavaWithJavac:
QtLoader.java:54: error: package org.kde.necessitas.ministro does not exist
QtLoader.java:300: error: cannot find symbol private IMinistro m_service = null;and a dozen other Ministro related errors.
The weird thing is that if we go to Qt/5.15.16/android/src/android/java/src/org/kde/necessitas, we do have the IMinistroCallback.aidl and IMinistro.aidl files, and they seem to have the right package name. It's like those files don't get included?
Nothing changed in our workspace except the Android API, AGP and Gradle build. Everything else is the same.
Any ideas?
-
Hello @Nihilish .
Same issue here. We just upgraded to API 34 (GooglePlay latest requirement), and Ministro errors started popping in our build. Did you manage to find the issue? I can see that Qt6 (Qt/6.x.x/android/src/android/java/src) doesn't include Ministro at all.
Regards.
-
Hi again @Nihilish .
I explored our older build with AGP 7.4.2 and build-tools 30.0.3 and I saw the "aidl" command was being invoked properly for the Ministro files. So, in order to meet this GooglePlay deadline for August, I copied the auto-generated java files (IMinistro.java and IMinistroCallback.java) into our project under the proper folder (org/kde/necessitas/ministro) and managed to build.
I will try to understand later on why the build-tools 34.0.0 are not invoking the aidl files.
I hope this helps.
Regards.