Coder Social home page Coder Social logo

Comments (8)

ZacSweers avatar ZacSweers commented on June 27, 2024

Here’s an example of how this would look in action, from another gradle plugin we use in our project.

from gradle-play-publisher.

ZacSweers avatar ZacSweers commented on June 27, 2024

Actually, after talking with that example library's developer a bit, he came up with an easier solution that might work here as well. Instead of getting the APK file upfront in apply(), he added an ApplicationVariant field to the upload task instead and sets the variant on that field instead. Then in the upload task (which runs almost last), it has the variant object and only then retrieves the APK file, which would have the updated name.

Here's the small commit where he implemented this. It's a fairly similar structure to this project as far as the configuration being in an apply method and the upload being a separate task.

What do you think?

from gradle-play-publisher.

bhurling avatar bhurling commented on June 27, 2024

Looks very interesting. I have already been looking for a way to honor the custom APK names. The lazy approach looks very promising. Shouldn't be too hard to implement.

from gradle-play-publisher.

ZacSweers avatar ZacSweers commented on June 27, 2024

Cool, please let me know how it goes or if you want me to take a shot at it :)

from gradle-play-publisher.

ChristianKatzmann avatar ChristianKatzmann commented on June 27, 2024

@bhurling Is the branch lazy_apk_name ready for review? Should we open a PR for this?

from gradle-play-publisher.

ZacSweers avatar ZacSweers commented on June 27, 2024

I took a peak and left a comment with a couple suggested ways to avoid the
deprecation issue mentioned in the last commit on that branch, just
mentioning in case that's the only thing it's waiting on :)

On Mon, Dec 15, 2014, 2:24 AM Christian Becker [email protected]
wrote:

@bhurling https://github.com/bhurling Is the branch lazy_apk_name ready
for review? Should we open a PR for this?


Reply to this email directly or view it on GitHub
#28 (comment)
.

from gradle-play-publisher.

bhurling avatar bhurling commented on June 27, 2024

I slightly changed the part where we find the apk file output:

def apkOutput = variant.outputs.find { variantOutput -> variantOutput instanceof ApkVariantOutput }

Just in case someone does not use the .apk extension in his custom filename. Also I dropped the part that checks for the zipAlign task. That part is already checked during the plugin setup.

What do you think?

from gradle-play-publisher.

ZacSweers avatar ZacSweers commented on June 27, 2024

Didn't even think of that. If it works then I say go for it!

On Mon, Dec 15, 2014, 2:58 AM Björn Hurling [email protected]
wrote:

I slightly changed the part where we find the apk file output:

def apkOutput = variant.outputs.find { variantOutput -> variantOutput instanceof ApkVariantOutput }

Just in case someone does not use the .apk extension in his custom
filename. Also I dropped the part that checks for the zipAlign task. That
part is already checked during the plugin setup.

What do you think?


Reply to this email directly or view it on GitHub
#28 (comment)
.

from gradle-play-publisher.

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.