FMOD error! (28) from FMOD::System->init only on the store distributed build

Hello,

So we’ve needed to update some really old games because of some store compliance issues with Google. We have a couple of games using FMOD and they all worked ok after updating the library and code except one.

This one is the only one using App Bundle distribution. When debugging locally FMOD starts fine and sound is ok. However the version I get from the beta channel on store fails init with 28. I am currently making a build with logging and Debug_Initialize and pushing it to the store but I wondered if anyone else ran into this.

The code is the same across our games too so it seems to be packaging issue. App Bundle and Google making the packages looks to have an impact on this. The issue is the same across multiple Android devices and versions.

and here’s the awaited extra info from the log:

08-26 13:20:42.804 10083 14951 I fmod    : FMOD_OS_Init                             : Detected CPU family: 4, features: 0x7F, cores: 8.
08-26 13:20:42.804 10083 14951 E fmod    : FMOD_JNI_GetEnv                          : JNI_OnLoad has not run, should have occurred during System.LoadLibrary.
08-26 13:20:42.804 10083 14951 D REVOGAME: FMOD error! (28) An error occurred that wasn't supposed to.  Contact support.

I’m adding a

System.loadLibrary(“fmod”);

call and see if that fixes but the odd thing is I have no such call in the other projects

looks like this was it! AAB delivered build has sound now!

08-26 13:32:15.530 17290 18293 I fmod    : FMOD_OS_Init                             : Detected CPU family: 4, features: 0x7F, cores: 8.
08-26 13:32:15.530 17290 18293 I fmod    : SystemI::setOutputInternal               : Setting output to 'FMOD AAudio Output'
08-26 13:32:15.778 17290 18293 I fmod    : FMOD::supportsLowLatency                 : Low latency = true, Pro Audio = true, Bluetooth On = false, Acceptable Block Size = true (192)
08-26 13:32:16.014 17290 18293 I fmod    : Thread::initThread                       : Init FMOD stream thread. Affinity: 0x4000000000000003, Priority: 0xFFFF7FFB, Stack Size: 98304, Semaphore: No, Sleep Time: 10, Looping: Yes.
08-26 13:32:16.036 17290 18293 I fmod    : Thread::initThread                       : Init FMOD mixer thread. Affinity: 0x4000000000000001, Priority: 0xFFFF7FFA, Stack Size: 81920, Semaphore: Yes, Sleep Time: 0, Looping: Yes.
0

I’m not holding my breath, just waiting on confirmation from another device and then re-uploading everything with normal non-logging build. If everything is ok I’ll make a reply just with the code line and mark it solution.

class GameActivity .... {
static{
    System.loadLibrary("fmod");
  }
....
}

What causes the different behavior between AAB store distributed code and debug is still a mystery for me but that line of code fixed the issue.

1 Like