Code Monkey home page Code Monkey logo

Comments (25)

marchbold avatar marchbold commented on June 5, 2024 2

Please set the minimum sdk version to 24. Our latest updates require this minimum version now.

<uses-sdk android:minSdkVersion="24" android:targetSdkVersion="34" />

from adobe-runtime-support.

ajwfrost avatar ajwfrost commented on June 5, 2024 1

Hi @cleverbeapps

Thanks for all the details and logs .. the error isn't specifically about that "SDK XML version" but it does imply some incompatibilities between all the various Android/Gradle/Java settings that we have going on here...

The actual error:

ERROR:D8: com.android.tools.r8.kotlin.H
Execution failed for task ':app:desugarDebugFileDependencies'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.DexFileDependenciesTask$DexFileDependenciesWorkerAction
   > Error while dexing.

Although that doesn't really help!

The environment then:

Java version: 11
Gradle version: 7.5
Android Gradle plug-in version: 7.4.0
Android build tools version: 35.0.0.rc3
Android SDK version: 34
Android platform tools version: 35.0.1
macOS - presumably a recent version

We'll try to replicate this and see whether we can reproduce it..
In the short term, in the config file you can try setting KeepAndroidStudioOutput to true and then opening the resulting "AndroidStudioProject" folder, and try building from there..?

thanks

from adobe-runtime-support.

ajwfrost avatar ajwfrost commented on June 5, 2024 1

Hi @cleverbeapps -> just to confirm, we're not seeing this problem when we try a simple test app with the environment as described .. I'm wondering if it's related to the use of ANEs or custom resources. Are you able to create any simple/smaller test case that exhibits the problem whilst not having any private/confidential stuff in it, that you could then share?

thanks

from adobe-runtime-support.

nboy1 avatar nboy1 commented on June 5, 2024 1

@cleverbeapps no i'm using only a Admob ANE that i've created.
i hope you get a solution with InAppBilling ANE, i've tried to find the permissions and attributes that InAppBilling ANE use but i couldn't find it, i think it's not open source ANE anyway, mean i will not be able to see source code,
i hope the owners of it find a solution soon for you.

from adobe-runtime-support.

Tachi6 avatar Tachi6 commented on June 5, 2024 1

For me the issue was after updating Android Studio to JellyFish 2023.3.1.
I use the emulator with a final stable API 34, not with api 35 rc.
I deleted from visual studio all rc Android SDK build-Tools 35 and solved the issue.

from adobe-runtime-support.

marchbold avatar marchbold commented on June 5, 2024 1

Ah that's brilliant news, I might roll back our airpackage then and remove the min sdk v 24 requirement.

from adobe-runtime-support.

cleverbeapps avatar cleverbeapps commented on June 5, 2024

Having the same issue, but this does not help.

from adobe-runtime-support.

nboy1 avatar nboy1 commented on June 5, 2024

you can check XML markups or attributes in your manifest, remove one after one and test until you find the one that causing the issue.

from adobe-runtime-support.

cleverbeapps avatar cleverbeapps commented on June 5, 2024

Hi @ajwfrost !
@nboy1 fix doesn't work for me.
AIR SDK 51.0.1.1

Error:
Screenshot 2024-05-12 at 11 55 59

adt.cfg:
Screenshot 2024-05-12 at 11 59 45

Android Studio SDK and tools:
Screenshot 2024-05-12 at 11 26 11
Screenshot 2024-05-12 at 11 31 27

Descriptor
(as you can see, gradleVersion and androidGradlePluginVersion does not help):
Screenshot 2024-05-12 at 12 03 24

adt.log:
adt.log

from adobe-runtime-support.

nboy1 avatar nboy1 commented on June 5, 2024

@cleverbeapps Hi, I think it doesn't have any relation with the Gradle or Android Studio version. I've spent 3 days debugging. I've updated everything from Android Studio, Gradle, and Apache Ant to Java version. The only thing I didn't update was my Windows OS : ) I think it's a descriptor issue; maybe they deprecated some features in the XML structure or something. The first thing to test is to close Adobe Animate and rename the descriptor from 'descriptor-android.xml' to 'descriptor-android-old.xml'. Then, open your project and export the APK as usual. Adobe Animate will automatically generate a descriptor for you without these declarations and attributes. If it succeeds in generating the APK, then the problem is in the descriptor. After that, we will know where to start.

from adobe-runtime-support.

cleverbeapps avatar cleverbeapps commented on June 5, 2024

@nboy1 there is the same not closed issue ##2608
I've tried to apply the workaround, described there, but with no luck. So, we need to have confirmation from Harman's side, that the issue appears on their side too, since AIR SDK 51.0.1.1 is affected.

from adobe-runtime-support.

cleverbeapps avatar cleverbeapps commented on June 5, 2024

Hi @ajwfrost
Indeed, I removed all ANEs, reinstalled and regenerated apm and descriptor, and everything works now. So, I need to figure out, what exactly ANE causes the problem, there are a lot of them in the project.

from adobe-runtime-support.

cleverbeapps avatar cleverbeapps commented on June 5, 2024

Hi @ajwfrost
The problem was with InAppBilling ANE.
Hi @marchbold
After "apm uninstall com.distriqt.InAppBilling" and regenerating the descriptor - everything works. Could you, please, update InAppBilling with the latest android sdk and tools?
(I've created the related issue in the ANE-InAppBilling repo)

from adobe-runtime-support.

nboy1 avatar nboy1 commented on June 5, 2024

Edited @ajwfrost @cleverbeapps
i don't want to confuse you,
it's building APK now with : 'minifyEnabled true' or 'minifyEnabled false', and with 'manifest android:installLocation="auto" ' in descriptor, i don't know what i've changed.

my Android Gradle plugin version is : 8.4.0
my Gradle version 8.6
my build tools 34.0.0
my compileSdk 34
minSdk 21
targetSdk 34
and everything is working fine now.
thank you.

from adobe-runtime-support.

cleverbeapps avatar cleverbeapps commented on June 5, 2024

Hi @nboy1
Thank you for info. Are you using InAppBilling ANE and APM in your project?

from adobe-runtime-support.

cleverbeapps avatar cleverbeapps commented on June 5, 2024

Thank you @marchbold
Yes, now it worksπŸ™πŸ»

from adobe-runtime-support.

cklim5 avatar cklim5 commented on June 5, 2024

just in case some one updated target sdk to 34 in ANE and got this error "This version only understands SDK XML versions up to 3 but an SDK XML file of version 4 was encountered" while building the APK.
if you are using
<manifestAdditions><![CDATA[ <manifest android:installLocation="auto">

in your manifest just change it to

<manifestAdditions><![CDATA[<manifest>

from adobe-runtime-support.

ajwfrost avatar ajwfrost commented on June 5, 2024

Please set the minimum sdk version to 24

@marchbold thanks for that -> seems really weird that we get an error in the D8 tool based on that, would definitely be good if we could get a better error output...

In the IOS platform extension files we have sdkVersion fields .. do you think it would help to have a minSdkVersion field in the Android platform extension XML files?

from adobe-runtime-support.

marchbold avatar marchbold commented on June 5, 2024

@ajwfrost Generally apm handles this , but we have missed something with the InAppBilling update. I'm looking into it.

I don't think there's a need for a separate item, the manifest addition is fairly simple.

from adobe-runtime-support.

FliplineStudios avatar FliplineStudios commented on June 5, 2024

Please set the minimum sdk version to 24. Our latest updates require this minimum version now.

<uses-sdk android:minSdkVersion="24" android:targetSdkVersion="34" />

Any chance this could be added to the documentation for the distriqt ANEs somewhere if it's not already? I've only seen the requirements mentioned on the main pages for each ANE, and I believe they all show iOS 9+ and Android 19+ at the moment. Would be helpful to know of any requirements like min sdk, and I think the -swf-version requirement changed at some point too.
Especially when updating older apps each year I usually just go through the docs and check what I need to change in my application XML for the latest ANE version, so it'd be helpful to see a callout somewhere for that if possible!

from adobe-runtime-support.

marchbold avatar marchbold commented on June 5, 2024

@ajwfrost Been looking into this a bit more and I actually can't find any of the libs requiring 24 so this may actually be an issue in AIR. I had just assumed one of the dependencies had increased it but normally apm should have found this so I've been digging manually through all the dependencies and can't see anything.

Additionally after the build fails I can open the AndroidStudioProject in Android Studio and the project builds and works on a device.

So I wonder if there's an issue with the gradle version in the AIR SDK?

from adobe-runtime-support.

marchbold avatar marchbold commented on June 5, 2024

Seems the issue is related to one library: play-services-measurement-api:22.0.0. Removing this jar from the com.distriqt.playservices.Base extension removes the issue, but this library is used by several other extensions so removing it is not really a solution.

I have found a similar issue reported here: facebook/react-native#41653 but the resolution was to use minSdkVersion 24.

from adobe-runtime-support.

ajwfrost avatar ajwfrost commented on June 5, 2024

Hi

We've also been looking at some of these sorts of issues as we're also trying to update the build environment used for the initial AIR runtime classes compilation... and there seem to be all sorts of inter-dependencies.

  • build tools that are used will mean there's a dependency on a particular version of the Android Gradle Plug-in
  • which also means there's a dependency on a particular version of Gradle
  • and also a particular version of Java
  • with the 'compileSdk' and 'minSdkVersion' also seemingly affecting things...

Currently ADT will just use the latest available build tools, and it's possible to also adjust the versions of the Android Gradle plug-in and the Gradle version itself, but any dependency on a Java version would then be up to the user too (i.e. we don't yet have intelligence in the tool to warn of any incompatibilities in the environment).

I can open the AndroidStudioProject in Android Studio and the project builds

This is where I would love to know how the project builds! i.e. what it's actually executing, in terms of the gradle process/arguments/environment etc. All the ADT tool does really is create that project and then run the gradle command to build it via the wrapper. I guess the wrapper files themselves are ones that may be a little old now, so we can check if there are updates needed - but there's risks there as things aren't necessarily backwards compatible :-(

Summary -> if you've got a set-up where you can build with an Android Studio project that ADT generates, but not directly from ADT, then we definitely need to investigate and should be able to work out the problem!

from adobe-runtime-support.

marchbold avatar marchbold commented on June 5, 2024

Yeah if you just add that extension (com.distriqt.playservices.Base) to a project with a minimum sdk version < 24, you'll get this issue. i.e. will build from Android Studio but not from adt.

We're just advising people to update to 24 at the moment but seems like there might be something more at work here.

from adobe-runtime-support.

ajwfrost avatar ajwfrost commented on June 5, 2024

Hi

We've just managed to reproduce this both in the ADT command-line build, but also in the generated Android Studio project... although it may be because the Android Studio version is a little old?
But, with a few updates (to the build.gradle files that we generate) and the use of later Gradle/AGP versions, it's now building.
Will check that this all still works properly (!) and then put in the updates needed to conform to later AGP requirements... hopefully this will solve it!

thanks

from adobe-runtime-support.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.