pwa-builder / PWABuilder

The simplest way to create progressive web apps across platforms and devices. Start here. This repo is home to several projects in the PWABuilder family of tools.
https://docs.pwabuilder.com
Other
2.68k stars 282 forks source link

[PWA Builder]: Support for Android SDK 34 #4766

Closed kiajiko closed 3 weeks ago

kiajiko commented 2 months ago

Tell us about your feature idea

Google again changed the API level requirements. App must target Android 14 (API level 34) or higher starting from Aug 31, 2024

Current supported version is 33

bubblewrap does not seem to be updated so far, too.

Do you have an implementation or a solution in mind?

Download source code from pwabuilder.com and compile with new version.

Have you considered any alternatives?

No response

jere-mie commented 2 months ago

Why put a start date of Aug 31, 2024 if they're going to start enforcing it sooner 😭 hopefully this gets fixed soon enough. My guess is it isn't an issue on PWABuilder's side, rather on Bubblewrap's side

jonkerw85 commented 2 months ago

@jere-mie Yes, remarkable, I noticed that too. Maybe the different teams within Google are not aligned. https://developer.android.com/google/play/requirements/target-sdk?authuser=2 image

SheepBroadcast commented 2 months ago

Same here

userofit123 commented 2 months ago

Been having this for a few days also

MrAntix commented 2 months ago

Please use the thumbs up on the original issue, don't "same here" the thumbs up will bring attention better and leave the issue readable down the line - thank you :)

Twey commented 2 months ago

In the meantime you can work around this by changing the targetSdkVersion in the manifest manually. You'll need zip, protoc, bundletool, and a JDK (e.g. OpenJDK) for jarsigner.

maiconcarraro commented 2 months ago

^ There is also another easy workaround if you can use Android Studio, you can select to include Source code while generating the Android package on PWABuilder, so you can open the project and update the compilesdk/targetsdk, and build/sign again.

jgw96 commented 1 month ago

Hello all! Sorry for the delay, I was on holiday for July 4th here in the US. I am working with our team to get Bubblewrap + PWABuilder updated and will post here when things are updated. Both @Twey and @maiconcarraro 's workarounds are great. Using Android Studio is what I would recommend for now if you are blocked.

jgw96 commented 1 month ago

And this is the issue to get Bubblewrap updated https://github.com/GoogleChromeLabs/bubblewrap/issues/860

jonkerw85 commented 1 month ago

@jgw96 and @maiconcarraro

After changing the compile and target SDK in the build.gradle file, some warnings are shown when compiling the project. image

kiajiko commented 1 month ago

@jonkerw85 I was able to update it using Android Studio Koala | 2024.1.1, then installed Gradle version 8.7 in studio, after that updated Gradle plugin to 8.5 version in studio, which supports SDK 34. Then installed SDK 34 in studio. Then changed target sdk, compile sdk to 34 version. Compilation returned only two unimportant warnings. Easily fixed one of them (it was clear what to change, but unfortunately do not remember what was that about), the second one was related to some deprecated function in 9.0 version. Then Generated signed aab/apk in studio without issues. New version of my app passed google validation and update is already available in Google Play Store.

jonkerw85 commented 1 month ago

@kiajiko Thanks for the support. Upgrading the Gradle version indeed resolves the warnings.

joyzhong commented 1 month ago

Just fyi, there's another update needed for PWA's that enable Play Billing. I believe the android-browser-helper billing library version that PWABuilder points to would need to be updated (after the library itself is updated to support Play Billing 7.0), see also https://github.com/GoogleChrome/android-browser-helper/issues/473

murali0101 commented 1 month ago

Hi @jgw96 waiting for your update about [SDK 34]

cactusoft commented 1 month ago

If Google are going to do things like this, it would be useful if PWA Builder included a field where we could override defaults, maybe an optional field that could show json for the defaults which would then let you override them if you want.

Zimasl commented 1 month ago

Hi @jgw96

We are waiting for updates about [SDK 34]

lawtonj404 commented 1 month ago

@jonkerw85 I was able to update it using Android Studio Koala | 2024.1.1, then installed Gradle version 8.7 in studio, after that updated Gradle plugin to 8.5 version in studio, which supports SDK 34. Then installed SDK 34 in studio. Then changed target sdk, compile sdk to 34 version. Compilation returned only two unimportant warnings. Easily fixed one of them (it was clear what to change, but unfortunately do not remember what was that about), the second one was related to some deprecated function in 9.0 version. Then Generated signed aab/apk in studio without issues. New version of my app passed google validation and update is already available in Google Play Store.

Any chance you can do a quick youtube guide on how to do this? I'm new to Android studio and worried about the deadline.

Your help is much appreciated

Zimasl commented 1 month ago

Why it takes so long to solve the problem on PWA Builder with SDK 34 is not a serious approach to users who trust you.

jere-mie commented 1 month ago

@Zimasl pwabuilder is built on top of bubblewrap, and that's where the update needs to be made. It isn't something pwabuilder can immediately fix. Several users have mentioned alternative solutions you can try out in the meantime

maiconcarraro commented 1 month ago

@lawtonj404

Any chance you can do a quick youtube guide on how to do this? I'm new to Android studio and worried about the deadline.

Your help is much appreciated

let me know if you need something different: https://youtu.be/DbarW15E058

Aviv1000 commented 1 month ago

@lawtonj404

Any chance you can do a quick youtube guide on how to do this? I'm new to Android studio and worried about the deadline. Your help is much appreciated

let me know if you need something different: https://youtu.be/DbarW15E058

i get error after click on "upgrade to grandle 8.5 and re-sync":

Could not create task ':app:processDebugResources'.
Cannot use @TaskAction annotation on method IncrementalTask.taskAction$gradle() because interface org.gradle.api.tasks.incremental.IncrementalTaskInputs is not a valid parameter to an action method.

* Try:
> Run with --info or --debug option to get more log output.
> Get more help at https://help.gradle.org.

and i dont see "change grande version ... and re-import project"

what to do?

sebastian-raubach commented 1 month ago

@Aviv1000 I had the same issue. Make sure to update the gradle version as shown in step 8 in the video to 8.5.1. You'll have to edit the file build.gradle (Project: source).

maiconcarraro commented 1 month ago

@Aviv1000 I had the same issue. Make sure to update the gradle version as shown in step 8 in the video to 8.5.1. You'll have to edit the file build.gradle (Project: source).

sorry for missing this, maybe because I already did earlier it skipped a step, happy that you managed to figure out.

Aviv1000 commented 1 month ago

yes its work, but still exists some troubles with google play console, its say:

  1. androidx.fragment:fragment (androidx.fragment:fragment) need be at least version 1.1.0+ insted of 1.0.0
  2. pay library - version 5.2.1 too old, must to be version 6.0.1+

As a web developer I have no idea what all of thats means.

drma-tech commented 1 month ago

isnt better to ask bubblewrap to update the sdk version?

maiconcarraro commented 1 month ago

@Aviv1000 if you have the Android Studio working like in the vídeo you can google these other upgrades like they do for native app

@drma-tech there is an open PR already in their repo for this

AaronLayton commented 1 month ago

It looks like there is a PR already open on Bubblewrap to fix this, it just needs testing https://github.com/GoogleChromeLabs/bubblewrap/issues/860

lawtonj404 commented 1 month ago

@maiconcarraro

Any chance you can do a quick youtube guide on how to do this? I'm new to Android studio and worried about the deadline. Your help is much appreciated

let me know if you need something different: https://youtu.be/DbarW15E058

You are amazing! thank you so much, its uploaded to google and awaiting verification / deployment. I really appreciate you taking the time to help a fellow user.

lawtonj404 commented 1 month ago

@maiconcarraro

Thank you so much, you are amazing, I followed the step by step guide and resolved the two errors easily. My app is now exported and in submission to the Play Store.

HERO!

Aviv1000 commented 1 month ago

@Aviv1000 if you have the Android Studio working like in the vídeo you can google these other upgrades like they do for native app

@drma-tech there is an open PR already in their repo for this

im not sure what exactly i need to modifiy there in the grandle file:

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'androidx.fragment:fragment:1.8.1'
    implementation 'com.google.android.play:billing:6.0.1'
    implementation 'com.google.androidbrowserhelper:locationdelegation:1.1.1'
    implementation 'com.google.androidbrowserhelper:androidbrowserhelper:2.5.0'
}

this should works? billing library can integrate like the old part of 'androidbrowserhelper'?

arladmin commented 1 month ago

With regards to the lack of appropriate fix/alternative solution/support in light of this fiasco:

Isn't the very point of this tool 'PWABuilder' to abstract away, pretty much, all of the underlying technicalities (including nested dependencies), and without having to know anything of/use Native IDEs (Android Studio etc.)?

Putting it bluntly, asking users to resort to manual interventions in native IDEs, by the 'PWABuilder' team (a Microsoft based entity), doesn't really cut it now, does it?

Zimasl commented 1 month ago

@lawtonj404

Any chance you can do a quick youtube guide on how to do this? I'm new to Android studio and worried about the deadline. Your help is much appreciated

let me know if you need something different: https://youtu.be/DbarW15E058

Thank you very much. Everything was done according to your instructions. My app is now exported and in submission to the Play Store.

maiconcarraro commented 1 month ago

With regards to the lack of appropriate fix/alternative solution/support in light of this fiasco:

Isn't the very point of this tool 'PWABuilder' to abstract away, pretty much, all of the underlying technicalities (including nested dependencies), and without having to know anything of/use Native IDEs (Android Studio etc.)?

Putting it bluntly, asking users to resort to manual interventions in native IDEs, by the 'PWABuilder' team (a Microsoft based entity), doesn't really cut it now, does it?

@arladmin you should move your comment to bubblewrapper repo, the point of PWABuilder is still the same, and they are not asking manual interventions as the final solution... only if you are really blocked and need it asap, people are just sharing workarounds until it is fixed, you can do manual interventions if you want to fix before the Google team on bubblewrapper repo.

your comment is the kind of fiasco that ruins opensource communities, if you can't understand how dependencies work you can't blame others for your lacking of knowledge. peace.

jgw96 commented 1 month ago

Hello all! The PR for Bubblewrap, which is the dependency that needed to be updated first, has been merged! We are now one step closer to having this updated in PWABuilder itself. I apologize for those having to use the workaround for now, but I much appreciate the patience as this is not a one-and-done kind of update. We plan to have PWABuilder updated long before the end of August deadline.

iAmKabiru commented 1 month ago

Hello all! The PR for Bubblewrap, which is the dependency that needed to be updated first, has been merged! We are now one step closer to having this updated in PWABuilder itself. I apologize for those having to use the workaround for now, but I much appreciate the patience as this is not a one-and-done kind of update. We plan to have PWABuilder updated long before the end of August deadline.

Hi @jgw96 , What is the update on this? Thank you.

mavramopoulos commented 1 month ago

Hello all! The PR for Bubblewrap, which is the dependency that needed to be updated first, has been merged! We are now one step closer to having this updated in PWABuilder itself. I apologize for those having to use the workaround for now, but I much appreciate the patience as this is not a one-and-done kind of update. We plan to have PWABuilder updated long before the end of August deadline.

Hi @jgw96 , What is the update on this? Thank you.

Hello @iAmKabiru, from what I've seen and read we are now waiting for a new release of Bubblewrap now that the PR has been merged. I haven't found any release schedule on behalf of Bubblewrap.

rickit2 commented 1 month ago

Hello @jgw96 Is there any update on this? MT

jgw96 commented 1 month ago

Hi all!

As you can see in the linked issue on the Bubblewrap repo, we are waiting for them to release the latest version. We are very well aware of the schedule here, as is the Bubblewrap team. Just like everyone here, we would love to already have this update out, but that is simply not possible in a manageable way unfortunately. Please know that I am keeping a close eye on this and will update everyone as soon as the update has happened.

Thanks everyone!

leeobrum commented 1 month ago

Hi, I have the same problem. My application is pwa and I think the person who generates this pac is the PWA Builder itself. Do we have any plans to update? error "App needs to target Android 14 (API level 34) or newer"

CarlinhosArgos commented 1 month ago

Boa tarde! Alguma novidade sobre a versão SDK34 no PWA Builder?

jgw96 commented 1 month ago

@leeobrum this comment https://github.com/pwa-builder/PWABuilder/issues/4766#issuecomment-2245968552 has the current status, thanks!

rohanreddyg commented 1 month ago

Hi all!

As you can see in the linked issue on the Bubblewrap repo, we are waiting for them to release the latest version. We are very well aware of the schedule here, as is the Bubblewrap team. Just like everyone here, we would love to already have this update out, but that is simply not possible in a manageable way unfortunately. Please know that I am keeping a close eye on this and will update everyone as soon as the update has happened.

Thanks everyone!

Can this be added as a note on PWABuilder.com site so that everyone using will be aware of this issue.

lucianodltec commented 1 month ago

+1

johnnstewart commented 4 weeks ago

Hi, I have the same problem. any updates?

catalescu commented 4 weeks ago

BubbleWrap just released a new version with support for sdk 35. https://github.com/GoogleChromeLabs/bubblewrap/releases/tag/v1.22.0

jgw96 commented 4 weeks ago

Hello all! I am finally kicking off work to update our service. We have been waiting on the Bubblewrap team to do a release and as @catalescu put above, they published an updated version. I am starting on this today and hope to have it out asap. The latest would be the end of next week.

jgw96 commented 4 weeks ago

Hello all! I have things working in the PR linked above. It is late today where I am and my team does not deploy on Fridays, so I will do last testing, merge and then publish to production on Monday (the 12th)

michalzaq12 commented 3 weeks ago

@jgw96 Something went wrong

image

maiconcarraro commented 3 weeks ago

@michalzaq12

lilpwa mentioned in discord that was pushed from codespace to get around a Github actions issue, you can confirm the last version is deployed because the new signed key is working + txt file contains same password (workaround for now)

they are probably going to investigate/address the issues related to GH action and other things, but you should be good to generate the app already (worked for me)

KlebersonLeite commented 3 weeks ago

Solved for me. Thank you.