Search Issue Tracker
Fixed in 2020.1.X
Fixed in 2019.2.X, 2019.3.X
Votes
18
Found in
2019.1.0a12
2019.1.10f1
2019.2
2019.3
Issue ID
1170543
Regression
Yes
[Android][IL2CPP] App crashes on 2019.1.0a12 and up on launch if old IL2CPP files from 2019.1.0a11 and below are backuped
Reproduction steps:
1. Create a New Project in 2019.1.0a11 or below
2. Set the "Platform" to "Android", "Package Name" to "com.Case.Behaviour" and "Scripting Backend" to "IL2CPP"
3. Build the .apk file
4. "adb install" the application to the Android device
5. Completely exit the application after it finishes loading
6. In a cmd window write "adb shell bmgr backupnow com.Case.Behaviour" to create a new Backup of the application
7. Delete the application
8. Open the Project in 2019.1.0a12 or up
9. Build the .apk file
10. "adb install" the application to the Android device
11. Launch the application
Expected Result: App launches properly
Actual Result: App crashes because it's using old IL2CPP files from the last installation, creating an incompatibility
Reproduced with: 2019.3.0a10, 2019.2.0b10, 2019.1.10f1, 2019.1.0f1, 2019.1.0b1, 2019.1.0a14, 2019.1.0a12
Did not reproduce on: 2019.1.0a11, 2019.1.0a10, 2019.1.0a5, 2018.4.5f1, 2017.4.30f1
Note:
Make sure that in the Android devices, which is being used for the testing, the settings for "Backup" and "Automatic Restore" are enabled
Erasing the "Android/data/<bundle_id>" folder after the crash fixes the issue temporarily as Unity seems to recreate valid il2cpp files under this folder. If the app is deleted before a new backup is automatically generated, further installs will still be crashing
Repro Devices:
VLNQA00123, Google Pixel 2 XL (Pixel 2 XL), Android 9, CPU: Snapdragon 835 MSM8998, GPU: Adreno (TM) 540
VLNQA00216, Razer Phone 2 (Phone 2), Android 8.1.0, CPU: Snapdragon 845 SDM845, GPU: Adreno (TM) 630
VLNQA00257, Sony Xperia XZ Premium (G8141), Android 9, CPU: Snapdragon 835 MSM8998, GPU: Adreno (TM) 540
VLNQA00272, Samsung Galaxy S10+ (SM-G975U), Android 9, CPU: Snapdragon 855 SM8150, GPU: Adreno (TM) 640
VLNQA00277, Asus ROG Phone (ASUS_Z01QD), Android 8.1.0, CPU: Snapdragon 845 SDM845, GPU: Adreno (TM) 630
VLNQA00096, Samsung Galaxy S8 (SM-G950F), Android 8.0.0, CPU: Exynos 9 Octa 8895, GPU: Mali-G71
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Asset Bundles retain their previous hash and CRC values when an object within a bundle is changed and rebuilt
- APV Reflection Probe Normalization breaks when SSGI is enabled
- Default Custom Components in project have Library counterparts
- [iOS]"The destination host has an erroneous SSL certificate" error is thrown when using UnityWebRequest to connect to the server with a self-signed certificate
- Freeze/crash on DynamicHeapAllocator::Allocate when opening a specific project
emmanuelvincen88
Dec 17, 2020 09:25
The free apps for Android today are offered a lot on the Mod apk sites today. You can find them anywhere. BHCmod.com is one of them that you can look for
dpidev
Apr 14, 2020 12:06
2020.1.0b5 and issue still persists (like once on three builds). Restarting Unity fixes the problem temporarily.
Ponytech
Sep 19, 2019 12:00
@SJWEESALS
I can confirm upgrading Unity to 2019.2.6 fixed this issue for me.
SJWeesals
Sep 12, 2019 13:06
Although marked as fixed in 2019.2, this error occurs for me on 2019.2.5 (the latest build of 2019.2). The fullBackupContent fix still works.
Saturn1004
Sep 06, 2019 00:04
I guess issues like these are why some people say you should never update Unity on an existing project?
I guess I should have listened.
Regretting not sticking to Unity 2017.
I miss the good old days when Substance actually worked inside of Unity and the app didn't crash on startup for 40% of devices...
Sure I got LWRP, but in the end was it worth it?
TextusGames
Sep 04, 2019 21:20
Community fix.
https://forum.unity.com/threads/unity-2019-x-il2cpp-crash-on-android-8.673972/page-2
TextusGames
Sep 04, 2019 21:19
Here is simple temporary fix from the mebers of community.
[QUOTE="TextusGames, post: 4827980, member: 1228963"]This simple 4 steps solution fixes my problem.
1. if someone interested there to create "res/xml/my_backup_rules.xml" file, your should make it in "Plugins/Android/"
2. Content of custom back up rules file:
[code=CSharp]<?xml version="1.0" encoding="utf-8"?>
<full-backup-content>
<include domain="sharedpref" path="."/>
</full-backup-content>[/code]
3. Android manifest should be copied in "Plugins/Android"
4. You should paste " android:fullBackupContent="[USER=94913]@XML[/USER]/my_backup_rules" " inside <application > tag
Example of Android manifest (you can just use this manifest):
[code=CSharp]<?xml version="1.0" encoding="utf-8"?>
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.unity3d.player"
xmlns:tools="http://schemas.android.com/tools"
android:installLocation="preferExternal">
<supports-screens
android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="true"
android:anyDensity="true"/>
<application
android:theme="@style/UnityThemeSelector"
android:icon="@mipmap/app_icon"
android:label="@string/app_name"
android:fullBackupContent="@xml/my_backup_rules"
>
<activity android:name="com.unity3d.player.UnityPlayerActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<meta-data android:name="unityplayer.UnityActivity" android:value="true" />
</activity>
</application>
</manifest>
[/code]
Those 4 steps fixes back up crush.
In this solution only player preferences will be restored howewer you can include other files in custom back up rules.
Even more simple solution:
You can download archive with 2 files, extract it, copy files in respective folders and problem will go away. ( Copy AndroidManifest into "Plugins/Android/" and copy my_backup_rules into "Plugins/Android/res/xml/" )
Tested in Unity 2019.1.11 and Unity 2019.2.0f I think it will work in any unity version.[/QUOTE]
SJWeesals
Aug 24, 2019 05:20
Turning off automatic backups by adding the following lines to the <application> element in our AndroidManifest seemed to work for us:
android:allowBackup="false" android:fullBackupContent="false"
tools:replace="android:allowBackup"
eladleb4
Aug 22, 2019 11:41
Wow, we didn't know about this issue before releasing an update and now we are getting so many emails from players who's game broke, OMG unity... This is terrible work.
TextusGames
Aug 06, 2019 08:26
Crash happens even if I change app bundle version number. That is bad, I can no longer update my app. (Unity 2019.1.11)