mirror of https://github.com/OpenRCT2/OpenRCT2.git
Merge pull request #20894 from janisozaur/android-fix-0.4.6
Fix Android startup code
This commit is contained in:
commit
3fb29b327c
|
@ -10,6 +10,7 @@
|
|||
- Fix: [#18199] Dots in the game save's name no longer get truncated.
|
||||
- Fix: [#19722] “Forbid tree removal” restriction doesn't forbid removal of large scenery tree items.
|
||||
- Fix: [#20356] Cannot set tertiary colour on small scenery.
|
||||
- Fix: [#20679] Android: game crashes at launch.
|
||||
- Fix: [#20737] Spent money in player window underflows when getting refunds.
|
||||
- Fix: [#20778] [Plugin] Incorrect target api when executing custom actions.
|
||||
- Fix: [#20807] Tertiary colour not copied with small scenery.
|
||||
|
|
|
@ -18,3 +18,4 @@
|
|||
# org.gradle.parallel=true
|
||||
android.enableJetifier=true
|
||||
android.useAndroidX=true
|
||||
org.gradle.jvmargs=-Xmx4096m
|
||||
|
|
|
@ -27,7 +27,9 @@ AndroidClassLoader::~AndroidClassLoader()
|
|||
jobject AndroidClassLoader::_classLoader;
|
||||
jmethodID AndroidClassLoader::_findClassMethod;
|
||||
|
||||
static std::shared_ptr<AndroidClassLoader> acl = std::make_shared<AndroidClassLoader>();
|
||||
// Initialized in JNI_OnLoad. Cannot be initialized here as JVM is not
|
||||
// available until after JNI_OnLoad is called.
|
||||
static std::shared_ptr<AndroidClassLoader> acl;
|
||||
|
||||
namespace Platform
|
||||
{
|
||||
|
@ -181,6 +183,19 @@ namespace Platform
|
|||
}
|
||||
} // namespace Platform
|
||||
|
||||
JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM* pjvm, void* reserved)
|
||||
{
|
||||
// Due to an issue where JNI_OnLoad could be called multiple times, we need
|
||||
// to make sure it is only initialized once.
|
||||
// https://issuetracker.google.com/issues/220523932
|
||||
// Otherwise JVM complains about jobject-s having incorrect serial numbers.
|
||||
if (!acl)
|
||||
{
|
||||
acl = std::make_shared<AndroidClassLoader>();
|
||||
}
|
||||
return JNI_VERSION_1_6;
|
||||
}
|
||||
|
||||
AndroidClassLoader::AndroidClassLoader()
|
||||
{
|
||||
LOG_INFO("Obtaining JNI class loader");
|
||||
|
|
Loading…
Reference in New Issue