diff --git a/.gitignore b/.gitignore
index 85969fa..1e0b3ca 100644
--- a/.gitignore
+++ b/.gitignore
@@ -88,4 +88,6 @@ sysinfo.txt
# Crashlytics generated file
crashlytics-build.properties
-*.generated.swift
\ No newline at end of file
+*.generated.swift
+
+UnityProject/androidBuild
\ No newline at end of file
diff --git a/NativeAndroidApp/app/build.gradle b/NativeAndroidApp/app/build.gradle
index 9add5c0..8b28292 100755
--- a/NativeAndroidApp/app/build.gradle
+++ b/NativeAndroidApp/app/build.gradle
@@ -8,6 +8,8 @@ dependencies {
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
+ implementation project(':unityLibrary')
+ implementation fileTree(dir: project(':unityLibrary').getProjectDir().toString() + ('\\libs'), include: ['*.jar'])
}
diff --git a/NativeAndroidApp/build.gradle b/NativeAndroidApp/build.gradle
index 9afd241..532f9dc 100755
--- a/NativeAndroidApp/build.gradle
+++ b/NativeAndroidApp/build.gradle
@@ -18,7 +18,9 @@ allprojects {
repositories {
google()
jcenter()
-
+ flatDir {
+ dirs "${project(':unityLibrary').projectDir}/libs"
+ }
}
}
diff --git a/NativeAndroidApp/gradle.properties b/NativeAndroidApp/gradle.properties
index 1d4b005..9dbd8c8 100755
--- a/NativeAndroidApp/gradle.properties
+++ b/NativeAndroidApp/gradle.properties
@@ -16,4 +16,4 @@ org.gradle.jvmargs=-Xmx1536m
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
# org.gradle.parallel=true
-
+unityStreamingAssets=.unity3d
diff --git a/NativeAndroidApp/settings.gradle b/NativeAndroidApp/settings.gradle
index e7b4def..40cf9e7 100755
--- a/NativeAndroidApp/settings.gradle
+++ b/NativeAndroidApp/settings.gradle
@@ -1 +1,3 @@
include ':app'
+include ':unityLibrary'
+project(':unityLibrary').projectDir=new File('..\\UnityProject\\androidBuild\\unityLibrary')
\ No newline at end of file
diff --git a/UnityProject/.vsconfig b/UnityProject/.vsconfig
new file mode 100644
index 0000000..d70cd98
--- /dev/null
+++ b/UnityProject/.vsconfig
@@ -0,0 +1,6 @@
+{
+ "version": "1.0",
+ "components": [
+ "Microsoft.VisualStudio.Workload.ManagedGame"
+ ]
+}
diff --git a/UnityProject/Packages/manifest.json b/UnityProject/Packages/manifest.json
index 614525a..36d294b 100755
--- a/UnityProject/Packages/manifest.json
+++ b/UnityProject/Packages/manifest.json
@@ -1,8 +1,9 @@
{
"dependencies": {
- "com.unity.analytics": "3.3.2",
- "com.unity.collab-proxy": "1.2.16",
- "com.unity.textmeshpro": "2.0.1",
+ "com.unity.analytics": "3.6.11",
+ "com.unity.collab-proxy": "1.9.0",
+ "com.unity.ide.visualstudio": "2.0.11",
+ "com.unity.textmeshpro": "3.0.6",
"com.unity.modules.ai": "1.0.0",
"com.unity.modules.androidjni": "1.0.0",
"com.unity.modules.animation": "1.0.0",
diff --git a/UnityProject/Packages/packages-lock.json b/UnityProject/Packages/packages-lock.json
new file mode 100644
index 0000000..af6b36c
--- /dev/null
+++ b/UnityProject/Packages/packages-lock.json
@@ -0,0 +1,319 @@
+{
+ "dependencies": {
+ "com.unity.analytics": {
+ "version": "3.6.11",
+ "depth": 0,
+ "source": "registry",
+ "dependencies": {
+ "com.unity.ugui": "1.0.0"
+ },
+ "url": "https://packages.unity.cn"
+ },
+ "com.unity.collab-proxy": {
+ "version": "1.9.0",
+ "depth": 0,
+ "source": "registry",
+ "dependencies": {},
+ "url": "https://packages.unity.cn"
+ },
+ "com.unity.ext.nunit": {
+ "version": "1.0.6",
+ "depth": 2,
+ "source": "registry",
+ "dependencies": {},
+ "url": "https://packages.unity.cn"
+ },
+ "com.unity.ide.visualstudio": {
+ "version": "2.0.11",
+ "depth": 0,
+ "source": "registry",
+ "dependencies": {
+ "com.unity.test-framework": "1.1.9"
+ },
+ "url": "https://packages.unity.cn"
+ },
+ "com.unity.test-framework": {
+ "version": "1.1.29",
+ "depth": 1,
+ "source": "registry",
+ "dependencies": {
+ "com.unity.ext.nunit": "1.0.6",
+ "com.unity.modules.imgui": "1.0.0",
+ "com.unity.modules.jsonserialize": "1.0.0"
+ },
+ "url": "https://packages.unity.cn"
+ },
+ "com.unity.textmeshpro": {
+ "version": "3.0.6",
+ "depth": 0,
+ "source": "registry",
+ "dependencies": {
+ "com.unity.ugui": "1.0.0"
+ },
+ "url": "https://packages.unity.cn"
+ },
+ "com.unity.ugui": {
+ "version": "1.0.0",
+ "depth": 1,
+ "source": "builtin",
+ "dependencies": {
+ "com.unity.modules.ui": "1.0.0",
+ "com.unity.modules.imgui": "1.0.0"
+ }
+ },
+ "com.unity.modules.ai": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {}
+ },
+ "com.unity.modules.androidjni": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {}
+ },
+ "com.unity.modules.animation": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {}
+ },
+ "com.unity.modules.assetbundle": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {}
+ },
+ "com.unity.modules.audio": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {}
+ },
+ "com.unity.modules.cloth": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {
+ "com.unity.modules.physics": "1.0.0"
+ }
+ },
+ "com.unity.modules.director": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {
+ "com.unity.modules.audio": "1.0.0",
+ "com.unity.modules.animation": "1.0.0"
+ }
+ },
+ "com.unity.modules.imageconversion": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {}
+ },
+ "com.unity.modules.imgui": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {}
+ },
+ "com.unity.modules.jsonserialize": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {}
+ },
+ "com.unity.modules.particlesystem": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {}
+ },
+ "com.unity.modules.physics": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {}
+ },
+ "com.unity.modules.physics2d": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {}
+ },
+ "com.unity.modules.screencapture": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {
+ "com.unity.modules.imageconversion": "1.0.0"
+ }
+ },
+ "com.unity.modules.subsystems": {
+ "version": "1.0.0",
+ "depth": 1,
+ "source": "builtin",
+ "dependencies": {
+ "com.unity.modules.jsonserialize": "1.0.0"
+ }
+ },
+ "com.unity.modules.terrain": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {}
+ },
+ "com.unity.modules.terrainphysics": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {
+ "com.unity.modules.physics": "1.0.0",
+ "com.unity.modules.terrain": "1.0.0"
+ }
+ },
+ "com.unity.modules.tilemap": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {
+ "com.unity.modules.physics2d": "1.0.0"
+ }
+ },
+ "com.unity.modules.ui": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {}
+ },
+ "com.unity.modules.uielements": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {
+ "com.unity.modules.ui": "1.0.0",
+ "com.unity.modules.imgui": "1.0.0",
+ "com.unity.modules.jsonserialize": "1.0.0",
+ "com.unity.modules.uielementsnative": "1.0.0"
+ }
+ },
+ "com.unity.modules.uielementsnative": {
+ "version": "1.0.0",
+ "depth": 1,
+ "source": "builtin",
+ "dependencies": {
+ "com.unity.modules.ui": "1.0.0",
+ "com.unity.modules.imgui": "1.0.0",
+ "com.unity.modules.jsonserialize": "1.0.0"
+ }
+ },
+ "com.unity.modules.umbra": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {}
+ },
+ "com.unity.modules.unityanalytics": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {
+ "com.unity.modules.unitywebrequest": "1.0.0",
+ "com.unity.modules.jsonserialize": "1.0.0"
+ }
+ },
+ "com.unity.modules.unitywebrequest": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {}
+ },
+ "com.unity.modules.unitywebrequestassetbundle": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {
+ "com.unity.modules.assetbundle": "1.0.0",
+ "com.unity.modules.unitywebrequest": "1.0.0"
+ }
+ },
+ "com.unity.modules.unitywebrequestaudio": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {
+ "com.unity.modules.unitywebrequest": "1.0.0",
+ "com.unity.modules.audio": "1.0.0"
+ }
+ },
+ "com.unity.modules.unitywebrequesttexture": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {
+ "com.unity.modules.unitywebrequest": "1.0.0",
+ "com.unity.modules.imageconversion": "1.0.0"
+ }
+ },
+ "com.unity.modules.unitywebrequestwww": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {
+ "com.unity.modules.unitywebrequest": "1.0.0",
+ "com.unity.modules.unitywebrequestassetbundle": "1.0.0",
+ "com.unity.modules.unitywebrequestaudio": "1.0.0",
+ "com.unity.modules.audio": "1.0.0",
+ "com.unity.modules.assetbundle": "1.0.0",
+ "com.unity.modules.imageconversion": "1.0.0"
+ }
+ },
+ "com.unity.modules.vehicles": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {
+ "com.unity.modules.physics": "1.0.0"
+ }
+ },
+ "com.unity.modules.video": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {
+ "com.unity.modules.audio": "1.0.0",
+ "com.unity.modules.ui": "1.0.0",
+ "com.unity.modules.unitywebrequest": "1.0.0"
+ }
+ },
+ "com.unity.modules.vr": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {
+ "com.unity.modules.jsonserialize": "1.0.0",
+ "com.unity.modules.physics": "1.0.0",
+ "com.unity.modules.xr": "1.0.0"
+ }
+ },
+ "com.unity.modules.wind": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {}
+ },
+ "com.unity.modules.xr": {
+ "version": "1.0.0",
+ "depth": 0,
+ "source": "builtin",
+ "dependencies": {
+ "com.unity.modules.physics": "1.0.0",
+ "com.unity.modules.jsonserialize": "1.0.0",
+ "com.unity.modules.subsystems": "1.0.0"
+ }
+ }
+ }
+}
diff --git a/UnityProject/ProjectSettings/AutoStreamingSettings.asset b/UnityProject/ProjectSettings/AutoStreamingSettings.asset
new file mode 100644
index 0000000..d3e071e
--- /dev/null
+++ b/UnityProject/ProjectSettings/AutoStreamingSettings.asset
@@ -0,0 +1,21 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!1200 &1
+AutoStreamingSettings:
+ m_ObjectHideFlags: 0
+ serializedVersion: 2
+ mSearchMode: 15
+ mCustomSearchFile:
+ mTextureSearchString:
+ mMeshSearchString:
+ mTextures: []
+ mAudios: []
+ mMeshes: []
+ mScenes: []
+ mConfigCCD:
+ useCCD: 0
+ cosKey:
+ projectGuid:
+ bucketUuid:
+ bucketName:
+ badgeName:
diff --git a/UnityProject/ProjectSettings/PackageManagerSettings.asset b/UnityProject/ProjectSettings/PackageManagerSettings.asset
new file mode 100644
index 0000000..bc93024
--- /dev/null
+++ b/UnityProject/ProjectSettings/PackageManagerSettings.asset
@@ -0,0 +1,43 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!114 &1
+MonoBehaviour:
+ m_ObjectHideFlags: 61
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 0}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 13964, guid: 0000000000000000e000000000000000, type: 0}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_EnablePreviewPackages: 0
+ m_EnablePackageDependencies: 0
+ m_AdvancedSettingsExpanded: 1
+ m_ScopedRegistriesSettingsExpanded: 1
+ oneTimeWarningShown: 0
+ m_Registries:
+ - m_Id: main
+ m_Name:
+ m_Url: https://packages.unity.cn
+ m_Scopes: []
+ m_IsDefault: 1
+ m_Capabilities: 7
+ m_UserSelectedRegistryName:
+ m_UserAddingNewScopedRegistry: 0
+ m_RegistryInfoDraft:
+ m_ErrorMessage:
+ m_Original:
+ m_Id:
+ m_Name:
+ m_Url:
+ m_Scopes: []
+ m_IsDefault: 0
+ m_Capabilities: 0
+ m_Modified: 0
+ m_Name:
+ m_Url:
+ m_Scopes:
+ -
+ m_SelectedScopeIndex: 0
diff --git a/UnityProject/ProjectSettings/ProjectVersion.txt b/UnityProject/ProjectSettings/ProjectVersion.txt
index 9b0e50b..bef119a 100755
--- a/UnityProject/ProjectSettings/ProjectVersion.txt
+++ b/UnityProject/ProjectSettings/ProjectVersion.txt
@@ -1,2 +1,2 @@
-m_EditorVersion: 2019.3.0f1
-m_EditorVersionWithRevision: 2019.3.0f1 (ffacea4b84e7)
+m_EditorVersion: 2020.3.19f1c2
+m_EditorVersionWithRevision: 2020.3.19f1c2 (94354a08ed9f)
diff --git a/UnityProject/ProjectSettings/UnityConnectSettings.asset b/UnityProject/ProjectSettings/UnityConnectSettings.asset
index fa0b146..796c52e 100644
--- a/UnityProject/ProjectSettings/UnityConnectSettings.asset
+++ b/UnityProject/ProjectSettings/UnityConnectSettings.asset
@@ -9,6 +9,9 @@ UnityConnectSettings:
m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events
m_EventUrl: https://cdp.cloud.unity3d.com/v1/events
m_ConfigUrl: https://config.uca.cloud.unity3d.com
+ m_DashboardUrl: https://dashboard.unity3d.com
+ m_CNEventUrl: https://cdp.cloud.unity.cn/v1/events
+ m_CNConfigUrl: https://cdp.cloud.unity.cn/config
m_TestInitMode: 0
CrashReportingSettings:
m_EventUrl: https://perf-events.cloud.unity3d.com
diff --git a/UnityProject/ProjectSettings/VersionControlSettings.asset b/UnityProject/ProjectSettings/VersionControlSettings.asset
new file mode 100644
index 0000000..dca2881
--- /dev/null
+++ b/UnityProject/ProjectSettings/VersionControlSettings.asset
@@ -0,0 +1,8 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!890905787 &1
+VersionControlSettings:
+ m_ObjectHideFlags: 0
+ m_Mode: Visible Meta Files
+ m_CollabEditorSettings:
+ inProgressEnabled: 1
diff --git a/UnityProject/UserSettings/EditorUserSettings.asset b/UnityProject/UserSettings/EditorUserSettings.asset
new file mode 100644
index 0000000..d2ce6fb
--- /dev/null
+++ b/UnityProject/UserSettings/EditorUserSettings.asset
@@ -0,0 +1,21 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!162 &1
+EditorUserSettings:
+ m_ObjectHideFlags: 0
+ serializedVersion: 4
+ m_ConfigSettings:
+ vcSharedLogLevel:
+ value: 0d5e400f0650
+ flags: 0
+ m_VCAutomaticAdd: 1
+ m_VCDebugCom: 0
+ m_VCDebugCmd: 0
+ m_VCDebugOut: 0
+ m_SemanticMergeMode: 2
+ m_VCShowFailedCheckout: 1
+ m_VCOverwriteFailedCheckoutAssets: 1
+ m_VCProjectOverlayIcons: 1
+ m_VCHierarchyOverlayIcons: 1
+ m_VCOtherOverlayIcons: 1
+ m_VCAllowAsyncUpdate: 1
diff --git a/docs/android.md b/docs/android.md
index cdadfc4..e6be1cb 100755
--- a/docs/android.md
+++ b/docs/android.md
@@ -45,10 +45,23 @@ This document explains how to include Unity as a Library into standard Android a
}
```
+
+> For project exported by Unity 2020+ , you must add `unityStreamingAssets` key to file gradle.properties
+> ```
+> unityStreamingAssets=.unity3d
+> ```
+
- Click Sync Now to do a project sync since Gradle files have been modified
- If everything succeeds, you should see unityLibrary module added in Android view
+
+> If have 'NDK is not installed' error, you must specify NDK version
+> - Open build.gradle(Project: NativeAndroidApp:unityLibrary) file
+> - Add the following in android{ block }
+> ```
+> ndkVersion "xx.x.xxxx"
+> ```
## Project is ready
Everything is ready to build, run and debug: