Search Unity

Question Google Play problems when re-signing a large OBB-file on Google's side

Discussion in 'Android' started by Dreamtale, Jun 25, 2019.

  1. Dreamtale

    Dreamtale

    Joined:
    Nov 13, 2015
    Posts:
    68
    Okay, so I've finally fixed it. At least for now...

    The problem was something on my side (not with Unity). I've tried 3 different Google accounts to upload my game to Google Play, some proxy, different browsers, different devices and to no avail. Finally I've asked a friend to upload it for me. And other people (2 people) was able to upload my builds and they actually worked. Though finally I've managed to do it myself uploading from Macbook. It's a mystery nevertheless...
     
    ODINKONG likes this.
  2. ODINKONG

    ODINKONG

    Joined:
    Nov 4, 2014
    Posts:
    112
    Wow that is a crazy issue, but I'm glad to hear it! Good luck my friend.
     
    Dreamtale likes this.
  3. Ukounu

    Ukounu

    Joined:
    Nov 2, 2019
    Posts:
    208
    I encountered this issue today. The story is almost exactly the same as that of OP. I had my game on Google Play for over a year. Then I make a small update and release it to production without using alpha/beta testing, because I have been making small updates like that all the time, what could go wrong?

    An apk + obb exported from Unity 2018 works perfectly fine when tested on device (before uploading to Google Play).

    Then I upload it to Google Play, wait until update goes live, install on my device. And everything is broken. The game starts, but most textures are pink, and most 3D models are missing. Like the game can't load a lot of required resources. If I manually replace obb file on device downloaded from Google Play with a copy of the same file from my computer, the game works fine again.

    This seems to be a clear indication that Google Play somehow corrupts obb file during processing or during installation.

    Somehow reading this thread didn't immediately reassure me that I can find a quick solution. @_@
     
  4. Ukounu

    Ukounu

    Joined:
    Nov 2, 2019
    Posts:
    208
    More on this issue: I'm not 100% sure as yet, but I think this has something to do with differences on how Windows and macOS handle file permissions/attributes.

    At some point in the past I encountered a problem when a macOS app compiled in Unity on Windows and then copied to macOS became broken (couldn't be launched on macOS). That's why, when Dreamtale mentioned (in the post above) that he solved the issue by uploading to Google Play from Macbook (instead of a Windows PC, I suppose), I got a suspicion that this could be a similar issue.

    Due to how my work is organized, I develop mostly on a Windows PC, but work with websites and file uploads/downloads using Mac Mini. My obb file that became broken was uploaded to Google Play from macOS (but compiled on Windows machine - and then transferred to Mac Mini over local network). I think this is an unusual workflow, and that explains why out of thousands of developers uploading files to Google Play only me and Dreamtale encountered this bizarre problem. He probably has a similar setup with two development PCs and transfers files between them.

    Either way, I did a test right now and uploaded the same apk+obb to Google Play internal test track first from macOS, and then from Windows. The first build became corrupted when installed from Google Play on Android phone, but the second one worked fine.

    The most bizarre thing is, that the same obb files work fine if installed on device without uploading them to Google Play (including files that were transferred between Windows and macOS - which supposedly corrupts them). I spent a lot of time moving files back and forth from one computer to another, and then to phone, but couldn't reproduce the bug without uploading to Google Play. Also, despite obb file becoming completely broken, Google Play doesn't throw any error messages while processing it. On top of all that, this isn't the first time I upload from macOS to Google Play files created in Windows. But somehow until yesterday this wasn't an issue. A lot of weird things and circumstances had to come together for this bug to manifest itself, I suppose.

    Long story short, I think this bug happens due to transferring an obb file between Windows and macOS, combined with uploading that file to Google Play. Transferring or uploading alone don't reproduce it, only a combination of these two actions.
     
    Last edited: Nov 6, 2019
  5. Dreamtale

    Dreamtale

    Joined:
    Nov 13, 2015
    Posts:
    68
    Hello.
    No, in fact I was working all the time on Windows. I've tried uploading from MacOS just out of desperation, when nothing else worked.

    My issue got fixed by itself somehow. Time passed and I can now upload my builds fine from Windows, as it was all the time before. I got a reply from Google (eventually, after about a couple of months), requesting additional information, but the bug was already fixed...

    Either way the workaround is: trying to upload a build from a different OS.
     
    Last edited: Nov 6, 2019
  6. Ukounu

    Ukounu

    Joined:
    Nov 2, 2019
    Posts:
    208
    Well, this makes the whole issue yet more inexplicable.
     
  7. berk_can

    berk_can

    Joined:
    Feb 8, 2016
    Posts:
    15
    I've encountered same issue today, I know I should watch my language but google is S***ty company in these things, they failed at aab IMO they should let people upload apk like before so we can be sure that we are uploading to system what we install to our test device, I am really tired of encountering new issues everyday, I am spending near amount of time to google play compared to making game; about issue, rebuilding and re uploading fixed issue for me
     
  8. MassiveHeadGames

    MassiveHeadGames

    Joined:
    Jun 5, 2021
    Posts:
    24
    Has anyone here gotten larger than 150Mb using the new aab format with split binary to work without assetbundels on Unity 2019.4.29 - 31? I have a game that works perfectly on Android outside of Google Play, but can't get the Console to accept it even though I have split binary. Says it's too big. Not sure what to do. Don't want to break the game up into assetbundels if I can avoid it.

    I read the docs, read the forums, watched YT examples but haven't seen anyone do a simple build and upload demonstration on a project larger than 150M using aab and split binary successfully. I've seen one that demonstrates using some version of Unity 2020 or 2021 and they had to create a boot scene that loaded in all other scenes in an asset bundle then used a local load method. I just can't find a good method that works without assetbundels!
     
    Last edited: Oct 25, 2021
  9. frozenwolfstudio9

    frozenwolfstudio9

    Joined:
    Jun 7, 2023
    Posts:
    15
    any news on this? did anybody manage to get it working?