Giter Site home page Giter Site logo

iOS issues about gdx-liftoff HOT 13 OPEN

libgdx avatar libgdx commented on May 9, 2024
iOS issues

from gdx-liftoff.

Comments (13)

JojoIce avatar JojoIce commented on May 9, 2024 2

I haven't had the time to test this, but just wanted to let you know that THIS version of gdx-liftoff-1.9.11.3-SNAPSHOT.jar works fine on osx! (As opposed to the one with same name in other ticket).

If I recall correctly, the gdx-setup way of handling icons was already outdated, and created issues with certain new Apple hardware. This is a bit of a blur, and I might confuse it with the splash screens, but that also needs updating. Maybe if you send me the biggest version of the icon that you have, then I can create a more modern version.

To really make this a sweet setup tool, one should be able to provide an image to liftoff, that then would create the correct icons and splashscreen for both iOS and Android and maybe even PC.

from gdx-liftoff.

tommyettinger avatar tommyettinger commented on May 9, 2024

Thanks so much! This really helps a lot. I guess I'll try to fix this using the steps you gave, and post a beta release here.

from gdx-liftoff.

tommyettinger avatar tommyettinger commented on May 9, 2024

OK, sorry this took so long; I got stuck trying to figure out what to do with the iconset, so I just copied what gdx-setup does. The Info.plist is also now copied, and the robovm.properties shouldn't generate with any hyphens or letters now. Here's the latest "beta-ish" jar in a zip:
gdx-liftoff-1.9.11.3-SNAPSHOT.jar.zip . I think it should work better; I don't know if it's all the way to where it should be, yet.

from gdx-liftoff.

payne911 avatar payne911 commented on May 9, 2024

To really make this a sweet setup tool, one should be able to provide an image to liftoff, that then would create the correct icons and splashscreen for both iOS and Android and maybe even PC.

Oh, interesting idea.

from gdx-liftoff.

tommyettinger avatar tommyettinger commented on May 9, 2024

Yeah, icons would be good. The only change between 1.9.11.3-SNAPSHOT versions is a switch to libGDX 1.9.12-SNAPSHOT, which updates LWJGL3, and that breaks something. I think I need to post an issue on the libGDX repo; something is definitely broken on MacOS.

from gdx-liftoff.

tommyettinger avatar tommyettinger commented on May 9, 2024

Oh, and as for the logo, is Adobe Illustrator's AI format OK? I tried to export as .svg but a lot of the image got messed up. There's 3 .ai files I used here:
liftoff-ai.zip
You probably don't need the logo for liftoff, and the libGDX branding info, like the logo, is available here.

from gdx-liftoff.

JojoIce avatar JojoIce commented on May 9, 2024

It just depends on what icons you want liftoff to produce. Realistically they will all be replaced anyway with the real game icons later, so these will just be placeholders. Ideally the image then provided by the user and scaled by liftoff. I have some old messy unmaintained hack lib that does that and a whole lot of other things, that I can share, but realistically it might be easier to just to write new code to read, rescale and write in new code, to keep liftoff clean.

I will basically just mash it through something like this: https://appicon.co/
So an image (png) of 1024x1024 is good to start with. I can wrangle the ai into 1024x1024. If you want to just start with a template with liftoff image.

Then there is the LaunchScreen.storyboard (splash-screen) which is a way to scale and stretch images according to the device resolution. Then only one image is needed for any formfactor. Maybe the same 1024x1024 can be OK there as well. I think that is the latest apple way of doing it. I think it can be possible to create a template where the developer just have to replace one image and then it would be a nice splash-screen. As I said, it is a bit of a blur, but I wrestled with it quite a bit a year ago.

Basically it will be like this:
ios/data $ ls -R
Base.lproj Media.xcassets logo.png

./Base.lproj:
LaunchScreen.storyboard

./Media.xcassets:
AppIcon.appiconset Contents.json back.imageset

./Media.xcassets/AppIcon.appiconset:
100.png 114.png 144.png 167.png 20.png 40.png 57.png 60.png 76.png 87.png 1024.png 120.png 152.png 180.png 29.png 50.png 58.png 72.png 80.png Contents.json

./Media.xcassets/back.imageset:
Contents.json back.png

Stuff in bold would then be nice to generate from a user defined image.

from gdx-liftoff.

tommyettinger avatar tommyettinger commented on May 9, 2024

Yeah, hm... Would it be a good idea to just link to appicon.co and say where to put the icons? The icon requirements seem to change often, and I doubt liftoff can keep up with Apple's whims; a dedicated site like appicon.co seems more capable there. I think they also may handle scaling an input image that isn't already the right size. Right now I'm using the libGDX logo from the libGDX repo, which I think has all the needed PNGs.

from gdx-liftoff.

JojoIce avatar JojoIce commented on May 9, 2024

So still in latest version of liftoff you get
ERROR ITMS-4236: "Invalid value '0.0.1-SNAPSHOT' for bundle_short_version_string" at SoftwareAssets
If you create an iOS version and upload to Apple. Simply changing the version to 0.0.1 will fix it.
Then the question is if you want to change the default version to be 0.0.1 just for iOS developers. It is easily changed in the liftoff gui, but can be confusing to a new user since the message from apple isn't super-clear and you will probably get it wrong at least the first time. Most are moving away from having "snapshot" versions anyway, so that would be my vote.

Regarding icons. I don't think this type of icons/media will be outdated anytime soon for iOS, and it could even be used for android and PC as well (template image to different icons and splashscreens per platform). That is a manual step you always will end up having to do otherwise, but it will add more complexity and code to liftoff naturally. Link in doc will otherwise be good.

from gdx-liftoff.

tommyettinger avatar tommyettinger commented on May 9, 2024

I'm wondering if I can strip out -SNAPSHOT just for the iOS version, or maybe remove anything that isn't a digit or .. I guess it's fine to default to 0.0.1 and remove the -SNAPSHOT for a default project, because that suffix is mostly used for libraries anyway.

from gdx-liftoff.

tommyettinger avatar tommyettinger commented on May 9, 2024

OK, 0.0.1 is now the default version in new projects, and the README.md has been updated to link to appicon.so and list the locations of icons that might need changing. I'll leave this open until someone tests and finds no iOS issues remaining. I don't have too much hope that I've gotten everything, but I hope this is at least usable.

from gdx-liftoff.

JojoIce avatar JojoIce commented on May 9, 2024

Not sure if I should awaken this thread, but I saw it was open and I found a related Reddit post (regarding icons):

https://www.reddit.com/r/libgdx/comments/1bilggo/warning_google_play_console_suspened_my_game/

A bit related to comment on Sep 22, 2020 #28 (comment)

Someone got a game suspended because he used the libGdx icon and that had probably already been used by some other game and Google interpreted that as plagiarism and blocked the app and then also the name of the game.

I still think that it would be a very nice thing to have icons and splash screens generated by liftoff from a provided image. By now it is more complex since Android has this layer thing going on for the icon, but... good challenge?

Anyway, I read above that the readme should contain info regarding icons, and I do not see that. Maybe it has been removed since the comment above or I looked in the wrong place.

I am probably guilty of already submitting a (not published) app when I was testing out the iOS build. I took an unaltered project and sent it to both Google and Apple just to verify if Liftoff created functional projects. That could mean that anyone sending in a game without changing the icons might have to go through what the poor chap in reddit had to, including renaming the game which can be painful.

I see now that @tommyettinger called out for verification that things worked for iOS and well... I guess they did... until now sort of... 😄 Sorry.

from gdx-liftoff.

tommyettinger avatar tommyettinger commented on May 9, 2024

Most info got moved from README.md to GUIDE.md ; there's also a Troubleshooting.md file where this might belong. Being able to take an image in the setup would be nice, especially if it could be automatically resized and its format adapted for the different platforms. A likely problem there is that most users won't start out with an icon for their app at project creation time. It doesn't seem that difficult to generate a moderately eye-pleasing icon randomly per-project, based on hashes of the initially given package and project name. This would ensure icons don't overlap if you forget to change them, or submit some version before you have an icon.

(I actually already started work on generating random icons using OpenMoji emoji, it might not be bad at all.)

from gdx-liftoff.

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.