diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/alex_adapter_gromore_mix_5.8.0.7.aar b/Assets/AnyThinkAds/Plugins/Android/China/mediation/alex_adapter_gromore_mix_5.8.0.7.aar
deleted file mode 100644
index 8fe9786..0000000
Binary files a/Assets/AnyThinkAds/Plugins/Android/China/mediation/alex_adapter_gromore_mix_5.8.0.7.aar and /dev/null differ
diff --git a/Assets/AnyThinkAds/Plugins/Android/anythink_bridge.aar b/Assets/AnyThinkAds/Plugins/Android/anythink_bridge.aar
deleted file mode 100644
index b8fdc33..0000000
Binary files a/Assets/AnyThinkAds/Plugins/Android/anythink_bridge.aar and /dev/null differ
diff --git a/Assets/AnyThinkAds/Plugins/iOS/Core.meta b/Assets/AnyThinkAds/Plugins/iOS/Core.meta
deleted file mode 100644
index e374f14..0000000
--- a/Assets/AnyThinkAds/Plugins/iOS/Core.meta
+++ /dev/null
@@ -1,8 +0,0 @@
-fileFormatVersion: 2
-guid: 152120babfc0c47eda2ca1811b8fdba6
-folderAsset: yes
-DefaultImporter:
- externalObjects: {}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/AnyThinkAds/Plugins/iOS/Core/Editor/Dependencies.xml b/Assets/AnyThinkAds/Plugins/iOS/Core/Editor/Dependencies.xml
deleted file mode 100644
index 5fffea0..0000000
--- a/Assets/AnyThinkAds/Plugins/iOS/Core/Editor/Dependencies.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-
-
-
diff --git a/Assets/AnyThinkAds/Plugins/iOS/gdt.meta b/Assets/AnyThinkAds/Plugins/iOS/gdt.meta
deleted file mode 100644
index d37d216..0000000
--- a/Assets/AnyThinkAds/Plugins/iOS/gdt.meta
+++ /dev/null
@@ -1,8 +0,0 @@
-fileFormatVersion: 2
-guid: 67086362fa1eb481ca26ce4fef7fee7d
-folderAsset: yes
-DefaultImporter:
- externalObjects: {}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/AnyThinkAds/Plugins/iOS/gdt/Editor.meta b/Assets/AnyThinkAds/Plugins/iOS/gdt/Editor.meta
deleted file mode 100644
index 33a4119..0000000
--- a/Assets/AnyThinkAds/Plugins/iOS/gdt/Editor.meta
+++ /dev/null
@@ -1,8 +0,0 @@
-fileFormatVersion: 2
-guid: 6e6c11a31d760484e807c56acbfdeae2
-folderAsset: yes
-DefaultImporter:
- externalObjects: {}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/AnyThinkAds/Plugins/iOS/gdt/Editor/Dependencies.xml b/Assets/AnyThinkAds/Plugins/iOS/gdt/Editor/Dependencies.xml
deleted file mode 100644
index d037492..0000000
--- a/Assets/AnyThinkAds/Plugins/iOS/gdt/Editor/Dependencies.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-
-
-
diff --git a/Assets/AnyThinkAds/Plugins/iOS/gdt/Editor/Dependencies.xml.meta b/Assets/AnyThinkAds/Plugins/iOS/gdt/Editor/Dependencies.xml.meta
deleted file mode 100644
index dd6865c..0000000
--- a/Assets/AnyThinkAds/Plugins/iOS/gdt/Editor/Dependencies.xml.meta
+++ /dev/null
@@ -1,7 +0,0 @@
-fileFormatVersion: 2
-guid: de8ece260b5394a738e0fc099519b048
-TextScriptImporter:
- externalObjects: {}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/AnyThinkAds/Plugins/iOS/kuaishou.meta b/Assets/AnyThinkAds/Plugins/iOS/kuaishou.meta
deleted file mode 100644
index 68ccdb4..0000000
--- a/Assets/AnyThinkAds/Plugins/iOS/kuaishou.meta
+++ /dev/null
@@ -1,8 +0,0 @@
-fileFormatVersion: 2
-guid: 775e79f97c0934ae59595995b78d5fa9
-folderAsset: yes
-DefaultImporter:
- externalObjects: {}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/AnyThinkAds/Plugins/iOS/kuaishou/Editor.meta b/Assets/AnyThinkAds/Plugins/iOS/kuaishou/Editor.meta
deleted file mode 100644
index 3fdecd4..0000000
--- a/Assets/AnyThinkAds/Plugins/iOS/kuaishou/Editor.meta
+++ /dev/null
@@ -1,8 +0,0 @@
-fileFormatVersion: 2
-guid: 90aec42e9f3124004a0b4508d571866e
-folderAsset: yes
-DefaultImporter:
- externalObjects: {}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/AnyThinkAds/Plugins/iOS/kuaishou/Editor/Dependencies.xml b/Assets/AnyThinkAds/Plugins/iOS/kuaishou/Editor/Dependencies.xml
deleted file mode 100644
index 87b7ec0..0000000
--- a/Assets/AnyThinkAds/Plugins/iOS/kuaishou/Editor/Dependencies.xml
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
diff --git a/Assets/AnyThinkAds/Plugins/iOS/kuaishou/Editor/Dependencies.xml.meta b/Assets/AnyThinkAds/Plugins/iOS/kuaishou/Editor/Dependencies.xml.meta
deleted file mode 100644
index 4768beb..0000000
--- a/Assets/AnyThinkAds/Plugins/iOS/kuaishou/Editor/Dependencies.xml.meta
+++ /dev/null
@@ -1,7 +0,0 @@
-fileFormatVersion: 2
-guid: 37e9c0252161248f5ab8ba5a90730b82
-TextScriptImporter:
- externalObjects: {}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/AnyThinkAds.meta b/Assets/AnyThinkPlugin/AnyThinkAds.meta
similarity index 77%
rename from Assets/AnyThinkAds.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds.meta
index e2d8c6a..1a5bf05 100644
--- a/Assets/AnyThinkAds.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 0b1601c425ae3b24e9764462dbbe5359
+guid: 6cfab85a96ec246bdb411450b546b791
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkAds/Api.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api.meta
similarity index 77%
rename from Assets/AnyThinkAds/Api.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api.meta
index 594fec5..2affab7 100644
--- a/Assets/AnyThinkAds/Api.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: ae70ff20f73a04e91b4e6bb12d7adc69
+guid: 39b8ca55bc9e749d1ab7d1ea31d40661
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkAds/Api/ATAdEventArgs.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATAdEventArgs.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATAdEventArgs.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATAdEventArgs.cs
diff --git a/Assets/AnyThinkAds/Api/ATAdEventArgs.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATAdEventArgs.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATAdEventArgs.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATAdEventArgs.cs.meta
index 2c2667e..ff920ab 100644
--- a/Assets/AnyThinkAds/Api/ATAdEventArgs.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATAdEventArgs.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 12f339b796c324a02bb7cc6824674f46
+guid: b85e8925fa22644f1803fbdc727149ba
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATBannerAd.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATBannerAd.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATBannerAd.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATBannerAd.cs
diff --git a/Assets/AnyThinkAds/Api/ATBannerAd.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATBannerAd.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATBannerAd.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATBannerAd.cs.meta
index 771440c..03ee534 100644
--- a/Assets/AnyThinkAds/Api/ATBannerAd.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATBannerAd.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: a2bc6da2b903e43a1b38fa69364a3d5b
+guid: 303b96d7e38d241d895947db76a77868
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATBannerAdListener.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATBannerAdListener.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATBannerAdListener.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATBannerAdListener.cs
diff --git a/Assets/AnyThinkAds/Api/ATBannerAdListener.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATBannerAdListener.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATBannerAdListener.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATBannerAdListener.cs.meta
index 708b07c..f7d4229 100644
--- a/Assets/AnyThinkAds/Api/ATBannerAdListener.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATBannerAdListener.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: ba89873589d1a4ee4b9f0bd831e49f3b
+guid: e25052682a99b4f11b9ccda0a98ec1ce
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATCallbackInfo.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATCallbackInfo.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATCallbackInfo.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATCallbackInfo.cs
diff --git a/Assets/AnyThinkAds/Api/ATCallbackInfo.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATCallbackInfo.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATCallbackInfo.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATCallbackInfo.cs.meta
index 4937ece..1772f60 100644
--- a/Assets/AnyThinkAds/Api/ATCallbackInfo.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATCallbackInfo.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 0c6aad9e5b90c4da7bd930d6f32d1904
+guid: ebf4bf9c5f1a54007a31d4a19a30835c
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATConst.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATConst.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATConst.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATConst.cs
diff --git a/Assets/AnyThinkAds/Api/ATConst.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATConst.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATConst.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATConst.cs.meta
index 3e5aec4..1646445 100644
--- a/Assets/AnyThinkAds/Api/ATConst.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATConst.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: ab130cb05ee6548fa9bcc3ce4853fcc3
+guid: fc541fdcbb9254973a14d8aa4f305201
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATDownloadAdListener.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATDownloadAdListener.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATDownloadAdListener.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATDownloadAdListener.cs
diff --git a/Assets/AnyThinkAds/Api/ATDownloadAdListener.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATDownloadAdListener.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATDownloadAdListener.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATDownloadAdListener.cs.meta
index 8cffafd..9055669 100644
--- a/Assets/AnyThinkAds/Api/ATDownloadAdListener.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATDownloadAdListener.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 5fc8038ed89644a509b258232cdb4783
+guid: e06efbc55c798478a941850f6726fdbb
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATDownloadManager.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATDownloadManager.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATDownloadManager.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATDownloadManager.cs
diff --git a/Assets/AnyThinkAds/Api/ATDownloadManager.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATDownloadManager.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATDownloadManager.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATDownloadManager.cs.meta
index 4e8410e..5c22031 100644
--- a/Assets/AnyThinkAds/Api/ATDownloadManager.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATDownloadManager.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 10cd59c46c2a74f7d94432b405a111ab
+guid: 9b7e6ef35d34e47d79856f3e737b5a04
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATInterstitialAd.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATInterstitialAd.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATInterstitialAd.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATInterstitialAd.cs
diff --git a/Assets/AnyThinkAds/Api/ATInterstitialAd.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATInterstitialAd.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATInterstitialAd.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATInterstitialAd.cs.meta
index 28f654f..0a36309 100644
--- a/Assets/AnyThinkAds/Api/ATInterstitialAd.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATInterstitialAd.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 1d0ec14e9cebf477086653c3a9aaf7d1
+guid: 5417f30bdb0e84db696652694de24b55
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATInterstitialAdListener.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATInterstitialAdListener.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATInterstitialAdListener.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATInterstitialAdListener.cs
diff --git a/Assets/AnyThinkAds/Api/ATInterstitialAdListener.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATInterstitialAdListener.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATInterstitialAdListener.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATInterstitialAdListener.cs.meta
index 118b1d2..6ca1a17 100644
--- a/Assets/AnyThinkAds/Api/ATInterstitialAdListener.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATInterstitialAdListener.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 96dd9084d6bfb4d44b84a204d1ee3332
+guid: 1e59697f061674b95b6fc11bf3eb570a
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATInterstitialAutoAd.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATInterstitialAutoAd.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATInterstitialAutoAd.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATInterstitialAutoAd.cs
diff --git a/Assets/AnyThinkAds/Api/ATInterstitialAutoAd.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATInterstitialAutoAd.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATInterstitialAutoAd.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATInterstitialAutoAd.cs.meta
index 5c90d95..998cdae 100644
--- a/Assets/AnyThinkAds/Api/ATInterstitialAutoAd.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATInterstitialAutoAd.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 7022bf2fbbc5849b59c2de39e55415d4
+guid: 6f74e005d6e184ccdbd0582232cfb896
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATNativeAd.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeAd.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATNativeAd.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeAd.cs
diff --git a/Assets/AnyThinkAds/Api/ATNativeAd.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeAd.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATNativeAd.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeAd.cs.meta
index aaf175f..68431dc 100644
--- a/Assets/AnyThinkAds/Api/ATNativeAd.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeAd.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: dae8f0349900a43cc9479b887bca18dd
+guid: 63ff9b48e554f481b84df35718d2082c
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATNativeAdListener.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeAdListener.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATNativeAdListener.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeAdListener.cs
diff --git a/Assets/AnyThinkAds/Api/ATNativeAdListener.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeAdListener.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATNativeAdListener.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeAdListener.cs.meta
index bd4d174..9332418 100644
--- a/Assets/AnyThinkAds/Api/ATNativeAdListener.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeAdListener.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 5df19e9be8bea411e8de2926f39a78b7
+guid: ea594e5e65c2b44d581e5bbf6e46d2df
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATNativeAdView.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeAdView.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATNativeAdView.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeAdView.cs
diff --git a/Assets/AnyThinkAds/Api/ATNativeAdView.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeAdView.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATNativeAdView.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeAdView.cs.meta
index 707177c..be5d9ec 100644
--- a/Assets/AnyThinkAds/Api/ATNativeAdView.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeAdView.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: c44a18df7c6184bfaa35163f571ad9f7
+guid: c7e39d0f92be94036b0c3361002bdb6d
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATNativeBannerAd.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeBannerAd.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATNativeBannerAd.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeBannerAd.cs
diff --git a/Assets/AnyThinkAds/Api/ATNativeBannerAd.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeBannerAd.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATNativeBannerAd.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeBannerAd.cs.meta
index 1ba158e..9a81616 100644
--- a/Assets/AnyThinkAds/Api/ATNativeBannerAd.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeBannerAd.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 08d4d477e25294725acf10a60c0df944
+guid: e02adf55e190948ba8238cbbb8e649d6
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATNativeBannerAdListener.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeBannerAdListener.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATNativeBannerAdListener.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeBannerAdListener.cs
diff --git a/Assets/AnyThinkAds/Api/ATNativeBannerAdListener.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeBannerAdListener.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATNativeBannerAdListener.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeBannerAdListener.cs.meta
index 1b996fc..37dae3a 100644
--- a/Assets/AnyThinkAds/Api/ATNativeBannerAdListener.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeBannerAdListener.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: a959ca9d08c7b4793b9a704f26b9e8ee
+guid: e977ada5558a4440ab4096ec189d66c3
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATNativeConfig.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeConfig.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATNativeConfig.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeConfig.cs
diff --git a/Assets/AnyThinkAds/Api/ATNativeConfig.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeConfig.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATNativeConfig.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeConfig.cs.meta
index f7fa432..c838c48 100644
--- a/Assets/AnyThinkAds/Api/ATNativeConfig.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeConfig.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 91d346d3aa4ea44fe95d0a1bbdddd5ed
+guid: 2ff7b39d30d2f48c7886af12676d5dca
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATNativeItemProperty.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeItemProperty.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATNativeItemProperty.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeItemProperty.cs
diff --git a/Assets/AnyThinkAds/Api/ATNativeItemProperty.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeItemProperty.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATNativeItemProperty.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeItemProperty.cs.meta
index 42409bb..beabbb5 100644
--- a/Assets/AnyThinkAds/Api/ATNativeItemProperty.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATNativeItemProperty.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 59accedf6879f42d2a0eb25c8b9685ff
+guid: 33288477361ec4906b2f2b90af9afe74
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATRect.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATRect.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATRect.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATRect.cs
diff --git a/Assets/AnyThinkAds/Api/ATRect.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATRect.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATRect.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATRect.cs.meta
index e27e7c0..02e6535 100644
--- a/Assets/AnyThinkAds/Api/ATRect.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATRect.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: b8eeae77a201a4945a5831246e4ffe68
+guid: 2f4d9eae1b90142ca8004116a3e4c869
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATRewardedAutoVideo.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATRewardedAutoVideo.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATRewardedAutoVideo.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATRewardedAutoVideo.cs
diff --git a/Assets/AnyThinkAds/Api/ATRewardedAutoVideo.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATRewardedAutoVideo.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATRewardedAutoVideo.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATRewardedAutoVideo.cs.meta
index 43971af..f0676fa 100644
--- a/Assets/AnyThinkAds/Api/ATRewardedAutoVideo.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATRewardedAutoVideo.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 08bbdf64d0b664135b1dca638fcb56cc
+guid: 6d40b4678e713487ab21c87b284165e9
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATRewardedVideo.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATRewardedVideo.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATRewardedVideo.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATRewardedVideo.cs
diff --git a/Assets/AnyThinkAds/Api/ATRewardedVideo.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATRewardedVideo.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATRewardedVideo.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATRewardedVideo.cs.meta
index c6e5723..3fb5782 100644
--- a/Assets/AnyThinkAds/Api/ATRewardedVideo.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATRewardedVideo.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 7b4f1081df8444a7981bd3c10559a908
+guid: 8e666f918e4a54255ae6d45c5ed483c0
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATRewardedVideoListener.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATRewardedVideoListener.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATRewardedVideoListener.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATRewardedVideoListener.cs
diff --git a/Assets/AnyThinkAds/Api/ATRewardedVideoListener.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATRewardedVideoListener.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATRewardedVideoListener.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATRewardedVideoListener.cs.meta
index 91068f2..dee4a67 100644
--- a/Assets/AnyThinkAds/Api/ATRewardedVideoListener.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATRewardedVideoListener.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 7c9a00125c0e049fbb37b4b8be6e6d12
+guid: c2a8b39939a6e4561b49ec08c9648efa
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATSDKAPI.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATSDKAPI.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATSDKAPI.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATSDKAPI.cs
diff --git a/Assets/AnyThinkAds/Api/ATSDKAPI.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATSDKAPI.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATSDKAPI.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATSDKAPI.cs.meta
index 1dc9d78..462cfe7 100644
--- a/Assets/AnyThinkAds/Api/ATSDKAPI.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATSDKAPI.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 8f3e3d1ca97154cfe8734a75b6f15dcd
+guid: 2668d385cd9ef4bc385b0c1487756d84
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATSDKInitListener.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATSDKInitListener.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATSDKInitListener.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATSDKInitListener.cs
diff --git a/Assets/AnyThinkAds/Api/ATSDKInitListener.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATSDKInitListener.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATSDKInitListener.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATSDKInitListener.cs.meta
index 03af64d..00d8131 100644
--- a/Assets/AnyThinkAds/Api/ATSDKInitListener.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATSDKInitListener.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: cf1f418115a244459be8c842af74351d
+guid: 92bd41ae21ada4f13ba4f646fe8d8e87
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATSplashAd.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATSplashAd.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATSplashAd.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATSplashAd.cs
diff --git a/Assets/AnyThinkAds/Api/ATSplashAd.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATSplashAd.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATSplashAd.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATSplashAd.cs.meta
index 732f02c..01a214c 100644
--- a/Assets/AnyThinkAds/Api/ATSplashAd.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATSplashAd.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 1aeba014e6d0a4ba7859676b916bd9dd
+guid: 6599afb4d52b14fa098f43f1d01be850
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Api/ATSplashAdListener.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATSplashAdListener.cs
similarity index 100%
rename from Assets/AnyThinkAds/Api/ATSplashAdListener.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATSplashAdListener.cs
diff --git a/Assets/AnyThinkAds/Api/ATSplashAdListener.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATSplashAdListener.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Api/ATSplashAdListener.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Api/ATSplashAdListener.cs.meta
index 1074269..f88fff1 100644
--- a/Assets/AnyThinkAds/Api/ATSplashAdListener.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Api/ATSplashAdListener.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 4e2ccdf9b6e604a65908815706e9f051
+guid: e99f46e9ff2ba49338673e9655a6b494
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Bridge.meta
similarity index 77%
rename from Assets/AnyThinkAds/Platform/iOS.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Bridge.meta
index a27f1ad..4ba9cbe 100644
--- a/Assets/AnyThinkAds/Platform/iOS.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Bridge.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: da68e624ffa1041e889b8d3eb9187af2
+guid: c9068fed3449f4957a31b2704d38d9c4
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkPlugin/AnyThinkAds/Bridge/anythink_bridge.aar b/Assets/AnyThinkPlugin/AnyThinkAds/Bridge/anythink_bridge.aar
new file mode 100644
index 0000000..89c8c57
Binary files /dev/null and b/Assets/AnyThinkPlugin/AnyThinkAds/Bridge/anythink_bridge.aar differ
diff --git a/Assets/AnyThinkAds/Plugins/Android/anythink_bridge.aar.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Bridge/anythink_bridge.aar.meta
similarity index 93%
rename from Assets/AnyThinkAds/Plugins/Android/anythink_bridge.aar.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Bridge/anythink_bridge.aar.meta
index ae62a9c..8557cae 100644
--- a/Assets/AnyThinkAds/Plugins/Android/anythink_bridge.aar.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Bridge/anythink_bridge.aar.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 8b1aaa2412d7c41c3b370d178d12d92e
+guid: 6b000e45df70e44c683d126c70c6c7c5
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Common.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Common.meta
similarity index 77%
rename from Assets/AnyThinkAds/Common.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Common.meta
index 7947d9f..5f8acc1 100644
--- a/Assets/AnyThinkAds/Common.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Common.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 9ded34532e9f04a199738e82a8f7ca89
+guid: 5e27cbd650c5b4fd280cfda2125e9f1f
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkAds/Common/ATLogger.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Common/ATLogger.cs
similarity index 100%
rename from Assets/AnyThinkAds/Common/ATLogger.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Common/ATLogger.cs
diff --git a/Assets/AnyThinkAds/Common/ATLogger.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Common/ATLogger.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Common/ATLogger.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Common/ATLogger.cs.meta
index dc32f83..54103ea 100644
--- a/Assets/AnyThinkAds/Common/ATLogger.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Common/ATLogger.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 7cc7f1b6c7bd04e3789079e05044fddb
+guid: 4a56939c11661429c8c335f2d2bff40b
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Common/IATBannerAdClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATBannerAdClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Common/IATBannerAdClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Common/IATBannerAdClient.cs
diff --git a/Assets/AnyThinkAds/Common/IATBannerAdClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATBannerAdClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Common/IATBannerAdClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Common/IATBannerAdClient.cs.meta
index d983ae6..ff67915 100644
--- a/Assets/AnyThinkAds/Common/IATBannerAdClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATBannerAdClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: f1746e786eb1d48498da8bf445317ac6
+guid: 14b00b8f6583c413eae808eee303e12e
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Common/IATDownloadClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATDownloadClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Common/IATDownloadClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Common/IATDownloadClient.cs
diff --git a/Assets/AnyThinkAds/Common/IATDownloadClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATDownloadClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Common/IATDownloadClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Common/IATDownloadClient.cs.meta
index d9b570e..9745e00 100644
--- a/Assets/AnyThinkAds/Common/IATDownloadClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATDownloadClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: faac0e5085e80410cb05a83ad609e307
+guid: 9411630d83c58412abdd159e43d90142
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Common/IATInterstitialAdClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATInterstitialAdClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Common/IATInterstitialAdClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Common/IATInterstitialAdClient.cs
diff --git a/Assets/AnyThinkAds/Common/IATInterstitialAdClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATInterstitialAdClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Common/IATInterstitialAdClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Common/IATInterstitialAdClient.cs.meta
index d483f2d..18592bd 100644
--- a/Assets/AnyThinkAds/Common/IATInterstitialAdClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATInterstitialAdClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 1a9a493b6ff364c968f3b331051b4218
+guid: 617b2801ea6ff4304bb9e0ad2e6d0f0f
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Common/IATNativeAdClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATNativeAdClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Common/IATNativeAdClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Common/IATNativeAdClient.cs
diff --git a/Assets/AnyThinkAds/Common/IATNativeAdClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATNativeAdClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Common/IATNativeAdClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Common/IATNativeAdClient.cs.meta
index b168ff2..3086147 100644
--- a/Assets/AnyThinkAds/Common/IATNativeAdClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATNativeAdClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: f255243d0b71f4e5e974404c8c74659f
+guid: 272c430785265455c8a91a9749aea93f
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Common/IATNativeBannerAdClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATNativeBannerAdClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Common/IATNativeBannerAdClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Common/IATNativeBannerAdClient.cs
diff --git a/Assets/AnyThinkAds/Common/IATNativeBannerAdClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATNativeBannerAdClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Common/IATNativeBannerAdClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Common/IATNativeBannerAdClient.cs.meta
index 4209d19..eeb4af9 100644
--- a/Assets/AnyThinkAds/Common/IATNativeBannerAdClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATNativeBannerAdClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 3f931cd1cf2284ec895c9b642fb55003
+guid: 123218759ab054ce0acc3258035c84ee
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Common/IATRewardedVideoAdClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATRewardedVideoAdClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Common/IATRewardedVideoAdClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Common/IATRewardedVideoAdClient.cs
diff --git a/Assets/AnyThinkAds/Common/IATRewardedVideoAdClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATRewardedVideoAdClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Common/IATRewardedVideoAdClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Common/IATRewardedVideoAdClient.cs.meta
index 96e0327..d1a3a11 100644
--- a/Assets/AnyThinkAds/Common/IATRewardedVideoAdClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATRewardedVideoAdClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: dc721c33736c04c45a3d9bca70938761
+guid: d3d80e1d74a35402785ed9c96737d6e1
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Common/IATSDKAPIClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATSDKAPIClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Common/IATSDKAPIClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Common/IATSDKAPIClient.cs
diff --git a/Assets/AnyThinkAds/Common/IATSDKAPIClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATSDKAPIClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Common/IATSDKAPIClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Common/IATSDKAPIClient.cs.meta
index d276b59..d9130f9 100644
--- a/Assets/AnyThinkAds/Common/IATSDKAPIClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATSDKAPIClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 9a96dc1eba48941ed9e076cddbb59167
+guid: f6241adafd0a04ea3932a1031dfa3af3
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Common/IATSplashAdClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATSplashAdClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Common/IATSplashAdClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Common/IATSplashAdClient.cs
diff --git a/Assets/AnyThinkAds/Common/IATSplashAdClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATSplashAdClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Common/IATSplashAdClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Common/IATSplashAdClient.cs.meta
index 8c57448..15e56b1 100644
--- a/Assets/AnyThinkAds/Common/IATSplashAdClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Common/IATSplashAdClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: ceb7b4f4fa4b14b2ebcccba3fde080bf
+guid: 987fa99d67af444b2996aec1b7561846
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform.meta
similarity index 77%
rename from Assets/AnyThinkAds/Platform.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform.meta
index 5e47e15..a598f42 100644
--- a/Assets/AnyThinkAds/Platform.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: bbfb513f68b154b0ebfa36897c6e4401
+guid: 04d37d787c52c483da357d5bc278a207
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkAds/Platform/ATAdsClientFactory.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/ATAdsClientFactory.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/ATAdsClientFactory.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/ATAdsClientFactory.cs
diff --git a/Assets/AnyThinkAds/Platform/ATAdsClientFactory.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/ATAdsClientFactory.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/ATAdsClientFactory.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/ATAdsClientFactory.cs.meta
index 7f4ede0..67318f8 100644
--- a/Assets/AnyThinkAds/Platform/ATAdsClientFactory.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/ATAdsClientFactory.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 1ada6dd9eac1445219ee66b6f0ce27af
+guid: 2a0c5a43af73c4beb81622fa5559fac3
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/Android.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android.meta
similarity index 77%
rename from Assets/AnyThinkAds/Platform/Android.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android.meta
index 9661c03..9fd6de7 100644
--- a/Assets/AnyThinkAds/Platform/Android.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: b0a6ebc6626634f558dc5c05feb59058
+guid: a7596683df39f42b194fb32282ca230c
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkAds/Platform/Android/ATAreaListener.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATAreaListener.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/Android/ATAreaListener.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATAreaListener.cs
diff --git a/Assets/AnyThinkAds/Platform/Android/ATAreaListener.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATAreaListener.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/Android/ATAreaListener.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATAreaListener.cs.meta
index e5aafb1..a9a7279 100644
--- a/Assets/AnyThinkAds/Platform/Android/ATAreaListener.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATAreaListener.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 92072aedc3bed4adba2e62dcd10c4fa1
+guid: fff5148ee5b5148b1b875749d5f2639e
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/Android/ATBannerAdClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATBannerAdClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/Android/ATBannerAdClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATBannerAdClient.cs
diff --git a/Assets/AnyThinkAds/Platform/iOS/ATBannerAdClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATBannerAdClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/iOS/ATBannerAdClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATBannerAdClient.cs.meta
index df7844d..12d33ff 100644
--- a/Assets/AnyThinkAds/Platform/iOS/ATBannerAdClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATBannerAdClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 38675c03b65cd47e3be46e74701ae713
+guid: fca17c67aed8f49a89234a09fe2a7ed4
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/Android/ATDownloadClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATDownloadClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/Android/ATDownloadClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATDownloadClient.cs
diff --git a/Assets/AnyThinkAds/Platform/Android/ATDownloadClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATDownloadClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/Android/ATDownloadClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATDownloadClient.cs.meta
index 5ff9b1a..0c621d3 100644
--- a/Assets/AnyThinkAds/Platform/Android/ATDownloadClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATDownloadClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 5123daaa0aef24cc38feb675ab999e45
+guid: 5a6098e9d114f4f3584530c7a5361c42
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/Android/ATGDPRConsentDismissListener.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATGDPRConsentDismissListener.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/Android/ATGDPRConsentDismissListener.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATGDPRConsentDismissListener.cs
diff --git a/Assets/AnyThinkAds/Platform/Android/ATGDPRConsentDismissListener.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATGDPRConsentDismissListener.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/Android/ATGDPRConsentDismissListener.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATGDPRConsentDismissListener.cs.meta
index 8d8a7ec..e37d478 100644
--- a/Assets/AnyThinkAds/Platform/Android/ATGDPRConsentDismissListener.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATGDPRConsentDismissListener.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 1817e3153be5d4a25bede8f80ec538fa
+guid: 2853fd494219b478ba619568a7691609
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/Android/ATInterstitialAdClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATInterstitialAdClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/Android/ATInterstitialAdClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATInterstitialAdClient.cs
diff --git a/Assets/AnyThinkAds/Platform/iOS/ATInterstitialAdClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATInterstitialAdClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/iOS/ATInterstitialAdClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATInterstitialAdClient.cs.meta
index cf7de35..a4ca960 100644
--- a/Assets/AnyThinkAds/Platform/iOS/ATInterstitialAdClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATInterstitialAdClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: b6f578b8879524ead90547b51cacbabb
+guid: 9247d5c90a80948d0b6259c8b13b7556
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/Android/ATMsgTools.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATMsgTools.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/Android/ATMsgTools.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATMsgTools.cs
diff --git a/Assets/AnyThinkAds/Platform/Android/ATMsgTools.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATMsgTools.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/Android/ATMsgTools.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATMsgTools.cs.meta
index 174bc30..1ba327d 100644
--- a/Assets/AnyThinkAds/Platform/Android/ATMsgTools.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATMsgTools.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: fcf851441fece473ebf4b8fb046ba16f
+guid: f34d69c411401435c839f09004815591
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/Android/ATNativeAdClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATNativeAdClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/Android/ATNativeAdClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATNativeAdClient.cs
diff --git a/Assets/AnyThinkAds/Platform/iOS/ATNativeAdClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATNativeAdClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/iOS/ATNativeAdClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATNativeAdClient.cs.meta
index 4529bf1..d82a626 100644
--- a/Assets/AnyThinkAds/Platform/iOS/ATNativeAdClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATNativeAdClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: fafa0f42a77934ec1aa34943fa9beecb
+guid: 41e3b7583470c40659c82050279f5635
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/Android/ATNativeBannerAdClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATNativeBannerAdClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/Android/ATNativeBannerAdClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATNativeBannerAdClient.cs
diff --git a/Assets/AnyThinkAds/Platform/Android/ATNativeBannerAdClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATNativeBannerAdClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/Android/ATNativeBannerAdClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATNativeBannerAdClient.cs.meta
index d6704de..c06976c 100644
--- a/Assets/AnyThinkAds/Platform/Android/ATNativeBannerAdClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATNativeBannerAdClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 675ff3d3366524e6d8bf441095e94885
+guid: 265f9ebdd83c3480db5c82c4b98b3a6c
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/Android/ATNetTrafficListener.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATNetTrafficListener.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/Android/ATNetTrafficListener.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATNetTrafficListener.cs
diff --git a/Assets/AnyThinkAds/Platform/Android/ATNetTrafficListener.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATNetTrafficListener.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/Android/ATNetTrafficListener.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATNetTrafficListener.cs.meta
index a2d2709..ede60de 100644
--- a/Assets/AnyThinkAds/Platform/Android/ATNetTrafficListener.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATNetTrafficListener.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 66e94a1b9eb0d4f3dbbf0f97857ee4c6
+guid: f25fcf4e04d1f43b287d19ad456699b8
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/Android/ATRewardedVideoAdClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATRewardedVideoAdClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/Android/ATRewardedVideoAdClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATRewardedVideoAdClient.cs
diff --git a/Assets/AnyThinkAds/Platform/Android/ATRewardedVideoAdClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATRewardedVideoAdClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/Android/ATRewardedVideoAdClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATRewardedVideoAdClient.cs.meta
index 293fab2..321e91f 100644
--- a/Assets/AnyThinkAds/Platform/Android/ATRewardedVideoAdClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATRewardedVideoAdClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: ae61f6450a8534df58e3c6bea609cad1
+guid: b0c4f48c3056641138671590135acb04
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/Android/ATSDKAPIClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATSDKAPIClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/Android/ATSDKAPIClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATSDKAPIClient.cs
diff --git a/Assets/AnyThinkAds/Platform/Android/ATSDKAPIClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATSDKAPIClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/Android/ATSDKAPIClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATSDKAPIClient.cs.meta
index 6307389..5081839 100644
--- a/Assets/AnyThinkAds/Platform/Android/ATSDKAPIClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATSDKAPIClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 42480fbac11d04facb4c6d78db032974
+guid: dc261ca3c0936463c9d358ab5ade132d
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/Android/ATSplashAdClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATSplashAdClient.cs
similarity index 99%
rename from Assets/AnyThinkAds/Platform/Android/ATSplashAdClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATSplashAdClient.cs
index 5fbc91c..06a01ca 100644
--- a/Assets/AnyThinkAds/Platform/Android/ATSplashAdClient.cs
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATSplashAdClient.cs
@@ -179,7 +179,7 @@ namespace AnyThinkAds.Android
public void onSplashAdDismiss(String unitId, String callbackJson)
{
- onAdClickEvent?.Invoke(this, new ATAdEventArgs(unitId, callbackJson));
+ onAdCloseEvent?.Invoke(this, new ATAdEventArgs(unitId, callbackJson));
}
public void onSplashAdDeeplinkCallback(String unitId, String callbackJson, bool isSuccess)
diff --git a/Assets/AnyThinkAds/Platform/Android/ATSplashAdClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATSplashAdClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/Android/ATSplashAdClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATSplashAdClient.cs.meta
index 2bfd340..3b77d70 100644
--- a/Assets/AnyThinkAds/Platform/Android/ATSplashAdClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/Android/ATSplashAdClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: fc526cb4cac504d87ac5b1b33902ce40
+guid: 8dc4b2769444b40628c5504cccdcfae5
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Plugins/iOS.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS.meta
similarity index 77%
rename from Assets/AnyThinkAds/Plugins/iOS.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS.meta
index 62cca8d..537c5d0 100644
--- a/Assets/AnyThinkAds/Plugins/iOS.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 4bd32736fde60bf4fa1dd4823a14ed75
+guid: e5a02bfe376df4e55885038935b4e0f6
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkAds/Platform/iOS/ATBannerAdClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATBannerAdClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/ATBannerAdClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATBannerAdClient.cs
diff --git a/Assets/AnyThinkAds/Platform/Android/ATBannerAdClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATBannerAdClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/Android/ATBannerAdClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATBannerAdClient.cs.meta
index 55fcc92..edfdb9b 100644
--- a/Assets/AnyThinkAds/Platform/Android/ATBannerAdClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATBannerAdClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 5503a4dfdfdae4c049ebf256603214f4
+guid: 6305825c684f14cef9d9283c59881206
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/ATInterstitialAdClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATInterstitialAdClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/ATInterstitialAdClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATInterstitialAdClient.cs
diff --git a/Assets/AnyThinkAds/Platform/Android/ATInterstitialAdClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATInterstitialAdClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/Android/ATInterstitialAdClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATInterstitialAdClient.cs.meta
index a477dba..c95f032 100644
--- a/Assets/AnyThinkAds/Platform/Android/ATInterstitialAdClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATInterstitialAdClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 193da1251899744ba827d58296b854fa
+guid: 69c99a926c22841f8a85edf146afee38
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/ATNativeAdClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATNativeAdClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/ATNativeAdClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATNativeAdClient.cs
diff --git a/Assets/AnyThinkAds/Platform/Android/ATNativeAdClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATNativeAdClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/Android/ATNativeAdClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATNativeAdClient.cs.meta
index 164efe0..d31076c 100644
--- a/Assets/AnyThinkAds/Platform/Android/ATNativeAdClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATNativeAdClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 55d34ac1b08d14075a94c32456dda57d
+guid: 598340087f299445c84d4563b8151ff5
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/ATNativeBannerAdClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATNativeBannerAdClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/ATNativeBannerAdClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATNativeBannerAdClient.cs
diff --git a/Assets/AnyThinkAds/Platform/iOS/ATNativeBannerAdClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATNativeBannerAdClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/iOS/ATNativeBannerAdClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATNativeBannerAdClient.cs.meta
index a9d7884..db2d089 100644
--- a/Assets/AnyThinkAds/Platform/iOS/ATNativeBannerAdClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATNativeBannerAdClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 1ddd325e170ee4e0b8007a1a7d1e0a74
+guid: e50f3f714bcb5482c87ea778887b210b
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/ATRewardedVideoAdClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATRewardedVideoAdClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/ATRewardedVideoAdClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATRewardedVideoAdClient.cs
diff --git a/Assets/AnyThinkAds/Platform/iOS/ATRewardedVideoAdClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATRewardedVideoAdClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/iOS/ATRewardedVideoAdClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATRewardedVideoAdClient.cs.meta
index e9ff0b6..687bb9e 100644
--- a/Assets/AnyThinkAds/Platform/iOS/ATRewardedVideoAdClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATRewardedVideoAdClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 1eba5b4dd12cb44b4bfc1d988ec40a36
+guid: 88d71812e5a4b4bcb819fccaae56e629
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/ATSDKAPIClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATSDKAPIClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/ATSDKAPIClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATSDKAPIClient.cs
diff --git a/Assets/AnyThinkAds/Platform/iOS/ATSDKAPIClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATSDKAPIClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/iOS/ATSDKAPIClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATSDKAPIClient.cs.meta
index 6c56f88..2a8968b 100644
--- a/Assets/AnyThinkAds/Platform/iOS/ATSDKAPIClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATSDKAPIClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 4a7d69c9f558e46c98341dfc1bc57ca1
+guid: 05c3b6e5701504301bda94a495dbaf3f
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/ATSplashAdClient.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATSplashAdClient.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/ATSplashAdClient.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATSplashAdClient.cs
diff --git a/Assets/AnyThinkAds/Platform/iOS/ATSplashAdClient.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATSplashAdClient.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/iOS/ATSplashAdClient.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATSplashAdClient.cs.meta
index 0a76378..9657a0e 100644
--- a/Assets/AnyThinkAds/Platform/iOS/ATSplashAdClient.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/ATSplashAdClient.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 1f0c9795994ed4061b011d3513a6adce
+guid: ca068c436de2c4eb7ae99bfa446bcb25
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal.meta
similarity index 77%
rename from Assets/AnyThinkAds/Platform/iOS/Internal.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal.meta
index 8d6375c..6e2ec1e 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 71c4a563eff03483d8d19430791ee6f8
+guid: 07469d12ebd464fec8e353c0ee4f893b
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C.meta
similarity index 77%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C.meta
index 4b9a61a..75a1808 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 304162e40b68148bb94a0c8806efce99
+guid: 8b14aff8aa065434191a5cc12d615e63
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATAutolayoutCategories.h b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATAutolayoutCategories.h
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATAutolayoutCategories.h
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATAutolayoutCategories.h
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATAutolayoutCategories.h.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATAutolayoutCategories.h.meta
similarity index 92%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATAutolayoutCategories.h.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATAutolayoutCategories.h.meta
index 62d6410..82a6387 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATAutolayoutCategories.h.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATAutolayoutCategories.h.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 8993b1a1b54d44b13b53f95199149f02
+guid: e2269e56e3e70488eb7d644a51a86da0
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATAutolayoutCategories.m b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATAutolayoutCategories.m
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATAutolayoutCategories.m
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATAutolayoutCategories.m
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATAutolayoutCategories.m.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATAutolayoutCategories.m.meta
similarity index 94%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATAutolayoutCategories.m.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATAutolayoutCategories.m.meta
index 8414630..4ea17e9 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATAutolayoutCategories.m.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATAutolayoutCategories.m.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: ec2e2e53ab94c4b128b2c42212f6329d
+guid: 131f232c2b292473c90a634675348a96
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATBannerAdWrapper.h b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATBannerAdWrapper.h
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATBannerAdWrapper.h
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATBannerAdWrapper.h
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATBannerAdWrapper.h.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATBannerAdWrapper.h.meta
similarity index 92%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATBannerAdWrapper.h.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATBannerAdWrapper.h.meta
index d78968e..55db87c 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATBannerAdWrapper.h.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATBannerAdWrapper.h.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 6e2c5a04f2264475daa844ca2bd3b252
+guid: c19226014609a4fcc88f3f8b7d17926b
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATBannerAdWrapper.m b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATBannerAdWrapper.m
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATBannerAdWrapper.m
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATBannerAdWrapper.m
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATBannerAdWrapper.m.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATBannerAdWrapper.m.meta
similarity index 94%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATBannerAdWrapper.m.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATBannerAdWrapper.m.meta
index ffb272b..cfd4acc 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATBannerAdWrapper.m.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATBannerAdWrapper.m.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 86380dcd812ab438cb2c2555b18f7611
+guid: b85f6b7934de2474ca8535fb6349cc73
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATBaseUnityWrapper.h b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATBaseUnityWrapper.h
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATBaseUnityWrapper.h
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATBaseUnityWrapper.h
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATBaseUnityWrapper.h.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATBaseUnityWrapper.h.meta
similarity index 92%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATBaseUnityWrapper.h.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATBaseUnityWrapper.h.meta
index fd24ce9..c3a356b 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATBaseUnityWrapper.h.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATBaseUnityWrapper.h.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: ede50b2779e4c47739271e7bc30f2598
+guid: 32bcab57187f846e2b39fc622779e90a
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATBaseUnityWrapper.m b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATBaseUnityWrapper.m
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATBaseUnityWrapper.m
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATBaseUnityWrapper.m
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATBaseUnityWrapper.m.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATBaseUnityWrapper.m.meta
similarity index 94%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATBaseUnityWrapper.m.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATBaseUnityWrapper.m.meta
index d530bc2..9d90aa5 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATBaseUnityWrapper.m.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATBaseUnityWrapper.m.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: cc7aa85baa5154f9ba64fd37f76a0d79
+guid: fc3b1f55f3e0a48b7bca46a18bd3d474
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATInterstitialAdWrapper.h b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATInterstitialAdWrapper.h
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATInterstitialAdWrapper.h
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATInterstitialAdWrapper.h
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATInterstitialAdWrapper.h.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATInterstitialAdWrapper.h.meta
similarity index 92%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATInterstitialAdWrapper.h.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATInterstitialAdWrapper.h.meta
index 4d82eef..dfdd3ca 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATInterstitialAdWrapper.h.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATInterstitialAdWrapper.h.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: fd3d5314272da4126b166640ab3dcee8
+guid: c215d6991d4a34405a81e619ee15e66a
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATInterstitialAdWrapper.m b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATInterstitialAdWrapper.m
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATInterstitialAdWrapper.m
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATInterstitialAdWrapper.m
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATInterstitialAdWrapper.m.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATInterstitialAdWrapper.m.meta
similarity index 94%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATInterstitialAdWrapper.m.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATInterstitialAdWrapper.m.meta
index 98f36e0..f5a013b 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATInterstitialAdWrapper.m.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATInterstitialAdWrapper.m.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 492c5b484db744b6087232216007aedb
+guid: 36e14c4d8348c44308f370c1c6a68dd7
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATNativeAdWrapper.h b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATNativeAdWrapper.h
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATNativeAdWrapper.h
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATNativeAdWrapper.h
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATNativeAdWrapper.h.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATNativeAdWrapper.h.meta
similarity index 92%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATNativeAdWrapper.h.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATNativeAdWrapper.h.meta
index 2e8a77a..7385582 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATNativeAdWrapper.h.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATNativeAdWrapper.h.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 35f92a7af1cc942ee9c8e30cc8f1cd5d
+guid: 7dc2e5bcadd9c4ba286c51b14d95a1f1
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATNativeAdWrapper.m b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATNativeAdWrapper.m
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATNativeAdWrapper.m
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATNativeAdWrapper.m
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATNativeAdWrapper.m.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATNativeAdWrapper.m.meta
similarity index 94%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATNativeAdWrapper.m.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATNativeAdWrapper.m.meta
index 56de3df..126f0d9 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATNativeAdWrapper.m.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATNativeAdWrapper.m.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 9b7d0630ed9b2491a974466fd11bce29
+guid: 72ec590a401574c6a9e1162535db1013
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATNativeSelfRenderView.h b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATNativeSelfRenderView.h
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATNativeSelfRenderView.h
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATNativeSelfRenderView.h
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATNativeSelfRenderView.h.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATNativeSelfRenderView.h.meta
similarity index 92%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATNativeSelfRenderView.h.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATNativeSelfRenderView.h.meta
index a311c40..6c19961 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATNativeSelfRenderView.h.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATNativeSelfRenderView.h.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 448e708c0980148298bcf70228028566
+guid: 11cb4d99f1d2048de8e0702624a5542d
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATNativeSelfRenderView.m b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATNativeSelfRenderView.m
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATNativeSelfRenderView.m
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATNativeSelfRenderView.m
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATNativeSelfRenderView.m.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATNativeSelfRenderView.m.meta
similarity index 94%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATNativeSelfRenderView.m.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATNativeSelfRenderView.m.meta
index cf44d2a..3dbd2d9 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATNativeSelfRenderView.m.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATNativeSelfRenderView.m.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: ce42b5dfb2e9b49ff8e98e5401410ce9
+guid: a0cdfff84811945e19a8113417e62e42
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATRewardedVideoWrapper.h b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATRewardedVideoWrapper.h
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATRewardedVideoWrapper.h
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATRewardedVideoWrapper.h
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATRewardedVideoWrapper.h.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATRewardedVideoWrapper.h.meta
similarity index 92%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATRewardedVideoWrapper.h.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATRewardedVideoWrapper.h.meta
index 87fd573..989f38e 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATRewardedVideoWrapper.h.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATRewardedVideoWrapper.h.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: dc495f05548a84943a7c574227eca542
+guid: 5302f6ea7c2ba45ffbac263b7f64272f
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATRewardedVideoWrapper.m b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATRewardedVideoWrapper.m
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATRewardedVideoWrapper.m
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATRewardedVideoWrapper.m
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATRewardedVideoWrapper.m.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATRewardedVideoWrapper.m.meta
similarity index 94%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATRewardedVideoWrapper.m.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATRewardedVideoWrapper.m.meta
index c25d88f..4032557 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATRewardedVideoWrapper.m.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATRewardedVideoWrapper.m.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 08bf6f78a022c41e48ac4c28c42d9032
+guid: d2a3b71dcccb94d7c8c277e2e4d71c3b
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATSplashAdWrapper.h b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATSplashAdWrapper.h
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATSplashAdWrapper.h
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATSplashAdWrapper.h
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATSplashAdWrapper.h.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATSplashAdWrapper.h.meta
similarity index 92%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATSplashAdWrapper.h.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATSplashAdWrapper.h.meta
index 0934762..dba9ee7 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATSplashAdWrapper.h.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATSplashAdWrapper.h.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 35568f88b0ee1472daea65783f251f13
+guid: 4c5e68d87e3b846ccbe99c89e6095a63
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATSplashAdWrapper.m b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATSplashAdWrapper.m
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATSplashAdWrapper.m
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATSplashAdWrapper.m
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATSplashAdWrapper.m.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATSplashAdWrapper.m.meta
similarity index 94%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATSplashAdWrapper.m.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATSplashAdWrapper.m.meta
index f7c121d..40b48a6 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATSplashAdWrapper.m.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATSplashAdWrapper.m.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: ded4f0e6bc02d42569871e66507c2403
+guid: 050ae11a1f7d14f1582670c2ec76d58f
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityManager.h b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityManager.h
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityManager.h
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityManager.h
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityManager.h.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityManager.h.meta
similarity index 92%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityManager.h.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityManager.h.meta
index 120abdc..540c9a9 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityManager.h.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityManager.h.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 118e91473cd53442f9c919c52ea7ce7a
+guid: cd0a7a969d01e426d86016392b0ebb74
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityManager.m b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityManager.m
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityManager.m
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityManager.m
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityManager.m.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityManager.m.meta
similarity index 94%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityManager.m.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityManager.m.meta
index b58e890..e190268 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityManager.m.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityManager.m.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 2d7de97c29c484bb4b223792bca82a2e
+guid: d95b2163a82e6462e9f2f9cf16c1642d
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityUtilities.h b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityUtilities.h
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityUtilities.h
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityUtilities.h
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityUtilities.h.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityUtilities.h.meta
similarity index 92%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityUtilities.h.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityUtilities.h.meta
index 1d8ec32..ad5b4b0 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityUtilities.h.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityUtilities.h.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: a78f0aaba1b554b47a6279870c478713
+guid: a614a84f8a56e42a9bdf249b46dbac4b
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityUtilities.m b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityUtilities.m
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityUtilities.m
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityUtilities.m
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityUtilities.m.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityUtilities.m.meta
similarity index 94%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityUtilities.m.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityUtilities.m.meta
index 491a8c4..7a0a8d3 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityUtilities.m.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityUtilities.m.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 975cee5a14bff41e8b49fe463fca50bf
+guid: a20f8049e0edf4ee9b3dc60a7391f63e
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityWrapper.h b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityWrapper.h
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityWrapper.h
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityWrapper.h
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityWrapper.h.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityWrapper.h.meta
similarity index 92%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityWrapper.h.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityWrapper.h.meta
index de0e3dc..07d0c87 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/C/ATUnityWrapper.h.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/C/ATUnityWrapper.h.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 2e1ff5345df9f4b7091c46fa2dd59f9c
+guid: 71365aa9b07d94f09acfde932f4e4ca4
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/Script.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script.meta
similarity index 77%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/Script.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script.meta
index ae42524..6dfb13c 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/Script.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 2e059c89366e24ea9ad9a677576c896a
+guid: b0390de3cdaa14f5d946bfdca7bc0a2e
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATAdWrapper.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATAdWrapper.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATAdWrapper.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATAdWrapper.cs
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATAdWrapper.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATAdWrapper.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATAdWrapper.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATAdWrapper.cs.meta
index c0b5f81..fa6a607 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATAdWrapper.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATAdWrapper.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 183257e53ddbe437b8527d5487310665
+guid: d9d4e438f52f846049aee82485de8569
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATBannerAdWrapper.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATBannerAdWrapper.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATBannerAdWrapper.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATBannerAdWrapper.cs
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATBannerAdWrapper.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATBannerAdWrapper.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATBannerAdWrapper.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATBannerAdWrapper.cs.meta
index d209e0e..4ca30bf 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATBannerAdWrapper.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATBannerAdWrapper.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: a89e56ab43cc6424183b41bffb8f7644
+guid: 42e47e3e8cae64aa38bff4e3c6abf118
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATInterstitialAdWrapper.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATInterstitialAdWrapper.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATInterstitialAdWrapper.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATInterstitialAdWrapper.cs
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATInterstitialAdWrapper.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATInterstitialAdWrapper.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATInterstitialAdWrapper.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATInterstitialAdWrapper.cs.meta
index 0a9cbaf..e3c629a 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATInterstitialAdWrapper.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATInterstitialAdWrapper.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: c7068c64efc7844d28c09eb3fe5016a1
+guid: 7657f58beb3f24ea89bca929994062e3
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATManager.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATManager.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATManager.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATManager.cs
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATManager.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATManager.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATManager.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATManager.cs.meta
index f7373b9..d094958 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATManager.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATManager.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 4dee89fd761954cf7935d37937e888a7
+guid: 2004f8da35b374bebbed4dc94a4c9626
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATNativeAdWrapper.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATNativeAdWrapper.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATNativeAdWrapper.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATNativeAdWrapper.cs
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATNativeAdWrapper.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATNativeAdWrapper.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATNativeAdWrapper.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATNativeAdWrapper.cs.meta
index 98129da..b913602 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATNativeAdWrapper.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATNativeAdWrapper.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: ef4e77b096b0b4403980f80eb0ca14a3
+guid: e618652cb8c1948ae800e140df614aa5
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATNativeBannerAdWrapper.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATNativeBannerAdWrapper.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATNativeBannerAdWrapper.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATNativeBannerAdWrapper.cs
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATNativeBannerAdWrapper.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATNativeBannerAdWrapper.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATNativeBannerAdWrapper.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATNativeBannerAdWrapper.cs.meta
index 1f6f98f..29e9998 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATNativeBannerAdWrapper.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATNativeBannerAdWrapper.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 66718b9acc63e42318f62317987114a5
+guid: 736d70464c760423bb70a639660b2c2d
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATRewardedVideoWrapper.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATRewardedVideoWrapper.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATRewardedVideoWrapper.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATRewardedVideoWrapper.cs
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATRewardedVideoWrapper.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATRewardedVideoWrapper.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATRewardedVideoWrapper.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATRewardedVideoWrapper.cs.meta
index 166fd7a..2e6916c 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATRewardedVideoWrapper.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATRewardedVideoWrapper.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 4ce4411a38fcf4ff7a436fbd0ba06dc4
+guid: 4fd828a1082d34e828c247d3c1f1e8d1
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATSplashAdWrapper.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATSplashAdWrapper.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATSplashAdWrapper.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATSplashAdWrapper.cs
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATSplashAdWrapper.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATSplashAdWrapper.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATSplashAdWrapper.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATSplashAdWrapper.cs.meta
index ccf40bf..848b5d8 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATSplashAdWrapper.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATSplashAdWrapper.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 8f2ddc358f3a540c2b5d4b9570228c0c
+guid: 7daeafef5bd994a159a64f1040af4a67
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATUnityCBridge.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATUnityCBridge.cs
similarity index 100%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATUnityCBridge.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATUnityCBridge.cs
diff --git a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATUnityCBridge.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATUnityCBridge.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATUnityCBridge.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATUnityCBridge.cs.meta
index 7b114c2..a301d66 100644
--- a/Assets/AnyThinkAds/Platform/iOS/Internal/Script/ATUnityCBridge.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Platform/iOS/Internal/Script/ATUnityCBridge.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 9ee29a59d3e464da5ad08392d08ff860
+guid: 7506b10016ed445f48eccd1aa58c94b4
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Plugins.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins.meta
similarity index 77%
rename from Assets/AnyThinkAds/Plugins.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins.meta
index 4cdacbd..b41b206 100644
--- a/Assets/AnyThinkAds/Plugins.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 81948355b66d24e4b9cb273bbe56eac4
+guid: 2590b2154c8fd5d4d81ef656438e060a
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkAds/Plugins/Android.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android.meta
similarity index 77%
rename from Assets/AnyThinkAds/Plugins/Android.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android.meta
index 78629ae..72b47c5 100644
--- a/Assets/AnyThinkAds/Plugins/Android.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 8aa118c29ade9fd4b9a0768c2be07862
+guid: f5bbdbf96ee5ae942902e771702becb7
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkAds/Plugins/Android/China.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China.meta
similarity index 77%
rename from Assets/AnyThinkAds/Plugins/Android/China.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China.meta
index 603c3b4..d6a0fd7 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 00e755c66928bf845a74801253f3a0ff
+guid: f33b5847802511d419bb6ab4b700fb86
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/Editor.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/Editor.meta
similarity index 77%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/Editor.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/Editor.meta
index df8d6f5..a2a6549 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/Editor.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/Editor.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: f7a15da55f9b843a78efbe062e5a4162
+guid: 1488d178aaa4f482ea8c309372694069
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/Editor/Dependencies.xml b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/Editor/Dependencies.xml
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/Editor/Dependencies.xml
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/Editor/Dependencies.xml
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/Editor/Dependencies.xml.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/Editor/Dependencies.xml.meta
similarity index 75%
rename from Assets/AnyThinkAds/Plugins/Android/China/Editor/Dependencies.xml.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/Editor/Dependencies.xml.meta
index 68f0ff3..687b2f7 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/Editor/Dependencies.xml.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/Editor/Dependencies.xml.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 00d7f6a296a714fb3a128db33940537d
+guid: 01309b887f3fe4ece979fbb48275d06e
TextScriptImporter:
externalObjects: {}
userData:
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/Editor/Gromore.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/Editor/Gromore.meta
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/Editor/Gromore.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/Editor/Gromore.meta
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/Editor/Gromore/Dependencies.xml b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/Editor/Gromore/Dependencies.xml
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/Editor/Gromore/Dependencies.xml
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/Editor/Gromore/Dependencies.xml
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/Editor/Gromore/Dependencies.xml.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/Editor/Gromore/Dependencies.xml.meta
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/Editor/Gromore/Dependencies.xml.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/Editor/Gromore/Dependencies.xml.meta
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base.meta
similarity index 77%
rename from Assets/AnyThinkAds/Plugins/Android/China/anythink_base.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base.meta
index 8a32877..e78f416 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 0b639822d913a42d08a8da694163cad7
+guid: 254398fdf021c4a779725a49d41f0e61
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_banner.aar b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_banner.aar
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_banner.aar
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_banner.aar
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_banner.aar.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_banner.aar.meta
similarity index 93%
rename from Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_banner.aar.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_banner.aar.meta
index e8dbabb..c0b742a 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_banner.aar.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_banner.aar.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 1b9d8e4f1ceb34f228f77a0f0d46091a
+guid: 290f0c123bbf64a6984427544e80839a
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_china_core.aar b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_china_core.aar
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_china_core.aar
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_china_core.aar
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_china_core.aar.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_china_core.aar.meta
similarity index 93%
rename from Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_china_core.aar.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_china_core.aar.meta
index 5cb10af..4c7e0f3 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_china_core.aar.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_china_core.aar.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: ac6ca9772b1034a6a9d83b7e34089e8f
+guid: 9c1cfce36f43447f9b2d114d262760e9
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_core.aar b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_core.aar
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_core.aar
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_core.aar
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_core.aar.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_core.aar.meta
similarity index 93%
rename from Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_core.aar.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_core.aar.meta
index c0d88fc..040f4ab 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_core.aar.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_core.aar.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 392ff83ae1512454b97f85f2242012a2
+guid: bc179ab55b7104f63a5ab4f284361fce
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_interstitial.aar b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_interstitial.aar
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_interstitial.aar
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_interstitial.aar
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_interstitial.aar.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_interstitial.aar.meta
similarity index 93%
rename from Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_interstitial.aar.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_interstitial.aar.meta
index 9e80163..4730c9b 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_interstitial.aar.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_interstitial.aar.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: cd91ac9c9c5f64769b6ea13432e8a037
+guid: 348edf87b5e4d4c648b81168c52d4c35
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_native.aar b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_native.aar
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_native.aar
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_native.aar
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_native.aar.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_native.aar.meta
similarity index 93%
rename from Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_native.aar.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_native.aar.meta
index caeeae7..935993d 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_native.aar.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_native.aar.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: b6d529b0539fb4c37ab84c54a404dc6c
+guid: 4e1cd9f70cc444bda95630821b2db72b
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_rewardvideo.aar b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_rewardvideo.aar
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_rewardvideo.aar
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_rewardvideo.aar
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_rewardvideo.aar.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_rewardvideo.aar.meta
similarity index 93%
rename from Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_rewardvideo.aar.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_rewardvideo.aar.meta
index 4a280a7..d78e456 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_rewardvideo.aar.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_rewardvideo.aar.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: a47207769a0724dd68d29eae9dbaa958
+guid: 8defdf313c8954dbaa7ae6682d8f1a65
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_splash.aar b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_splash.aar
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_splash.aar
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_splash.aar
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_splash.aar.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_splash.aar.meta
similarity index 93%
rename from Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_splash.aar.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_splash.aar.meta
index 07a842c..0039858 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_splash.aar.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/anythink_splash.aar.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: d2a5f1baf22134eb2892c9f72173271b
+guid: e3f3e2852ae7946e5b9daf2e27fa1011
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/tramini_sdk.aar b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/tramini_sdk.aar
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/anythink_base/tramini_sdk.aar
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/tramini_sdk.aar
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/tramini_sdk.aar.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/tramini_sdk.aar.meta
similarity index 93%
rename from Assets/AnyThinkAds/Plugins/Android/China/anythink_base/tramini_sdk.aar.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/tramini_sdk.aar.meta
index e91148a..bcf347d 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/anythink_base/tramini_sdk.aar.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/anythink_base/tramini_sdk.aar.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 38f6a5f13ba6f4ec98d06630daf71018
+guid: ada836c19e1cb412e894751fbc3669d5
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation.meta
similarity index 77%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation.meta
index 466656b..b635289 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/mediation.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: b4495cf048f8b564e885f7a5205cabe5
+guid: e1b6816ce3172d04c881b3aed105923b
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/alex_adapter_gromore_mix_5.8.0.7.2.aar b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/alex_adapter_gromore_mix_5.8.0.7.2.aar
new file mode 100644
index 0000000..3a3dd6b
Binary files /dev/null and b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/alex_adapter_gromore_mix_5.8.0.7.2.aar differ
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/alex_adapter_gromore_mix_5.8.0.7.aar.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/alex_adapter_gromore_mix_5.8.0.7.2.aar.meta
similarity index 93%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/alex_adapter_gromore_mix_5.8.0.7.aar.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/alex_adapter_gromore_mix_5.8.0.7.2.aar.meta
index e4e86c4..24b5198 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/mediation/alex_adapter_gromore_mix_5.8.0.7.aar.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/alex_adapter_gromore_mix_5.8.0.7.2.aar.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 72c5f7ab43ab2534f91498d7b13d3c3c
+guid: 9e4d6d20eeab07b49b8211838771b764
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/anythink_network_csj_mix_5.8.0.7.aar b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/anythink_network_csj_mix_5.8.0.7.aar
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/anythink_network_csj_mix_5.8.0.7.aar
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/anythink_network_csj_mix_5.8.0.7.aar
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/anythink_network_csj_mix_5.8.0.7.aar.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/anythink_network_csj_mix_5.8.0.7.aar.meta
similarity index 93%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/anythink_network_csj_mix_5.8.0.7.aar.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/anythink_network_csj_mix_5.8.0.7.aar.meta
index f2f77ea..2e66d1e 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/mediation/anythink_network_csj_mix_5.8.0.7.aar.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/anythink_network_csj_mix_5.8.0.7.aar.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 033810c6a077710419e0d7062c0d2390
+guid: 6e000b593668e3b4c88ece4ba63ffbbd
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/gdt.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/gdt.meta
similarity index 77%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/gdt.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/gdt.meta
index 33972a9..dd23d46 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/mediation/gdt.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/gdt.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: b04c9b660ce4f441b97bbdf15e5f490b
+guid: 965a603742b554c449c14c9323811037
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/gdt/GDTSDK.unionNormal.4.562.1432.aar b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/gdt/GDTSDK.unionNormal.4.562.1432.aar
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/gdt/GDTSDK.unionNormal.4.562.1432.aar
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/gdt/GDTSDK.unionNormal.4.562.1432.aar
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/gdt/GDTSDK.unionNormal.4.562.1432.aar.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/gdt/GDTSDK.unionNormal.4.562.1432.aar.meta
similarity index 93%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/gdt/GDTSDK.unionNormal.4.562.1432.aar.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/gdt/GDTSDK.unionNormal.4.562.1432.aar.meta
index 7701b10..86bdd73 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/mediation/gdt/GDTSDK.unionNormal.4.562.1432.aar.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/gdt/GDTSDK.unionNormal.4.562.1432.aar.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: d63c9bfd2aa914cd098e75685e7e3187
+guid: 461ee595b165344e1902e1be3a8a7e6a
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/gdt/anythink_network_unity_gdt.aar b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/gdt/anythink_network_unity_gdt.aar
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/gdt/anythink_network_unity_gdt.aar
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/gdt/anythink_network_unity_gdt.aar
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/gdt/anythink_network_unity_gdt.aar.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/gdt/anythink_network_unity_gdt.aar.meta
similarity index 93%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/gdt/anythink_network_unity_gdt.aar.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/gdt/anythink_network_unity_gdt.aar.meta
index d186a74..42789d7 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/mediation/gdt/anythink_network_unity_gdt.aar.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/gdt/anythink_network_unity_gdt.aar.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 2cdf6e47984cd4655b955296e0f4bfa4
+guid: 4d64ad1973dd54983b91cb1678c6d478
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/gdt/network_data.json b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/gdt/network_data.json
new file mode 100644
index 0000000..37adf2e
--- /dev/null
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/gdt/network_data.json
@@ -0,0 +1 @@
+{"name":"gdt","version":"4.562.1432","country":1,"path":"Assets/AnyThinkPlugin/AnyThinkAds\\Plugins/Android/China/mediation/gdt"}
\ No newline at end of file
diff --git a/Assets/AnyThinkAds/Plugins/iOS/Core/Editor/Dependencies.xml.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/gdt/network_data.json.meta
similarity index 75%
rename from Assets/AnyThinkAds/Plugins/iOS/Core/Editor/Dependencies.xml.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/gdt/network_data.json.meta
index 46819e7..8fab9d6 100644
--- a/Assets/AnyThinkAds/Plugins/iOS/Core/Editor/Dependencies.xml.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/gdt/network_data.json.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: b6951752b4bbf4efe9f037e76fdbb946
+guid: 5c230e8420af7ab4fa09409a9d1ef6cf
TextScriptImporter:
externalObjects: {}
userData:
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/kuaishou.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou.meta
similarity index 77%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/kuaishou.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou.meta
index 5070023..a2d5fe4 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/mediation/kuaishou.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 08a266e313dde4a4780f408a373e335f
+guid: b0d5b178b07f1469cbe2d743ca7cb28e
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/tap/Editor.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/Editor.meta
similarity index 77%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/tap/Editor.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/Editor.meta
index e76b3d7..282668c 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/mediation/tap/Editor.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/Editor.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 705abcf69fd3e41889c376c52eb81335
+guid: eafa9aeae4bd64d97a054da55a05d0dc
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/Editor/Dependencies.xml b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/Editor/Dependencies.xml
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/Editor/Dependencies.xml
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/Editor/Dependencies.xml
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/Editor/Dependencies.xml.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/Editor/Dependencies.xml.meta
similarity index 75%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/Editor/Dependencies.xml.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/Editor/Dependencies.xml.meta
index 7344269..0f49966 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/Editor/Dependencies.xml.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/Editor/Dependencies.xml.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 9e7ef0820cafb4e279dce169ff66dd5b
+guid: f3ba469b8da3d46898a264b6e8b8b008
TextScriptImporter:
externalObjects: {}
userData:
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/anythink_network_unity_kuaishou.aar b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/anythink_network_unity_kuaishou.aar
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/anythink_network_unity_kuaishou.aar
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/anythink_network_unity_kuaishou.aar
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/anythink_network_unity_kuaishou.aar.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/anythink_network_unity_kuaishou.aar.meta
similarity index 93%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/anythink_network_unity_kuaishou.aar.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/anythink_network_unity_kuaishou.aar.meta
index 82acbb3..147d6b6 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/anythink_network_unity_kuaishou.aar.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/anythink_network_unity_kuaishou.aar.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: bf36f7511685b4419ad2482aa31377b6
+guid: 45adbb2b2963347a989988cda4eab3e9
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/kssdk-ad-3.3.59.1-publishRelease-9ceffff447.aar b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/kssdk-ad-3.3.59.1-publishRelease-9ceffff447.aar
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/kssdk-ad-3.3.59.1-publishRelease-9ceffff447.aar
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/kssdk-ad-3.3.59.1-publishRelease-9ceffff447.aar
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/kssdk-ad-3.3.59.1-publishRelease-9ceffff447.aar.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/kssdk-ad-3.3.59.1-publishRelease-9ceffff447.aar.meta
similarity index 93%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/kssdk-ad-3.3.59.1-publishRelease-9ceffff447.aar.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/kssdk-ad-3.3.59.1-publishRelease-9ceffff447.aar.meta
index 1632b6c..e09df0b 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/kssdk-ad-3.3.59.1-publishRelease-9ceffff447.aar.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/kssdk-ad-3.3.59.1-publishRelease-9ceffff447.aar.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 20d4b3f3f65c84d229ca77dd0ba12d58
+guid: 43adb02535ce84058bace9a4bf525ee6
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/network_data.json b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/network_data.json
new file mode 100644
index 0000000..88ae52e
--- /dev/null
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/network_data.json
@@ -0,0 +1 @@
+{"name":"kuaishou","version":"3.3.59.1","country":1,"path":"Assets/AnyThinkPlugin/AnyThinkAds\\Plugins/Android/China/mediation/kuaishou"}
\ No newline at end of file
diff --git a/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/network_data.json.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/network_data.json.meta
new file mode 100644
index 0000000..2a96858
--- /dev/null
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/kuaishou/network_data.json.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: ac5dc9887409a4e4584a417d1e4a0d88
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/tap.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap.meta
similarity index 77%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/tap.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap.meta
index 84d2528..d8a4036 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/mediation/tap.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: ee456f36319ea4f75a3573a42ef178d8
+guid: 406f629690d694824a25e1e02b281714
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkAds/Plugins/iOS/Core/Editor.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/Editor.meta
similarity index 77%
rename from Assets/AnyThinkAds/Plugins/iOS/Core/Editor.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/Editor.meta
index b15d539..39ccc74 100644
--- a/Assets/AnyThinkAds/Plugins/iOS/Core/Editor.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/Editor.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: cb5ae49b812fc409297ef6f255a690b2
+guid: a76fc36f21b114871a69b84e5326a37a
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/tap/Editor/Dependencies.xml b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/Editor/Dependencies.xml
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/tap/Editor/Dependencies.xml
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/Editor/Dependencies.xml
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/tap/Editor/Dependencies.xml.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/Editor/Dependencies.xml.meta
similarity index 75%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/tap/Editor/Dependencies.xml.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/Editor/Dependencies.xml.meta
index 6b7ce32..9d7e73b 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/mediation/tap/Editor/Dependencies.xml.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/Editor/Dependencies.xml.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 70d0d98f3b6a74e0c90b6df9b5dcca52
+guid: 38c1b7b371ecd45ba89127e91bee66ef
TextScriptImporter:
externalObjects: {}
userData:
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/tap/TapAD_3.16.3.25h1.aar b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/TapAD_3.16.3.25h1.aar
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/tap/TapAD_3.16.3.25h1.aar
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/TapAD_3.16.3.25h1.aar
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/tap/TapAD_3.16.3.25h1.aar.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/TapAD_3.16.3.25h1.aar.meta
similarity index 93%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/tap/TapAD_3.16.3.25h1.aar.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/TapAD_3.16.3.25h1.aar.meta
index cb6aebf..09d8ebf 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/mediation/tap/TapAD_3.16.3.25h1.aar.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/TapAD_3.16.3.25h1.aar.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 1c80f77df27184fa4b01811367c92617
+guid: 4fec1677b8a864b0d97f8ed05561da6b
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/tap/anythink_network_unity_tap.aar b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/anythink_network_unity_tap.aar
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/tap/anythink_network_unity_tap.aar
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/anythink_network_unity_tap.aar
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation/tap/anythink_network_unity_tap.aar.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/anythink_network_unity_tap.aar.meta
similarity index 93%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation/tap/anythink_network_unity_tap.aar.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/anythink_network_unity_tap.aar.meta
index 0b26f5a..bb977bf 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/mediation/tap/anythink_network_unity_tap.aar.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/anythink_network_unity_tap.aar.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 1b29389351e2f4a45b8f239fcf017838
+guid: af127e4ac3ee34f078cd4bb6d5163b24
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/network_data.json b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/network_data.json
new file mode 100644
index 0000000..98ebe89
--- /dev/null
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/network_data.json
@@ -0,0 +1 @@
+{"name":"tap","version":"3.16.3.25","country":1,"path":"Assets/AnyThinkPlugin/AnyThinkAds\\Plugins/Android/China/mediation/tap"}
\ No newline at end of file
diff --git a/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/network_data.json.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/network_data.json.meta
new file mode 100644
index 0000000..a1260f2
--- /dev/null
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation/tap/network_data.json.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 4ccb4470b260c014d91cdc1e5a3e1aa3
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation_plugin.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation_plugin.meta
similarity index 77%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation_plugin.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation_plugin.meta
index 27d4228..6b53739 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/mediation_plugin.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation_plugin.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 374f4a5f4d8ab477b8f64a287fd47d78
+guid: c72490b4c19e04d59a5e5e27879e699f
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation_plugin/gson-2.8.4.jar b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation_plugin/gson-2.8.4.jar
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation_plugin/gson-2.8.4.jar
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation_plugin/gson-2.8.4.jar
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation_plugin/gson-2.8.4.jar.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation_plugin/gson-2.8.4.jar.meta
similarity index 93%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation_plugin/gson-2.8.4.jar.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation_plugin/gson-2.8.4.jar.meta
index 4189480..1360c1f 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/mediation_plugin/gson-2.8.4.jar.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation_plugin/gson-2.8.4.jar.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: b1de6dd10e46a4bbb8c7db3361fc4b11
+guid: f8fbe67e9b4f64586b86daf28d4a8fff
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation_plugin/miui_sys_splash_1.0.aar b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation_plugin/miui_sys_splash_1.0.aar
similarity index 100%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation_plugin/miui_sys_splash_1.0.aar
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation_plugin/miui_sys_splash_1.0.aar
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/mediation_plugin/miui_sys_splash_1.0.aar.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation_plugin/miui_sys_splash_1.0.aar.meta
similarity index 93%
rename from Assets/AnyThinkAds/Plugins/Android/China/mediation_plugin/miui_sys_splash_1.0.aar.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation_plugin/miui_sys_splash_1.0.aar.meta
index f56435d..72c3ef3 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/mediation_plugin/miui_sys_splash_1.0.aar.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Plugins/Android/China/mediation_plugin/miui_sys_splash_1.0.aar.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 416c49ce98f274d1c82f54917ba6eff2
+guid: d12c55ddf05c24abd92b59cdaa090ab1
PluginImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Thrid.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid.meta
similarity index 77%
rename from Assets/AnyThinkAds/Thrid.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Thrid.meta
index 85238be..053cd45 100644
--- a/Assets/AnyThinkAds/Thrid.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 3523abbcd4cf24058b0b6404ee928407
+guid: 34e7f63d1213943a5b815f256b2962c8
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkAds/Thrid/IJsonWrapper.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/IJsonWrapper.cs
similarity index 100%
rename from Assets/AnyThinkAds/Thrid/IJsonWrapper.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Thrid/IJsonWrapper.cs
diff --git a/Assets/AnyThinkAds/Thrid/IJsonWrapper.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/IJsonWrapper.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Thrid/IJsonWrapper.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Thrid/IJsonWrapper.cs.meta
index a66092c..f7ea682 100644
--- a/Assets/AnyThinkAds/Thrid/IJsonWrapper.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/IJsonWrapper.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 3dcf1ab650cf1468aba74f816fe91c30
+guid: 355f8d10c3b4e493bb3365904200d579
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Thrid/JsonData.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonData.cs
similarity index 100%
rename from Assets/AnyThinkAds/Thrid/JsonData.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonData.cs
diff --git a/Assets/AnyThinkAds/Thrid/JsonData.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonData.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Thrid/JsonData.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonData.cs.meta
index e9a2f4c..fb0882f 100644
--- a/Assets/AnyThinkAds/Thrid/JsonData.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonData.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 5684404e137a44af0bac9e7c0bd82aa2
+guid: 6e230ed5324714d589fd6898334d5f64
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Thrid/JsonException.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonException.cs
similarity index 100%
rename from Assets/AnyThinkAds/Thrid/JsonException.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonException.cs
diff --git a/Assets/AnyThinkAds/Thrid/JsonException.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonException.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Thrid/JsonException.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonException.cs.meta
index bb88ba7..25c5a24 100644
--- a/Assets/AnyThinkAds/Thrid/JsonException.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonException.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 836229774b2dc42a0b2a0ced3b2cde30
+guid: 9b400412d05aa4fb89f214ba44c803d7
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Thrid/JsonMapper.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonMapper.cs
similarity index 100%
rename from Assets/AnyThinkAds/Thrid/JsonMapper.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonMapper.cs
diff --git a/Assets/AnyThinkAds/Thrid/JsonMapper.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonMapper.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Thrid/JsonMapper.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonMapper.cs.meta
index 21f270d..7b0e7ee 100644
--- a/Assets/AnyThinkAds/Thrid/JsonMapper.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonMapper.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 2332f0bd787794ca8ad83f3960453e12
+guid: b05207ea19be344f492e085a364a4596
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Thrid/JsonMockWrapper.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonMockWrapper.cs
similarity index 100%
rename from Assets/AnyThinkAds/Thrid/JsonMockWrapper.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonMockWrapper.cs
diff --git a/Assets/AnyThinkAds/Thrid/JsonMockWrapper.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonMockWrapper.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Thrid/JsonMockWrapper.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonMockWrapper.cs.meta
index 2eafe3a..384dd5f 100644
--- a/Assets/AnyThinkAds/Thrid/JsonMockWrapper.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonMockWrapper.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 5adea86ef437149e7ba4f61742276dd5
+guid: 9a3032f883f4f4959a7c858363481182
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Thrid/JsonReader.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonReader.cs
similarity index 100%
rename from Assets/AnyThinkAds/Thrid/JsonReader.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonReader.cs
diff --git a/Assets/AnyThinkAds/Thrid/JsonReader.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonReader.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Thrid/JsonReader.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonReader.cs.meta
index 810c63f..d7b4d9b 100644
--- a/Assets/AnyThinkAds/Thrid/JsonReader.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonReader.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: b2f3f4def6a034a7785f274e754cd2e4
+guid: 7452799398ed44d4daf97ab0940b22d3
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Thrid/JsonWriter.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonWriter.cs
similarity index 100%
rename from Assets/AnyThinkAds/Thrid/JsonWriter.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonWriter.cs
diff --git a/Assets/AnyThinkAds/Thrid/JsonWriter.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonWriter.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Thrid/JsonWriter.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonWriter.cs.meta
index 74b73a8..b8fb93f 100644
--- a/Assets/AnyThinkAds/Thrid/JsonWriter.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/JsonWriter.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: c177f07debe464b46b7cd9f3b0a828f0
+guid: 869b38f1d4eec482ea08cf70e6bfbf06
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Thrid/Lexer.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/Lexer.cs
similarity index 100%
rename from Assets/AnyThinkAds/Thrid/Lexer.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Thrid/Lexer.cs
diff --git a/Assets/AnyThinkAds/Thrid/Lexer.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/Lexer.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Thrid/Lexer.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Thrid/Lexer.cs.meta
index 9ead715..8545f29 100644
--- a/Assets/AnyThinkAds/Thrid/Lexer.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/Lexer.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 8f73d48b51cf04f78b69e3d6e61378ac
+guid: 5e7434771fa224f61a22e6ce79a99c87
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Thrid/Netstandard15Polyfill.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/Netstandard15Polyfill.cs
similarity index 100%
rename from Assets/AnyThinkAds/Thrid/Netstandard15Polyfill.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Thrid/Netstandard15Polyfill.cs
diff --git a/Assets/AnyThinkAds/Thrid/Netstandard15Polyfill.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/Netstandard15Polyfill.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Thrid/Netstandard15Polyfill.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Thrid/Netstandard15Polyfill.cs.meta
index 3b8d70e..1996e00 100644
--- a/Assets/AnyThinkAds/Thrid/Netstandard15Polyfill.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/Netstandard15Polyfill.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 632edde0b3fbf4af6b45c060c264dfc4
+guid: 560fff21157eb4ab5af8c8eaa297b979
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkAds/Thrid/ParserToken.cs b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/ParserToken.cs
similarity index 100%
rename from Assets/AnyThinkAds/Thrid/ParserToken.cs
rename to Assets/AnyThinkPlugin/AnyThinkAds/Thrid/ParserToken.cs
diff --git a/Assets/AnyThinkAds/Thrid/ParserToken.cs.meta b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/ParserToken.cs.meta
similarity index 83%
rename from Assets/AnyThinkAds/Thrid/ParserToken.cs.meta
rename to Assets/AnyThinkPlugin/AnyThinkAds/Thrid/ParserToken.cs.meta
index 992941b..8cf1a59 100644
--- a/Assets/AnyThinkAds/Thrid/ParserToken.cs.meta
+++ b/Assets/AnyThinkPlugin/AnyThinkAds/Thrid/ParserToken.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: e48b775bfb271477488bc691a57ed51c
+guid: 0573250d64a0f4c17adf425555f18b6b
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkPlugin/Resources.meta b/Assets/AnyThinkPlugin/Resources.meta
index 1dbc62d..6ef13bd 100644
--- a/Assets/AnyThinkPlugin/Resources.meta
+++ b/Assets/AnyThinkPlugin/Resources.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 58cb91947dc7b4472874a8bc04884701
+guid: 6406aee3c6e33471ebd37aa17f39f834
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkPlugin/Resources/Assets.meta b/Assets/AnyThinkPlugin/Resources/Assets.meta
deleted file mode 100644
index dc70cc8..0000000
--- a/Assets/AnyThinkPlugin/Resources/Assets.meta
+++ /dev/null
@@ -1,8 +0,0 @@
-fileFormatVersion: 2
-guid: cef0820530e9ecb498292b4cd3a3c8e4
-folderAsset: yes
-DefaultImporter:
- externalObjects: {}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/AnyThinkPlugin/Resources/Assets/ATAssetDatabaseManager.asset b/Assets/AnyThinkPlugin/Resources/Assets/ATAssetDatabaseManager.asset
deleted file mode 100644
index 45940c0..0000000
--- a/Assets/AnyThinkPlugin/Resources/Assets/ATAssetDatabaseManager.asset
+++ /dev/null
@@ -1,29 +0,0 @@
-%YAML 1.1
-%TAG !u! tag:unity3d.com,2011:
---- !u!114 &11400000
-MonoBehaviour:
- m_ObjectHideFlags: 0
- 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: 11500000, guid: e1c2a723fcc7d4a5cad5c4b082740029, type: 3}
- m_Name: ATAssetDatabaseManager
- m_EditorClassIdentifier:
- importingNetwork:
- Name:
- DisplayName:
- DownloadUrl:
- DependenciesFilePath:
- PluginFileName:
- PluginFilePaths: []
- LatestVersions:
- Unity:
- Android:
- Ios:
- CurrentVersions:
- Unity:
- Android:
- Ios:
diff --git a/Assets/AnyThinkPlugin/Resources/Assets/ATAssetDatabaseManager.asset.meta b/Assets/AnyThinkPlugin/Resources/Assets/ATAssetDatabaseManager.asset.meta
deleted file mode 100644
index ae0ce31..0000000
--- a/Assets/AnyThinkPlugin/Resources/Assets/ATAssetDatabaseManager.asset.meta
+++ /dev/null
@@ -1,8 +0,0 @@
-fileFormatVersion: 2
-guid: 63e477abad871dd428293d86073af5f7
-NativeFormatImporter:
- externalObjects: {}
- mainObjectFileID: 11400000
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/AnyThinkPlugin/Resources/Assets/ATPluginSetting.asset b/Assets/AnyThinkPlugin/Resources/Assets/ATPluginSetting.asset
deleted file mode 100644
index ff5bc32..0000000
--- a/Assets/AnyThinkPlugin/Resources/Assets/ATPluginSetting.asset
+++ /dev/null
@@ -1,32 +0,0 @@
-%YAML 1.1
-%TAG !u! tag:unity3d.com,2011:
---- !u!114 &11400000
-MonoBehaviour:
- m_ObjectHideFlags: 0
- 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: 11500000, guid: 74c9441c35d2f47f8b9642d36ec88750, type: 3}
- m_Name: ATPluginSetting
- m_EditorClassIdentifier:
- adMobAndroidAppId:
- adMobIosAppId:
- coreNetwork:
- Name: Core
- DisplayName: Core
- DownloadUrl: https://topon-sdk-release.oss-cn-hangzhou.aliyuncs.com/Unity/6.2.95-plugin/China/AnyThinkCore.unitypackage
- DependenciesFilePath:
- PluginFileName: AnyThinkCore.unitypackage
- PluginFilePaths: []
- LatestVersions:
- Unity: 2.0.3
- Android: 6.2.98
- Ios: 6.2.95
- CurrentVersions:
- Unity: 2.0.3
- Android: 6.2.98
- Ios: 6.2.95
- enableAndroidX: 0
diff --git a/Assets/AnyThinkPlugin/Resources/Assets/ATPluginSetting.asset.meta b/Assets/AnyThinkPlugin/Resources/Assets/ATPluginSetting.asset.meta
deleted file mode 100644
index d25a408..0000000
--- a/Assets/AnyThinkPlugin/Resources/Assets/ATPluginSetting.asset.meta
+++ /dev/null
@@ -1,8 +0,0 @@
-fileFormatVersion: 2
-guid: 22ffb3543b46f34479c1f61cf6959a5a
-NativeFormatImporter:
- externalObjects: {}
- mainObjectFileID: 11400000
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/AnyThinkPlugin/Resources/Images.meta b/Assets/AnyThinkPlugin/Resources/Images.meta
index 64a991b..e00b3d9 100644
--- a/Assets/AnyThinkPlugin/Resources/Images.meta
+++ b/Assets/AnyThinkPlugin/Resources/Images.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: efeb43f1583cc4e0fa42aaaaa9a96367
+guid: b9e5f337a5f754f0c8423ca07168e235
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkPlugin/Resources/Images/alert_icon.png.meta b/Assets/AnyThinkPlugin/Resources/Images/alert_icon.png.meta
index 50008aa..2195883 100644
--- a/Assets/AnyThinkPlugin/Resources/Images/alert_icon.png.meta
+++ b/Assets/AnyThinkPlugin/Resources/Images/alert_icon.png.meta
@@ -1,9 +1,9 @@
fileFormatVersion: 2
-guid: 67ce9bdfd17df4d51a47bdf3d5c91944
+guid: 84ee1925ebaa4430587b1697a0cc378a
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
- serializedVersion: 12
+ serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 1
@@ -20,12 +20,9 @@ TextureImporter:
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
- flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
- vTOnly: 0
- ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
@@ -34,12 +31,12 @@ TextureImporter:
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
- filterMode: 1
- aniso: 1
- mipBias: 0
- wrapU: 0
- wrapV: 0
- wrapW: 0
+ filterMode: -1
+ aniso: -1
+ mipBias: -100
+ wrapU: -1
+ wrapV: -1
+ wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
@@ -57,15 +54,10 @@ TextureImporter:
textureType: 0
textureShape: 1
singleChannelComponent: 0
- flipbookRows: 1
- flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
- ignorePngGamma: 0
applyGammaDecoding: 0
- swizzle: 50462976
- cookieLightType: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
@@ -79,42 +71,6 @@ TextureImporter:
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- - serializedVersion: 3
- buildTarget: Standalone
- maxTextureSize: 2048
- resizeAlgorithm: 0
- textureFormat: -1
- textureCompression: 1
- compressionQuality: 50
- crunchedCompression: 0
- allowsAlphaSplitting: 0
- overridden: 0
- androidETC2FallbackOverride: 0
- forceMaximumCompressionQuality_BC6H_BC7: 0
- - serializedVersion: 3
- buildTarget: Server
- maxTextureSize: 2048
- resizeAlgorithm: 0
- textureFormat: -1
- textureCompression: 1
- compressionQuality: 50
- crunchedCompression: 0
- allowsAlphaSplitting: 0
- overridden: 0
- androidETC2FallbackOverride: 0
- forceMaximumCompressionQuality_BC6H_BC7: 0
- - serializedVersion: 3
- buildTarget: Android
- maxTextureSize: 2048
- resizeAlgorithm: 0
- textureFormat: -1
- textureCompression: 1
- compressionQuality: 50
- crunchedCompression: 0
- allowsAlphaSplitting: 0
- overridden: 0
- androidETC2FallbackOverride: 0
- forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
@@ -128,9 +84,9 @@ TextureImporter:
edges: []
weights: []
secondaryTextures: []
- nameFileIdTable: {}
spritePackingTag:
pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
diff --git a/Assets/AnyThinkPlugin/Resources/Images/uninstall_icon.png.meta b/Assets/AnyThinkPlugin/Resources/Images/uninstall_icon.png.meta
index 3542219..deea63e 100644
--- a/Assets/AnyThinkPlugin/Resources/Images/uninstall_icon.png.meta
+++ b/Assets/AnyThinkPlugin/Resources/Images/uninstall_icon.png.meta
@@ -1,9 +1,9 @@
fileFormatVersion: 2
-guid: 7701af57b4fad4b6eb2b01129daf623c
+guid: 1ed8e1d1763ee441caf722be644994ba
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
- serializedVersion: 12
+ serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 1
@@ -20,12 +20,9 @@ TextureImporter:
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
- flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
- vTOnly: 0
- ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
@@ -34,12 +31,12 @@ TextureImporter:
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
- filterMode: 1
- aniso: 1
- mipBias: 0
- wrapU: 0
- wrapV: 0
- wrapW: 0
+ filterMode: -1
+ aniso: -1
+ mipBias: -100
+ wrapU: -1
+ wrapV: -1
+ wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
@@ -57,15 +54,10 @@ TextureImporter:
textureType: 0
textureShape: 1
singleChannelComponent: 0
- flipbookRows: 1
- flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
- ignorePngGamma: 0
applyGammaDecoding: 0
- swizzle: 50462976
- cookieLightType: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
@@ -79,42 +71,6 @@ TextureImporter:
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- - serializedVersion: 3
- buildTarget: Standalone
- maxTextureSize: 2048
- resizeAlgorithm: 0
- textureFormat: -1
- textureCompression: 1
- compressionQuality: 50
- crunchedCompression: 0
- allowsAlphaSplitting: 0
- overridden: 0
- androidETC2FallbackOverride: 0
- forceMaximumCompressionQuality_BC6H_BC7: 0
- - serializedVersion: 3
- buildTarget: Server
- maxTextureSize: 2048
- resizeAlgorithm: 0
- textureFormat: -1
- textureCompression: 1
- compressionQuality: 50
- crunchedCompression: 0
- allowsAlphaSplitting: 0
- overridden: 0
- androidETC2FallbackOverride: 0
- forceMaximumCompressionQuality_BC6H_BC7: 0
- - serializedVersion: 3
- buildTarget: Android
- maxTextureSize: 2048
- resizeAlgorithm: 0
- textureFormat: -1
- textureCompression: 1
- compressionQuality: 50
- crunchedCompression: 0
- allowsAlphaSplitting: 0
- overridden: 0
- androidETC2FallbackOverride: 0
- forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
@@ -128,9 +84,9 @@ TextureImporter:
edges: []
weights: []
secondaryTextures: []
- nameFileIdTable: {}
spritePackingTag:
pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
diff --git a/Assets/AnyThinkPlugin/Resources/Images/warning_icon.png.meta b/Assets/AnyThinkPlugin/Resources/Images/warning_icon.png.meta
index 8ac321a..f261cce 100644
--- a/Assets/AnyThinkPlugin/Resources/Images/warning_icon.png.meta
+++ b/Assets/AnyThinkPlugin/Resources/Images/warning_icon.png.meta
@@ -1,9 +1,9 @@
fileFormatVersion: 2
-guid: 4b53fd1e534fa4f96a74a6723926c91d
+guid: a64dc878e75e44d2e9ed923628832495
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
- serializedVersion: 12
+ serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 1
@@ -20,12 +20,9 @@ TextureImporter:
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
- flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
- vTOnly: 0
- ignoreMasterTextureLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
@@ -34,12 +31,12 @@ TextureImporter:
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
- filterMode: 1
- aniso: 1
- mipBias: 0
- wrapU: 0
- wrapV: 0
- wrapW: 0
+ filterMode: -1
+ aniso: -1
+ mipBias: -100
+ wrapU: -1
+ wrapV: -1
+ wrapW: -1
nPOTScale: 1
lightmap: 0
compressionQuality: 50
@@ -57,15 +54,10 @@ TextureImporter:
textureType: 0
textureShape: 1
singleChannelComponent: 0
- flipbookRows: 1
- flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
- ignorePngGamma: 0
applyGammaDecoding: 0
- swizzle: 50462976
- cookieLightType: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
@@ -79,42 +71,6 @@ TextureImporter:
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- - serializedVersion: 3
- buildTarget: Standalone
- maxTextureSize: 2048
- resizeAlgorithm: 0
- textureFormat: -1
- textureCompression: 1
- compressionQuality: 50
- crunchedCompression: 0
- allowsAlphaSplitting: 0
- overridden: 0
- androidETC2FallbackOverride: 0
- forceMaximumCompressionQuality_BC6H_BC7: 0
- - serializedVersion: 3
- buildTarget: Server
- maxTextureSize: 2048
- resizeAlgorithm: 0
- textureFormat: -1
- textureCompression: 1
- compressionQuality: 50
- crunchedCompression: 0
- allowsAlphaSplitting: 0
- overridden: 0
- androidETC2FallbackOverride: 0
- forceMaximumCompressionQuality_BC6H_BC7: 0
- - serializedVersion: 3
- buildTarget: Android
- maxTextureSize: 2048
- resizeAlgorithm: 0
- textureFormat: -1
- textureCompression: 1
- compressionQuality: 50
- crunchedCompression: 0
- allowsAlphaSplitting: 0
- overridden: 0
- androidETC2FallbackOverride: 0
- forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
@@ -128,9 +84,9 @@ TextureImporter:
edges: []
weights: []
secondaryTextures: []
- nameFileIdTable: {}
spritePackingTag:
pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
diff --git a/Assets/AnyThinkAds/Plugins/Android/China/Editor.meta b/Assets/AnyThinkPlugin/Resources/json.meta
similarity index 77%
rename from Assets/AnyThinkAds/Plugins/Android/China/Editor.meta
rename to Assets/AnyThinkPlugin/Resources/json.meta
index 8e576c5..5bcece7 100644
--- a/Assets/AnyThinkAds/Plugins/Android/China/Editor.meta
+++ b/Assets/AnyThinkPlugin/Resources/json.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 063c2379fd28a4ea9b8113386f6e2a94
+guid: a30b91c323a91724f99665444ab7d8f3
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkPlugin/Resources/json/2.1.0.meta b/Assets/AnyThinkPlugin/Resources/json/2.1.0.meta
new file mode 100644
index 0000000..bbefe59
--- /dev/null
+++ b/Assets/AnyThinkPlugin/Resources/json/2.1.0.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: dcb708d6d45d0f7419d7667d7ad9feba
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/AnyThinkPlugin/Resources/json/2.1.0/plugin_setting_data.json b/Assets/AnyThinkPlugin/Resources/json/2.1.0/plugin_setting_data.json
new file mode 100644
index 0000000..1ba1078
--- /dev/null
+++ b/Assets/AnyThinkPlugin/Resources/json/2.1.0/plugin_setting_data.json
@@ -0,0 +1 @@
+{"curCountry":1,"china":{"android_version":"6.2.98","ios_version":"","enableAndroidX":true,"country":1,"android_admob_app_id":"","ios_admob_app_id":""},"nonchina":{"android_version":"","ios_version":"","enableAndroidX":true,"country":2,"android_admob_app_id":"","ios_admob_app_id":""}}
\ No newline at end of file
diff --git a/Assets/AnyThinkPlugin/Resources/json/2.1.0/plugin_setting_data.json.meta b/Assets/AnyThinkPlugin/Resources/json/2.1.0/plugin_setting_data.json.meta
new file mode 100644
index 0000000..379162a
--- /dev/null
+++ b/Assets/AnyThinkPlugin/Resources/json/2.1.0/plugin_setting_data.json.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: ebfbacc2a04216f4b8a3f359ee7db1df
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/AnyThinkPlugin/Script.meta b/Assets/AnyThinkPlugin/Script.meta
index 71a7c8b..f4c9c7c 100644
--- a/Assets/AnyThinkPlugin/Script.meta
+++ b/Assets/AnyThinkPlugin/Script.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 58d0c20f6770d4a1cbc22b191ffea767
+guid: 9b9ee5da8908b4536b36380cda3e0596
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkPlugin/Script/Editor.meta b/Assets/AnyThinkPlugin/Script/Editor.meta
index 924fe07..34e5db2 100644
--- a/Assets/AnyThinkPlugin/Script/Editor.meta
+++ b/Assets/AnyThinkPlugin/Script/Editor.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 86dba432439c547b3aae22c2c43ed14a
+guid: a28c9fe78816c4e30a9dccf9aa57e4da
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkPlugin/Script/Editor/ATAssetPostprocessor.cs b/Assets/AnyThinkPlugin/Script/Editor/ATAssetPostprocessor.cs
deleted file mode 100644
index 0aaa415..0000000
--- a/Assets/AnyThinkPlugin/Script/Editor/ATAssetPostprocessor.cs
+++ /dev/null
@@ -1,48 +0,0 @@
-using System;
-using UnityEditor;
-using UnityEngine;
-using AnyThink.Scripts.IntegrationManager.Editor;
-
-[InitializeOnLoad]
-public class ATAssetPostprocessor : AssetPostprocessor
-{
- private static readonly string TAG = "ATAssetPostprocessor";
-
- static ATAssetPostprocessor()
- {
- log("ATAssetPostprocessor is now initialized!");
- }
- void OnPostprocessAsset(string path)
- {
- log("OnPostprocessAsset() >>> path: " + path + " assetPath: " + assetPath);
- }
-
- static void OnPostprocessAllAssets(string[] importedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths)
- {
- foreach (string str in importedAssets)
- {
- log("imported Asset: " + str);
- }
- foreach (string str in deletedAssets)
- {
- log("Deleted Asset: " + str);
- }
-
- for (int i = 0; i < movedAssets.Length; i++)
- {
- log("Moved Asset: " + movedAssets[i] + " from: " + movedFromAssetPaths[i]);
- }
- }
-
- void OnPreprocessAsset()
- {
- log("OnPreprocessAsset() >>> called assetPath: " + assetPath);
- }
-
- private static void log(string msg)
- {
-#if AnyThinkSDKEditor
- ATLog.log(TAG, msg);
-#endif
- }
-}
diff --git a/Assets/AnyThinkPlugin/Script/Editor/ATAssetPostprocessor.cs.meta b/Assets/AnyThinkPlugin/Script/Editor/ATAssetPostprocessor.cs.meta
deleted file mode 100644
index 4b88336..0000000
--- a/Assets/AnyThinkPlugin/Script/Editor/ATAssetPostprocessor.cs.meta
+++ /dev/null
@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: 773c015bc2a8d452f967b6c4c57bbebc
-MonoImporter:
- externalObjects: {}
- serializedVersion: 2
- defaultReferences: []
- executionOrder: 0
- icon: {instanceID: 0}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/AnyThinkPlugin/Script/Editor/ATPostProcessBuildAndroid.cs b/Assets/AnyThinkPlugin/Script/Editor/ATPostProcessBuildAndroid.cs
index 56d5a47..c5a86cc 100644
--- a/Assets/AnyThinkPlugin/Script/Editor/ATPostProcessBuildAndroid.cs
+++ b/Assets/AnyThinkPlugin/Script/Editor/ATPostProcessBuildAndroid.cs
@@ -20,7 +20,6 @@ namespace AnyThink.Scripts.Editor
private static string PropertyDexingArtifactTransform = "android.enableDexingArtifactTransform";
private static string DisableProperty = "=false";
- private static string KeyMetaDataAppLovinVerboseLoggingOn = "applovin.sdk.verbose_logging";
private static string KeyMetaDataGoogleApplicationId = "com.google.android.gms.ads.APPLICATION_ID";
private static string KeyMetaDataGoogleAdManagerApp = "com.google.android.gms.ads.AD_MANAGER_APP";
@@ -73,7 +72,7 @@ namespace AnyThink.Scripts.Editor
//如果是国内,则根据选择来决定是否用AndroidX
if (isChina)
{
- if (!ATPluginSetting.Instance.EnableAndroidX) {
+ if (!ATConfig.enableAndroidX()) {
EnableProperty = "=false";
} else {
EnableProperty = "=true";
@@ -145,14 +144,15 @@ namespace AnyThink.Scripts.Editor
private static void addGoogleApplicationIdIfNeeded(XElement elementApplication, IEnumerable metaDataElements)
{
var googleApplicationIdMetaData = GetElementByName(metaDataElements, KeyMetaDataGoogleApplicationId);
- if (!ATConfig.isAndroidNetworkInstalled("Admob", ATConfig.NONCHINA_COUNTRY))
+
+ if (!ATConfig.isNetworkInstalledByName("Admob", ATConfig.OS_ANDROID))
{
ATLog.log("addGoogleApplicationIdIfNeeded() >>> Admob not install.");
if (googleApplicationIdMetaData != null) googleApplicationIdMetaData.Remove();
return;
}
- var appId = ATPluginSetting.Instance.AdMobAndroidAppId;
+ var appId = ATConfig.getAdmobAppIdByOs(ATConfig.OS_ANDROID);
// Log error if the App ID is not set.
if (string.IsNullOrEmpty(appId) || !appId.StartsWith("ca-app-pub-"))
{
diff --git a/Assets/AnyThinkPlugin/Script/Editor/ATPostProcessBuildAndroid.cs.meta b/Assets/AnyThinkPlugin/Script/Editor/ATPostProcessBuildAndroid.cs.meta
index 9106c94..4bab9b8 100644
--- a/Assets/AnyThinkPlugin/Script/Editor/ATPostProcessBuildAndroid.cs.meta
+++ b/Assets/AnyThinkPlugin/Script/Editor/ATPostProcessBuildAndroid.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: a62affbda13454692bd833665283012b
+guid: be367c330856340a4a9626db43b8917b
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkPlugin/Script/Editor/ATPostProcessBuildiOS.cs b/Assets/AnyThinkPlugin/Script/Editor/ATPostProcessBuildiOS.cs
index 8025408..d931489 100644
--- a/Assets/AnyThinkPlugin/Script/Editor/ATPostProcessBuildiOS.cs
+++ b/Assets/AnyThinkPlugin/Script/Editor/ATPostProcessBuildiOS.cs
@@ -48,7 +48,7 @@ namespace AnyThink.Scripts.Editor
dynamicLibraryPathsToEmbed.Add(Path.Combine("Pods/", "BigoADS/BigoADS/BigoADS.xcframework"));
dynamicLibraryPathsToEmbed.Add(Path.Combine("Pods/", "BigoADS/BigoADS/OMSDK_Bigosg.xcframework"));
dynamicLibraryPathsToEmbed.Add(Path.Combine("Pods/", "HyBid/PubnativeLite/PubnativeLite/OMSDK-1.3.29/OMSDK_Pubnativenet.xcframework"));
-
+ dynamicLibraryPathsToEmbed.Add(Path.Combine("Pods/", "Fyber_Marketplace_SDK/IASDKCore/IASDKCore.xcframework"));
return dynamicLibraryPathsToEmbed;
@@ -164,13 +164,13 @@ namespace AnyThink.Scripts.Editor
private static void AddGoogleApplicationIdIfNeeded(PlistDocument plist)
{
- if (!ATConfig.isIOSNetworkInstalled("Admob", ATConfig.NONCHINA_COUNTRY))
+ if (!ATConfig.isNetworkInstalledByName("Admob", ATConfig.OS_IOS))
{
ATLog.log("addGoogleApplicationIdIfNeeded() >>> Admob not install.");
return;
}
-
- var appId = ATPluginSetting.Instance.AdMobIosAppId;
+ //获取admob app id
+ var appId = ATConfig.getAdmobAppIdByOs(ATConfig.OS_IOS);
if (string.IsNullOrEmpty(appId) || !appId.StartsWith("ca-app-pub-"))
{
diff --git a/Assets/AnyThinkPlugin/Script/Editor/ATPostProcessBuildiOS.cs.meta b/Assets/AnyThinkPlugin/Script/Editor/ATPostProcessBuildiOS.cs.meta
index 905c410..048e705 100644
--- a/Assets/AnyThinkPlugin/Script/Editor/ATPostProcessBuildiOS.cs.meta
+++ b/Assets/AnyThinkPlugin/Script/Editor/ATPostProcessBuildiOS.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: db5ce930061584ac383e17723a51940c
+guid: 2e2b9e45df1464e4ca34d6674718bb2a
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkPlugin/Script/Editor/ATProcessBuildGradleAndroid.cs b/Assets/AnyThinkPlugin/Script/Editor/ATProcessBuildGradleAndroid.cs
index 6656f31..267f23b 100644
--- a/Assets/AnyThinkPlugin/Script/Editor/ATProcessBuildGradleAndroid.cs
+++ b/Assets/AnyThinkPlugin/Script/Editor/ATProcessBuildGradleAndroid.cs
@@ -8,6 +8,10 @@ using System.Xml.Linq;
using UnityEditor;
using UnityEditor.Android;
using System.Text.RegularExpressions;
+using System.Diagnostics;
+using UnityEngine;
+using System.Text;
+
namespace AnyThink.Scripts.Editor
{
@@ -35,7 +39,9 @@ namespace AnyThink.Scripts.Editor
// replaceAppBuildPluginVersion(path);
#endif
// replaceAppBuildPluginVersion(path);
- // handleNetworksConfit(path);
+ handleNetworksConfit(path);
+ // handleNetworkResMerge(path);
+ // callGradleTask(path);
}
//修改项目的根目录下的build.gradle文件的插件版本号
private static void replaceBuildPluginVersion(string buildGradlePath)
@@ -242,10 +248,10 @@ namespace AnyThink.Scripts.Editor
{
lines.Insert(androidStartIndex + 1, " packagingOptions {\n merge 'META-INF/com.android.tools/proguard/coroutines.pro'\n exclude 'META-INF/*.kotlin_module'\n }");
}
- if (!isConfigAll)
- {
- lines.Insert(androidStartIndex -1, "configurations.all {\n resolutionStrategy {\n force 'androidx.core:core:1.6.0'\n force 'androidx.recyclerview:recyclerview:1.1.0' \n }\n}");
- }
+ // if (!isConfigAll)
+ // {
+ // lines.Insert(androidStartIndex -1, "configurations.all {\n resolutionStrategy {\n force 'androidx.core:core:1.6.0'\n force 'androidx.recyclerview:recyclerview:1.1.0' \n }\n}");
+ // }
}
// configurations.all {
// resolutionStrategy {
@@ -265,6 +271,84 @@ namespace AnyThink.Scripts.Editor
}
}
}
+
+ private static void handleNetworkResMerge(string path) {
+ ATLog.log("handleNetworkResMerge() >>> path: " + path);
+#if UNITY_2019_3_OR_NEWER
+ var buildGradlePath = Path.Combine(path, "../launcher/build.gradle");
+#else
+ var buildGradlePath = Path.Combine(path, "launcher/build.gradle");
+#endif
+ List lines = new List();
+ bool isAdded = false;
+
+ using (StreamReader reader = new StreamReader(buildGradlePath))
+ {
+ string line;
+ while ((line = reader.ReadLine()) != null)
+ {
+ if (line.Contains("task handleNetworkResMerge")) {
+ isAdded = true;
+ }
+ lines.Add(line);
+ }
+ }
+ if (isAdded) {
+ return;
+ }
+ using (StreamReader reader = new StreamReader("Assets/AnyThinkPlugin/Script/Editor/network_res_handle.gradle"))
+ {
+ string line;
+ while ((line = reader.ReadLine()) != null)
+ {
+ lines.Add(line);
+ }
+ }
+ using (StreamWriter writer = new StreamWriter(buildGradlePath))
+ {
+ foreach (string line in lines)
+ {
+ writer.WriteLine(line);
+ }
+ }
+ }
+
+ private static void callGradleTask(string path) {
+ // 设置你想要启动的Gradle任务
+ string gradleTask = "handleNetworkResMerge"; // 例如: assembleDebug or assembleRelease
+
+ // 开始一个新的进程来执行Gradle任务
+ ProcessStartInfo psi = new ProcessStartInfo();
+ psi.FileName = Application.platform == RuntimePlatform.WindowsEditor ? "cmd" : "bash";
+ psi.Arguments = Application.platform == RuntimePlatform.WindowsEditor ?
+ $"/c gradlew {gradleTask}" : // Windows cmd命令
+ $"-c './gradlew {gradleTask}'"; // UNIX bash命令
+ psi.UseShellExecute = false;
+ psi.StandardOutputEncoding = Encoding.UTF8;
+ psi.StandardErrorEncoding = Encoding.UTF8;
+ psi.RedirectStandardOutput = true;
+ psi.RedirectStandardError = true;
+ psi.CreateNoWindow = true;
+ psi.WorkingDirectory = "/Users/quinx/Desktop/workspace_topon/sdk_source/a_unity_demo/TestAnyThinkUnityPlugin/Library/Bee/Android/Prj/Mono2x/Gradle"; // 这里应该是你的Android项目路径
+
+ ATLog.log("callGradleTask() >>> path: " + path);
+
+ using (var process = Process.Start(psi))
+ {
+ // 读取输出信息
+ while (!process.StandardOutput.EndOfStream)
+ {
+ var line = process.StandardOutput.ReadLine();
+ UnityEngine.Debug.Log(line);
+ }
+ // 读取错误信息
+ while (!process.StandardError.EndOfStream)
+ {
+ var line = process.StandardError.ReadLine();
+ UnityEngine.Debug.LogError(line);
+ }
+ }
+ }
}
}
#endif
\ No newline at end of file
diff --git a/Assets/AnyThinkPlugin/Script/Editor/ATProcessBuildGradleAndroid.cs.meta b/Assets/AnyThinkPlugin/Script/Editor/ATProcessBuildGradleAndroid.cs.meta
index 20239a2..4e34584 100644
--- a/Assets/AnyThinkPlugin/Script/Editor/ATProcessBuildGradleAndroid.cs.meta
+++ b/Assets/AnyThinkPlugin/Script/Editor/ATProcessBuildGradleAndroid.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: d626fd92437ac43b0ab872491daa1322
+guid: 311da97c47b0c4a21a96c7f310f9d8ad
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkPlugin/Script/Editor/AnyThinkPlugin.Script.Editor.asmdef.meta b/Assets/AnyThinkPlugin/Script/Editor/AnyThinkPlugin.Script.Editor.asmdef.meta
index a7ebee8..1050012 100644
--- a/Assets/AnyThinkPlugin/Script/Editor/AnyThinkPlugin.Script.Editor.asmdef.meta
+++ b/Assets/AnyThinkPlugin/Script/Editor/AnyThinkPlugin.Script.Editor.asmdef.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 24e73b2b839c146639f94882952d2e53
+guid: fe7f15635ecfd4b0a9b59690ece5d0c6
AssemblyDefinitionImporter:
externalObjects: {}
userData:
diff --git a/Assets/AnyThinkPlugin/Script/Editor/anythink_network_security_config.xml.meta b/Assets/AnyThinkPlugin/Script/Editor/anythink_network_security_config.xml.meta
index 2e098d3..e194903 100644
--- a/Assets/AnyThinkPlugin/Script/Editor/anythink_network_security_config.xml.meta
+++ b/Assets/AnyThinkPlugin/Script/Editor/anythink_network_security_config.xml.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 05050f3d6dbb54149aea8c057ee0f776
+guid: 9d4c4072cdc0f40c0b81bc2dc3d2dac2
TextScriptImporter:
externalObjects: {}
userData:
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager.meta b/Assets/AnyThinkPlugin/Script/IntegrationManager.meta
index 7ceea9f..a37f9c0 100644
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager.meta
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 8649549cff74e4d32b74b48ea17250bb
+guid: 15152ff8d13714d7eac85917600912d8
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor.meta b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor.meta
index 8f42818..5ab3d65 100644
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor.meta
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: ffa4e194d92494cefa94fd3adb9dcb93
+guid: 6d4b4203581584a20bfcf8c8570437f6
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATAssetDatabaseManager.cs b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATAssetDatabaseManager.cs
deleted file mode 100644
index b58cc69..0000000
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATAssetDatabaseManager.cs
+++ /dev/null
@@ -1,148 +0,0 @@
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.IO;
-using System.Text.RegularExpressions;
-using UnityEditor;
-using UnityEngine;
-using UnityEngine.Serialization;
-using AnyThink.Scripts.IntegrationManager.Editor;
-using Network = AnyThink.Scripts.IntegrationManager.Editor.Network;
-using IntegrationManager = AnyThink.Scripts.IntegrationManager.Editor.ATIntegrationManager;
-
-public class ATAssetDatabaseManager : ScriptableObject
-{
- public const string SettingsExportPath = "Assets/AnyThinkPlugin/Resources/Assets/ATAssetDatabaseManager.asset";
-
- private static ATAssetDatabaseManager instance;
- public Network importingNetwork = null;
-
- public delegate void DownloadPluginProgressCallback(string pluginName, float progress, bool done);
- public delegate void ImportPackageCompletedCallback(Network network);
-
- public DownloadPluginProgressCallback downloadPluginProgressCallback;
- public ImportPackageCompletedCallback importPackageCompletedCallback;
-
- // public Network importingNetwork;
-
- public static ATAssetDatabaseManager Instance
- {
- get
- {
- if (instance == null)
- {
- var settingsDir = Path.GetDirectoryName(SettingsExportPath);
- if (!Directory.Exists(settingsDir))
- {
- Directory.CreateDirectory(settingsDir);
- }
- string settingsFilePath = SettingsExportPath;
-
- instance = AssetDatabase.LoadAssetAtPath(settingsFilePath);
- if (instance != null) return instance;
-
- instance = CreateInstance();
- AssetDatabase.CreateAsset(instance, settingsFilePath);
- // init();
- }
-
- return instance;
- }
- }
-
- private ATAssetDatabaseManager()
- {
- init();
- }
-
- private void init()
- {
- ATLog.log("ATAssetDatabaseManager inited");
-
- AssetDatabase.importPackageCompleted += packageName =>
- {
- ATLog.logFormat("importPackageCompleted() >>> packageName: {0} importingNetwork: {1}", new object[] { packageName, importingNetwork });
- if (!IsImportingNetwork(packageName)) return;
- ATLog.log("importPackageCompleted() >>> import succeed.");
- // ATConfig.saveInstalledNetworkVersion(packageName, )
- // var pluginParentDir = PluginParentDirectory;
- // var isPluginOutsideAssetsDir = IsPluginOutsideAssetsDirectory;
- // MovePluginFilesIfNeeded(pluginParentDir, isPluginOutsideAssetsDir);
- // AddLabelsToAssetsIfNeeded(pluginParentDir, isPluginOutsideAssetsDir);
- AssetDatabase.Refresh();
-
- CallImportPackageCompletedCallback(importingNetwork);
- // importingNetwork = null;
- setImportingNetworkNull();
- };
-
- AssetDatabase.importPackageCancelled += packageName =>
- {
- ATLog.logFormat("importPackageCancelled() >>> packageName: {0}", new object[] { packageName });
- if (!IsImportingNetwork(packageName)) return;
-
- // MaxSdkLogger.UserDebug("Package import cancelled.");
- // importingNetwork = null;
- setImportingNetworkNull();
- };
-
- AssetDatabase.importPackageFailed += (packageName, errorMessage) =>
- {
- ATLog.logFormat("importPackageFailed() >>> packageName: {0}, errorMsg: {1}", new object[] { packageName, errorMessage });
- if (!IsImportingNetwork(packageName)) return;
-
- // MaxSdkLogger.UserError(errorMessage);
- // importingNetwork = null;
- setImportingNetworkNull();
- };
- }
-
- private void setImportingNetworkNull()
- {
- // ATPluginSetting.Instance.ImportingNetwork = null;
- importingNetwork = null;
- }
-
- public void CallDownloadPluginProgressCallback(string pluginName, float progress, bool isDone)
- {
- if (downloadPluginProgressCallback == null) return;
-
- downloadPluginProgressCallback(pluginName, progress, isDone);
- }
-
- public void CallImportPackageCompletedCallback(Network network)
- {
- ATLog.log("CallImportPackageCompletedCallback() >>> network: " + network + " importPackageCompletedCallback: " + importPackageCompletedCallback);
- if (network != null)
- {
- ATConfig.saveInstalledNetworkVersion(network.Name, network.LatestVersions);
- // ATIntegrationManager.Instance.UpdateCurrentVersions(network);
- }
- if (importPackageCompletedCallback == null) return;
- importPackageCompletedCallback(network);
- }
-
- public string GetPluginFileName(Network network)
- {
- // return network.Name.ToLowerInvariant() + "_" + network.LatestVersions.Unity + ".unitypackage";
- return network.PluginFileName;
- }
-
- private bool IsImportingNetwork(string packageName)
- {
- // Note: The pluginName doesn't have the '.unitypacakge' extension included in its name but the pluginFileName does. So using Contains instead of Equals.
- //window系统packageName是:项目路径/AnyThinkCore,Mac系统是: AnyThinkCore
- #if UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN
- if (packageName.Contains("\\"))
- {
- string[] packageNameArray = packageName.Split('\\');
- if (packageNameArray != null && packageNameArray.Length > 0)
- {
- packageName = packageNameArray[packageNameArray.Length -1];
- }
- }
- #endif
- return importingNetwork != null && GetPluginFileName(importingNetwork).Contains(packageName);
- }
-
-}
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATAssetDatabaseManager.cs.meta b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATAssetDatabaseManager.cs.meta
deleted file mode 100644
index a0c5aad..0000000
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATAssetDatabaseManager.cs.meta
+++ /dev/null
@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: e1c2a723fcc7d4a5cad5c4b082740029
-MonoImporter:
- externalObjects: {}
- serializedVersion: 2
- defaultReferences: []
- executionOrder: 0
- icon: {instanceID: 0}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATAssetPostprocessor.cs b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATAssetPostprocessor.cs
index 8cbaff5..414812a 100644
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATAssetPostprocessor.cs
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATAssetPostprocessor.cs
@@ -32,6 +32,7 @@ public class ATAssetPostprocessor : AssetPostprocessor
{
log("Moved Asset: " + movedAssets[i] + " from: " + movedFromAssetPaths[i]);
}
+
}
void OnPreprocessAsset()
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATConfig.cs b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATConfig.cs
index 5812124..6ead263 100644
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATConfig.cs
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATConfig.cs
@@ -3,11 +3,12 @@ using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Linq;
+using System.Text;
using System.Xml.Linq;
using UnityEditor;
using UnityEngine;
using UnityEngine.Networking;
-using AnyThink.Scripts.Assets;
+// using AnyThink.Scripts.Assets;
using System.Text.RegularExpressions;
namespace AnyThink.Scripts.IntegrationManager.Editor
@@ -15,179 +16,212 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
public class ATConfig
{
-public static string PLUGIN_VERSION = "2.0.3";
+public static string PLUGIN_VERSION = "2.1.0";
public static bool isDebug = false;
- private static string LAST_SELECT_COUNTRY_KEY = "country_key"; //国家
+
+ public static int OS_ANDROID = 1;
+ public static int OS_IOS = 2;
public static int CHINA_COUNTRY = 1;
public static int NONCHINA_COUNTRY = 2;
- public static string ANYTHINK_SDK_FILES_PATH = "Assets/AnyThinkAds";
- //国内core aar包的父目录
- public static string CHINA_ANDROID_CORE_FILES_PATH = "Assets/AnyThinkAds/Plugins/Android/China/anythink_base/";
- public static string NONCHINA_ANDROID_CORE_FILES_PATH = "Assets/AnyThinkAds/Plugins/Android/NonChina/anythink_base/";
- //国内Android network aar包的父目录
- public static string CHINA_ANDROID_NETWORK_FILES_PARENT_PATH = "Assets/AnyThinkAds/Plugins/Android/China/mediation/";
- //海外Android network 依赖文件的目录
- public static string NONCHINA_ANDROID_NETWORK_FILES_PARENT_PATH = "Assets/AnyThinkAds/Plugins/Android/NonChina/mediation/";
- //iOS network依赖文件的目录,不区分国家
- public static string IOS_NETWORK_FILES_PARENT_PATH = "Assets/AnyThinkAds/Plugins/iOS/";
+ public static string ANYTHINK_SDK_FILES_PATH = "Assets/AnyThinkPlugin/AnyThinkAds";
+ //国内Android core包的相关目录
+ public static string[] CHINA_ANDROID_CORE_FILES_ARRAY = {Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/Android/China/Editor"),
+ Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/Android/China/anythink_base"),
+ Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/Android/China/mediation_plugin")};
+ //海外Android core包的相关目录
+ public static string[] NON_CHINA_ANDROID_CORE_FILES_ARRAY = {Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/Android/NonChina/anythink_base"),
+ Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/Android/NonChina/Editor")};
+ //国内core aar包的父目录
+ public static string CHINA_ANDROID_CORE_FILES_PATH = Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/Android/China/anythink_base/");
+ public static string NONCHINA_ANDROID_CORE_FILES_PATH = Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/Android/NonChina/anythink_base/");
+ //国内Android network aar包的父目录
+ public static string CHINA_ANDROID_NETWORK_FILES_PARENT_PATH = Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/Android/China/mediation/");
+ //海外Android network 依赖文件的目录
+ public static string NONCHINA_ANDROID_NETWORK_FILES_PARENT_PATH = Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/Android/NonChina/mediation/");
+ //iOS network依赖文件的目录,不区分国家
+ public static string IOS_NETWORK_FILES_PARENT_PATH = Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/iOS/China/");
+ public static string NONCHINA_IOS_NETWORK_FILES_PARENT_PATH = Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/iOS/NonChina/");
+ //network json文件名
+ public static string network_data_file_name = "network_data.json";
+ //插件设置的数据
+ private static string plugin_setting_data_path = "Assets/AnyThinkPlugin/Resources/json/" + PLUGIN_VERSION;
+ private static string plugin_setting_data_file_name = "plugin_setting_data.json";
+
+ //保存插件设置的数据,保存时机:安装core包、选择国家、切换SDK、androidX设置发生变化时
+ public static void savePluginSettingData(PluginSettingData settingData)
+ {
+ var directoryPath = plugin_setting_data_path;
+ // 确保目标文件夹存在
+ if (!Directory.Exists(directoryPath))
+ {
+ // 如果目录不存在,则创建它
+ Directory.CreateDirectory(directoryPath);
+ }
+ string fullPath = Path.Combine(directoryPath, plugin_setting_data_file_name);
+ string settingDataStr = JsonUtility.ToJson(settingData);
+ ATLog.log("savePluginSettingData() >>> fullPath: " + fullPath + " settingDataStr: " + settingDataStr);
+ File.WriteAllText(fullPath, settingDataStr);
+ }
+ //获取插件设置的数据
+ public static PluginSettingData getPluginSettingData()
+ {
+ string fullPath = Path.Combine(plugin_setting_data_path, plugin_setting_data_file_name);
+ if (!File.Exists(fullPath)) {
+ return null;
+ }
+ string json = File.ReadAllText(fullPath);
+ if(json == "") {
+ return null;
+ }
+ return JsonUtility.FromJson(json);
+ }
+
+ public static bool removeSdk(int country, int os) {
+ string path = ANYTHINK_SDK_FILES_PATH + "/Plugins";
+ if (os == OS_ANDROID) {
+ path = path + "/Android";
+ } else {
+ path = path + "/iOS";
+ }
+ if (country == CHINA_COUNTRY) {
+ path = path + "/China";
+ } else {
+ path = path + "/NonChina";
+ }
+ if (Directory.Exists(path)) {
+ FileUtil.DeleteFileOrDirectory(path);
+ }
+ if (File.Exists(path + ".meta")) {
+ FileUtil.DeleteFileOrDirectory(path + ".meta");
+ }
+ return true;
+ }
+
+ //移除本地的network
+ public static bool removeInstalledNetwork(Network network, int os)
+ {
+ //修改sdk的配置
+ if (isCoreNetwork(network.Name) && os == OS_ANDROID) {
+ var paths = CHINA_ANDROID_CORE_FILES_ARRAY;
+ if (network.Country == NONCHINA_COUNTRY) {
+ paths = NON_CHINA_ANDROID_CORE_FILES_ARRAY;
+ }
+ foreach(string p in paths) {
+ if (Directory.Exists(p)) {
+ FileUtil.DeleteFileOrDirectory(p);
+ }
+ if (File.Exists(p + ".meta")) {
+ FileUtil.DeleteFileOrDirectory(p + ".meta");
+ }
+ }
+ return true;
+ }
+ var path = getAndroidNetworkPath(network);
+ if (os == OS_IOS) {
+ path = getIosNetworkPath(network);
+ }
+ if (Directory.Exists(path)) {
+ FileUtil.DeleteFileOrDirectory(path);
+ if (File.Exists(path + ".meta")) {
+ FileUtil.DeleteFileOrDirectory(path + ".meta");
+ }
+ }
+ return true;
+ }
// 保存已安装的network到本地
- public static void saveInstalledNetworkVersion(string networkName, Versions v)
+ public static void saveInstalledNetworkVersion(Network network, int os)
{
- Versions versions = v.clone();
- int country = getLocalCountry();
-
- ATLog.log("saveInstalledNetworkVersion() >>> networkName: " + networkName + " unity: " + versions.Unity);
- versions = initUnityForVerions(versions, networkName, country);
-
- string jsonStr = JsonUtility.ToJson(versions);
- string key = networkName + "_" + country;
- // ATConfigAsset2.Instance.saveInstalledNetworkVersion(key, jsonStr);
- PlayerPrefs.SetString(key, jsonStr);
- }
-
- //获取已安装的network版本,包括core network
- public static Versions getInstalledNetworkVersion(string networkName, int country)
- {
- Versions versions = null;
- string sdkJson = string.Empty;
-
- string key = networkName + "_" + country;
-
- // sdkJson = ATConfigAsset2.Instance.getInstalledNetworkVersion(key);
- sdkJson = PlayerPrefs.GetString(key);
-
- ATLog.log("getInstalledNetworkVersion() >>> key: " + key + " sdkJson: " + sdkJson + " country: " + country);
- if (sdkJson == null || sdkJson.Length == 0)
- {
- //适配旧版本插件,避免直接升级SDK
- // if (PlayerPrefs.HasKey(key)) {
- // sdkJson = PlayerPrefs.GetString(key);
- // PlayerPrefs.DeleteKey(key);
- // } else {
- // return null;
- // }
- return null;
+ if (isCoreNetwork(network.Name)) {
+ return;
}
-
- versions = JsonUtility.FromJson(sdkJson);
- versions = initUnityForVerions(versions, networkName, country);
- return versions;
- }
+ var networkDataFileName = network_data_file_name;
+ var networkName = network.Name.ToLower();
+ int country = network.Country;
+ var installedVersions = network.CurrentVersions;
+ if (installedVersions != null) {
+ if (os == OS_ANDROID) {
+ var android_version = installedVersions.Android;
+ //Android
+ if (!string.IsNullOrEmpty(android_version)) {
+ var networkPath = getAndroidNetworkPath(network);
+ ATLog.log("saveInstalledNetworkVersion() >>> android networkPath: " + networkPath + " exist: " + Directory.Exists(networkPath));
+ if (Directory.Exists(networkPath)) {
+ string fullPath = Path.Combine(networkPath, networkDataFileName);
+ var networkData = new NetworkLocalData();
+ networkData.name = networkName;
+ networkData.country = country;
+ networkData.version = android_version;
+ networkData.path = networkPath;
- public static int getLocalCountry()
- {
- string key = LAST_SELECT_COUNTRY_KEY;
- //适配旧版本插件,避免直接升级SDK
- // if (PlayerPrefs.HasKey(key)) {
- // int country = PlayerPrefs.GetInt(key);
- // saveLocalCountry(country);
- // PlayerPrefs.DeleteKey(key);
- // }
- // return ATConfigAsset2.Instance.LocalCountry;
- return PlayerPrefs.GetInt(key, CHINA_COUNTRY);
- }
+ File.WriteAllText(fullPath, JsonUtility.ToJson(networkData));
+ }
+ }
+ } else {
+ //iOS
+ var ios_version = installedVersions.Ios;
+ if (!string.IsNullOrEmpty(ios_version)) {
+ var networkPath = getIosNetworkPath(network);
+ ATLog.log("saveInstalledNetworkVersion() >>> ios networkPath: " + networkPath);
+ if (Directory.Exists(networkPath)) {
+ string fullPath = Path.Combine(networkPath, networkDataFileName);
+ var networkData = new NetworkLocalData();
+ networkData.name = networkName;
+ networkData.country = country;
+ networkData.version = ios_version;
+ networkData.path = networkPath;
- public static void saveLocalCountry(int country)
- {
- // ATConfigAsset2.Instance.LocalCountry = country;
- PlayerPrefs.SetInt(LAST_SELECT_COUNTRY_KEY, country);
- }
-
- public static void removeInstalledNetworkVersion(string networkName, int country)
- {
- string key = networkName + "_" + country;
-
- if (PlayerPrefs.HasKey(key)) {
- PlayerPrefs.DeleteKey(key);
- }
- ATLog.log("removeInstalledNetworkVersion() >>> networkName: " + networkName + " country: " + country);
- // ATConfigAsset2.Instance.removeInstalledNetworkVersion(key);
- }
-
-
- private static Versions initUnityForVerions(Versions versions, string networkName, int country)
- {
- if (versions == null)
- {
- return null;
- }
- //查找本地的android、iOS是否都已安装
- string androidPath = getAndroidNetworkPath(networkName, country);
- bool androidInstalled = isInstalledByPath(androidPath);
- string iosPath = getIosNetworkPath(networkName);
- bool iosInstalled = isInstalledByPath(iosPath);
- if (!androidInstalled && iosInstalled)
- {
- // versions.Android = "";
- versions.Unity = string.Format("ios_{0}", versions.Ios);
- }
- else if (androidInstalled && !iosInstalled)
- {
- // versions.Ios = "";
- versions.Unity = string.Format("android_{0}", versions.Android);
- }
- else if (!androidInstalled && !iosInstalled)
- {
- versions.Unity = "";
- }
- //core network的unity版本是插件版本
- if (networkName.Equals(ATIntegrationManager.AnyThinkNetworkName))
- {
- versions.Unity = ATConfig.PLUGIN_VERSION;
- }
- ATLog.log("initUnityForVerions() >>> networkName: " + networkName + " androidInstalled: " + androidInstalled + " iosInstalled: " + iosInstalled + " unity: " + versions.Unity);
- return versions;
- }
-
- public static bool isNetworkInstalled(string networkName, int country)
- {
- Versions versions = getInstalledNetworkVersion(networkName, country);
- if (versions == null)
- {
- return false;
- }
- if (networkName.Equals(ATIntegrationManager.AnyThinkNetworkName)) //core network判断是否已安装
- {
- string androidPath = getAndroidNetworkPath(networkName, country);
- bool androidInstalled = isInstalledByPath(androidPath);
- string iosPath = getIosNetworkPath(networkName);
- bool iosInstalled = isInstalledByPath(iosPath);
-
- return androidInstalled && iosInstalled;
- } else { //network判断是否已安装
- return !string.IsNullOrEmpty(versions.Unity);
+ File.WriteAllText(fullPath, JsonUtility.ToJson(networkData));
+ }
+ }
+ }
}
}
- public static bool isAndroidNetworkInstalled(string networkName, int country)
- {
- Versions versions = getInstalledNetworkVersion(networkName, country);
- if (versions == null)
- {
- return false;
+ //Core 是否已安装
+ public static bool isCoreNetworkInstalled(PluginSettingData pluginSettingData, int os) {
+ var countrySettingData = pluginSettingData.getCountrySettingData();
+ if (os == OS_ANDROID) {
+ return !string.IsNullOrEmpty(countrySettingData.android_version);
+ } else {
+ return !string.IsNullOrEmpty(countrySettingData.ios_version);
}
- string androidPath = getAndroidNetworkPath(networkName, country);
- bool androidInstalled = isInstalledByPath(androidPath);
- return androidInstalled;
}
- public static bool isIOSNetworkInstalled(string networkName, int country)
+ //Network是否已安装
+ public static bool isNetworkInstalled(Network network, int os)
{
- Versions versions = getInstalledNetworkVersion(networkName, country);
- if (versions == null)
- {
- return false;
+ if (isCoreNetwork(network.Name)) {
+ var pluginSettingData = getPluginSettingData();
+ return isCoreNetworkInstalled(pluginSettingData, os);
}
- string iosPath = getIosNetworkPath(networkName);
- bool iosInstalled = isInstalledByPath(iosPath);
- return iosInstalled;
+ var path = getIosNetworkPath(network);
+ if (os == OS_ANDROID) {
+ path = getAndroidNetworkPath(network);
+ }
+ return File.Exists(Path.Combine(path, network_data_file_name));
}
- private static string getAndroidNetworkPath(string networkName, int country)
+ //Network是否已安装,根据name
+ public static bool isNetworkInstalledByName(string name, int os)
{
- if (networkName.Equals(ATIntegrationManager.AnyThinkNetworkName))
+ var pluginSettingData = getPluginSettingData();
+ if (pluginSettingData != null) {
+ var country = pluginSettingData.curCountry;
+ var network = new Network();
+ network.Name = name;
+ network.Country = country;
+ return isNetworkInstalled(network, os);
+ }
+ return false;
+ }
+
+ private static string getAndroidNetworkPath(Network network)
+ {
+ var networkName = network.Name.ToLower();
+ var country = network.Country;
+ if (isCoreNetwork(networkName))
{
return country == CHINA_COUNTRY ? CHINA_ANDROID_CORE_FILES_PATH : NONCHINA_ANDROID_CORE_FILES_PATH;
}
@@ -197,82 +231,144 @@ public static bool isDebug = false;
}
}
- private static string getIosNetworkPath(string networkName)
+ private static string getIosNetworkPath(Network network)
{
- string defaultResult = IOS_NETWORK_FILES_PARENT_PATH + networkName.ToLower();
- if (networkName.Equals(ATIntegrationManager.AnyThinkNetworkName))
- {
- return IOS_NETWORK_FILES_PARENT_PATH + networkName; //Core network在本地的目录名称首字母是大写
- }
- // else if (networkName.Equals("Pangle"))
+ var networkName = network.Name.ToLower();
+ var country = network.Country;
+ // if (isCoreNetwork(networkName))
// {
- // //获取SDK版本
- // // Network coreNework = ATPluginSetting.Instance.CoreNetwork;
- // // if (coreNework != null && coreNework.CurrentVersions != null)
- // // {
- // // string iosSdkVersion = coreNework.CurrentVersions.Ios;
- // // string compareVersion = "6.1.78";
- // // ATLog.log("getIosNetworkPath() >>> iosSdkVersion: " + iosSdkVersion);
- // // VersionComparisonResult comparisonResult = ATDataUtil.CompareVersions(iosSdkVersion, compareVersion);
- // // if (comparisonResult == VersionComparisonResult.Lesser) //小于6.1.78
- // // {
- // // string pangleName = isSelectedChina() ? "pangle_China" : "pangle_nonChina";
- // // ATLog.log("getIosNetworkPath() >>> pangleName: " + pangleName);
- // // return IOS_NETWORK_FILES_PARENT_PATH + pangleName;
- // // }
- // // }
- // string pangleName = isSelectedChina() ? "pangle_China" : "pangle_nonChina";
- // // ATLog.log("getIosNetworkPath() >>> pangleName: " + pangleName);
- // return IOS_NETWORK_FILES_PARENT_PATH + pangleName;
+ // return IOS_NETWORK_FILES_PARENT_PATH;
+ // } else {
// }
- else if (networkName.Equals("MyTarget"))
- {
- return IOS_NETWORK_FILES_PARENT_PATH + networkName;
+ return country == CHINA_COUNTRY ? IOS_NETWORK_FILES_PARENT_PATH + networkName : NONCHINA_IOS_NETWORK_FILES_PARENT_PATH + networkName;
+ }
+
+
+ public static int getSelectedCountry() {
+ var pluginSettingData = getPluginSettingData();
+ if (pluginSettingData != null) {
+ return pluginSettingData.curCountry;
}
- return defaultResult;
+ return CHINA_COUNTRY;
}
- public static bool isSelectedChina()
- {
- return getLocalCountry() == CHINA_COUNTRY;
+
+ public static bool isCoreNetwork(string networkName) {
+ return Equals(networkName.ToLower(), ATIntegrationManager.AnyThinkNetworkName.ToLower());
}
- public static string[] getNetworkFilesPath(string networkName, int country)
- {
- // if (networkName.Equals(ATIntegrationManager.AnyThinkNetworkName)) {
- // return new string[]{ANYTHINK_SDK_FILES_PATH};
- // }
- string[] filesPath = new string[2];
- filesPath[0] = getAndroidNetworkPath(networkName, country);
- filesPath[1] = getIosNetworkPath(networkName);
- return filesPath;
- }
+ //查找本地是否有已安装network,并进行版本赋值
+ public static void initNetworkLocalData(Network network) {
+ var networkDataFileName = network_data_file_name;
+ var androidPath = getAndroidNetworkPath(network);
+ var iosPath = getIosNetworkPath(network);
- private static bool isInstalledByPath(string path)
- {
- if (Directory.Exists(path))
- {
- string[] files = Directory.GetFiles(path);
- return files != null && files.Length > 0;
+ var androidDataFile = Path.Combine(androidPath, networkDataFileName);
+ var iosDataFile = Path.Combine(iosPath, networkDataFileName);
+
+ var curVersions = network.CurrentVersions;
+ if (curVersions == null) {
+ curVersions = new Versions();
}
- return false;
+
+ if (File.Exists(androidDataFile)) {
+ string a_json = File.ReadAllText(androidDataFile);
+ var a_data = JsonUtility.FromJson(a_json);
+ curVersions.Android = a_data.version;
+ }
+
+ if (File.Exists(iosDataFile)) {
+ string i_json = File.ReadAllText(iosDataFile);
+ var i_data = JsonUtility.FromJson(i_json);
+ curVersions.Ios = i_data.version;
+ }
+ network.CurrentVersions = curVersions;
}
- // private void OnEnable()
- // {
- // EditorApplication.quitting += Save;
- // }
+ //当前是否选择国内地区
+ public static bool isSelectedChina() {
+ var pluginSettingData = getPluginSettingData();
+ if (pluginSettingData != null) {
+ return pluginSettingData.curCountry == CHINA_COUNTRY;
+ }
+ return true;
+ }
- // private void OnDisable()
- // {
- // EditorApplication.quitting -= Save;
- // }
+ //获取admob app id
+ public static string getAdmobAppIdByOs(int os) {
+ var pluginSettingData = getPluginSettingData();
+ var settingData = pluginSettingData.getCountrySettingData();
+ return settingData.getAdmobAppId(os);
+ }
- // private void Save()
- // {
- // // EditorPrefs.SetInt("MySetting", 1); // 保存您的EditorPrefs数据
- // PlayerPrefs.Save(); // 确保数据已被保存到磁盘上
- // }
+ public static bool enableAndroidX() {
+ var pluginSettingData = getPluginSettingData();
+ return pluginSettingData.getCountrySettingData().enableAndroidX;
+ }
+
+ //获取默认选中的地区
+ public static int getDefCountry() {
+ string version = PLUGIN_VERSION;
+ int lastIndex = version.LastIndexOf('.');
+
+ if (lastIndex != -1)
+ {
+ //2.1.0:是区分国内海外的插件,2.1.01:后缀多了1,是只有海外的插件
+ string lastPart = version.Substring(lastIndex + 1);
+ if (lastPart.Length == 2) {
+ return NONCHINA_COUNTRY;
+ }
+ }
+ return CHINA_COUNTRY;
+ }
+
+ public static string[] getCountryArray() {
+ // new string[] { "ChinaMainland", "Overseas" }
+ string version = PLUGIN_VERSION;
+ int lastIndex = version.LastIndexOf('.');
+
+ if (lastIndex != -1)
+ {
+ //2.1.0:是区分国内海外的插件,2.1.01:后缀多了1,是只有海外的插件
+ string lastPart = version.Substring(lastIndex + 1);
+ if (lastPart.Length == 2) {
+ return new string[] { "Overseas" };
+ }
+ }
+ return new string[] { "ChinaMainland", "Overseas" };
+ }
+
+ public static string getRegionIntegrateTip()
+ {
+ //Tips: If ChinaMainland and Oversea are integrated at the same time, there will be compilation conflicts, whether it is Android or iOS platform.
+ //Currently, the Android platform integrates ChinaMainland and Oversea at the same time, which may cause compilation errors or other errors.
+ var pluginSettingData = getPluginSettingData();
+ if (pluginSettingData == null) {
+ return "";
+ }
+ var sb = new StringBuilder();
+ sb.Append("Tips: Currently, ");
+ var android_tip = false;
+ if (pluginSettingData.isBothInstallAndroid()) {
+ sb.Append("the Android platform ");
+ android_tip = true;
+ }
+ var ios_tip = false;
+ if (pluginSettingData.isBothInstallIOS()) {
+ if (android_tip) {
+ sb.Append("and ");
+ }
+ sb.Append("iOS platform ");
+ ios_tip = true;
+ }
+
+ if (android_tip || ios_tip) {
+ sb.Append("integrates ChinaMainland and Oversea at the same time, which may cause compilation error or other errors.");
+ return sb.ToString();
+ } else {
+ return "";
+ }
+ }
}
}
\ No newline at end of file
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATConfig.cs.meta b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATConfig.cs.meta
index 7f80ed6..b5781d2 100644
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATConfig.cs.meta
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATConfig.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: cceee32f5d81d45d2969563d041f6183
+guid: 6bfb7071ec4964e539ff5cf42d38b69c
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATConfigAsset.cs b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATConfigAsset.cs
deleted file mode 100644
index f3bc0f3..0000000
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATConfigAsset.cs
+++ /dev/null
@@ -1,105 +0,0 @@
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.IO;
-using System.Linq;
-using System.Xml.Linq;
-using UnityEditor;
-using UnityEngine;
-using UnityEngine.Networking;
-using UnityEngine.Serialization;
-// using Newtonsoft.Json;
-
-namespace AnyThink.Scripts.Assets
-{
-
- public class ConfigData {
- public int localCountry = 1;
- public Dictionary installedNetworkVersion = new Dictionary();
- }
-
- public class ATConfigAsset
- {
- public string filePath = "Assets/AnyThinkPlugin/Resources/ATConfigData.json";
-
- private static readonly object lockObject = new object(); // 创建一个静态对象作为锁
-
- private static ATConfigAsset instance;
- private ConfigData configData;
-
- private ATConfigAsset() {
-
- }
-
- public static ATConfigAsset Instance
- {
- get
- {
- if (instance == null)
- {
- instance = new ATConfigAsset();
- }
-
- return instance;
- }
- }
-
- public int getLocalCountry() {
- getJsonFile();
- return Instance.configData.localCountry;
- }
-
- public void setLocalCountry(int country) {
- configData.localCountry = country;
- updateJsonFile();
- }
-
- public void saveInstalledNetworkVersion(string key, string version)
- {
- configData.installedNetworkVersion[key] = version;
- ATLog.log("updateJsonFile() >>> saveInstalledNetworkVersion: key = " + key + " version = " + version);
- updateJsonFile();
- }
-
- public void removeInstalledNetworkVersion(string key)
- {
- ATLog.log("updateJsonFile() >>> removeInstalledNetworkVersion: key = " + key);
- if (configData.installedNetworkVersion.ContainsKey(key)) {
- configData.installedNetworkVersion.Remove(key);
- }
- updateJsonFile();
- }
-
- public string getInstalledNetworkVersion(string key)
- {
- getJsonFile();
- if (Instance.configData.installedNetworkVersion.ContainsKey(key)) {
- return Instance.configData.installedNetworkVersion[key];
- }
- return "";
- }
-
- private void updateJsonFile() {
- // lock(lockObject) {
- // if (configData == null) {
- // configData = new ConfigData();
- // }
- // string json = JsonConvert.SerializeObject(configData);
- // System.IO.File.WriteAllText(filePath, json);
- // ATLog.log("updateJsonFile() >>> json: " + json);
- // }
- }
-
- private void getJsonFile() {
- // lock(lockObject) {
- // if (!Directory.Exists(filePath)) {
- // configData = new ConfigData();
- // updateJsonFile();
- // }
- // string jsonString = System.IO.File.ReadAllText(filePath);
- // ATLog.log("getJsonFile() >>> jsonString: " + jsonString);
- // Instance.configData = JsonConvert.DeserializeObject(jsonString);
- // }
- }
- }
-}
\ No newline at end of file
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATConfigAsset.cs.meta b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATConfigAsset.cs.meta
deleted file mode 100644
index 4a0a90a..0000000
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATConfigAsset.cs.meta
+++ /dev/null
@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: b7c1b7fbe91a24b29883c3b8d420768f
-MonoImporter:
- externalObjects: {}
- serializedVersion: 2
- defaultReferences: []
- executionOrder: 0
- icon: {instanceID: 0}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATConfigAsset2.cs b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATConfigAsset2.cs
deleted file mode 100644
index cc67717..0000000
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATConfigAsset2.cs
+++ /dev/null
@@ -1,83 +0,0 @@
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.IO;
-using System.Text.RegularExpressions;
-using UnityEditor;
-using UnityEngine;
-using UnityEngine.Serialization;
-
-namespace AnyThink.Scripts.Assets
-{
- [Serializable]
- public class SerializableDictionary : Dictionary
- {
- }
-
- public class ATConfigAsset2 : ScriptableObject
- {
- public const string SettingsExportPath = "Assets/AnyThinkPlugin/Resources/Assets/ATConfigData.asset";
-
- private static ATConfigAsset2 instance;
-
- public static ATConfigAsset2 Instance
- {
- get
- {
- if (instance == null)
- {
- string settingsFilePath = SettingsExportPath;
- var settingsDir = Path.GetDirectoryName(settingsFilePath);
- if (!Directory.Exists(settingsDir))
- {
- Directory.CreateDirectory(settingsDir);
- }
-
- // instance = AssetDatabase.LoadAssetAtPath(settingsFilePath);
- instance = Resources.Load(settingsFilePath);
- if (instance != null) return instance;
-
- instance = CreateInstance();
- AssetDatabase.CreateAsset(instance, settingsFilePath);
- }
-
- return instance;
- }
- }
-
- [SerializeField] SerializableDictionary installedNetworkVersion = new SerializableDictionary();
- // [SerializeField] string installedNetworkVersionJson = string.Empty;
- [SerializeField] int localCountry = 1;
-
- public int LocalCountry
- {
- get { return Instance.localCountry; }
- set { Instance.localCountry = value; }
- }
-
- public void saveInstalledNetworkVersion(string key, string version)
- {
- Instance.installedNetworkVersion[key] = version;
- }
-
- public void removeInstalledNetworkVersion(string key)
- {
- if (Instance.installedNetworkVersion.ContainsKey(key)) {
- Instance.installedNetworkVersion.Remove(key);
- }
- }
-
- public string getInstalledNetworkVersion(string key)
- {
- if (Instance.installedNetworkVersion.ContainsKey(key)) {
- return Instance.installedNetworkVersion[key];
- }
- return "";
- }
-
- public void SaveAsync()
- {
- EditorUtility.SetDirty(instance);
- }
- }
-}
\ No newline at end of file
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATConfigAsset2.cs.meta b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATConfigAsset2.cs.meta
deleted file mode 100644
index a6e7aad..0000000
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATConfigAsset2.cs.meta
+++ /dev/null
@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: 0542dcc5ae60d457286171ded8d8f526
-MonoImporter:
- externalObjects: {}
- serializedVersion: 2
- defaultReferences: []
- executionOrder: 0
- icon: {instanceID: 0}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATDataUtil.cs b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATDataUtil.cs
index 034806b..a43d0e8 100644
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATDataUtil.cs
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATDataUtil.cs
@@ -12,9 +12,6 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
{
public class ATDataUtil
{
- // private static string LAST_SELECT_COUNTRY_KEY = "country_key"; //当前选择的country
- // public static Network[] chinaNetworks;
- // public static Network[] nonChinaNetworks;
public static Network coreNetwork;
@@ -26,21 +23,69 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
bool isChinaCountry = isChina(country);
ServerNetworks serverNetworks = JsonUtility.FromJson(netowrksJson);
+
+ Network network = pluginData.anyThink;
+ if (network == null) {
+ return null;
+ }
+ var android_version = pluginData.requestParams.androidVersion;
+ var ios_version = pluginData.requestParams.iosVersion;
+
+ var androidSdkVersionList = serverNetworks.android_sdk;
+ var iosSdkVersionList = serverNetworks.ios_sdk;
+
+ ServerNetworkSdk androidNeworkSdk = null;
+ if (!string.IsNullOrEmpty(android_version)) {
+ foreach(ServerNetworkSdk sdk in androidSdkVersionList) {
+ if (Equals(sdk.version, android_version)) {
+ androidNeworkSdk = sdk;
+ }
+ }
+ }
+
+ ServerNetworkSdk iosNeworkSdk = null;
+ if (!string.IsNullOrEmpty(ios_version)) {
+ foreach(ServerNetworkSdk sdk in iosSdkVersionList) {
+ if (Equals(sdk.version, ios_version)) {
+ iosNeworkSdk = sdk;
+ }
+ }
+ }
+ ATLog.log("parseNetworksJson() >>> androidNeworkSdk: " + androidNeworkSdk + " iosNeworkSdk: " + iosNeworkSdk);
+
ServerNetworkInfo[] serverNetworkInfoList;
- Network[] networks;
- if (isChinaCountry)
- {
- serverNetworkInfoList = serverNetworks.ChinaSdk;
- networks = formatServerNetworks(pluginData, country, serverNetworkInfoList);
- // networks = chinaNetworks;
+ Network[] networks = mergeAndroidIosNetworks(getServerNetworkInfo(isChinaCountry, androidNeworkSdk, ATConfig.OS_ANDROID), getServerNetworkInfo(isChinaCountry, iosNeworkSdk, ATConfig.OS_IOS));
+ Array.Sort(networks);
+ ATLog.log("parseNetworksJson() >>> networks.Length: " + networks.Length);
+ //处理本地已安装过的Core和Network数据
+ var countrySettingData = pluginData.pluginSettingData.getCountrySettingData();
+
+ List networkList = new List();
+ foreach(var item in networks) {
+ if (Equals(item.Name, ATIntegrationManager.AnyThinkNetworkName)) {
+ network.Name = item.Name;
+ network.DisplayName = item.DisplayName;
+ network.AndroidDownloadUrl = item.AndroidDownloadUrl;
+ network.iOSDownloadloadUrl = item.iOSDownloadloadUrl;
+ network.PluginFileName = item.PluginFileName;
+ //本地是否有安装core
+ var version = network.CurrentVersions;
+ if (version == null) {
+ version = new Versions();
+ }
+ version.Android = countrySettingData.android_version;
+ version.Ios = countrySettingData.ios_version;
+ network.CurrentVersions = version;
+ network.LatestVersions = item.LatestVersions;
+ } else {
+ // ATLog.log("parseNetworksJson() >>> lastAndroidVersion: " + item.LatestVersions.Android + " lastIosVerion: " + item.LatestVersions.Ios);
+ //本地是否有安装network
+ ATConfig.initNetworkLocalData(item);
+ networkList.Add(item);
+ }
}
- else
- {
- serverNetworkInfoList = serverNetworks.GlobalSdk;
- networks = formatServerNetworks(pluginData, country, serverNetworkInfoList);
- // networks = nonChinaNetworks;
- }
- return networks;
+
+ return networkList.ToArray();
}
catch (Exception e)
{
@@ -58,12 +103,21 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
try
{
var pluginData = new PluginData();
- // var anythink = new Network();
+
ServerPluginVersion serverPluginVersion = JsonUtility.FromJson(serverPluginVersionJson);
- pluginData.networkUrlVersion = serverPluginVersion.networkUrlVersion;
- pluginData.country = ATConfig.getLocalCountry();
- // pluginData.country = 1;
+
+ pluginData.androidVersions = serverPluginVersion.android_versions;
+ pluginData.iosVersions = serverPluginVersion.ios_versions;
pluginData.pluginVersion = serverPluginVersion.pluginVersion;
+ // 初始化本地的core包数据
+ var settingData = ATConfig.getPluginSettingData();
+ if (settingData == null) {
+ settingData = new PluginSettingData();
+ ATConfig.savePluginSettingData(settingData);
+ }
+ pluginData.country = settingData.curCountry;
+ pluginData.pluginSettingData = settingData;
+ pluginData.anyThink = initCoreNetworkWithLocalData(settingData);
return pluginData;
}
catch (Exception e)
@@ -75,209 +129,129 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
return null;
}
- public static Network[] formatServerNetworks(PluginData pluginData, int country, ServerNetworkInfo[] networkInfoList)
- {
- if (networkInfoList == null || networkInfoList.Length == 0)
- {
- return null;
+ public static Network initCoreNetworkWithLocalData(PluginSettingData settingData) {
+ var network = new Network();
+ var versions = new Versions();
+ var countryData = settingData.getCountrySettingData();
+ if (countryData != null) {
+ versions.Android = countryData.android_version;
+ versions.Ios = countryData.ios_version;
}
- int length = networkInfoList.Length;
- List networkList = new List();
-
- for (int i = 0; i < length; i++)
- {
- Network network = new Network();
- ServerNetworkInfo serverInfo = networkInfoList[i];
- network.Name = serverInfo.name;
- network.DisplayName = serverInfo.displayName;
- network.DownloadUrl = serverInfo.downloadUrl;
- network.PluginFileName = serverInfo.pluginFileName;
- Versions latestVersion = new Versions();
- ServerNetworkVersion serverVersion = serverInfo.versions;
- if (serverVersion != null)
- {
- latestVersion.Android = serverVersion.android;
- latestVersion.Ios = serverVersion.ios;
- latestVersion.Unity = serverVersion.unity;
- }
- network.LatestVersions = latestVersion;
-
- networkList.Add(network);
- }
- Network coreNetwork = networkList.First(n => n.Name.Equals(ATIntegrationManager.AnyThinkNetworkName));
- //先初始化core network
- if (coreNetwork != null)
- {
- // 获取当前已安装network的版本号
- Versions curVerions = ATConfig.getInstalledNetworkVersion(coreNetwork.Name, country);
- Versions latestVersion = coreNetwork.LatestVersions;
- if (latestVersion == null)
- {
- latestVersion = new Versions();
- }
- latestVersion.Unity = pluginData.pluginVersion;
- coreNetwork.LatestVersions = latestVersion;
- ATLog.log("coreNetwork latestVersion: " + latestVersion + " curVerions: " + curVerions);
- if (curVerions != null)
- {
- coreNetwork.CurrentVersions = curVerions;
- coreNetwork.CurrentToLatestVersionComparisonResult = getVersionComparisonResult(curVerions, latestVersion, false);
- }
-
- ATPluginSetting.Instance.CoreNetwork = coreNetwork;
- }
- networkList.Remove(coreNetwork);
- //后初始化network
- foreach (var network in networkList)
- {
- Versions curVerion = ATConfig.getInstalledNetworkVersion(network.Name, country);
- network.CurrentVersions = curVerion;
- VersionComparisonResult result = getVersionComparisonResult(curVerion, network.LatestVersions, true);
- ATLog.log("formatServerNetworks() >>> compareResult: " + result);
- network.CurrentToLatestVersionComparisonResult = result;
- }
-
- Network[] networks = (Network[])networkList.ToArray();
- //排序
- Array.Sort(networks);
- return networks;
+ network.CurrentVersions = versions;
+ network.Country = settingData.curCountry;
+ return network;
}
- // public bool isChina()
- // {
- // int result = EditorPrefs.GetInt(LAST_SELECT_COUNTRY_KEY, 1);
- // return result == 1;
- // }
+ public static ServerNetworkInfo[] getServerNetworkInfo(bool isChina, ServerNetworkSdk serverNetworks, int os) {
+ if (serverNetworks == null) {
+ return null;
+ }
+ if (isChina) {
+ return serverNetworks.network_list.china;
+ } else {
+ return serverNetworks.network_list.nonchina;
+ }
+ }
+
+ private static IEnumerable GetUniqueNetworkInfo(ServerNetworkInfo[] androidNetworks, ServerNetworkInfo[] iosNetworks)
+ {
+ // Android独有的
+ var uniqueToAndroid = androidNetworks.Where(a => !iosNetworks.Any(i => i.name == a.name));
+
+ // iOS独有的
+ var uniqueToIos = iosNetworks.Where(i => !androidNetworks.Any(a => a.name == i.name));
+
+ // 合并结果
+ return uniqueToAndroid.Concat(uniqueToIos);
+ }
+
+ //合并Android和iOS的network数据
+ public static Network[] mergeAndroidIosNetworks(ServerNetworkInfo[] androidNetworks, ServerNetworkInfo[] iosNetworks)
+ {
+ int a_length = 0;
+ int i_length = 0;
+ if (androidNetworks != null) {
+ a_length = androidNetworks.Length;
+ }
+ if (iosNetworks != null) {
+ i_length = iosNetworks.Length;
+ }
+ ATLog.log("mergeAndroidIosNetworks() >>> a_length: " + a_length + " i_length: " + i_length);
+
+ int max_length = Math.Max(a_length, i_length);
+ int min_length = Math.Min(a_length, i_length);
+
+ var externalNetworks = androidNetworks;
+ var internalNetworks = iosNetworks;
+ if (a_length < i_length) {
+ externalNetworks = iosNetworks;
+ internalNetworks = androidNetworks;
+ }
+
+ List networkList = new List();
+ ATLog.log("mergeAndroidIosNetworks() >>> max_length: " + max_length + " min_length: " + min_length);
+ for (int i = 0; i < max_length; i++) {
+ var network = new Network();
+ var iNetwork = externalNetworks[i];
+ if (min_length == 0) {
+ //只有集成一个平台
+ network = flatServerNetwork(iNetwork, network);
+ networkList.Add(network);
+ } else {
+ //合并相同的network
+ for (int j = 0; j < min_length; j++) {
+ var jNetwork = internalNetworks[j];
+ if (Equals(iNetwork.name, jNetwork.name)) {
+ network = flatServerNetwork(iNetwork, network);
+ network = flatServerNetwork(jNetwork, network);
+ networkList.Add(network);
+ }
+ }
+ }
+ }
+ //过滤平台的唯一network
+ if (i_length > 0 && a_length > 0) {
+ var serverNetworkInfos = GetUniqueNetworkInfo(androidNetworks, iosNetworks);
+ foreach (var serverNetworkInfo in serverNetworkInfos)
+ {
+ var network = new Network();
+ networkList.Add(flatServerNetwork(serverNetworkInfo, network));
+ }
+ }
+
+ return networkList.ToArray();
+ }
+
+ //后台下载数据转换成本地数据
+ public static Network flatServerNetwork(ServerNetworkInfo serverInfo, Network network)
+ {
+ network.Name = serverInfo.name;
+ network.DisplayName = serverInfo.displayName;
+ network.Country = serverInfo.country;
+ network.PluginFileName = serverInfo.pluginFileName;
+
+ var versions = network.LatestVersions;
+ if (versions == null) {
+ versions = new Versions();
+ }
+ if (serverInfo.os == ATConfig.OS_ANDROID) { //Android
+ network.AndroidDownloadUrl = serverInfo.downloadUrl;
+ versions.Android = serverInfo.version;
+ } else { //iOS
+ network.iOSDownloadloadUrl = serverInfo.downloadUrl;
+ versions.Ios = serverInfo.version;
+ }
+ ATLog.log("flatServerNetwork() >>> name: " + network.Name + " androidVersion: " + versions.Android + " iosVersion: " + versions.Ios);
+ network.LatestVersions = versions;
+ return network;
+ }
public static bool isChina(int country)
{
return country == ATConfig.CHINA_COUNTRY;
}
- public static VersionComparisonResult getVersionComparisonResult(Versions curVersion, Versions latestVersion, bool isNetwork = false)
- {
- if (curVersion == null || latestVersion == null)
- {
- return VersionComparisonResult.Equal;
- }
- string curUnity = curVersion.Unity;
- string latestUnity = latestVersion.Unity;
- string curAndroid = curVersion.Android;
- string latestAndroid = latestVersion.Android;
- string curIos = curVersion.Ios;
- string latestIos = latestVersion.Ios;
- VersionComparisonResult compareVersionResult = VersionComparisonResult.Equal;
- if (isNetwork)
- {
- if (string.IsNullOrEmpty(curUnity) || string.IsNullOrEmpty(latestUnity))
- {
- return VersionComparisonResult.Equal;
- }
- compareVersionResult = CompareUnityMediationVersions(curVersion.Unity, latestVersion.Unity);
- }
- else
- {
- var unityVersionComparison = CompareVersions(curUnity, latestUnity);
- var androidVersionComparison = CompareVersions(curAndroid, latestAndroid);
- var iosVersionComparison = CompareVersions(curIos, latestIos);
-
- if (unityVersionComparison == VersionComparisonResult.Equal &&
- androidVersionComparison == VersionComparisonResult.Equal &&
- iosVersionComparison == VersionComparisonResult.Equal)
- {
- compareVersionResult = VersionComparisonResult.Equal;
- }
- else if (unityVersionComparison == VersionComparisonResult.Lesser ||
- androidVersionComparison == VersionComparisonResult.Lesser ||
- iosVersionComparison == VersionComparisonResult.Lesser)
- {
- compareVersionResult = VersionComparisonResult.Lesser;
- }
- else
- {
- compareVersionResult = VersionComparisonResult.Greater;
- }
- }
- return compareVersionResult;
- }
-
- // public static long compareVersionToInt(string currentVersion, string currentNewVersion)
- // {
- // if (currentVersion == null || currentVersion.Length == 0
- // || currentNewVersion == null || currentNewVersion.Length == 0)
- // {
- // return 0;
- // }
-
- // ATLog.log("compareVersionToInt() >>> before curVersion: " + currentVersion + " curNewVersion: " + currentNewVersion);
- // string curVersion = currentVersion.Replace(".", "").Replace("_", "").Replace("android", "").Replace("ios", "").Replace(" ", "");
- // string curNewVersion = currentNewVersion.Replace(".", "").Replace("_", "").Replace("android", "").Replace("ios", "").Replace(" ", "");
- // ATLog.log("compareVersionToInt() >>> after curVersion: " + curVersion + " curNewVersion: " + curNewVersion);
- // long intCurVersion = long.Parse(curVersion);
- // long intNewVersion = long.Parse(curNewVersion);
- // return intNewVersion - intCurVersion;
- // }
-
- //比较Unity集成的版本
- public static VersionComparisonResult CompareUnityMediationVersions(string versionA, string versionB)
- {
- if (versionA.Equals(versionB)) return VersionComparisonResult.Equal;
-
- // Unity version would be of format: android_w.x.y.z_ios_a.b.c.d
- // For Android only versions it would be: android_w.x.y.z
- // For iOS only version it would be: ios_a.b.c.d
-
- // After splitting into their respective components, the versions would be at the odd indices.
- var versionAComponents = versionA.Split('_').ToList();
- var versionBComponents = versionB.Split('_').ToList();
-
- var androidComparison = VersionComparisonResult.Equal;
- if (versionA.Contains("android") && versionB.Contains("android"))
- {
- var androidVersionA = versionAComponents[1];
- var androidVersionB = versionBComponents[1];
- androidComparison = CompareVersions(androidVersionA, androidVersionB);
-
- // Remove the Android version component so that iOS versions can be processed.
- versionAComponents.RemoveRange(0, 2);
- versionBComponents.RemoveRange(0, 2);
- }
- else if (versionA.Contains("android"))
- {
- androidComparison = VersionComparisonResult.Greater;
-
- // Remove the Android version component so that iOS versions can be processed.
- versionAComponents.RemoveRange(0, 2);
- }
- else if (versionB.Contains("android"))
- {
- androidComparison = VersionComparisonResult.Lesser;
-
- // Remove the Android version component so that iOS version can be processed.
- versionBComponents.RemoveRange(0, 2);
- }
-
- var iosComparison = VersionComparisonResult.Equal;
- if (versionA.Contains("ios") && versionB.Contains("ios"))
- {
- var iosVersionA = versionAComponents[1];
- var iosVersionB = versionBComponents[1];
- iosComparison = CompareVersions(iosVersionA, iosVersionB);
- }
- else if (versionA.Contains("ios"))
- {
- iosComparison = VersionComparisonResult.Greater;
- }
- else if (versionB.Contains("ios"))
- {
- iosComparison = VersionComparisonResult.Lesser;
- }
-
-
- // If either one of the Android or iOS version is greater, the entire version should be greater.
- return (androidComparison == VersionComparisonResult.Greater || iosComparison == VersionComparisonResult.Greater) ? VersionComparisonResult.Greater : VersionComparisonResult.Lesser;
- }
//只比较Android、iOS
public static VersionComparisonResult CompareVersions(string versionA, string versionB)
{
@@ -286,22 +260,6 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
return VersionComparisonResult.Equal;
}
- // var versionAComponents = versionA.Replace(".", "");
- // var versionBComponents = versionB.Replace(".", "");
- // var charArrayA = versionAComponents.ToCharArray();
- // var charArrayB = versionBComponents.ToCharArray();
-
- // for(var i = 0; i < charArrayA.Length; i++)
- // {
- // var aVersion = 0;
- // int.TryParse(charArrayA[i].ToString(), out aVersion);
- // var bVersion = 0;
- // int.TryParse(charArrayB[i].ToString(), out bVersion);
-
- // if (aVersion < bVersion) return VersionComparisonResult.Lesser;
- // if (aVersion > bVersion) return VersionComparisonResult.Greater;
- // }
-
try
{
var aVersionArrays = versionA.Split('.');
@@ -338,47 +296,43 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
ATLog.logError("CompareVersions failed: " + e.Message);
}
- // // Split the version string into beta component and the underlying version.
- // int piece;
-
- // // Compare the non beta component of the version string.
- // var versionAComponents = versionA.Split('.').Select(version => int.TryParse(version, out piece) ? piece : 0).ToArray();
- // var versionBComponents = versionB.Split('.').Select(version => int.TryParse(version, out piece) ? piece : 0).ToArray();
- // var length = Mathf.Max(versionAComponents.Length, versionBComponents.Length);
- // for (var i = 0; i < length; i++)
- // {
- // var aComponent = i < versionAComponents.Length ? versionAComponents[i] : 0;
- // var bComponent = i < versionBComponents.Length ? versionBComponents[i] : 0;
-
- // if (aComponent < bComponent) return VersionComparisonResult.Lesser;
-
- // if (aComponent > bComponent) return VersionComparisonResult.Greater;
- // }
-
return VersionComparisonResult.Equal;
}
}
- //后端下发的Plugin、android、iOS版本号
+ //下发的插件数据:{"pluginVersion": "2.1.0", "platformName": "AnyThink", "ios_versions": ["6.2.88"], "android_versions": ["6.2.93"]}
[Serializable]
public class ServerPluginVersion
{
public string platformName;
- public string networkUrlVersion;
+ // public string networkUrlVersion;
public string pluginVersion;
- public string androidVersion;
- public string iosVersion;
- public string[] versionList;
+ public string[] android_versions;
+ public string[] ios_versions;
}
[Serializable]
public class ServerNetworks
{
- public ServerNetworkInfo[] GlobalSdk;
- public ServerNetworkInfo[] ChinaSdk;
- public string platformName;
- public string version;
+ public string plugin_version;
+ public ServerNetworkSdk[] ios_sdk;
+ public ServerNetworkSdk[] android_sdk;
}
+
+ [Serializable]
+ public class ServerNetworkSdk
+ {
+ public string version;
+ public ServerNetworkListObj network_list;
+ }
+
+ [Serializable]
+ public class ServerNetworkListObj
+ {
+ public ServerNetworkInfo[] china;
+ public ServerNetworkInfo[] nonchina;
+ }
+
[Serializable]
public class ServerNetworkInfo
{
@@ -386,7 +340,10 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
public string displayName;
public string downloadUrl;
public string pluginFileName;
- public ServerNetworkVersion versions;
+ public string version;
+ public int os;
+ public int country;
+ // public ServerNetworkVersion versions;
}
[Serializable]
public class ServerNetworkVersion
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATDataUtil.cs.meta b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATDataUtil.cs.meta
index b891f96..3c46f4e 100644
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATDataUtil.cs.meta
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATDataUtil.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 576fff4f2b7dd423684961e90cf9e6d5
+guid: ca6f64ad482de4a5aa184f487313de57
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATDownloadHandler.cs.meta b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATDownloadHandler.cs.meta
index ae87191..9c6067f 100644
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATDownloadHandler.cs.meta
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATDownloadHandler.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 6e94dc3c256ae4d7b93f6dc4d2fe1b72
+guid: 95bc78f07c0814a968d38ba189ba7ed4
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATEditorCoroutine.cs.meta b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATEditorCoroutine.cs.meta
index a9b76e8..4783a05 100644
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATEditorCoroutine.cs.meta
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATEditorCoroutine.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: bd7ab13837946459a934fb64b4a54f7b
+guid: 1c2384eee7cf4456e9d116ab275c07b5
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATIntegrationManager.cs b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATIntegrationManager.cs
index 63dd131..f301008 100644
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATIntegrationManager.cs
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATIntegrationManager.cs
@@ -11,6 +11,8 @@ using UnityEngine;
using UnityEngine.Networking;
using UnityEditor.PackageManager.Requests;
using UnityEditor.PackageManager;
+using System.Threading.Tasks;
+using System.Threading;
namespace AnyThink.Scripts.IntegrationManager.Editor
{
@@ -18,15 +20,13 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
{
public static ATIntegrationManager Instance = new ATIntegrationManager();
- private UnityWebRequest downloadPluginRequest;
+ // private UnityWebRequest downloadPluginRequest;
private const string AnyThinkAds = "AnyThinkAds";
//AnyThink的unity插件
public static string AnyThinkNetworkName = "Core";
- private const string ATSdkAssetExportPath = "AnyThinkAds/Script/";
- public static readonly string GradleTemplatePath = Path.Combine("Assets/Plugins/Android", "mainTemplate.gradle");
- public static readonly string DefaultPluginExportPath = Path.Combine("Assets", AnyThinkAds);
+ private PluginData mPluginData;
private ATIntegrationManager()
{
@@ -35,57 +35,14 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
public void CancelDownload()
{
- if (downloadPluginRequest == null) return;
+ // if (downloadPluginRequest == null) return;
- downloadPluginRequest.Abort();
- }
-
- public IEnumerator loadNetworksData(PluginData pluginData, Action callback)
- {
- if (pluginData == null)
- {
- callback(null);
- }
- else
- {
- var networksRequest = UnityWebRequest.Get(ATNetInfo.getNetworkListUrl(pluginData.networkUrlVersion));
- var webRequest = networksRequest.SendWebRequest();
- while (!webRequest.isDone)
- {
- yield return new WaitForSeconds(0.1f);
- }
-
-#if UNITY_2020_1_OR_NEWER
- if (networksRequest.result != UnityWebRequest.Result.Success)
-#elif UNITY_2017_2_OR_NEWER
- if (networksRequest.isNetworkError || networksRequest.isHttpError)
-#else
- if (networksRequest.isError)
-#endif
- {
- Debug.Log("loadNetworksData failed.");
- callback(pluginData);
- }
- else
- {
- //解析network列表的版本数据
- string netowrksJson = networksRequest.downloadHandler.text;
- pluginData.mediatedNetworks = ATDataUtil.parseNetworksJson(pluginData, netowrksJson);
- //初始化AnyThink的core network
- Network coreNetwork = ATPluginSetting.Instance.CoreNetwork;
- if (coreNetwork != null)
- {
- pluginData.anyThink = coreNetwork;
- }
- ATLog.log("loadNetworksData() >>> mediatedNetworks: " + pluginData.mediatedNetworks);
- callback(pluginData);
- }
- }
+ // downloadPluginRequest.Abort();
}
public IEnumerator loadPluginData(Action callback)
{
- var anythinkVersionRequest = UnityWebRequest.Get(ATNetInfo.getPluginConfigUrl());
+ var anythinkVersionRequest = UnityWebRequest.Get(ATNetInfo.getPluginConfigUrl(ATConfig.PLUGIN_VERSION));
var webRequest = anythinkVersionRequest.SendWebRequest();
while (!webRequest.isDone)
{
@@ -108,60 +65,55 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
//解析Anythink的版本数据
string anythinkVersionJson = anythinkVersionRequest.downloadHandler.text;
PluginData pluginData = ATDataUtil.parsePluginDataJson(anythinkVersionJson);
- Debug.Log("loadPluginData succeed. country: " + pluginData.country);
+ Debug.Log("loadPluginData succeed. country: " + pluginData.country + " androidVersions: "
+ + pluginData.androidVersions + " iosVersions: " + pluginData.iosVersions);
+ mPluginData = pluginData;
callback(pluginData);
}
}
- //默认下载core包,在下载完network的数据时。
- public void downloadCorePlugin(PluginData pluginData)
+ public IEnumerator loadNetworksData(PluginData pluginData, Action callback)
{
- Network network = pluginData.anyThink;
- int country = pluginData.country;
-
- if (network == null)
- {
- return;
- }
- ATLog.log("downloadCorePlugin() >>> networkName: " + network.Name + " country: " + country);
- bool isInstalled = ATConfig.isNetworkInstalled(network.Name, country);
- ATLog.log("downloadCorePlugin() >>> isInstalled: " + isInstalled);
- if (!isInstalled)
- {
- downloadPlugin(network);
- // ATEditorCoroutine.startCoroutine(downloadPluginWithEnumerator(network, false));
- } else {
- handlerVersionAdapter(pluginData);
- }
- }
- public void networkInstallOrUpdate(PluginData pluginData, Network network)
- {
- bool uninstall = true;
- if (pluginData != null)
+ Network network = pluginData.anyThink;
+ if (pluginData == null)
{
- Network coreNetwork = pluginData.anyThink;
- if (coreNetwork != null)
- {
- if (coreNetwork.isReqiureUpdate()) //network有更新,并且core包也有更新,则更新core包,然后core包更新完,会自动去更新全部network
- {
- uninstall = false;
- network = coreNetwork;
- }
- }
+ callback(null);
}
- int country = ATConfig.getLocalCountry();
- if (ATConfig.isNetworkInstalled(network.Name, country))
- {
- if (uninstall)
- {
- uninstallNetwork(network, country);
- }
- downloadPlugin(network);
+ else if (pluginData.requestParams == null) {
+ ATLog.log("loadNetworksData() >>> pluginData.requestParams is null");
+ callback(pluginData);
}
else
{
- downloadPlugin(network);
+ var networksRequest = UnityWebRequest.Get(ATNetInfo.getNetworkListUrl(ATConfig.PLUGIN_VERSION));
+ var webRequest = networksRequest.SendWebRequest();
+ while (!webRequest.isDone)
+ {
+ yield return new WaitForSeconds(0.1f);
+ }
+
+#if UNITY_2020_1_OR_NEWER
+ if (networksRequest.result != UnityWebRequest.Result.Success)
+#elif UNITY_2017_2_OR_NEWER
+ if (networksRequest.isNetworkError || networksRequest.isHttpError)
+#else
+ if (networksRequest.isError)
+#endif
+ {
+ Debug.Log("loadNetworksData failed.");
+ callback(pluginData);
+ }
+ else
+ {
+ //解析network列表的版本数据
+ string netowrksJson = networksRequest.downloadHandler.text;
+ ATLog.log("loadNetworksData() >>> netowrksJson: " + netowrksJson);
+ pluginData.mediatedNetworks = ATDataUtil.parseNetworksJson(pluginData, netowrksJson);
+ ATLog.log("loadNetworksData() >>> mediatedNetworks: " + pluginData.mediatedNetworks);
+ mPluginData = pluginData;
+ callback(pluginData);
+ }
}
}
@@ -171,28 +123,32 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
/// Network for which to download the current version.
/// Whether or not to show the import window when downloading. Defaults to true.
///
- public void downloadPlugin(Network network, bool showImport = true)
+ public void downloadPlugin(Network network, int os =1, bool showImport = false)
{
- ATEditorCoroutine.startCoroutine(downloadPluginWithEnumerator(network, showImport));
+ ATEditorCoroutine.startCoroutine(downloadPluginWithEnumerator(network, os, showImport));
}
- public IEnumerator downloadPluginWithEnumerator(Network network, bool showImport = true)
+ public IEnumerator downloadPluginWithEnumerator(Network network, int os, bool showImport)
{
- ATLog.log("downloadPluginWithEnumerator() >>> network: " + network);
- if (downloadPluginRequest != null)
- {
- downloadPluginRequest.Dispose();
- }
- var path = Path.Combine(Application.temporaryCachePath, ATAssetDatabaseManager.Instance.GetPluginFileName(network));
+ ATLog.log("downloadPluginWithEnumerator() >>> networkName: " + network.Name + " os: " + os);
+ // if (downloadPluginRequest != null)
+ // {
+ // downloadPluginRequest.Dispose();
+ // }
+ var path = Path.Combine(Application.temporaryCachePath, network.PluginFileName);
ATLog.log("downloadPluginWithEnumerator() >>> path: " + path);
#if UNITY_2017_2_OR_NEWER
var downloadHandler = new DownloadHandlerFile(path);
#else
var downloadHandler = new ATDownloadHandler(path);
#endif
- downloadPluginRequest = new UnityWebRequest(network.DownloadUrl)
+ var downloadUrl = network.AndroidDownloadUrl;
+ if (os == ATConfig.OS_IOS)
{
- method = UnityWebRequest.kHttpVerbGET,
+ downloadUrl = network.iOSDownloadloadUrl;
+ }
+ UnityWebRequest downloadPluginRequest = new UnityWebRequest(downloadUrl)
+ { method = UnityWebRequest.kHttpVerbGET,
downloadHandler = downloadHandler
};
@@ -206,7 +162,8 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
yield return new WaitForSeconds(0.1f); // Just wait till downloadPluginRequest is completed. Our coroutine is pretty rudimentary.
if (operation.progress != 1 && operation.isDone)
{
- CallDownloadPluginProgressCallback(network.DisplayName, operation.progress, operation.isDone);
+ // CallDownloadPluginProgressCallback(network.DisplayName, operation.progress, operation.isDone, os);
+ UpdateCurrentVersions(network, os);
}
}
@@ -222,273 +179,270 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
}
else
{
- CallDownloadPluginProgressCallback(network.DisplayName, 1, true);
- // importingNetwork = network;
- ATAssetDatabaseManager.Instance.importingNetwork = network;
- AssetDatabase.Refresh();
AssetDatabase.ImportPackage(path, showImport);
+ UpdateCurrentVersions(network, os);
+ AssetDatabase.Refresh();
}
downloadPluginRequest.Dispose();
downloadPluginRequest = null;
}
- private static void CallDownloadPluginProgressCallback(string pluginName, float progress, bool isDone)
- {
- var callback = ATAssetDatabaseManager.Instance.downloadPluginProgressCallback;
- if (callback == null) return;
+ //默认下载core包,在下载完network的数据时。
+ public void downloadCorePlugin(PluginData pluginData)
+ {
+ mPluginData = pluginData;
+ var requestParams = pluginData.requestParams;
+ var pluginSettingData = pluginData.pluginSettingData;
- callback(pluginName, progress, isDone);
+ bool isIosInstalled = ATConfig.isCoreNetworkInstalled(pluginSettingData, ATConfig.OS_IOS);
+ bool isAndroidInstalled = ATConfig.isCoreNetworkInstalled(pluginSettingData, ATConfig.OS_ANDROID);
+ ATLog.log("downloadCorePlugin() >>> isIosInstalled: " + isIosInstalled + " isAndroidInstalled: " + isAndroidInstalled);
+
+ Network network = pluginData.anyThink;
+ int os = requestParams.os;
+ if (os == ATConfig.OS_ANDROID) {
+ if (!isAndroidInstalled) {
+ downloadPlugin(network, os);
+ } else {
+ //判断是否需要切换SDK
+ var latestVersions = network.LatestVersions;
+ var curVersion = network.CurrentVersions;
+ if (latestVersions.Android != curVersion.Android) {
+ //先删除掉core包
+ ATConfig.removeSdk(pluginData.country, os);
+ removeNetworkVersions(pluginData, os);
+ //赋值当前版本为空
+ curVersion.Android = "";
+ //重新下载core包
+ downloadPlugin(network, os);
+ //重新下载已安装的network
+ redownloadNetworksPlugin(pluginData, os);
+ }
+ }
+ } else if (os == ATConfig.OS_IOS){
+ if (!isIosInstalled) {
+ downloadPlugin(network, os);
+ } else {
+ //判断是否需要切换SDK
+ var latestVersions = network.LatestVersions;
+ var curVersion = network.CurrentVersions;
+ if (latestVersions.Ios != curVersion.Ios) {
+ //先删除掉core包
+ ATConfig.removeSdk(pluginData.country, os);
+ removeNetworkVersions(pluginData, os);
+ //赋值当前版本为空
+ curVersion.Ios = "";
+ //重新下载core包
+ downloadPlugin(network, os);
+ //重新下载已安装的network
+ redownloadNetworksPlugin(pluginData, os);
+ }
+ }
+ }
}
- // private static void CallImportPackageCompletedCallback(Network network)
- // {
- // ATLog.log("CallImportPackageCompletedCallback() >>> network: " + network);
- // if (network != null)
- // {
- // ATConfig.saveInstalledNetworkVersion(network.Name, network.LatestVersions);
- // }
- // var callback = ATAssetDatabaseManager.Instance.importPackageCompletedCallback;
- // if (callback == null) return;
- // callback(network);
- // }
-
- //更新network已安装的版本
- public void UpdateCurrentVersions(Network network)
- {
- if (network == null)
- {
+ //当切换SDK版本时,需要重新下载已安装的network
+ private void redownloadNetworksPlugin(PluginData pluginData, int os) {
+ var mediatedNetworks = pluginData.mediatedNetworks;
+ var needInstallNetworkList = new List();
+ foreach(Network network in mediatedNetworks) {
+ var currentVersion = network.CurrentVersions;
+ if (currentVersion != null) {
+ if (os == ATConfig.OS_ANDROID) {
+ if (!string.IsNullOrEmpty(currentVersion.Android)) {
+ needInstallNetworkList.Add(network);
+ }
+ } else {
+ if (!string.IsNullOrEmpty(currentVersion.Ios)) {
+ needInstallNetworkList.Add(network);
+ }
+ }
+ }
+ }
+ if (needInstallNetworkList.Count() == 0) {
return;
}
- bool isCoreNetwork = network.Name.Equals(AnyThinkNetworkName);
- Versions curVerions = ATConfig.getInstalledNetworkVersion(network.Name, ATConfig.getLocalCountry());
- network.CurrentVersions = curVerions;
- network.CurrentToLatestVersionComparisonResult = ATDataUtil.getVersionComparisonResult(curVerions, network.LatestVersions, !isCoreNetwork);
- // if (isCoreNetwork)
- // {
- // network.CurrentVersions.Unity = ATConfig.PLUGIN_VERSION;
- // }
- ATLog.log("UpdateCurrentVersions() >>> Name: " + network.Name + " latest Unity Version: " + network.LatestVersions.Unity);
+ Thread.Sleep(500);
+ ATEditorCoroutine.startCoroutine(UpgradeAllNetworks(needInstallNetworkList, os));
}
- public void uninstallNetwork(Network network, int country)
- {
- foreach (var filePath in ATConfig.getNetworkFilesPath(network.Name, country))
+
+ private IEnumerator UpgradeAllNetworks(List networks, int os) {
+ EditorApplication.LockReloadAssemblies();
+ foreach (var network in networks)
{
- if (Directory.Exists(filePath))
- {
- FileUtil.DeleteFileOrDirectory(filePath);
+
+ yield return downloadPluginWithEnumerator(network, os, false);
+ }
+ EditorApplication.UnlockReloadAssemblies();
+ }
+
+ public void networkInstallOrUpdate(PluginData pluginData, Network network, int os)
+ {
+ downloadPlugin(network, os);
+ }
+
+ //更新network已安装的版本
+ private void UpdateCurrentVersions(Network network, int os)
+ {
+ var latestVersions = network.LatestVersions;
+ var versions = network.CurrentVersions;
+ if (versions == null) {
+ versions = new Versions();
+ }
+ if (os == ATConfig.OS_ANDROID) {
+ versions.Android = latestVersions.Android;
+ } else {
+ versions.Ios = latestVersions.Ios;
+ }
+ network.CurrentVersions = versions;
+
+ // await Task.Delay(1000);
+ Thread.Sleep(1000);
+ //下面的逻辑会延迟一秒后执行,确保unitypackage先解压到本地
+ ATConfig.saveInstalledNetworkVersion(network, os);
+ ATLog.log("UpdateCurrentVersions() >>> AndroidVersion: " + versions.Android);
+ //保存Core Networkde
+ if (ATConfig.isCoreNetwork(network.Name)) {
+ var countrySettingData = mPluginData.pluginSettingData.getCountrySettingData();
+ if (os == ATConfig.OS_ANDROID) {
+ countrySettingData.android_version = latestVersions.Android;
+ } else {
+ countrySettingData.ios_version = latestVersions.Ios;
}
- if (File.Exists(filePath + ".meta"))
- {
- FileUtil.DeleteFileOrDirectory(filePath + ".meta");
+
+ ATConfig.savePluginSettingData(mPluginData.pluginSettingData);
+ }
+ // ATLog.log("UpdateCurrentVersions() >>> Name: " + network.Name + " latest Unity Version: " + network.LatestVersions.Unity);
+ }
+
+ //点击了界面的network删除按钮
+ public void uninstallNetwork(Network network, int os)
+ {
+ var result = ATConfig.removeInstalledNetwork(network, os);
+ if (result) {
+ if (os == ATConfig.OS_ANDROID){
+ network.CurrentVersions.Android = "";
+ } else {
+ network.CurrentVersions.Ios = "";
}
}
- ATConfig.removeInstalledNetworkVersion(network.Name, country);
- UpdateCurrentVersions(network);
}
- public void updateAnyThinkPlugin(PluginData pluginData)
- {
- Network coreNetwork = pluginData.anyThink;
- bool unityUpdate = ATDataUtil.CompareVersions(coreNetwork.CurrentVersions.Unity, pluginData.pluginVersion) == VersionComparisonResult.Lesser;
- if (unityUpdate)
- {
- Application.OpenURL(ATNetInfo.getPluginDownloadUrl(pluginData.pluginVersion));
- // ATEditorCoroutine.startCoroutine(downloadAnyThinkPlugin(pluginData.pluginVersion));
- }
- else
- {
- downloadPlugin(coreNetwork);
- }
+ //切换国家
+ public void switchCountry(PluginData pluginData, int country) {
+ pluginData.country = country;
+
+ var pluginSettingData = pluginData.pluginSettingData;
+ pluginSettingData.curCountry = country;
+
+ ATConfig.savePluginSettingData(pluginSettingData);
}
- public IEnumerator downloadAnyThinkPlugin(string pluginVersion)
- {
- Network network = new Network();
- network.Name = "AnyThinkPlugin";
- network.PluginFileName = ATNetInfo.getPluginFileName(pluginVersion);
- network.DownloadUrl = ATNetInfo.getPluginDownloadUrl(pluginVersion);
- //https://topon-sdk-release.oss-cn-hangzhou.aliyuncs.com/Unity/Plugin/2.0.0/AnyThinkPlugin_2.0.0.unitypackage
- var path = Path.Combine(Application.temporaryCachePath, network.PluginFileName);
- ATLog.log("downloadAnyThinkPlugin() >>> path: " + path);
-#if UNITY_2017_2_OR_NEWER
- var downloadHandler = new DownloadHandlerFile(path);
-#else
- var downloadHandler = new ATDownloadHandler(path);
-#endif
- var downloadPluginRequest = new UnityWebRequest(network.DownloadUrl)
- {
- method = UnityWebRequest.kHttpVerbGET,
- downloadHandler = downloadHandler
- };
+ //获取AndroidX开关状态
+ public bool enableAndroidX(PluginData pluginData) {
+ if (pluginData == null) {
+ return false;
+ }
+ var pluginSettingData = pluginData.pluginSettingData;
+ if (pluginSettingData == null) {
+ return false;
+ }
+ CountrySettingData countrySettingData = pluginSettingData.getCountrySettingData();
-#if UNITY_2017_2_OR_NEWER
- var operation = downloadPluginRequest.SendWebRequest();
-#else
- var operation = downloadPluginRequest.Send();
-#endif
- while (!operation.isDone)
- {
- yield return new WaitForSeconds(0.1f); // Just wait till downloadPluginRequest is completed. Our coroutine is pretty rudimentary.
- if (operation.progress != 1 && operation.isDone)
- {
- CallDownloadPluginProgressCallback(network.Name, operation.progress, operation.isDone);
+ return countrySettingData.enableAndroidX;
+ }
+
+ //设置并保存AndroidX开关状态
+ public void saveAndroidXSetting(PluginData pluginData, bool enable) {
+ ATLog.log("saveAndroidXSetting() >>> enable: " + enable);
+ var pluginSettingData = pluginData.pluginSettingData;
+ CountrySettingData countrySettingData = pluginSettingData.getCountrySettingData();
+ countrySettingData.enableAndroidX = enable;
+
+ ATConfig.savePluginSettingData(pluginSettingData);
+ }
+
+ //根据系统判断Admob是否有安装
+ public bool isAdmobInstalled(int os) {
+ return ATConfig.isNetworkInstalledByName("Admob", os);
+ }
+
+ public string getAdmobAppIdByOs(PluginData pluginData, int os) {
+ if (pluginData == null) {
+ return "";
+ }
+ //android_admob_app_id
+ var countrySettingData = pluginData.pluginSettingData.getCountrySettingData();
+ return countrySettingData.getAdmobAppId(os);
+ }
+
+ //设置保存Admob app id
+ public void setAdmobAppidByOs(PluginData pluginData, int os, string appId) {
+ if (pluginData == null || pluginData.pluginSettingData == null) {
+ return;
+ }
+ var countrySettingData = pluginData.pluginSettingData.getCountrySettingData();
+ countrySettingData.setAdmobAppId(appId, os);
+
+ ATConfig.savePluginSettingData(pluginData.pluginSettingData);
+ }
+
+ //删除某个版本的SDK
+ public void deleteSdk(PluginData pluginData, string sdkVersion, int os) {
+ ATLog.log("deleteSdk() >>> sdkVersion: " + sdkVersion + " os: " + os);
+ //删除本地文件
+ ATConfig.removeSdk(pluginData.country, os);
+ //修改UI显示
+ removeNetworkVersions(pluginData, os, true);
+ var curVersions = pluginData.anyThink.CurrentVersions;
+ //修改sdk本地配置文件
+ var pluginSettingData = pluginData.pluginSettingData;
+ CountrySettingData countrySettingData = pluginSettingData.getCountrySettingData();
+
+ if (os == ATConfig.OS_ANDROID) {
+ curVersions.Android = "";
+ countrySettingData.android_version = "";
+ } else {
+ curVersions.Ios = "";
+ countrySettingData.ios_version = "";
+ }
+
+ ATConfig.savePluginSettingData(pluginSettingData);
+ }
+
+ private void removeNetworkVersions(PluginData pluginData, int os, bool isDeleteSdk = false) {
+ if (isDeleteSdk) {
+ var mediatedNetworks = pluginData.mediatedNetworks;
+ if (mediatedNetworks != null && mediatedNetworks.Length > 0) {
+ foreach(Network network in mediatedNetworks) {
+ var currentVersion = network.CurrentVersions;
+ if (currentVersion != null) {
+ if (os == ATConfig.OS_ANDROID) {
+ currentVersion.Android = "";
+ } else {
+ currentVersion.Ios = "";
+ }
+ }
+ var latestVersions = network.LatestVersions;
+ if (latestVersions != null) {
+ if (os == ATConfig.OS_ANDROID) {
+ latestVersions.Android = "";
+ } else {
+ latestVersions.Ios = "";
+ }
+ }
+ }
}
- }
-
-#if UNITY_2020_1_OR_NEWER
- if (downloadPluginRequest.result != UnityWebRequest.Result.Success)
-#elif UNITY_2017_2_OR_NEWER
- if (downloadPluginRequest.isNetworkError || downloadPluginRequest.isHttpError)
-#else
- if (downloadPluginRequest.isError)
-#endif
- {
- ATLog.logError(downloadPluginRequest.error);
- }
- else
- {
- CallDownloadPluginProgressCallback(network.Name, 1, true);
- // importingNetwork = network;
- ATAssetDatabaseManager.Instance.importingNetwork = network;
- AssetDatabase.Refresh();
- AssetDatabase.ImportPackage(path, false);
- }
- }
- //处理插件版本,pangle、csj兼容问题
- public void handlerVersionAdapter(PluginData pluginData) {
- string comparePluginVersion = "2.0.1";
- //插件版本>=2.0.1
- VersionComparisonResult comparisonResult = ATDataUtil.CompareVersions(pluginData.pluginVersion, comparePluginVersion);
- if (comparisonResult == VersionComparisonResult.Equal || comparisonResult == VersionComparisonResult.Greater) {
- Network coreNetwork = pluginData.anyThink;
- bool isChina = ATConfig.isSelectedChina();
- if (isChina) {
- //国内,Android需要把原来已安装的pangle目录删除掉,2.0.1插件后用csj作为目录
- string androidPanglePath = ATConfig.CHINA_ANDROID_NETWORK_FILES_PARENT_PATH + "pangle";
- deleteFilePath(androidPanglePath);
+ NetworkRequestParams requestParams = pluginData.requestParams;
+ if (requestParams == null) {
+ return;
}
- //海外,iOS需要把原来已安装的pangle_nonChina目录删除掉,2.0.1插件后用pangle作为目录
- string iOSNonChinaPanglePath = ATConfig.IOS_NETWORK_FILES_PARENT_PATH + "pangle_nonChina";
- //国内,iOS需要把原来已安装的pangle_China目录删除掉,2.0.1插件后用csj作为目录
- string iOSPanglePath = ATConfig.IOS_NETWORK_FILES_PARENT_PATH + "pangle_China";
- deleteFilePath(iOSNonChinaPanglePath);
- deleteFilePath(iOSPanglePath);
- }
+ if (os == ATConfig.OS_ANDROID) { //Android
+ requestParams.androidVersion = "";
+ } else {
+ requestParams.iosVersion = "";
+ }
+ }
}
-
- private void deleteFilePath(string filePath) {
- if (Directory.Exists(filePath))
- {
- FileUtil.DeleteFileOrDirectory(filePath);
- }
- if (File.Exists(filePath + ".meta"))
- {
- FileUtil.DeleteFileOrDirectory(filePath + ".meta");
- }
- }
- }
-
-
- [Serializable]
- public class PluginData
- {
- public string networkUrlVersion;
- public string pluginVersion; //插件版本
- public int country = ATConfig.CHINA_COUNTRY; //默认是1=china
- public Network anyThink;
- public Network[] mediatedNetworks;
- }
-
- [Serializable]
- public class Network : IComparable
- {
- //
- // Sample network data:
- //
- // {
- // "Name": "adcolony",
- // "DisplayName": "AdColony",
- // "DownloadUrl": "https://bintray.com/applovin/Unity-Mediation-Packages/download_file?file_path=AppLovin-AdColony-Adapters-Android-3.3.10.1-iOS-3.3.7.2.unitypackage",
- // "PluginFileName": "AppLovin-AdColony-Adapters-Android-3.3.10.1-iOS-3.3.7.2.unitypackage",
- // "DependenciesFilePath": "MaxSdk/Mediation/AdColony/Editor/Dependencies.xml",
- // "LatestVersions" : {
- // "Unity": "android_3.3.10.1_ios_3.3.7.2",
- // "Android": "3.3.10.1",
- // "Ios": "3.3.7.2"
- // }
- // }
- //
-
- public string Name;
- public string DisplayName;
- public string DownloadUrl;
- public string DependenciesFilePath;
- public string PluginFileName;
- public string[] PluginFilePaths;
- public Versions LatestVersions; //最新版本
- public Versions CurrentVersions; //当前版本
- [NonSerialized] public VersionComparisonResult CurrentToLatestVersionComparisonResult = VersionComparisonResult.Equal;
- // [NonSerialized] public bool RequiresUpdate = CurrentToLatestVersionComparisonResult == VersionComparisonResult.Lesser;
-
- public bool isReqiureUpdate()
- {
- return CurrentToLatestVersionComparisonResult == VersionComparisonResult.Lesser;
- }
-
- public int CompareTo(Network other)
- {
- return this.DisplayName.CompareTo(other.DisplayName);
- }
- }
-
- ///
- /// A helper data class used to get current versions from Dependency.xml files.
- ///
- [Serializable]
- public class Versions
- {
-
- public string Unity;
-
- public string Android;
-
- public string Ios;
-
- public override bool Equals(object value)
- {
- var versions = value as Versions;
-
- return versions != null
- && (Unity == null || Unity.Equals(versions.Unity))
- && (Android == null || Android.Equals(versions.Android))
- && (Ios == null || Ios.Equals(versions.Ios));
- }
-
- public bool HasEqualSdkVersions(Versions versions)
- {
- return versions != null && versions.Android == Android && versions.Ios == Ios;
- }
-
- public override int GetHashCode()
- {
- return new { Unity, Android, Ios }.GetHashCode();
- }
-
- public Versions clone()
- {
- Versions cloneObj = new Versions();
- cloneObj.Android = Android;
- cloneObj.Ios = Ios;
- cloneObj.Unity = Unity;
-
- return cloneObj;
- }
- }
-
- public enum VersionComparisonResult
- {
- Lesser = -1,
- Equal = 0,
- Greater = 1
}
}
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATIntegrationManager.cs.meta b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATIntegrationManager.cs.meta
index b8881a9..314c0f8 100644
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATIntegrationManager.cs.meta
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATIntegrationManager.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: ca09ecd1405454636bb7d71caa70d821
+guid: 6db074a8f860d40e8b8fd6a1e459ec50
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATIntegrationManagerWindow.cs b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATIntegrationManagerWindow.cs
index 38d31bd..07a9c0c 100644
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATIntegrationManagerWindow.cs
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATIntegrationManagerWindow.cs
@@ -5,6 +5,8 @@ using System.Linq;
using UnityEditor;
using UnityEngine;
using UnityEngine.UI;
+using System.Collections.Generic;
+using System.Text;
namespace AnyThink.Scripts.IntegrationManager.Editor
{
@@ -23,15 +25,16 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
private GUIStyle wrapTextLabelStyle;
private GUIStyle linkLabelStyle;
private GUIStyle iconStyle;
+ private GUIStyle tipTextStyle;
private Texture2D uninstallIcon;
private Texture2D alertIcon;
private Texture2D warningIcon;
private Vector2 scrollPosition;
- private static readonly Vector2 windowMinSize = new Vector2(750, 750);
- private const float actionFieldWidth = 60f;
+ private static readonly Vector2 windowMinSize = new Vector2(850, 750);
+ private const float actionFieldWidth = 80f;
private const float upgradeAllButtonWidth = 80f;
- private const float networkFieldMinWidth = 100f;
- private const float versionFieldMinWidth = 190f;
+ private const float networkFieldMinWidth = 200f;
+ private const float versionFieldMinWidth = 200f;
private const float privacySettingLabelWidth = 200f;
private const float networkFieldWidthPercentage = 0.22f;
private const float versionFieldWidthPercentage = 0.36f; // There are two version fields. Each take 40% of the width, network field takes the remaining 20%.
@@ -52,12 +55,15 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
private bool shouldShowGoogleWarning;
private int curSelectCountryInt;
// private int dropdownIndex = 0;
+ private int androidVersionPopupIndex;
+ private int iosVersionPopupIndex;
public static void ShowManager()
{
var manager = GetWindow(utility: true, title: windowTitle, focus: true);
manager.minSize = windowMinSize;
+ // manager.maxSize = windowMinSize;
}
//定义UI的Style
private void Awake()
@@ -99,6 +105,11 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
padding = new RectOffset(1, 1, 1, 1)
};
+ tipTextStyle = new GUIStyle(EditorStyles.label)
+ {
+ normal = { textColor = Color.yellow }
+ };
+
// Load uninstall icon texture.
var uninstallIconData = File.ReadAllBytes(ATSdkUtil.GetAssetPathForExportPath(uninstallIconExportPath));
uninstallIcon = new Texture2D(100, 100, TextureFormat.RGBA32, false); // 1. Initial size doesn't matter here, will be automatically resized once the image asset is loaded. 2. Set mipChain to false, else the texture has a weird blurry effect.
@@ -114,25 +125,13 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
warningIcon = new Texture2D(100, 100, TextureFormat.RGBA32, false);
warningIcon.LoadImage(warningIconData);
- ATLog.log("Awake() >>> called");
- ATAssetDatabaseManager.Instance.downloadPluginProgressCallback = OnDownloadPluginProgress;
- ATAssetDatabaseManager.Instance.importPackageCompletedCallback = OnImportPackageCompleted;
- ATLog.log("OnEnable() >>> called");
loadPluginData();
}
//这个方法在插件启动时会调用,然后脚本重新加载时也会重新调用,所以加载数据放在Awake中
private void OnEnable()
{
- if (ATAssetDatabaseManager.Instance.downloadPluginProgressCallback == null)
- {
- ATAssetDatabaseManager.Instance.downloadPluginProgressCallback = OnDownloadPluginProgress;
- }
- if (ATAssetDatabaseManager.Instance.importPackageCompletedCallback == null)
- {
- ATAssetDatabaseManager.Instance.importPackageCompletedCallback = OnImportPackageCompleted;
- }
}
private void OnDisable()
@@ -150,6 +149,10 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
AssetDatabase.SaveAssets();
}
+ private void OnDestroy() {
+ ATLog.log("OnDestroy() >>> called");
+ }
+
private void OnGUI()
{
@@ -163,22 +166,22 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
{
scrollPosition = scrollView.scrollPosition;
GUILayout.Space(5);
- EditorGUILayout.LabelField("Region (Only for Android, iOS is not affected by region)", titleLabelStyle);
+ // EditorGUILayout.LabelField("Region (Only for Android, iOS is not affected by region)", titleLabelStyle);
+ EditorGUILayout.LabelField("Region", titleLabelStyle);
DrawCountryUI();
+ DrawCountrySwitchTip();
+ DrawAndroidXUI();
+ DrawAdombAppId();
EditorGUILayout.LabelField("AnyThink Plugin Details", titleLabelStyle);
//显示插件版本号
DrawPluginDetails();
- using (new EditorGUILayout.HorizontalScope(GUILayout.ExpandHeight(false)))
- {
- EditorGUILayout.LabelField("Mediated Networks", titleLabelStyle);
- DrawUpgradeAllButton();
- }
- // Draw mediated networks
+ //绘制SDK版本下架提示
+ DrawSdkVersionOffTip();
+ //绘制Networks
DrawMediatedNetworks();
}
if (GUI.changed)
{
- ATPluginSetting.Instance.SaveAsync();
AssetDatabase.SaveAssets();
}
}
@@ -208,22 +211,30 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
}
}
- private void OnImportPackageCompleted(Network network)
- {
- // var parentDirectory = network.Name.Equals(ATIntegrationManager.AnyThinkNetworkName) ? ATIntegrationManager.PluginParentDirectory : ATIntegrationManager.MediationSpecificPluginParentDirectory;
- if (pluginData != null && network != null && network.Name.Equals(ATIntegrationManager.AnyThinkNetworkName))
- {
- pluginData.anyThink = network;
- ATPluginSetting.Instance.CoreNetwork = network;
- //更新了core包,则自动更新全部network
- if (NetworksRequireUpgrade())
- {
- startUpgradeAllNetwork();
- }
+ public void DeleteSdkVersion(PluginData pluginData, int index, int os) {
+ var sdkVersion = pluginData.androidVersions[index];
+ if (os == ATConfig.OS_IOS) {
+ sdkVersion = pluginData.iosVersions[index];
}
- ATIntegrationManager.Instance.UpdateCurrentVersions(network);
- // UpdateShouldShowGoogleWarningIfNeeded();
+ ATIntegrationManager.Instance.deleteSdk(pluginData, sdkVersion, os);
}
+
+ public void ExChangeSDKVersion(PluginData pluginData, int index, int os) {
+ NetworkRequestParams requestParams = pluginData.requestParams;
+ if (requestParams == null) {
+ requestParams = new NetworkRequestParams();
+ }
+ requestParams.os = os;
+ if (os == ATConfig.OS_ANDROID) { //Android
+ requestParams.androidVersion = pluginData.androidVersions[index];
+ } else {
+ requestParams.iosVersion = pluginData.iosVersions[index];
+ }
+ pluginData.requestParams = requestParams;
+ // ATLog.log("ExChangeSDKVersion() >>> versions.Android: " + versions.Android + " versions.Ios: " + versions.Ios);
+ loadNetworksData(pluginData);
+ }
+
//获取插件和SDK的版本数据
private void loadPluginData()
{
@@ -242,8 +253,15 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
ATLog.log("loadNetworksData() >>> pluginData: " + data);
pluginData = data;
pluginDataLoadFailed = false;
- loadNetworksData(data);
- // UpdateShouldShowGoogleWarningIfNeeded();
+
+ var versions = pluginData.anyThink.CurrentVersions;
+ if (versions != null) {
+ var requestParams = new NetworkRequestParams();
+ requestParams.androidVersion = versions.Android;
+ requestParams.iosVersion = versions.Ios;
+ pluginData.requestParams = requestParams;
+ }
+ loadNetworksData(pluginData);
}
CalculateFieldWidth();
@@ -256,38 +274,17 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
ATEditorCoroutine.startCoroutine(ATIntegrationManager.Instance.loadNetworksData(pluginData, data =>
{
pluginData = data;
- ATIntegrationManager.Instance.downloadCorePlugin(data);
+ Network network = pluginData.anyThink;
+ if (!string.IsNullOrEmpty(network.AndroidDownloadUrl) || !string.IsNullOrEmpty(network.iOSDownloadloadUrl)) {
+ ATIntegrationManager.Instance.downloadCorePlugin(data);
+ }
Repaint();
}));
}
-
+ //切换国家,重新加载数据
private void switchCountry(int country)
{
- // ATIntegrationManager.Instance.switchCountry(pluginData, country);
- var originCountry = ATConfig.getLocalCountry();
- pluginData.country = country;
- ATConfig.removeInstalledNetworkVersion(ATIntegrationManager.AnyThinkNetworkName, originCountry);
- var networks = pluginData.mediatedNetworks;
- if (networks != null)
- {
- foreach(var network in networks)
- {
- ATConfig.removeInstalledNetworkVersion(network.Name, originCountry);
- }
- }
- ATConfig.saveLocalCountry(country);
- //删除国内的core包和network
- string anythinkAdsPath = ATConfig.ANYTHINK_SDK_FILES_PATH;
- if (Directory.Exists(anythinkAdsPath))
- {
- FileUtil.DeleteFileOrDirectory(anythinkAdsPath);
- }
- string metaFile = anythinkAdsPath + ".meta";
- if (File.Exists(metaFile))
- {
- FileUtil.DeleteFileOrDirectory(metaFile);
- }
- // AssetDatabase.Refresh();
+ ATIntegrationManager.Instance.switchCountry(pluginData, country);
//重新开始走network
loadPluginData();
}
@@ -318,45 +315,61 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
{
GUILayout.Space(5);
- int countryInt = ATConfig.CHINA_COUNTRY; //默认是中国
+ int countryInt = ATConfig.getDefCountry(); //默认是中国
if (pluginData != null)
{
countryInt = pluginData.country;
}
- string[] options = new string[] { "ChinaMainland", "Overseas" };
+ string[] options = ATConfig.getCountryArray();
// 创建Dropdown组件
int curDropdownIndex = ATDataUtil.isChina(countryInt) ? 0 : 1;
+ if (options.Length == 1) {
+ curDropdownIndex = 0;
+ }
int dropdownIndex = EditorGUILayout.Popup("Select Region:", curDropdownIndex, options);
- curSelectCountryInt = dropdownIndex == 0 ? ATConfig.CHINA_COUNTRY : ATConfig.NONCHINA_COUNTRY;
- //变化才设置
- if (pluginData != null && curSelectCountryInt != countryInt)
- {
- ATLog.log("DrawCountryUI() >>> curSelectCountryInt: " + curSelectCountryInt + " countryInt: " + countryInt);
- //Unity需要更换Network
- switchCountry(curSelectCountryInt);
+ if (options.Length > 1) {
+ curSelectCountryInt = dropdownIndex == 0 ? ATConfig.CHINA_COUNTRY : ATConfig.NONCHINA_COUNTRY;
+ //变化才设置
+ if (pluginData != null && curSelectCountryInt != countryInt)
+ {
+ ATLog.log("DrawCountryUI() >>> curSelectCountryInt: " + curSelectCountryInt + " countryInt: " + countryInt);
+ //Unity需要更换Network
+ switchCountry(curSelectCountryInt);
+ }
}
GUILayout.Space(5);
}
GUILayout.Space(4);
- DrawAndroidXUI();
// GUILayout.EndHorizontal();
}
+ private void DrawCountrySwitchTip()
+ {
+ var integratedTip = ATConfig.getRegionIntegrateTip();
+ if (string.IsNullOrEmpty(integratedTip)) {
+ return;
+ }
+ GUILayout.Space(4);
+ // textStyle.fontStyle = FontStyle.Bold;
+ EditorGUILayout.LabelField(integratedTip, tipTextStyle);
+ GUILayout.Space(4);
+ }
+
private void DrawAndroidXUI()
{
- if (!ATDataUtil.isChina(curSelectCountryInt)) {
+ if (!ATConfig.isSelectedChina()) {
return;
}
+
EditorGUILayout.LabelField("AndroidX (Only for Android)", titleLabelStyle);
GUILayout.Space(4);
using (new EditorGUILayout.HorizontalScope("box"))
{
GUILayout.Space(5);
- bool enableAndroidX = ATPluginSetting.Instance.EnableAndroidX;
-
+ bool enableAndroidX = ATIntegrationManager.Instance.enableAndroidX(pluginData);
string[] options = new string[] { "Disable", "Enable" };
// 创建Dropdown组件
int lastDropdownIndex = enableAndroidX ? 1 : 0;
@@ -366,7 +379,7 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
if (curDropdownIndex != lastDropdownIndex)
{
ATLog.log("DrawAndroidXUI() >>> curDropdownIndex: " + curDropdownIndex + " lastDropdownIndex: " + lastDropdownIndex);
- ATPluginSetting.Instance.EnableAndroidX = curDropdownIndex == 1;
+ ATIntegrationManager.Instance.saveAndroidXSetting(pluginData, curDropdownIndex == 1);
}
GUILayout.Space(5);
}
@@ -380,46 +393,109 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
using (new EditorGUILayout.VerticalScope("box"))
{
// Draw plugin version details
- DrawHeaders("Platform", false);
+ DrawHeaders("Platform", true);
+ DrawPluginDetailRow("Unity Plugin", ATConfig.PLUGIN_VERSION, "", "");
if (pluginData == null)
{
- DrawEmptyPluginData();
+ DrawEmptyPluginData("loading sdk data ...");
return;
}
+
var anythink = pluginData.anyThink;
-
- // Immediately after downloading and importing a plugin the entire IDE reloads and current versions can be null in that case. Will just show loading text in that case.
- if (pluginData.anyThink == null || pluginData.anyThink.CurrentVersions == null || pluginData.anyThink.LatestVersions == null)
- {
- DrawEmptyPluginData();
+ var android_version = "";
+ var ios_version = "";
+ if (anythink != null) {
+ android_version = anythink.CurrentVersions.Android;
+ ios_version = anythink.CurrentVersions.Ios;
}
- else
+ //绘制Android
+ using (new EditorGUILayout.HorizontalScope())
{
- ATLog.log("DrawPluginDetails() >>> anythink.CurrentVersions: " + anythink.CurrentVersions + " LatestVersions: " + anythink.LatestVersions);
- // Check if a newer version is available to enable the upgrade button.
+ GUILayout.Space(5);
+ EditorGUILayout.LabelField(new GUIContent("Android"), networkWidthOption);
+ EditorGUILayout.LabelField(new GUIContent(android_version), versionWidthOption);
+ GUILayout.Space(3);
- DrawPluginDetailRow("Unity 3D", anythink.CurrentVersions.Unity, pluginData.pluginVersion);
- DrawPluginDetailRow("Android", anythink.CurrentVersions.Android, anythink.LatestVersions.Android);
- DrawPluginDetailRow("iOS", anythink.CurrentVersions.Ios, anythink.LatestVersions.Ios);
+ string[] androidVersions = pluginData.androidVersions;
+ if (androidVersions != null && androidVersions.Length > 0) {
+ List androidVersionsInt = new List();
+ int androidLength = androidVersions.Length;
+ for (int i = 0; i < androidLength; i = i + 1)
+ {
+ androidVersionsInt.Add(i);
+ }
- // BeginHorizontal combined with FlexibleSpace makes sure that the button is centered horizontally.
- GUILayout.BeginHorizontal();
- GUILayout.FlexibleSpace();
-
- //检查插件和Android、iOS的原生sdk是否需要更新,如果其中之一需要都显示更新按钮
- GUI.enabled = anythink.isReqiureUpdate();
- if (GUILayout.Button(new GUIContent("Upgrade"), fieldWidth))
- {
- //点击更新按钮的操作
- ATIntegrationManager.Instance.updateAnyThinkPlugin(pluginData);
+ // 创建Dropdown组件
+ androidVersionPopupIndex = EditorGUILayout.IntPopup(androidVersionPopupIndex, androidVersions, androidVersionsInt.ToArray(), versionWidthOption);
+ GUILayout.FlexibleSpace();
+ string selectedAndroidVersion = androidVersions[androidVersionPopupIndex];
+ string action = "Exchange";
+ if (!string.IsNullOrEmpty(android_version) && Equals(android_version, selectedAndroidVersion)) {
+ action = "Delete";
+ }
+ GUI.enabled = (!Equals(android_version, selectedAndroidVersion)) || action == "Delete";
+ if (GUILayout.Button(new GUIContent(action), fieldWidth))
+ {
+ //切换AndroidSDK版本
+ if (action == "Delete") {
+ DeleteSdkVersion(pluginData, androidVersionPopupIndex, ATConfig.OS_ANDROID);
+ } else {
+ ExChangeSDKVersion(pluginData, androidVersionPopupIndex, ATConfig.OS_ANDROID);
+ }
+ }
+ GUI.enabled = true;
+ GUILayout.Space(5);
+ } else {
+ EditorGUILayout.LabelField(new GUIContent("loading..."), versionWidthOption);
}
-
- GUI.enabled = true;
- GUILayout.Space(5);
- GUILayout.EndHorizontal();
-
- GUILayout.Space(5);
+
+ GUILayout.Space(3);
}
+ //绘制iOS
+ using (new EditorGUILayout.HorizontalScope())
+ {
+ GUILayout.Space(5);
+ EditorGUILayout.LabelField(new GUIContent("iOS"), networkWidthOption);
+ EditorGUILayout.LabelField(new GUIContent(ios_version), versionWidthOption);
+ GUILayout.Space(3);
+
+ string[] iosVersions = pluginData.iosVersions;
+ if (iosVersions != null && iosVersions.Length > 0) {
+ List iosVersionsInt = new List();
+ int androidLength = iosVersions.Length;
+ for (int i = 0; i < androidLength; i = i + 1)
+ {
+ iosVersionsInt.Add(i);
+ }
+
+ // 创建Dropdown组件
+ iosVersionPopupIndex = EditorGUILayout.IntPopup(iosVersionPopupIndex, iosVersions, iosVersionsInt.ToArray(), versionWidthOption);
+ GUILayout.FlexibleSpace();
+ string selectedIosVersion = iosVersions[iosVersionPopupIndex];
+
+ string action = "Exchange";
+ if (!string.IsNullOrEmpty(ios_version) && Equals(ios_version, selectedIosVersion)) {
+ action = "Delete";
+ }
+ GUI.enabled = !Equals(ios_version, selectedIosVersion) || action == "Delete";
+ if (GUILayout.Button(new GUIContent(action), fieldWidth))
+ {
+ if (action == "Delete") {
+ DeleteSdkVersion(pluginData, iosVersionPopupIndex, ATConfig.OS_IOS);
+ } else {
+ ExChangeSDKVersion(pluginData, iosVersionPopupIndex, ATConfig.OS_IOS);
+ }
+ }
+ GUI.enabled = true;
+ GUILayout.Space(5);
+ } else {
+ EditorGUILayout.LabelField(new GUIContent("loading..."), versionWidthOption);
+ }
+
+ GUILayout.Space(3);
+ }
+
+ GUILayout.Space(4);
#if !UNITY_2018_2_OR_NEWER
EditorGUILayout.HelpBox("AnyThink Unity plugin will soon require Unity 2018.2 or newer to function. Please upgrade to a newer Unity version.", MessageType.Warning);
@@ -430,6 +506,77 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
// GUILayout.EndHorizontal();
}
+ private void DrawSdkVersionOffTip()
+ {
+ if (pluginData == null) {
+ return;
+ }
+ var anythink = pluginData.anyThink;
+ if (anythink == null) {
+ return;
+ }
+ var android_version = "";
+ var ios_version = "";
+ if (anythink != null) {
+ android_version = anythink.CurrentVersions.Android;
+ ios_version = anythink.CurrentVersions.Ios;
+ //判断android版本是否版本列表中
+ string[] androidVersions = pluginData.androidVersions;
+ string[] iosVersions = pluginData.iosVersions;
+
+ //The currently installed Android version and io version have been offline
+ StringBuilder sb = new StringBuilder();
+ sb.Append("Tips: The currently installed ");
+
+ var android_version_off = false;
+ if (!string.IsNullOrEmpty(android_version) && androidVersions != null && androidVersions.Length > 0) {
+ if (!IsCharInStringArray(android_version, androidVersions)) {
+ sb.Append("Android version(");
+ sb.Append(android_version);
+ sb.Append(") ");
+ android_version_off = true;
+ }
+ }
+ var ios_version_off = false;
+ if (!string.IsNullOrEmpty(ios_version) && iosVersions != null && iosVersions.Length > 0) {
+ if (!IsCharInStringArray(ios_version, iosVersions)) {
+ if (android_version_off) {
+ sb.Append("and ");
+ }
+ sb.Append("iOS version(");
+ sb.Append(ios_version);
+ sb.Append(") ");
+ ios_version_off = true;
+ }
+ }
+ if (android_version_off || ios_version_off) {
+ sb.Append("have been offline, please install the latest version.");
+ GUILayout.Space(4);
+ EditorGUILayout.LabelField(sb.ToString(), tipTextStyle);
+ GUILayout.Space(4);
+ } else {
+ sb.Clear();
+ }
+ }
+ }
+
+ private bool IsCharInStringArray(string character, string[] array)
+ {
+ // 遍历数组中的每个字符串
+ foreach (string str in array)
+ {
+ // 如果当前字符串包含指定的字符,则返回true
+ if (str == character)
+ {
+ return true;
+ }
+ }
+
+ // 如果没有找到字符,则返回false
+ return false;
+ }
+
+
private void DrawHeaders(string firstColumnTitle, bool drawAction)
{
using (new EditorGUILayout.HorizontalScope())
@@ -438,7 +585,7 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
EditorGUILayout.LabelField(firstColumnTitle, headerLabelStyle, networkWidthOption);
EditorGUILayout.LabelField("Current Version", headerLabelStyle, versionWidthOption);
GUILayout.Space(3);
- EditorGUILayout.LabelField("Latest Version", headerLabelStyle, versionWidthOption);
+ EditorGUILayout.LabelField("SDK Versions", headerLabelStyle, versionWidthOption);
GUILayout.Space(3);
if (drawAction)
{
@@ -450,7 +597,25 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
GUILayout.Space(4);
}
- private void DrawEmptyPluginData()
+
+ private void DrawPluginDetailRow(string platform, string currentVersion, string sdkversions, string actions)
+ {
+ using (new EditorGUILayout.HorizontalScope())
+ {
+ GUILayout.Space(5);
+ EditorGUILayout.LabelField(new GUIContent(platform), networkWidthOption);
+ EditorGUILayout.LabelField(new GUIContent(currentVersion), versionWidthOption);
+ GUILayout.Space(3);
+ EditorGUILayout.LabelField(new GUIContent(sdkversions), versionWidthOption);
+ GUILayout.Space(3);
+ // EditorGUILayout.LabelField(new GUIContent(actions), versionWidthOption);
+ // GUILayout.Space(3);
+ }
+
+ GUILayout.Space(4);
+ }
+
+ private void DrawEmptyPluginData(string tip)
{
GUILayout.Space(5);
@@ -476,242 +641,43 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
{
GUILayout.Space(10);
GUILayout.BeginHorizontal();
- GUILayout.FlexibleSpace();
- EditorGUILayout.LabelField("Loading data...", titleLabelStyle);
- GUILayout.FlexibleSpace();
+ // GUILayout.FlexibleSpace();
+ EditorGUILayout.LabelField(tip, titleLabelStyle);
+ // GUILayout.FlexibleSpace();
GUILayout.EndHorizontal();
GUILayout.Space(10);
}
GUILayout.Space(5);
}
+ //绘制Admob Id
+ private void DrawAdombAppId() {
+ var integrationManager = ATIntegrationManager.Instance;
+ bool isAdmobInstalledForAndroid = integrationManager.isAdmobInstalled(ATConfig.OS_ANDROID);
+ bool isAdmobInstalledForIos = integrationManager.isAdmobInstalled(ATConfig.OS_IOS);
- private void DrawPluginDetailRow(string platform, string currentVersion, string latestVersion)
- {
- using (new EditorGUILayout.HorizontalScope())
- {
+ if (isAdmobInstalledForAndroid || isAdmobInstalledForIos) {
+ EditorGUILayout.LabelField("Admob AppId", titleLabelStyle);
GUILayout.Space(5);
- EditorGUILayout.LabelField(new GUIContent(platform), networkWidthOption);
- EditorGUILayout.LabelField(new GUIContent(currentVersion), versionWidthOption);
- GUILayout.Space(3);
- EditorGUILayout.LabelField(new GUIContent(latestVersion), versionWidthOption);
- GUILayout.Space(3);
- }
-
- GUILayout.Space(4);
- }
-
- private void DrawUpgradeAllButton()
- {
- GUI.enabled = NetworksRequireUpgrade();
- if (GUILayout.Button(new GUIContent("Upgrade All"), upgradeAllButtonFieldWidth))
- {
- startUpgradeAllNetwork();
- }
-
- GUI.enabled = true;
- GUILayout.Space(10);
- }
-
- private bool NetworksRequireUpgrade()
- {
- if (pluginData == null || pluginData.mediatedNetworks == null) return false;
-
- var networks = pluginData.mediatedNetworks;
- if (networks == null)
- {
- return false;
- }
- try
- {
- foreach (var network in networks)
+ using (new EditorGUILayout.VerticalScope("box"))
{
- if (network.CurrentVersions != null && !string.IsNullOrEmpty(network.CurrentVersions.Unity))
- {
- ATLog.log("NetworksRequireUpgrade() >>> name: " + network.Name + " isReqiureUpdate: " + network.isReqiureUpdate() +
- " curVersion: " + network.CurrentVersions.Unity + " latestVersion: " + network.LatestVersions.Unity);
- network.CurrentToLatestVersionComparisonResult = ATDataUtil.getVersionComparisonResult(network.CurrentVersions, network.LatestVersions, true);
- if (network.isReqiureUpdate())
- {
- return true;
- }
- }
- }
- }
- catch (Exception e)
- {
- ATLog.logError("NetworksRequireUpgrade failed: " + e.Message);
- }
- // return networks.Any(network => network.CurrentVersions != null && ATConfig.isNetworkInstalled(network.Name, ATConfig.getLocalCountry()) && network.isReqiureUpdate());
- return false;
- }
-
- private void DrawMediatedNetworks()
- {
- GUILayout.BeginHorizontal();
- GUILayout.Space(10);
- using (new EditorGUILayout.VerticalScope("box"))
- {
- DrawHeaders("Network", true);
-
- // Immediately after downloading and importing a plugin the entire IDE reloads and current versions can be null in that case. Will just show loading text in that case.
- if (pluginData == null || pluginData.mediatedNetworks == null)
- {
- ATLog.log("DrawMediatedNetworks failed.");
- DrawEmptyPluginData();
- }
- else
- {
- var networks = pluginData.mediatedNetworks;
- foreach (var network in networks)
- {
- DrawNetworkDetailRow(network);
- }
-
GUILayout.Space(10);
- }
- }
-
- GUILayout.Space(5);
- GUILayout.EndHorizontal();
- }
-
- private void DrawNetworkDetailRow(Network network)
- {
- if (network == null) return;
-
- string action;
- var currentVersion = "";
- if (network.CurrentVersions != null)
- {
- currentVersion = network.CurrentVersions.Unity;
- }
- var latestVersion = network.LatestVersions.Unity;
- bool isActionEnabled;
- bool isInstalled;
-
- if (string.IsNullOrEmpty(currentVersion))
- {
- action = "Install";
- currentVersion = "Not Installed";
- isActionEnabled = true;
- isInstalled = false;
- }
- else
- {
- isInstalled = true;
- // action = "Installed";
- // isActionEnabled = false;
- // A newer version is available
- var comparison = network.CurrentToLatestVersionComparisonResult;
- if (comparison == VersionComparisonResult.Lesser)
- {
- action = "Upgrade";
- isActionEnabled = true;
- }
- // Current installed version is newer than latest version from DB (beta version)
- else if (comparison == VersionComparisonResult.Greater)
- {
- action = "Installed";
- isActionEnabled = false;
- }
- // Already on the latest version
- else
- {
- action = "Installed";
- isActionEnabled = false;
- }
- }
-
- GUILayout.Space(4);
- using (new EditorGUILayout.HorizontalScope(GUILayout.ExpandHeight(false)))
- {
- GUILayout.Space(5);
- EditorGUILayout.LabelField(new GUIContent(network.DisplayName), networkWidthOption);
- EditorGUILayout.LabelField(new GUIContent(currentVersion), versionWidthOption);
- GUILayout.Space(3);
- EditorGUILayout.LabelField(new GUIContent(latestVersion), versionWidthOption);
- GUILayout.Space(3);
- GUILayout.FlexibleSpace();
-
- if (network.isReqiureUpdate())
- {
- GUILayout.Label(new GUIContent { image = alertIcon, tooltip = "Adapter not compatible, please update to the latest version." }, iconStyle);
- }
- // else if ((network.DisplayName.Equals("Admob") || network.DisplayName.Equals("GOOGLE_AD_MANAGER_NETWORK")) && shouldShowGoogleWarning)
- // {
- // GUILayout.Label(new GUIContent { image = warningIcon, tooltip = "You may see unexpected errors if you use different versions of the AdMob and Google Ad Manager adapter SDKs." }, iconStyle);
- // }
-
- GUI.enabled = networkButtonsEnabled && isActionEnabled;
- if (GUILayout.Button(new GUIContent(action), fieldWidth))
- {
- // Download the plugin.jkfjkfdani
- // AppLovinEditorCoroutine.StartCoroutine(AppLovinIntegrationManager.Instance.DownloadPlugin(network));
- // ATIntegrationManager.Instance.downloadPlugin(network);
- ATIntegrationManager.Instance.networkInstallOrUpdate(pluginData, network);
- }
- GUI.enabled = true;
- GUILayout.Space(2);
-
- GUI.enabled = networkButtonsEnabled && isInstalled;
- if (GUILayout.Button(new GUIContent { image = uninstallIcon, tooltip = "Uninstall" }, iconStyle))
- {
- EditorUtility.DisplayProgressBar("Integration Manager", "Deleting " + network.Name + "...", 0.5f);
- ATIntegrationManager.Instance.uninstallNetwork(network, pluginData.country);
- //Refresh UI
- AssetDatabase.Refresh();
- EditorUtility.ClearProgressBar();
- }
-
- GUI.enabled = true;
- GUILayout.Space(5);
- }
-
- if (isInstalled)
- {
- // Custom integration for AdMob where the user can enter the Android and iOS App IDs.
- if (network.Name.Equals("Admob") && network.CurrentVersions != null)
- {
- // Custom integration requires Google AdMob adapter version newer than android_19.0.1.0_ios_7.57.0.0.
- if (ATDataUtil.CompareUnityMediationVersions(network.CurrentVersions.Unity, "android_19.0.1.0_ios_7.57.0.0") == VersionComparisonResult.Greater)
- {
- GUILayout.BeginHorizontal();
- GUILayout.Space(20);
- using (new EditorGUILayout.VerticalScope("box"))
- {
- string requiredVersion = "android_19.2.0.0_ios_7.61.0.0";
- string warningMessage = "The current version of AppLovin MAX plugin requires Google adapter version newer than " + requiredVersion + " to enable auto-export of AdMob App ID.";
- // if (isPluginMoved)
- // {
- // requiredVersion = "android_19.6.0.1_ios_7.69.0.0";
- // warningMessage = "Looks like the MAX plugin has been moved to a different directory. This requires Google adapter version newer than " + requiredVersion + " for auto-export of AdMob App ID to work correctly.";
- // }
- // else
- // {
- // requiredVersion = "android_19.2.0.0_ios_7.61.0.0";
- // warningMessage = "The current version of AppLovin MAX plugin requires Google adapter version newer than " + requiredVersion + " to enable auto-export of AdMob App ID.";
- // }
-
- GUILayout.Space(2);
- if (ATDataUtil.CompareUnityMediationVersions(network.CurrentVersions.Unity, requiredVersion) == VersionComparisonResult.Greater)
- {
- ATPluginSetting.Instance.AdMobAndroidAppId = DrawTextField("App ID (Android)", ATPluginSetting.Instance.AdMobAndroidAppId, networkWidthOption);
- ATPluginSetting.Instance.AdMobIosAppId = DrawTextField("App ID (iOS)", ATPluginSetting.Instance.AdMobIosAppId, networkWidthOption);
- }
- else
- {
- EditorGUILayout.HelpBox(warningMessage, MessageType.Warning);
- }
+ if (isAdmobInstalledForAndroid) {
+ var androidAdmobAppId = DrawTextField("App ID (Android)", integrationManager.getAdmobAppIdByOs(pluginData, ATConfig.OS_ANDROID), networkWidthOption);
+ integrationManager.setAdmobAppidByOs(pluginData, ATConfig.OS_ANDROID, androidAdmobAppId);
+ }
+ if (isAdmobInstalledForIos) {
+ if (isAdmobInstalledForAndroid) {
+ GUILayout.Space(10);
}
-
- GUILayout.EndHorizontal();
+ var iosAdmobAppId = DrawTextField("App ID (iOS)", integrationManager.getAdmobAppIdByOs(pluginData, ATConfig.OS_IOS), networkWidthOption);
+ integrationManager.setAdmobAppidByOs(pluginData, ATConfig.OS_IOS, iosAdmobAppId);
}
}
}
}
- private string DrawTextField(string fieldTitle, string text, GUILayoutOption labelWidth, GUILayoutOption textFieldWidthOption = null)
+ private string DrawTextField(string fieldTitle, string text, GUILayoutOption labelWidth, GUILayoutOption textFieldWidthOption = null)
{
GUILayout.BeginHorizontal();
GUILayout.Space(4);
@@ -725,56 +691,165 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
return text;
}
- private bool DrawOtherSettingsToggle(bool value, string text)
- {
- using (new EditorGUILayout.HorizontalScope())
- {
- GUILayout.Space(4);
- var toggleValue = GUILayout.Toggle(value, text);
- GUILayout.Space(4);
- return toggleValue;
- }
- }
- private void startUpgradeAllNetwork()
+ private void DrawMediatedNetworks()
{
- ATEditorCoroutine.startCoroutine(UpgradeAllNetworks());
- }
-
- private IEnumerator UpgradeAllNetworks()
- {
- networkButtonsEnabled = false;
- EditorApplication.LockReloadAssemblies();
- var networks = pluginData.mediatedNetworks;
- foreach (var network in networks)
+ GUILayout.Space(5);
+ EditorGUILayout.LabelField("Ad Networks", titleLabelStyle);
+ GUILayout.Space(5);
+ GUILayout.BeginHorizontal();
+ using (new EditorGUILayout.VerticalScope("box"))
{
- // if (ATConfig.isNetworkInstalled(network.Name, ATConfig.getLocalCountry()))
- // {
- // ATLog.log("UpgradeAllNetworks() >>> name: " + network.Name + " isReqiureUpdate: " + network.isReqiureUpdate() +
- // " curVersion: " + network.CurrentVersions.Unity + " latestVersion: " + network.LatestVersions.Unity);
- // network.CurrentToLatestVersionComparisonResult = ATDataUtil.getVersionComparisonResult(network.CurrentVersions, network.LatestVersions, true);
- // if (network.isReqiureUpdate())
- // {
- // yield return ATIntegrationManager.Instance.downloadPluginWithEnumerator(network, false);
- // }
- // }
- if (network.CurrentVersions != null && !string.IsNullOrEmpty(network.CurrentVersions.Unity))
+ DrawHeaders("Network", true);
+ string clickTip = "You need to select an sdk version and click the Exchange button.";
+ // Immediately after downloading and importing a plugin the entire IDE reloads and current versions can be null in that case. Will just show loading text in that case.
+ if (pluginData == null)
+ {
+ ATLog.log("DrawMediatedNetworks failed.");
+ DrawEmptyPluginData("loading sdk data ...");
+ } else if(pluginData.mediatedNetworks == null) {
+ DrawEmptyPluginData(clickTip);
+ } else {
+ var networks = pluginData.mediatedNetworks;
+ var length = networks.Length;
+ ATLog.log("DrawMediatedNetworks() >>> networks length: " + length);
+ if (length == 0) {
+ DrawEmptyPluginData(clickTip);
+ return;
+ }
+ int versionEmptyLength = 0;
+ foreach (var network in networks)
{
- ATLog.log("UpgradeAllNetworks() >>> name: " + network.Name + " isReqiureUpdate: " + network.isReqiureUpdate() +
- " curVersion: " + network.CurrentVersions.Unity + " latestVersion: " + network.LatestVersions.Unity);
- network.CurrentToLatestVersionComparisonResult = ATDataUtil.getVersionComparisonResult(network.CurrentVersions, network.LatestVersions, true);
- if (network.isReqiureUpdate())
- {
- yield return ATIntegrationManager.Instance.downloadPluginWithEnumerator(network, false);
+ if (network.isVersionEmpty()) {
+ // ATLog.log("DrawMediatedNetworks() >>> isVersionEmpty name: " + network.Name);
+ versionEmptyLength = versionEmptyLength + 1;
+ } else {
+ DrawNetworkDetailRow2(network);
}
}
+ ATLog.log("DrawMediatedNetworks() >>> versionEmptyLength: " + versionEmptyLength);
+ if (versionEmptyLength == length) {
+ DrawEmptyPluginData(clickTip);
+ }
+
+ GUILayout.Space(10);
+ }
}
- EditorApplication.UnlockReloadAssemblies();
- networkButtonsEnabled = true;
+ GUILayout.Space(5);
+ GUILayout.EndHorizontal();
+ }
+ //绘制network的每一行
+ private void DrawNetworkDetailRow2(Network network) {
+ using (new EditorGUILayout.VerticalScope("box"))
+ {
+ GUILayout.Space(4);
+ string a_action = "";
+ string i_action = "";
+ string cur_a_version = "";
+ string cur_i_version = "";
+ string last_a_version = "";
+ string last_i_version = "";
+ if (network.CurrentVersions != null)
+ {
+ cur_a_version = network.CurrentVersions.Android;
+ cur_i_version = network.CurrentVersions.Ios;
+ }
+ if (network.LatestVersions != null)
+ {
+ last_a_version = network.LatestVersions.Android;
+ last_i_version = network.LatestVersions.Ios;
+ }
+ //Android Action按钮状态
+ ATLog.log("DrawNetworkDetailRow2() >>> cur_a_version: " + cur_a_version + " last_i_version: " + last_i_version +
+ " name: " + network.DisplayName + " last_a_version: " + last_a_version);
+ if (string.IsNullOrEmpty(cur_a_version)) {
+ a_action = "Install";
+ } else if (ATDataUtil.CompareVersions(cur_a_version, last_a_version) == VersionComparisonResult.Lesser) {
+ a_action = "Upgrade";
+ } else if(ATDataUtil.CompareVersions(cur_a_version, last_a_version) == VersionComparisonResult.Equal) {
+ a_action = "Installed";
+ }
+ bool hasAndroid = false;
+ if (!string.IsNullOrEmpty(last_a_version)) {
+ hasAndroid = true;
+ DrawRowNetwork(network, ATConfig.OS_ANDROID, cur_a_version, last_a_version, a_action, true);
+ }
+ //iOS Action按钮状态
+ // var i_compare_result = ATDataUtil.CompareVersions(cur_i_version, last_i_version);
+ if (string.IsNullOrEmpty(cur_i_version)) {
+ i_action = "Install";
+ } else if (ATDataUtil.CompareVersions(cur_i_version, last_i_version) == VersionComparisonResult.Lesser) {
+ i_action = "Upgrade";
+ } else if(ATDataUtil.CompareVersions(cur_i_version, last_i_version) == VersionComparisonResult.Equal) {
+ i_action = "Installed";
+ }
+ if (!string.IsNullOrEmpty(last_i_version)) {
+ DrawRowNetwork(network, ATConfig.OS_IOS, cur_i_version, last_i_version, i_action, !hasAndroid);
+ }
+ GUILayout.Space(4);
+ }
+ }
- //The pluginData becomes stale after the networks have been updated, and we should re-load it.
- loadPluginData();
+ private void DrawRowNetwork(Network network, int os, string curVersion, string lastVersion, string action, bool isShowNetworkName)
+ {
+ GUILayout.Space(5);
+ if (os == ATConfig.OS_ANDROID) {
+ if (!string.IsNullOrEmpty(curVersion)) {
+ curVersion = "Android-" + curVersion;
+ } else {
+ curVersion = "Not Installed";
+ }
+ lastVersion = "Android-" + lastVersion;
+ } else {
+ if (!string.IsNullOrEmpty(curVersion)) {
+ curVersion = "iOS-" + curVersion;
+ } else {
+ curVersion = "Not Installed";
+ }
+ lastVersion = "iOS-" + lastVersion;
+ }
+ using (new EditorGUILayout.HorizontalScope(GUILayout.ExpandHeight(false)))
+ {
+ GUILayout.Space(5);
+ if (isShowNetworkName) {
+ EditorGUILayout.LabelField(new GUIContent(network.DisplayName), networkWidthOption);
+ } else {
+ EditorGUILayout.LabelField(new GUIContent(""), networkWidthOption);
+ }
+
+ EditorGUILayout.LabelField(new GUIContent(curVersion), versionWidthOption);
+ GUILayout.Space(3);
+ EditorGUILayout.LabelField(new GUIContent(lastVersion), versionWidthOption);
+ GUILayout.Space(3);
+ GUILayout.FlexibleSpace();
+
+ if (network.isReqiureUpdate())
+ {
+ GUILayout.Label(new GUIContent { image = alertIcon, tooltip = "Adapter not compatible, please update to the latest version." }, iconStyle);
+ }
+
+ GUI.enabled = action != "Installed";
+ if (GUILayout.Button(new GUIContent(action), fieldWidth))
+ {
+ ATIntegrationManager.Instance.networkInstallOrUpdate(pluginData, network, os);
+ }
+ GUI.enabled = true;
+ GUILayout.Space(2);
+
+ GUI.enabled = action == "Installed";
+ if (GUILayout.Button(new GUIContent { image = uninstallIcon, tooltip = "Uninstall" }, iconStyle))
+ {
+ EditorUtility.DisplayProgressBar("Integration Manager", "Deleting " + network.Name + "...", 0.5f);
+ ATIntegrationManager.Instance.uninstallNetwork(network, os);
+ //Refresh UI
+ AssetDatabase.Refresh();
+ EditorUtility.ClearProgressBar();
+ }
+
+ GUI.enabled = true;
+ GUILayout.Space(5);
+ }
}
}
}
\ No newline at end of file
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATIntegrationManagerWindow.cs.meta b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATIntegrationManagerWindow.cs.meta
index 01b6fd2..de189f8 100644
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATIntegrationManagerWindow.cs.meta
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATIntegrationManagerWindow.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 7466442bb0ff7449d8e1f8073567eb77
+guid: 06d48237d6b6443f1b7cb368fc134467
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATLog.cs b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATLog.cs
index 96c3c00..1f9aca4 100644
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATLog.cs
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATLog.cs
@@ -5,28 +5,33 @@ using System.Linq;
using UnityEditor;
using UnityEngine;
-public class ATLog
-{
- public static void log (string msg)
+public class ATLog {
+ public static bool isDebug = false;
+
+ public static void log(string msg)
{
-#if AnyThinkSDKEditor
// string msg =
- Debug.Log (msg);
-#endif
+ if (isDebug) {
+ Debug.Log(msg);
+ }
}
- public static void log (string tag, string msg)
+ public static void log(string tag, string msg)
{
- Debug.Log (tag + ": " + msg);
+ if (isDebug) {
+ Debug.Log(tag + ": " + msg);
+ }
}
- public static void logFormat (string msg, object[] args)
- {
- Debug.LogFormat (msg, args);
+ public static void logFormat(string msg, object[] args)
+ {
+ if (isDebug) {
+ Debug.LogFormat(msg, args);
+ }
}
- public static void logError (string msg)
+ public static void logError(string msg)
{
- Debug.LogError (msg);
+ Debug.LogError(msg);
}
}
\ No newline at end of file
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATLog.cs.meta b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATLog.cs.meta
index 5909a20..b3349ca 100644
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATLog.cs.meta
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATLog.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: e034a99664fd34b1fbdbcb8a6bd2b21e
+guid: 00b0a6e1f40684d3990b321d49f431b4
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATMenuItems.cs b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATMenuItems.cs
index 636e463..5781027 100644
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATMenuItems.cs
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATMenuItems.cs
@@ -7,16 +7,15 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
{
public class AnyThinkMenuItems : MonoBehaviour
{
-#if AnyThinkSDKEditor
/**
- * The special characters at the end represent a shortcut for this action.
- *
- * % - ctrl on Windows, cmd on macOS
- * # - shift
- * & - alt
- *
- * So, (shift + cmd/ctrl + t) will launch the integration manager
- */
+ * The special characters at the end represent a shortcut for this action.
+ *
+ * % - ctrl on Windows, cmd on macOS
+ * # - shift
+ * & - alt
+ *
+ * So, (shift + cmd/ctrl + t) will launch the integration manager
+ */
[MenuItem("AnyThink/SDK Manager %#t")]
private static void IntegrationManager()
{
@@ -34,6 +33,5 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
// }
Application.OpenURL("https://newdocs.toponad.com/docs/lgfbO4");
}
-#endif
}
}
\ No newline at end of file
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATMenuItems.cs.meta b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATMenuItems.cs.meta
index 452bcea..f30a96c 100644
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATMenuItems.cs.meta
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATMenuItems.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 839a03939354b41358303d5e308e1530
+guid: 830af66d7a0ef48aeba18a35f3626b1a
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATNetInfo.cs b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATNetInfo.cs
index 36bef46..d50ec16 100644
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATNetInfo.cs
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATNetInfo.cs
@@ -9,36 +9,25 @@ using UnityEngine;
namespace AnyThink.Scripts.IntegrationManager.Editor
{
public static class ATNetInfo {
- public static string platformName = "AnyThink";
- public static string ATDownloadDir = "Assets/AnyThinkAds/Dependencies/";
- public static string ATDependencyDir = "Assets/AnyThinkAds/Plugins/";
- public static string sdk = "sdk";
- public static string Android = "Android";
- public static string iOS = "iOS";
- public static string localConfig = "Assets/AnyThinkPlugin/Editor/localConfig.json";
- private static string unityPluginConfigUrl = "https://topon-sdk-release.oss-cn-hangzhou.aliyuncs.com/Unity/unity_plugin_config.json"; //插件和nythink的版本号列表
- private static string unityPluginConfigUrlDebug = "https://topon-sdk-release.oss-cn-hangzhou.aliyuncs.com/Unity/unity_plugin_config_debug.json"; //插件和nythink的版本号列表
- public static string packagePath = "https://topon-sdk-release.oss-cn-hangzhou.aliyuncs.com/Unity/";
- public static int isGlobal=1; //0:国外 //1:国内
-
- public static string getPluginConfigUrl()
+ //插件的配置文件:unity_plugin_config.json
+ public static string getPluginConfigUrl(String plugin_version)
{
- return ATConfig.isDebug ? unityPluginConfigUrlDebug : unityPluginConfigUrl;
+ return "https://topon-sdk-release.oss-cn-hangzhou.aliyuncs.com/Unity_Release/plugin/" + plugin_version + "/unity_plugin_config.json";
}
-
- public static string getNetworkListUrl(String ver)
+ //插件版本对应的network列表文件:unity_plugin_config_network.json
+ public static string getNetworkListUrl(String plugin_version)
{
- return "https://topon-sdk-release.oss-cn-hangzhou.aliyuncs.com/Unity/"+ver+"/network_new.json";
+ return "https://topon-sdk-release.oss-cn-hangzhou.aliyuncs.com/Unity_Release/plugin/" + plugin_version + "/unity_plugin_config_network.json";
}
-
+ //插件unitypackage名字
public static string getPluginFileName(string pluginVersion)
{
return "AnyThinkPlugin_" + pluginVersion + ".unitypackage";
}
- //https://topon-sdk-release.oss-cn-hangzhou.aliyuncs.com/Unity/Plugin/2.0.0/AnyThinkPlugin_2.0.0.unitypackage
+ //插件unitypackage的下载链接
public static string getPluginDownloadUrl(string pluginVersion)
{
- return "https://topon-sdk-release.oss-cn-hangzhou.aliyuncs.com/Unity/Plugin/" + pluginVersion + "/" + getPluginFileName(pluginVersion);
+ return "https://topon-sdk-release.oss-cn-hangzhou.aliyuncs.com/Unity_Release/plugin/" + pluginVersion + "/" + getPluginFileName(pluginVersion);
}
}
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATNetInfo.cs.meta b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATNetInfo.cs.meta
index 6fb479d..12f64cb 100644
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATNetInfo.cs.meta
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATNetInfo.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: e6b495c82aab14904a12916fb308a19f
+guid: 65fa7225327184fcdbf3ec4d235585f9
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATPluginLocalDataModel.cs b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATPluginLocalDataModel.cs
new file mode 100644
index 0000000..34b408b
--- /dev/null
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATPluginLocalDataModel.cs
@@ -0,0 +1,213 @@
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Xml.Linq;
+using UnityEditor;
+using UnityEngine;
+using UnityEngine.Networking;
+
+namespace AnyThink.Scripts.IntegrationManager.Editor
+{
+ [Serializable]
+ public class PluginData
+ {
+ public string pluginVersion; //插件版本
+ public string[] androidVersions;
+ public string[] iosVersions;
+ public int country = ATConfig.getDefCountry(); //默认是1=china
+ public Network anyThink;
+ public Network[] mediatedNetworks;
+ public PluginSettingData pluginSettingData;
+ public NetworkRequestParams requestParams;
+ }
+ //请求network参数
+ public class NetworkRequestParams {
+ public int os;
+ public string androidVersion;
+ public string iosVersion;
+ }
+
+ [Serializable]
+ public class Network : IComparable
+ {
+ //
+ // Sample network data:
+ //
+ // {
+ // "Name": "adcolony",
+ // "DisplayName": "AdColony",
+ // "DownloadUrl": "https://bintray.com/applovin/Unity-Mediation-Packages/download_file?file_path=AppLovin-AdColony-Adapters-Android-3.3.10.1-iOS-3.3.7.2.unitypackage",
+ // "PluginFileName": "AppLovin-AdColony-Adapters-Android-3.3.10.1-iOS-3.3.7.2.unitypackage",
+ // "DependenciesFilePath": "MaxSdk/Mediation/AdColony/Editor/Dependencies.xml",
+ // "LatestVersions" : {
+ // "Unity": "android_3.3.10.1_ios_3.3.7.2",
+ // "Android": "3.3.10.1",
+ // "Ios": "3.3.7.2"
+ // }
+ // }
+ //
+
+ public string Name;
+ public string DisplayName;
+ public string AndroidDownloadUrl;
+ public string iOSDownloadloadUrl;
+ // public string DependenciesFilePath;
+ public string PluginFileName;
+ public int Country;
+ public Versions LatestVersions; //最新版本
+ public Versions CurrentVersions; //当前版本
+ [NonSerialized] public VersionComparisonResult CurrentToLatestVersionComparisonResult = VersionComparisonResult.Equal;
+ // [NonSerialized] public bool RequiresUpdate = CurrentToLatestVersionComparisonResult == VersionComparisonResult.Lesser;
+
+ public bool isVersionEmpty() {
+ if (LatestVersions != null) {
+ ATLog.log("isVersionEmpty() >>> name: " + Name + " android: " + LatestVersions.Android + " ios: " + LatestVersions.Ios);
+ return string.IsNullOrEmpty(LatestVersions.Android) && string.IsNullOrEmpty(LatestVersions.Ios);
+ }
+ return false;
+ }
+
+ public bool isReqiureUpdate()
+ {
+ return CurrentToLatestVersionComparisonResult == VersionComparisonResult.Lesser;
+ }
+
+ public int CompareTo(Network other)
+ {
+ return this.DisplayName.CompareTo(other.DisplayName);
+ }
+
+ public string ToString() {
+ return DisplayName + "-" + AndroidDownloadUrl + "-" + iOSDownloadloadUrl + "-" + Country;
+ }
+ }
+
+ ///
+ /// A helper data class used to get current versions from Dependency.xml files.
+ ///
+ [Serializable]
+ public class Versions
+ {
+
+ public string Unity;
+
+ public string Android;
+
+ public string Ios;
+
+ public override bool Equals(object value)
+ {
+ var versions = value as Versions;
+
+ return versions != null
+ && (Unity == null || Unity.Equals(versions.Unity))
+ && (Android == null || Android.Equals(versions.Android))
+ && (Ios == null || Ios.Equals(versions.Ios));
+ }
+
+ public bool HasEqualSdkVersions(Versions versions)
+ {
+ return versions != null && versions.Android == Android && versions.Ios == Ios;
+ }
+
+ public override int GetHashCode()
+ {
+ return new { Unity, Android, Ios }.GetHashCode();
+ }
+
+ public Versions clone()
+ {
+ Versions cloneObj = new Versions();
+ cloneObj.Android = Android;
+ cloneObj.Ios = Ios;
+ cloneObj.Unity = Unity;
+
+ return cloneObj;
+ }
+ }
+
+ public enum VersionComparisonResult
+ {
+ Lesser = -1,
+ Equal = 0,
+ Greater = 1
+ }
+
+ //存在本地插件设置数据并序列化为json文件
+ [Serializable]
+ public class PluginSettingData
+ {
+ public int curCountry = ATConfig.getDefCountry(); //当前选择的国家
+
+ public CountrySettingData china = new CountrySettingData(ATConfig.CHINA_COUNTRY); //国内地区
+ public CountrySettingData nonchina = new CountrySettingData(ATConfig.NONCHINA_COUNTRY); //海外地区
+
+ public CountrySettingData getCountrySettingData() {
+ if (curCountry == ATConfig.CHINA_COUNTRY) {
+ return china;
+ } else {
+ return nonchina;
+ }
+ }
+
+ //Android 是否同时安装了国内海外地区
+ public bool isBothInstallAndroid() {
+ return !string.IsNullOrEmpty(china.android_version) && !string.IsNullOrEmpty(nonchina.android_version);
+ }
+
+ //iOS 是否同时安装了国内海外地区
+ public bool isBothInstallIOS() {
+ return !string.IsNullOrEmpty(china.ios_version) && !string.IsNullOrEmpty(nonchina.ios_version);
+ }
+ }
+ //已安装的sdk版本
+ [Serializable]
+ public class CountrySettingData
+ {
+
+ public string android_version; //当前已安装Android sdk的版本号
+
+ public string ios_version; //当前已安装的iOS sdk的版本号
+
+ public bool enableAndroidX = false; //当前的AndroidX设置
+
+ public int country;
+
+ public string android_admob_app_id;
+ public string ios_admob_app_id;
+
+ public CountrySettingData(int country) {
+ this.country = country;
+ if (country == ATConfig.NONCHINA_COUNTRY) {
+ this.enableAndroidX = true;
+ }
+ }
+
+ public string getAdmobAppId(int os) {
+ if (os == ATConfig.OS_ANDROID) {
+ return android_admob_app_id;
+ } else {
+ return ios_admob_app_id;
+ }
+ }
+
+ public void setAdmobAppId(string appId, int os) {
+ if (os == ATConfig.OS_ANDROID) {
+ android_admob_app_id = appId;
+ } else {
+ ios_admob_app_id = appId;
+ }
+ }
+ }
+ //存储在本地的Network json数据
+ [Serializable]
+ public class NetworkLocalData
+ {
+ public string name;
+ public string version;
+ public int country;
+ public string path;
+ }
+}
\ No newline at end of file
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATPluginLocalDataModel.cs.meta b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATPluginLocalDataModel.cs.meta
new file mode 100644
index 0000000..a9aa343
--- /dev/null
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATPluginLocalDataModel.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: d888d00957103464ab5969e6a00d7ea4
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATPluginSetting.cs b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATPluginSetting.cs
deleted file mode 100644
index 17219c2..0000000
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATPluginSetting.cs
+++ /dev/null
@@ -1,118 +0,0 @@
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.IO;
-using System.Text.RegularExpressions;
-using UnityEditor;
-using UnityEngine;
-using UnityEngine.Serialization;
-using AnyThink.Scripts.IntegrationManager.Editor;
-using Network = AnyThink.Scripts.IntegrationManager.Editor.Network;
-
-public class ATPluginSetting : ScriptableObject
-{
- public const string SettingsExportPath = "Assets/AnyThinkPlugin/Resources/Assets/ATPluginSetting.asset";
-
- private static ATPluginSetting instance;
- [SerializeField] private string adMobAndroidAppId = string.Empty;
- [SerializeField] private string adMobIosAppId = string.Empty;
-
- [SerializeField] private AnyThink.Scripts.IntegrationManager.Editor.Network coreNetwork = null;
-
- [SerializeField] private bool enableAndroidX = false;
-
- // [SerializeField] private int country = ATConfig.CHINA_COUNTRY;
-
- // [SerializeField] private Dictionary installedNetwork = new Dictionary();
-
- public static ATPluginSetting Instance
- {
- get
- {
- if (instance == null)
- {
- var settingsDir = Path.GetDirectoryName(SettingsExportPath);
- if (!Directory.Exists(settingsDir))
- {
- Directory.CreateDirectory(settingsDir);
- }
- string settingsFilePath = SettingsExportPath;
-
- instance = AssetDatabase.LoadAssetAtPath(settingsFilePath);
- if (instance != null) return instance;
-
- instance = CreateInstance();
- AssetDatabase.CreateAsset(instance, settingsFilePath);
- // initCoreNetwork();
- }
-
- return instance;
- }
- }
-
- // private static void initCoreNetwork()
- // {
- // Versions curVerions = ATConfig.getInstalledNetworkVersion(ATIntegrationManager.AnyThinkNetworkName, ATConfig.getLocalCountry());
- // if (curVerions != null)
- // {
- // AnyThink.Scripts.IntegrationManager.Editor.Network coreNetwork = new AnyThink.Scripts.IntegrationManager.Editor.Network();
- // coreNetwork.CurrentVersions = curVerions;
- // ATPluginSetting.Instance.CoreNetwork = coreNetwork;
- // }
- // }
-
- ///
- /// AdMob Android App ID.
- ///
- public string AdMobAndroidAppId
- {
- get { return Instance.adMobAndroidAppId; }
- set { Instance.adMobAndroidAppId = value; }
- }
-
- ///
- /// AdMob iOS App ID.
- ///
- public string AdMobIosAppId
- {
- get { return Instance.adMobIosAppId; }
- set { Instance.adMobIosAppId = value; }
- }
-
- public AnyThink.Scripts.IntegrationManager.Editor.Network CoreNetwork
- {
- get { return Instance.coreNetwork; }
- set { Instance.coreNetwork = value; }
- }
- // public void saveInstalledNetwork(string networkName, int country, Versions versions)
- // {
- // string key = networkName + "_" + country;
- // if (installedNetwork.ContainsKey(key))
- // {
- // installedNetwork.Remove(key);
- // }
- // installedNetwork.Add(key, versions);
- // SaveAsync();
- // }
-
- // public Versions getInstalledNetwork(string networkName, int country)
- // {
- // Versions versions;
- // installedNetwork.TryGetValue(networkName + "_" + country, out versions);
- // return versions;
- // }
-
- ///
- /// Saves the instance of the settings.
- ///
- public void SaveAsync()
- {
- EditorUtility.SetDirty(instance);
- }
-
- public bool EnableAndroidX
- {
- get { return Instance.enableAndroidX; }
- set { Instance.enableAndroidX = value; }
- }
-}
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATPluginSetting.cs.meta b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATPluginSetting.cs.meta
deleted file mode 100644
index aad9753..0000000
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATPluginSetting.cs.meta
+++ /dev/null
@@ -1,11 +0,0 @@
-fileFormatVersion: 2
-guid: 74c9441c35d2f47f8b9642d36ec88750
-MonoImporter:
- externalObjects: {}
- serializedVersion: 2
- defaultReferences: []
- executionOrder: 0
- icon: {instanceID: 0}
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATSdkUtil.cs.meta b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATSdkUtil.cs.meta
index fb683d7..aa7c793 100644
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATSdkUtil.cs.meta
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/ATSdkUtil.cs.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: ef9c052202b484fba97a4a35ea42d7e6
+guid: faaeb0026391549249b6b8bb9b2c6078
MonoImporter:
externalObjects: {}
serializedVersion: 2
diff --git a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/AnyThinkPlugin.IntegrationManager.Editor.asmdef.meta b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/AnyThinkPlugin.IntegrationManager.Editor.asmdef.meta
index 14456f9..f2fdd17 100644
--- a/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/AnyThinkPlugin.IntegrationManager.Editor.asmdef.meta
+++ b/Assets/AnyThinkPlugin/Script/IntegrationManager/Editor/AnyThinkPlugin.IntegrationManager.Editor.asmdef.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 87bccae0237fd4a41ac446d6636f95e0
+guid: 483a01338fa974b4498cd71261d6e8b9
AssemblyDefinitionImporter:
externalObjects: {}
userData:
diff --git a/Assets/ExternalDependencyManager/Editor/1.2.177.meta b/Assets/ExternalDependencyManager/Editor/1.2.177.meta
index 3f9d4b4..a6f462e 100644
--- a/Assets/ExternalDependencyManager/Editor/1.2.177.meta
+++ b/Assets/ExternalDependencyManager/Editor/1.2.177.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: 3697373e91f5040d299759b1f6929bac
+guid: 9ee3e98fba8c1468bbdf8cfa0803a7d8
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/Assets/ExternalDependencyManager/Editor/1.2.177/Google.IOSResolver.dll.meta b/Assets/ExternalDependencyManager/Editor/1.2.177/Google.IOSResolver.dll.meta
index 5457a30..3e4f117 100644
--- a/Assets/ExternalDependencyManager/Editor/1.2.177/Google.IOSResolver.dll.meta
+++ b/Assets/ExternalDependencyManager/Editor/1.2.177/Google.IOSResolver.dll.meta
@@ -1,21 +1,18 @@
fileFormatVersion: 2
-guid: 5552c54c11d94016bcfe740f27df44a6
-labels:
-- gvh
-- gvh_version-1.2.177
-- gvhp_exportpath-ExternalDependencyManager/Editor/1.2.177/Google.IOSResolver.dll
-- gvhp_targets-editor
-timeCreated: 1480838400
+guid: cdbad4cb68f85450db4d76d94f7e32a8
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
+ defineConstraints: []
isPreloaded: 0
isOverridable: 0
+ isExplicitlyReferenced: 0
+ validateReferences: 1
platformData:
- first:
- Any:
+ Any:
second:
enabled: 0
settings: {}
@@ -31,6 +28,6 @@ PluginImporter:
enabled: 0
settings:
CPU: AnyCPU
- userData:
- assetBundleName:
- assetBundleVariant:
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/ExternalDependencyManager/Editor/1.2.177/Google.JarResolver.dll.meta b/Assets/ExternalDependencyManager/Editor/1.2.177/Google.JarResolver.dll.meta
index 2b43bba..60a662b 100644
--- a/Assets/ExternalDependencyManager/Editor/1.2.177/Google.JarResolver.dll.meta
+++ b/Assets/ExternalDependencyManager/Editor/1.2.177/Google.JarResolver.dll.meta
@@ -1,21 +1,18 @@
fileFormatVersion: 2
-guid: 1f4f113972f04c3695341dfb3ba48d3b
-labels:
-- gvh
-- gvh_version-1.2.177
-- gvhp_exportpath-ExternalDependencyManager/Editor/1.2.177/Google.JarResolver.dll
-- gvhp_targets-editor
-timeCreated: 1480838400
+guid: 6825d727c7fc54515a67f5c88a893763
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
+ defineConstraints: []
isPreloaded: 0
isOverridable: 0
+ isExplicitlyReferenced: 0
+ validateReferences: 1
platformData:
- first:
- Any:
+ Any:
second:
enabled: 0
settings: {}
@@ -31,6 +28,6 @@ PluginImporter:
enabled: 0
settings:
CPU: AnyCPU
- userData:
- assetBundleName:
- assetBundleVariant:
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/ExternalDependencyManager/Editor/1.2.177/Google.PackageManagerResolver.dll.meta b/Assets/ExternalDependencyManager/Editor/1.2.177/Google.PackageManagerResolver.dll.meta
index 2e94805..c67d7cf 100644
--- a/Assets/ExternalDependencyManager/Editor/1.2.177/Google.PackageManagerResolver.dll.meta
+++ b/Assets/ExternalDependencyManager/Editor/1.2.177/Google.PackageManagerResolver.dll.meta
@@ -1,21 +1,18 @@
fileFormatVersion: 2
-guid: 413ed4abd14645c38ebbd8c5ff26e9de
-labels:
-- gvh
-- gvh_version-1.2.177
-- gvhp_exportpath-ExternalDependencyManager/Editor/1.2.177/Google.PackageManagerResolver.dll
-- gvhp_targets-editor
-timeCreated: 1480838400
+guid: eaa3f3ba5fb074092a8dc2523a55ee6e
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
+ defineConstraints: []
isPreloaded: 0
isOverridable: 0
+ isExplicitlyReferenced: 0
+ validateReferences: 1
platformData:
- first:
- Any:
+ Any:
second:
enabled: 0
settings: {}
@@ -31,6 +28,6 @@ PluginImporter:
enabled: 0
settings:
CPU: AnyCPU
- userData:
- assetBundleName:
- assetBundleVariant:
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/ExternalDependencyManager/Editor/1.2.177/Google.VersionHandlerImpl.dll.meta b/Assets/ExternalDependencyManager/Editor/1.2.177/Google.VersionHandlerImpl.dll.meta
index a6a4454..47bdcf7 100644
--- a/Assets/ExternalDependencyManager/Editor/1.2.177/Google.VersionHandlerImpl.dll.meta
+++ b/Assets/ExternalDependencyManager/Editor/1.2.177/Google.VersionHandlerImpl.dll.meta
@@ -1,21 +1,18 @@
fileFormatVersion: 2
-guid: 38d0b40a7b2d44c6a6a2362599bfc41e
-labels:
-- gvh
-- gvh_version-1.2.177
-- gvhp_exportpath-ExternalDependencyManager/Editor/1.2.177/Google.VersionHandlerImpl.dll
-- gvhp_targets-editor
-timeCreated: 1480838400
+guid: 6cb6437754caa42a7b6e62ef2c63d2e1
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
+ defineConstraints: []
isPreloaded: 0
isOverridable: 0
+ isExplicitlyReferenced: 0
+ validateReferences: 1
platformData:
- first:
- Any:
+ Any:
second:
enabled: 0
settings: {}
@@ -31,6 +28,6 @@ PluginImporter:
enabled: 0
settings:
CPU: AnyCPU
- userData:
- assetBundleName:
- assetBundleVariant:
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/ExternalDependencyManager/Editor/CHANGELOG.md b/Assets/ExternalDependencyManager/Editor/CHANGELOG.md
deleted file mode 100644
index bee4f5b..0000000
--- a/Assets/ExternalDependencyManager/Editor/CHANGELOG.md
+++ /dev/null
@@ -1,1357 +0,0 @@
-# Version 1.2.170 - May 11, 2022
-* iOS Resolver - Change `Enable Swift Framework Support Workaround` setting to
- be `ON` by default since more pods are using Swift Framework now.
-
-# Version 1.2.170 - Apr 4, 2022
-* Android Resolver - Fixes #498 - Fix the path separator of the Maven repo
- injected to `mainTemplate.gradle`.
-* iOS Resolver - Fixes #470 - Switch default Cocoapods master repo from Github
- to CDN.
-* iOS Resolver - `Link Framework Statically` setting is now default to `true`.
- That is, `use_frameworks! :linkage => static` will be added to `Podfile` by
- default instead of `use_frameworks!`. This can be changed in iOS Resolver
- settings. This fixes odd behaviors when pods include static libraries, ex.
- Firebase Analytics.
-* iOS Resolver - Added a workaround when app crashes on launch due to
- `Library not loaded: @rpath/libswiftCore.dylib` when some pods includes Swift
- framework. This is turned `OFF` by default and can be changed in iOS Resolver
- settings.
-
-# Version 1.2.169 - Jan 20, 2022
-* General - Fixes #425 - Change to save `GvhProjectSettings.xml` without
- Unicode byte order mark (BoM).
-* Android Resolver - Remove reference to `jcenter()`
-* iOS Resolver - Force setting `LANG` when executing Cocoapods in shell mode on
- Mac.
-
-# Version 1.2.168 - Dec 9, 2021
-* All - Fixes #472 by removing the use of `System.Diagnostics.Debug.Assert`
-* All - Fixed #477 by properly enabling EDM4U libraries for Unity 2021.2+ when
- the package is installed through `.tgz`
-
-# Version 1.2.167 - Oct 6, 2021
-* All - Moved versioned `.dll` in EDM4U to a versioned folder and remove their
- version postfix in their filename. For instance, `IOSResolver.dll` will be
- placed at `ExternalDependencyManager/Editor/1.2.167/Google.IOSResolver.dll`.
-* Android Resolver - Fixed #243 by only using the highest version in
- `mainTemplate.gradle` when duplicated dependencies are presented.
-* Android Resolver - Added supports to x86_64 to ABI list for Android apps on
- Chrome OS.
-
-# Version 1.2.166 - Jun 30, 2021
-* All - Fixed #440 and fixed #447 by specifying the parameter type while calling
- `GetApplicationIdentifier()` Unity API using reflection, due to a new
- overloaded method introduced in Unity 2021.2.
-* Android Resolver - Fixed #442 by patching `Dependency.IsGreater()` when the
- version strings end '+'.
-
-# Version 1.2.165 - Apr 28, 2021
-## Bug Fixes
-* Version Handler - Fixed #431 by replacing the use of `HttpUtility.UrlEncode()`
- which causes NullReferenceException in certain version of Unity.
-* Android Resolver - Check that androidSdkRootPath directory exists before using
- as sdkPath.
-* Android Resolver - Fixed Android Resolver integration tests with Unity
- 2019.3+.
-
-# Version 1.2.164 - Feb 4, 2021
-## New Features
-* Android Resolver - Added support for Android packages with classifier in their
- namespaces.
-* iOS Resolver - Added new settings in iOS Resolver to configure generated
- Podfile.
-* iOS Resolver - Added a new attribute `addToAllTargets` in Dependencies.xml.
-
-## Bug Fixes
-* iOS Resolver - Fixed XML parsing for `bitcodeEnabled` attribute in
- Dependencies.xml.
-
-# Version 1.2.163 - Dec 15, 2020
-## Bug Fixes
-* Version Handler - Fixed measurement reporting
-
-# Version 1.2.162 - Nov 19, 2020
-## Bug Fixes
-* Version Handler - Improved #413 by preventing Version Handler from running
- from static constructor when it is disabled.
-* Package Manager Resolver - Remove GPR
-
-# Version 1.2.161 - Oct 12, 2020
-## Bug Fixes
-* Android Resolver - Fixed the issue that Android Resolver does not resolve
- again before build in Unity 2020 if it failed to resolve previously.
-
-# Version 1.2.160 - Sep 30, 2020
-## Bug Fixes
-* Android Resolver - Fixed a regression that gradleResolver can be null until
- Initialize() is called.
-* Android Resolver - Fixed a regression that Android Resolver failed in Unity
- 2019.3+ due to `gradleTemplate.properties` not enabled when
- `mainTemplate.gradle` is not enabled at all.
-
-# Version 1.2.159 - Sep 11, 2020
-## Bug Fixes
-* Android Resolver - Fixed #322 where the Unity editor will lose its target SDK
- setting between Unity restarts if `>28` is selected in 2019. This is due to
- Unity AndroidSdkVersions enum does not contain values above 28.
-* Android Resolver - Fixed #360 where building Android app with Untiy 2019.3+
- may fail due to Jetifier and AndroidX not enabled properly in generated
- Gradle project. This fix requires the user to enable
- `Custom Gradle Properties Template` found under
- `Player Settings > Settings for Android > Publishing Settings`.
-
-# Version 1.2.158 - Sep 3, 2020
-## Bug Fixes
-* Version Handler: Fixed editor freeze when `-executeMethod` is used in
- non-batch mode.
-* Android Resolver: Normalized file paths when generating local Maven repo
- since the path may contains a mix of forward and backward slash on Windows.
-* Export Unity Package: Fixed generation of .unitypackage with tarfile on
- Windows.
-
-# Version 1.2.157 - Aug 6, 2020
-## Bug Fixes
-* Android Resolver: Delay initialization until active build target is Android
- and the editor is not in play mode.
-* iOS Resolver: Delay initialization until active build target is iOS
- and the editor is not in play mode.
-* Export Unity Package: Workaround directory creation racy if multiple export
- operations are spawned at the same time.
-
-# Version 1.2.156 - June 10, 2020
-## Bug Fixes
-* Android Resolver: Fixed that the generated local repo assets contains
- redundent labels which are causing Version Handler to failed while
- uninstalling packages.
-* Android Resolver: Fixed that the repo url injected into mainTemplate.gradle
- is incorrect when Unity is configured to export gradle project.
-* Android Resolver: Limited to only create local Maven repo when the source
- repo contains ".srcaar" file.
-
-## Changes
-* All: Described EDM4U analytics data usage in readme.
-
-# Version 1.2.155 - May 14, 2020
-## Bug Fixes
-* All: Fixed compiler error when build with Unity 5.4 or below due to the
- usage of Rect.zero.
-* All: Ignore cases when checking command line arguments.
-
-# Version 1.2.154 - May 14, 2020
-## Bug Fixes
-* All: Make each MultiSelectWindow for different purposes to have its own
- unique window.
-
-## Changes
-* All: Replace all dialog with DialogWindow which is implemented from
- EditorWindow.
-* Package Manager Resolver: Clarify how manifest.json will be changed in Package
- Manager Resolver window.
-
-# Version 1.2.153 - Apr 24, 2020
-## Bug Fixes
-* Android Resolver: Fixed an exception when repainting the Android resolution
- window in Unity 2019.3.x.
-
-# Version 1.2.152 - Apr 17, 2020
-## Bug Fixes
-* Version Handler: Fixed exception when waiting for enabled editor DLLs to
- load.
-* Android Resolver: Fixed regression when using a Custom Gradle Template
- on Windows.
-
-# Version 1.2.151 - Apr 16, 2020
-## Bug Fixes
-* Version Handler: When waiting for newly enabled editor DLLs to load, ignore
- all DLLs that do not have a file-system location.
-* Android Resolver: Fixed resolution when using a Custom Gradle Template with
- libraries stored in a local maven repository distributed with a plugin
- installed with the Unity Package Manager.
-
-# Version 1.2.150 - Apr 9, 2020
-## Bug Fixes
-* All: The new packaging script when run on MacOS was generating a
- .unitypackage archive that could not be read by Unity on Windows.
- This release simply repackages the plugin with tar/gzip to fix the problem.
-
-# Version 1.2.149 - Apr 8, 2020
-## Bug Fixes
-* Package Manager Resolver: Fixed spurious error message when resuming
- migration after installing a UPM package.
-
-# Version 1.2.148 - Apr 8, 2020
-## Bug Fixes
-* Package Manager Resolver: Fixed an exception when resuming migration
- after installing a UPM package.
-
-# Version 1.2.147 - Apr 8, 2020
-## Bug Fixes
-* Version Handler: Fixed alias traversal bug which caused problems when
- migrating from installed .unitypackage files to UPM packages.
-
-# Version 1.2.146 - Apr 8, 2020
-## Bug Fixes
-* Version Handler: Fixed exception in manifest parsing when a manifest is
- detected with no aliases.
-
-# Version 1.2.145 - Apr 2, 2020
-## New Features
-* Package Manager Resolver: Added a method to migrate Version Handler
- managed packages installed via `.unitypackage` to Unity Package Manager
- packages. This is initially used to migrate the External Dependency Manager
- to UPM.
-
-## Changes
-* All: Verbose logging is now no longer automatically enabled in batch mode
- across all components. Instead logging can be configured using each
- component's verbose logging setting or by using the `-gvh_log_debug` command
- line flag when starting Unity.
-* Version Handler: Sped up version handler updates when the app domain isn't
- reloaded.
-
-## Bug Fixes
-* Version Handler: Fixed the display of the obsolete files clean up dialog
- when the asset database refreshes.
-* Version Handler: Improved reliability of callback from
- the VersionHandler.UpdateCompleteMethods event when an asset database
- refresh occurs.
-* Version Handler: Fixed duplicate exportPath labels when 'Assets/' is the
- root of paths assigned to files.
-* Version Handler: Handle empty lines in manifest files.
-
-# Version 1.2.144 - Mar 23, 2020
-## Changed
-* iOS Resolver: Removed the ability to configure the Xcode target a Cocoapod
- is added to.
-
-## Bug Fixes
-* iOS Resolver: Reverted support for adding Cocoapods to multiple targets as
- it caused a regression (exception thrown during post-build step) in some
- versions of Unity.
-
-# Version 1.2.143 - Mar 20, 2020
-## Bug Fixes
-* Android Resolver: Fixed caching of resolution state which was causing
- the resolver to always run when no dependencies had changed.
-
-# Version 1.2.142 - Mar 19, 2020
-## Changes
-* Package Manager Resolver: Enabled auto-add by default.
-
-# Version 1.2.141 - Mar 19, 2020
-## Bug Fixes
-* Fixed a bug when retrieving project settings. If a plugin was configured
- to fetch project settings, if a setting was fetched (e.g "foo") and this
- setting existed in the system settings but not the project settings the
- system value would override the default value leading to unexpected
- behavior.
-* Fixed a warning when caching web request classes in Unity 5.6.
-
-# Version 1.2.140 - Mar 19, 2020
-## Bug Fixes
-* Fixed measurement reporting in Unity 5.x.
-* Version Handler: Fixed NullReferenceException when an asset doesn't have
- an AssetImporter.
-
-# Version 1.2.139 - Mar 18, 2020
-## Changed
-* Added documentation to the built plugin.
-
-# Version 1.2.138 - Mar 17, 2020
-## New Features
-* Package Manager Resolver: Added the Package Manager Resolver
- component that allows developers to easily boostrap Unity Package Manager
- (UPM) registry addition using unitypackage plugins.
-* Version Handler: Added a window that allows plugins to managed by the
- Version Handler to be uninstalled.
-* Version Handler: Added support for displaying installed plugins.
-* Version Handler: Added support for moving files in plugins to their install
- locations (if the plugin has been configured to support this).
-* iOS Resolver: Added the ability to configure the Xcode target a Cocoapod is
- added to.
-
-## Bug Fixes
-* Fixed upgrade from version 1.2.137 and below after the plugin rename to
- EDM4U broke the upgrade process.
-* Android Resolver: Worked around PlayerSettings.Android.targetSdkVersion
- returning empty names for some values in 2019.x.
-* Version Handler: Fixed the display of the obsolete files clean up window.
-* Version Handler: Fixed managed file check when assets are modified in the
- project after plugin import.
-
-# Version 1.2.137 - Mar 6, 2020
-## Changed
-* Renamed package to External Package Manager for Unity (EDM4U).
- We changed this to reflect what this plugin is doing today which is far more
- than the original scope which just consisted of importing jar files from the
- Android SDK maven repository.
- Scripts that used to pull `play-services-resolver*.unitypackage` will now have
- to request `external-dependency-manager*.unitypackage` instead.
- We'll still be shipping a `play-services-resolver*_manifest.txt` file to
- handle upgrading from older versions of the plugin.
-
-## New Features
-* All Components: Added reporting of usage so that we can remotely detect
- errors and target improvements.
-* Android Resolver: Added support for *Dependencies.xml files in Unity Package
- Manager packages.
-* iOS Resolver: Added support for *Dependencies.xml files in Unity Package
- Manager packages.
-
-## Bug Fixes
-* Version Handler: Disabled attempts to disable asset metadata modification
- when assets are in a Unity Package Manager managed package.
-
-# Version 1.2.136 - Feb 19, 2019
-## Bug Fixes
-* Android Resolver: Fixed OpenJDK path discovery in Unity 2019.3.1.
-
-# Version 1.2.135 - Dec 5, 2019
-## Bug Fixes
-* All Components: Fixed stack overflow when loading project settings.
-
-# Version 1.2.134 - Dec 4, 2019
-## Bug Fixes
-* All Components: Fixed an issue which caused project settings to be cleared
- when running in batch mode.
-
-# Version 1.2.133 - Nov 18, 2019
-## Bug Fixes
-* All Components: Failure to save project settings will now report an error
- to the log rather than throwing an exception.
-
-# Version 1.2.132 - Nov 11, 2019
-## Bug Fixes
-* Android Resolver: Worked around expansion of DIR_UNITYPROJECT on Windows
- breaking Gradle builds when used as part of a file URI.
-* Android Resolver: mainTemplate.gradle is only written if it needs to be
- modified.
-
-# Version 1.2.131 - Oct 29, 2019
-## Bug Fixes
-* Version Handler: Improved execution of events on the main thread in batch
- mode.
-* Version Handler: Improved log level configuration at startup.
-* Version Handler: Improved performance of class lookup in deferred method
- calls.
-* Version Handler: Fixed rename to enable / disable for editor assets.
-* iOS Resolver: Improved log level configuration at startup.
-* Android Resolver: Improved local maven repo path reference in
- mainTemplate.gradle using DIR_UNITYPROJECT. DIR_UNITYPROJECT by Unity
- to point to the local filesystem path of the Unity project when Unity
- generates the Gradle project.
-
-# Version 1.2.130 - Oct 23, 2019
-## New Features
-* iOS Resolver: Added support for modifying the Podfile before `pod install`
- is executed.
-
-## Bug Fixes
-* Version Handler: Fixed invalid classname error when calling
- `VersionHandler.UpdateVersionedAssets()`.
-
-# Version 1.2.129 - Oct 2, 2019
-## Bug Fixes
-* iOS Resolver: Changed Cocoapod integration in Unity 2019.3+ to
- only add Pods to the UnityFramework target.
-
-# Version 1.2.128 - Oct 1, 2019
-## Bug Fixes
-* iOS Resolver: Fixed Cocoapod project integration mode with Unity
- 2019.3+.
-
-# Version 1.2.127 - Sep 30, 2019
-## Changes
-* Android Resolver: All Android Resolver settings File paths are now
- serialized with POSIX directory separators.
-
-# Version 1.2.126 - Sep 27, 2019
-## Changes
-* Android Resolver: File paths are now serialized with POSIX directory
- separators.
-## Bug Fixes
-* Android Resolver: Fixed resolution when the parent directory of a Unity
- project contains a Gradle project (i.e `settings.gradle` file).
-
-# Version 1.2.125 - Sep 23, 2019
-## Bug Fixes
-* All components: Silenced a warning about not being able to set the console
- encoding to UTF8.
-* Android Resolver: Worked around broken AndroidSDKTools class in some
- versions of Unity.
-* iOS Resolver: Fixed iOS target SDK version check
-* Version Handler: Changed clean up obsolete files window so that it doesn't
- exceed the screen size.
-
-# Version 1.2.124 - Jul 28, 2019
-## Bug Fixes
-* All components: Fixed regression with source control integration when using
- Unity 2019.1+.
-
-# Version 1.2.123 - Jul 23, 2019
-## New Features
-* All components: Source control integration for project settings.
-## Changes
-* Android Resolver: Removed AAR cache as it now makes little difference to
- incremental resolution performance.
-* Android Resolver: Improved embedded resource management so that embedded
- resources should upgrade when the plugin is updated without restarting
- the Unity editor.
-## Bug Fixes
-* Version Handler: Fixed InvokeMethod() and InvokeStaticMethod() when calling
- methods that have interface typed arguments.
-
-# Version 1.2.122 - Jul 2, 2019
-## Bug Fixes
-* iOS Resolver: Worked around Unity not loading the iOS Resolver DLL as it
- referenced the Xcode extension in a public interface. The iOS Resolver
- DLL still references the Xcode extension internally and just handles
- missing type exceptions dynamically.
-
-# Version 1.2.121 - Jun 27, 2019
-## Bug Fixes
-* Android Resolver: Fixed warning about missing Packages folder when loading
- XML dependencies files in versions of Unity without the package manager.
-* Android Resolver: Fixed resolution window progress bar exceeding 100%.
-* Android Resolver: If AndroidX is detected in the set of resolved libraries,
- the user will be prompted to enable the Jetifier.
-* Android Resolver: Improved text splitting in text area windows.
-* iOS Resolver: Added support for Unity's breaking changes to the Xcode API
- in 2019.3.+. Cocoapods are now added to build targets, Unity-iPhone and
- UnityFramework in Unity 2019.3+.
-
-# Version 1.2.120 - Jun 26, 2019
-## New Features
-* Android Resolver: Added support for loading *Dependencies.xml files from
- Unity Package Manager packages.
-* Android Resolver: Resolution window is now closed if resolution runs as
- a pre-build step.
-* iOS Resolver: Added support for loading *Dependencies.xml files from
- Unity Package Manager packages.
-## Bug Fixes
-* Android Resolver: Fixed generation of relative repo paths when using
- mainTemplate.gradle resolver.
-* Android Resolver: Fixed copy of .srcaar to .aar files in repos embedded in a
- project when a project path has characters (e.g whitespace) that are escaped
- during conversion to URIs.
-* Android Resolver: Fixed auto-resolution always running if the Android SDK
- is managed by Unity Hub.
-
-# Version 1.2.119 - Jun 19, 2019
-## Bug Fixes
-* Android Resolver: Fixed error reported when using Jetifier integration
- in Unity 2018+ if the target SDK is set to "highest installed".
-
-# Version 1.2.118 - Jun 18, 2019
-## New Features
-* Android Resolver: Added initial
- [Jetifier](https://developer.android.com/studio/command-line/jetifier)
- integration which simplifies
- [migration](ttps://developer.android.com/jetpack/androidx/migrate)
- to Jetpack ([AndroidX](https://developer.android.com/jetpack/androidx))
- libraries in cases where all dependencies are managed by the Android
- Resolver.
- This can be enabled via the `Use Jetifier` option in the
- `Assets > Play Services Resolver > Android Resolver > Settings` menu.
- Caveats:
- - If your project contains legacy Android Support Library .jar and .aar
- files, these files will need to be removed and replaced with references to
- artifacts on Maven via `*Dependencies.xml` files so that the Jetifier
- can map them to Jetpack (AndroidX) libraries.
- For example, remove the file `support-v4-27.0.2.jar` and replace it with
- `` in a
- `*Dependencies.xml` file.
- - If your project contains .jar or .aar files that use the legacy Android
- Support Libraries, these will need to be moved into a local Maven repo
- [See this guide](https://maven.apache.org/guides/mini/guide-3rd-party-jars-local.html)
- and then these files should be removed from your Unity project and instead
- referenced via `*Dependencies.xml` files so that the Jetifier can
- patch them to reference the Jetpack lirbaries.
-
-## Bug Fixes
-* Android Resolver: Disabled version locking of com.android.support:multidex
- does not use the same versioning scheme as other legacy Android support
- libraries.
-* Version Handler: Made Google.VersionHandler.dll's asset GUID stable across
- releases. This faciliates error-free import into projects where
- Google.VersionHandler.dll is moved from the default install location.
-
-# Version 1.2.117 - Jun 12, 2019
-## Bug Fixes
-* Android Resolver: Fix copying of .srcaar to .aar files for
- mainTemplate.gradle resolution. PluginImporter configuration was previously
- not being applied to .aar files unless the Unity project was saved.
-
-# Version 1.2.116 - Jun 7, 2019
-## Bug Fixes
-* Android Resolver: Fixed resolution of Android dependencies without version
- specifiers.
-* Android Resolver: Fixed Maven repo not found warning in Android Resolver.
-* Android Resolver: Fixed Android Player directory not found exception in
- Unity 2019.x when the Android Player isn't installed.
-
-# Version 1.2.115 - May 28, 2019
-## Bug Fixes
-* Android Resolver: Fixed exception due to Unity 2019.3.0a4 removing
- x86 from the set of supported ABIs.
-
-# Version 1.2.114 - May 27, 2019
-## New Features
-* Android Resolver: Added support for ABI stripping when using
- mainTemplate.gradle. This only works with AARs stored in repos
- on the local filesystem.
-
-# Version 1.2.113 - May 24, 2019
-## New Features
-* Android Resolver: If local repos are moved, the plugin will search the
- project for matching directories in an attempt to correct the error.
-* Version Handler: Files can be now targeted to multiple build targets
- using multiple "gvh_" asset labels.
-## Bug Fixes
-* Android Resolver: "implementation" or "compile" are now added correctly
- to mainTemplate.gradle in Unity versions prior to 2019.
-
-# Version 1.2.112 - May 22, 2019
-## New Features
-* Android Resolver: Added option to disable addition of dependencies to
- mainTemplate.gradle.
- See `Assets > Play Services Resolver > Android Resolver > Settings`.
-* Android Resolver: Made paths to local maven repositories in
- mainTemplate.gradle relative to the Unity project when a project is not
- being exported.
-## Bug Fixes
-* Android Resolver: Fixed builds with mainTemplate.gradle integration in
- Unity 2019.
-* Android Resolver: Changed dependency inclusion in mainTemplate.gradle to
- use "implementation" or "compile" depending upon the version of Gradle
- included with Unity.
-* Android Resolver: Gracefully handled exceptions if the console encoding
- can't be modified.
-* Android Resolver: Now gracefully fails if the AndroidPlayer directory
- can't be found.
-
-# Version 1.2.111 - May 9, 2019
-## Bug Fixes
-* Version Handler: Fixed invocation of methods with named arguments.
-* Version Handler: Fixed occasional hang when the editor is compiling
- while activating plugins.
-
-# Version 1.2.110 - May 7, 2019
-## Bug Fixes
-* Android Resolver: Fixed inclusion of some srcaar artifacts in builds with
- Gradle builds when using mainTemplate.gradle.
-
-# Version 1.2.109 - May 6, 2019
-## New Features:
-* Added links to documentation from menu.
-* Android Resolver: Added option to auto-resolve Android libraries on build.
-* Android Resolver: Added support for packaging specs of Android libraries.
-* Android Resolver: Pop up a window when displaying Android dependencies.
-
-## Bug Fixes
-* Android Resolver: Support for Unity 2019 Android SDK and JDK install locations
-* Android Resolver: e-enable AAR explosion if internal builds are enabled.
-* Android Resolver: Gracefully handle exceptions on file deletion.
-* Android Resolver: Fixed Android Resolver log spam on load.
-* Android Resolver: Fixed save of Android Resolver PromptBeforeAutoResolution
- setting.
-* Android Resolver: Fixed AAR processing failure when an AAR without
- classes.jar is found.
-* Android Resolver: Removed use of EditorUtility.DisplayProgressBar which
- was occasionally left displayed when resolution had completed.
-* Version Handler: Fixed asset rename to disable when a disabled file exists.
-
-# Version 1.2.108 - May 3, 2019
-## Bug Fixes:
-* Version Handler: Fixed occasional hang on startup.
-
-# Version 1.2.107 - May 3, 2019
-## New Features:
-* Version Handler: Added support for enabling / disabling assets that do not
- support the PluginImporter, based upon build target selection.
-* Android Resolver: Added support for the global specification of maven repos.
-* iOS Resolver: Added support for the global specification of Cocoapod sources.
-
-# Version 1.2.106 - May 1, 2019
-## New Features
-* iOS Resolver: Added support for development pods in Xcode project integration
- mode.
-* iOS Resolver: Added support for source pods with resources in Xcode project
- integration mode.
-
-# Version 1.2.105 - Apr 30, 2019
-## Bug fixes
-* Android Resolver: Fixed reference to Java tool path in logs.
-* Android and iOS Resolvers: Changed command line execution to emit a warning
- rather than throwing an exception and failing, when it is not possible to
- change the console input and output encoding to UTF-8.
-* Android Resolver: Added menu option and API to delete resolved libraries.
-* Android Resolver: Added menu option and API to log the repos and libraries
- currently included in the project.
-* Android Resolver: If Plugins/Android/mainTemplate.gradle file is present and
- Gradle is selected as the build type, resolution will simply patch the file
- with Android dependencies specified by plugins in the project.
-
-# Version 1.2.104 - Apr 10, 2019
-## Bug Fixes
-* Android Resolver: Changed Android ABI selection method from using whitelisted
- Unity versions to type availability. This fixes an exception on resolution
- in some versions of Unity 2017.4.
-
-# Version 1.2.103 - Apr 2, 2019
-## Bug Fixes
-* Android Resolver: Whitelisted Unity 2017.4 and above with ARM64 support.
-* Android Resolver: Fixed Java version check to work with Java SE 12 and above.
-
-# Version 1.2.102 - Feb 13, 2019
-## Bug Fixes
-* Android Resolver: Fixed the text overflow on the Android Resolver
- prompt before initial run to fit inside the buttons for
- smaller screens.
-
-# Version 1.2.101 - Feb 12, 2019
-## New Features
-* Android Resolver: Prompt the user before the resolver runs for the
- first time and allow the user to elect to disable from the prompt.
-* Android Resolver: Change popup warning when resolver is disabled
- to be a console warning.
-
-# Version 1.2.100 - Jan 25, 2019
-## Bug Fixes
-* Android Resolver: Fixed AAR processing sometimes failing on Windows
- due to file permissions.
-
-# Version 1.2.99 - Jan 23, 2019
-## Bug Fixes
-* Android Resolver: Improved performance of project property polling.
-* Version Handler: Fixed callback of VersionHandler.UpdateCompleteMethods
- when the update process is complete.
-
-# Version 1.2.98 - Jan 9, 2019
-## New Features
-* iOS Resolver: Pod declaration properties can now be set via XML pod
- references. For example, this can enable pods for a subset of build
- configurations.
-## Bug Fixes
-* iOS Resolver: Fixed incremental builds after local pods support caused
- regression in 1.2.96.
-
-# Version 1.2.97 - Dec 17, 2018
-## Bug Fixes
-* Android Resolver: Reduced memory allocation for logic that monitors build
- settings when auto-resolution is enabled. If auto-resolution is disabled,
- almost all build settings are no longer polled for changes.
-
-# Version 1.2.96 - Dec 17, 2018
-## Bug Fixes
-* Android Resolver: Fixed repacking of AARs to exclude .meta files.
-* Android Resolver: Only perform auto-resolution on the first scene while
- building.
-* Android Resolver: Fixed parsing of version ranges that include whitespace.
-* iOS Resolver: Added support for local development pods.
-* Version Handler: Fixed Version Handler failing to rename some files.
-
-# Version 1.2.95 - Oct 23, 2018
-## Bug Fixes:
-* Android Resolver: Fixed auto-resolution running in a loop in some scenarios.
-
-# Version 1.2.94 - Oct 22, 2018
-## Bug Fixes
-* iOS Resolver: Added support for PODS_TARGET_SRCROOT in source Cocoapods.
-
-# Version 1.2.93 - Oct 22, 2018
-## Bug Fixes
-* Android Resolver: Fixed removal of Android libraries on auto-resolution when
- `*Dependencies.xml` files are deleted.
-
-# Version 1.2.92 - Oct 2, 2018
-## Bug Fixes
-* Android Resolver: Worked around auto-resolution hang on Windows if
- resolution starts before compilation is finished.
-
-# Version 1.2.91 - Sep 27, 2018
-## Bug Fixes
-* Android Resolver: Fixed Android Resolution when the selected build target
- isn't Android.
-* Added C# assembly symbols the plugin to simplify debugging bug reports.
-
-# Version 1.2.90 - Sep 21, 2018
-## Bug Fixes
-* Android Resolver: Fixed transitive dependency selection of version locked
- packages.
-
-# Version 1.2.89 - Aug 31, 2018
-## Bug Fixes
-* Fixed FileLoadException in ResolveUnityEditoriOSXcodeExtension an assembly
- can't be loaded.
-
-# Version 1.2.88 - Aug 29, 2018
-## Changed
-* Improved reporting of resolution attempts and conflicts found in the Android
- Resolver.
-## Bug Fixes
-* iOS Resolver now correctly handles sample code in CocoaPods. Previously it
- would add all sample code to the project when using project level
- integration.
-* Android Resolver now correctly handles Gradle conflict resolution when the
- resolution results in a package that is compatible with all requested
- dependencies.
-
-# Version 1.2.87 - Aug 23, 2018
-## Bug Fixes
-* Fixed Android Resolver "Processing AARs" dialog getting stuck in Unity 5.6.
-
-# Version 1.2.86 - Aug 22, 2018
-## Bug Fixes
-* Fixed Android Resolver exception in OnPostProcessScene() when the Android
- platform isn't selected.
-
-# Version 1.2.85 - Aug 17, 2018
-## Changes
-* Added support for synchronous resolution in the Android Resolver.
- PlayServicesResolver.ResolveSync() now performs resolution synchronously.
-* Auto-resolution in the Android Resolver now results in synchronous resolution
- of Android dependencies before the Android application build starts via
- UnityEditor.Callbacks.PostProcessSceneAttribute.
-
-# Version 1.2.84 - Aug 16, 2018
-## Bug Fixes
-* Fixed Android Resolver crash when the AndroidResolverDependencies.xml
- file can't be written.
-* Reduced log spam when a conflicting Android library is pinned to a
- specific version.
-
-# Version 1.2.83 - Aug 15, 2018
-## Bug Fixes
-* Fixed Android Resolver failures due to an in-accessible AAR / JAR explode
- cache file. If the cache can't be read / written the resolver now continues
- with reduced performance following recompilation / DLL reloads.
-* Fixed incorrect version number in plugin manifest on install.
- This was a minor issue since the version handler rewrote the metadata
- after installation.
-
-# Version 1.2.82 - Aug 14, 2018
-## Changed
-* Added support for alphanumeric versions in the Android Resolver.
-
-## Bug Fixes
-* Fixed Android Resolver selection of latest duplicated library.
-* Fixed Android Resolver conflict resolution when version locked and non-version
- locked dependencies are specified.
-* Fixed Android Resolver conflict resolution when non-existent artifacts are
- referenced.
-
-# Version 1.2.81 - Aug 9, 2018
-## Bug Fixes
-* Fixed editor error that would occur when when
- `PlayerSettings.Android.targetArchitectures` was set to
- `AndroidArchitecture.All`.
-
-# Version 1.2.80 - Jul 24, 2018
-## Bug Fixes
-* Fixed project level settings incorrectly falling back to system wide settings
- when default property values were set.
-
-# Version 1.2.79 - Jul 23, 2018
-## Bug Fixes
-* Fixed AndroidManifest.xml patching on Android Resolver load in Unity 2018.x.
-
-# Version 1.2.78 - Jul 19, 2018
-## Changed
-* Added support for overriding conflicting dependencies.
-
-# Version 1.2.77 - Jul 19, 2018
-## Changed
-* Android Resolver now supports Unity's 2018 ABI filter (i.e arm64-v8a).
-* Reduced Android Resolver build option polling frequency.
-* Disabled Android Resolver auto-resolution in batch mode. Users now need
- to explicitly kick off resolution through the API.
-* All Android Resolver and Version Handler dialogs are now disabled in batch
- mode.
-* Verbose logging for all plugins is now enabled by default in batch mode.
-* Version Handler bootstrapper has been improved to no longer call
- UpdateComplete multiple times. However, since Unity can still reload the
- app domain after plugins have been enabled, users still need to store their
- plugin state to persistent storage to handle reloads.
-
-## Bug Fixes
-* Android Resolver no longer incorrectly adds MANIFEST.MF files to AARs.
-* Android Resolver auto-resolution jobs are now unscheduled when an explicit
- resolve job is started.
-
-# Version 1.2.76 - Jul 16, 2018
-## Bug Fixes
-* Fixed variable replacement in AndroidManifest.xml files in the Android
- Resolver.
- Version 1.2.75 introduced a regression which caused all variable replacement
- to replace the *entire* property value rather than the component of the
- property that referenced a variable. For example,
- given "applicationId = com.my.app", "${applicationId}.foo" would be
- incorrectly expanded as "com.my.app" rather than "com.my.app.foo". This
- resulted in numerous issues for Android builds where content provider
- initialization would fail and services may not start.
-
-## Changed
-* Gradle prebuild experimental feature has been removed from the Android
- Resolver. The feature has been broken for some time and added around 8MB
- to the plugin size.
-* Added better support for execution of plugin components in batch mode.
- In batch mode UnityEditor.update is sometimes never called - like when a
- single method is executed - so the new job scheduler will execute all jobs
- synchronously from the main thread.
-
-# Version 1.2.75 - Jun 20, 2018
-## New Features
-* Android Resolver now monitors the Android SDK path when
- auto-resolution is enabled and triggers resolution when the path is
- modified.
-
-## Changed
-* Android auto-resolution is now delayed by 3 seconds when the following build
- settings are changed:
- - Target ABI.
- - Gradle build vs. internal build.
- - Project export.
-* Added a progress bar display when AARs are being processed during Android
- resolution.
-
-## Bug Fixes
-* Fixed incorrect Android package version selection when a mix of
- version-locked and non-version-locked packages are specified.
-* Fixed non-deterministic Android package version selection to select
- the highest version of a specified package rather than the last
- package specification passed to the Gradle resolution script.
-
-# Version 1.2.74 - Jun 19, 2018
-## New Features
-* Added workaround for broken AndroidManifest.xml variable replacement in
- Unity 2018.x. By default ${applicationId} variables will be replaced by
- the bundle ID in the Plugins/Android/AndroidManifest.xml file. The
- behavior can be disabled via the Android Resolver settings menu.
-
-# Version 1.2.73 - May 30, 2018
-## Bug Fixes
-* Fixed spurious warning message about missing Android plugins directory on
- Windows.
-
-# Version 1.2.72 - May 23, 2018
-## Bug Fixes
-* Fixed spurious warning message about missing Android plugins directory.
-
-# Version 1.2.71 - May 10, 2018
-## Bug Fixes
-* Fixed resolution of Android dependencies when the `Assets/Plugins/Android`
- directory is named in a different case e.g `Assets/plugins/Android`.
-
-# Version 1.2.70 - May 7, 2018
-## Bug Fixes
-* Fixed bitcode flag being ignored for iOS pods.
-
-# Version 1.2.69 - May 7, 2018
-## Bug Fixes
-* Fixed escaping of local repository paths in Android Resolver.
-
-# Version 1.2.68 - May 3, 2018
-## Changes
-* Added support for granular builds of Google Play Services.
-
-# Version 1.2.67 - May 1, 2018
-## Changes
-* Improved support for iOS source-only pods in Unity 5.5 and below.
-
-# Version 1.2.66 - April 27, 2018
-## Bug Fixes
-* Fixed Version Handler renaming of Linux libraries with hyphens in filenames.
- Previously, libraries named Foo-1.2.3.so were not being renamed to
- libFoo-1.2.3.so on Linux which could break native library loading on some
- versions of Unity.
-
-# Version 1.2.65 - April 26, 2018
-## Bug Fixes
-* Fix CocoaPods casing in logs and comments.
-
-# Version 1.2.64 - Mar 16, 2018
-## Bug Fixes
-* Fixed bug in download_artifacts.gradle (used by Android Resolver) which
- reported a failure if required artifacts already exist.
-
-# Version 1.2.63 - Mar 15, 2018
-## Bug Fixes
-* Fixed iOS Resolver include search paths taking precedence over system headers
- when using project level resolution.
-* Fixed iOS Resolver includes relative to library root, when using project level
- resolution.
-
-# Version 1.2.62 - Mar 12, 2018
-## Changes
-* Improved error reporting when a file can't be moved to trash by the
- Version Handler.
-## Bug Fixes
-* Fixed Android Resolver throwing NullReferenceException when the Android SDK
- path isn't set.
-* Fixed Version Handler renaming files with underscores if the
- "Rename to Canonical Filenames" setting is enabled.
-
-# Version 1.2.61 - Jan 22, 2018
-## Bug Fixes
-* Fixed Android Resolver reporting non-existent conflicting dependencies when
- Gradle build system is enabled.
-
-# Version 1.2.60 - Jan 12, 2018
-## Changes
-* Added support for Maven / Ivy version specifications for Android packages.
-* Added support for Android SNAPSHOT packages.
-
-## Bug Fixes
-* Fixed Openjdk version check.
-* Fixed non-deterministic Android package resolution when two packages contain
- an artifact with the same name.
-
-# Version 1.2.59 - Oct 19, 2017
-## Bug Fixes
-* Fixed execution of Android Gradle resolution script when it's located
- in a path with whitespace.
-
-# Version 1.2.58 - Oct 19, 2017
-## Changes
-* Removed legacy resolution method from Android Resolver.
- It is now only possible to use the Gradle or Gradle prebuild resolution
- methods.
-
-# Version 1.2.57 - Oct 18, 2017
-## Bug Fixes
-* Updated Gradle wrapper to 4.2.1 to fix issues using Gradle with the
- latest Openjdk.
-* Android Gradle resolution now also uses gradle.properties to pass
- parameters to Gradle in an attempt to workaround problems with
- command line argument parsing on Windows 10.
-
-# Version 1.2.56 - Oct 12, 2017
-## Bug Fixes
-* Fixed Gradle artifact download with non-version locked artifacts.
-* Changed iOS resolver to only load dependencies at build time.
-
-# Version 1.2.55 - Oct 4, 2017
-## Bug Fixes
-* Force Android Resolution when the "Install Android Packages" setting changes.
-
-# Version 1.2.54 - Oct 4, 2017
-## Bug Fixes
-* Fixed execution of command line tools on Windows when the path to the tool
- contains a single quote (apostrophe). In this case we fallback to executing
- the tool via the system shell.
-
-# Version 1.2.53 - Oct 2, 2017
-## New Features
-* Changed Android Resolver "resolution complete" dialog so that it now displays
- failures.
-* Android Resolver now detects conflicting libraries that it does not manage
- warning the user if they're newer than the managed libraries and prompting
- the user to clean them up if they're older or at the same version.
-
-## Bug Fixes
-* Improved Android Resolver auto-resolution speed.
-* Fixed bug in the Gradle Android Resolver which would result in resolution
- succeeding when some dependencies are not found.
-
-# Version 1.2.52 - Sep 25, 2017
-## New Features
-* Changed Android Resolver's Gradle resolution to resolve conflicting
- dependencies across Google Play services and Android Support library packages.
-
-# Version 1.2.51 - Sep 20, 2017
-## Changes
-* Changed iOS Resolver to execute the CocoaPods "pod" command via the shell
- by default. Some developers customize their shell environment to use
- custom ssh certs to access internal git repositories that host pods so
- executing "pod" via the shell will work for these scenarios.
- The drawback of executing "pod" via the shell could potentially cause
- users problems if they break their shell environment. Though users who
- customize their shell environments will be able to resolve these issues.
-
-# Version 1.2.50 - Sep 18, 2017
-## New Features
-* Added option to disable the Gradle daemon in the Android Resolver.
- This daemon is now disabled by default as some users are getting into a state
- where multiple daemon instances are being spawned when changing dependencies
- which eventually results in Android resolution failing until all daemon
- processes are manually killed.
-
-## Bug Fixes
-* Android resolution is now always executed if the user declines the update
- of their Android SDK. This ensure users can continue to use out of date
- Android SDK packages if they desire.
-
-# Version 1.2.49 - Sep 18, 2017
-## Bug Fixes
-* Removed modulemap parsing in iOS Resolver.
- The framework *.modulemap did not need to be parsed by the iOS Resolver
- when injecting Cocoapods into a Xcode project. Simply adding a modular
- framework to a Xcode project results in Xcode's Clang parsing the associated
- modulemap and injecting any compile and link flags into the build process.
-
-# Version 1.2.48 - Sep 12, 2017
-## New Features
-* Changed settings to be per-project by default.
-
-## Bug Fixes
-* Added Google maven repository to fix GradlePrebuild resolution with Google
- components.
-* Fixed Android Resolution failure with spaces in paths.
-
-# Version 1.2.47 - Aug 29, 2017
-## New Features
-* Android and iOS dependencies can now be specified using *Dependencies.xml
- files. This is now the preferred method for registering dependencies,
- we may remove the API for dependency addition in future.
-* Added "Reset to Defaults" button to each settings dialog to restore default
- settings.
-* Android Resolver now validates the configured JDK is new enough to build
- recently released Android libraries.
-## Bug Fixes
-* Fixed a bug that caused dependencies with the "LATEST" version specification
- to be ignored when using the Gradle mode of the Android Resolver.
-* Fixed a race condition when running Android Resolution.
-* Fixed Android Resolver logging if a PlayServicesSupport instance is created
- with no logging enabled before the Android Resolver is initialized.
-* Fixed iOS resolver dialog in Unity 4.
-* Fixed iOS Cocoapod Xcode project integration in Unity 4.
-
-# Version 1.2.46 - Aug 22, 2017
-## Bug Fixes
-* GradlePrebuild Android resolver on Windows now correctly locates dependent
- data files.
-
-# Version 1.2.45 - Aug 22, 2017
-## Bug Fixes
-* Improved Android package auto-resolution and fixed clean up of stale
- dependencies when using Gradle dependency resolution.
-
-# Version 1.2.44 - Aug 21, 2017
-## Bug Fixes
-* Enabled autoresolution for Gradle Prebuild.
-* Made the command line dialog windows have selectable text.
-* Fixed incorrect "Android Settings" dialog disabled groups.
-* Updated PlayServicesResolver android platform detection to use the package
- manager instead of the 'android' tool.
-* UnityCompat reflection methods 'GetAndroidPlatform' and
- 'GetAndroidBuildToolsVersion' are now Obsolete due to dependence on the
- obsolete 'android' build tool.
-
-# Version 1.2.43 - Aug 18, 2017
-## Bug Fixes
-* Fixed Gradle resolution in the Android Resolver when running
- PlayServicesResolver.Resolve() in parallel or spawning multiple
- resolutions before the previous resolve completed.
-
-# Version 1.2.42 - Aug 17, 2017
-## Bug Fixes
-* Fixed Xcode project level settings not being applied by IOS Resolver when
- Xcode project pod integration is enabled.
-
-# Version 1.2.41 - Aug 15, 2017
-## Bug Fixes
-* IOS Resolver's Xcode workspace pod integration is now disabled when Unity
- Cloud Build is detected. Unity Cloud Build does not follow the same build
- process as the Unity editor and fails to open the generated xcworkspace at
- this time.
-
-# Version 1.2.40 - Aug 15, 2017
-## Bug Fixes
-* Moved Android Resolver Gradle Prebuild scripts into Google.JarResolver.dll.
- They are now extracted from the DLL when required.
-* AARs / JARs are now cleaned up when switching the Android resolution
- strategy.
-
-# Version 1.2.39 - Aug 10, 2017
-## New Features
-* Android Resolver now supports resolution with Gradle. This enables support
- for non-local artifacts.
-## Bug Fixes
-* Android Resolver's Gradle Prebuild now uses Android build tools to determine
- the Android platform tools version rather than relying upon internal Unity
- APIs.
-* Android Resolver's Gradle Prebuild now correctly strips binaries that are
- not required for the target ABI.
-
-# Version 1.2.38 - Aug 7, 2017
-## Bug Fixes
-* Fixed an issue in VersionHandler where disabled targets are ignored if
- the "Any Platform" flag is set on a plugin DLL.
-
-# Version 1.2.37 - Aug 3, 2017
-## New Features
-* Exposed GooglePlayServices.PlayServicesResolver.Resolve() so that it's
- possible for a script to be notified when AAR / Jar resolution is complete.
- This makes it easier to setup a project to build from the command line.
-
-# Version 1.2.36 - Aug 3, 2017
-## New Features
-* VersionHandler.UpdateCompleteMethods allows a user to provide a list of
- methods to be called when VersionHandlerImpl has completed an update.
- This makes it easier to import a plugin and wait for VersionHandler to
- execute prior executing a build.
-
-# Version 1.2.35 - Jul 28, 2017
-## New Features
-* VersionHandler will now rename Linux libraries so they can target Unity
- versions that require different file naming. Libraries need to be labelled
- gvh_linuxlibname-${basename} in order to be considered for renaming.
- e.g gvh\_linuxlibname-MyLib will be named MyLib.so in Unity 5.5 and below and
- libMyLib.so in Unity 5.6 and above.
-
-# Version 1.2.34 - Jul 28, 2017
-## Bug Fixes
-* Made VersionHandler bootstrap module more robust when calling static
- methods before the implementation DLL is loaded.
-
-# Version 1.2.33 - Jul 27, 2017
-## New Features
-* Added a bootstrap module for VersionHandler so the implementation
- of the VersionHandler module can be versioned without resulting in
- a compile error when imported at different versions across multiple
- plugins.
-
-# Version 1.2.32 - Jul 20, 2017
-## New Features
-* Added support for build target selection based upon .NET framework
- version in the VersionHandler.
- When applying either gvh\_dotnet-3.5 or gvh\_dotnet-4.5 labels to
- assets, the VersionHandler will only enable the asset for the
- specified set of build targets when the matching .NET framework version
- is selected in Unity 2017's project settings. This allows assets
- to be provided in a plugin that need to differ based upon .NET version.
-
-# Version 1.2.31 - Jul 5, 2017
-## Bug Fixes
-* Force expansion of AARs with native components when using Unity 2017
- with the internal build system. In contrast to Unity 5.x, Unity 2017's
- internal build system does not include native libraries included in AARs.
- Forcing expansion of AARs with native components generates an
- Ant / Eclipse project for each AAR which is correctly included by Unity
- 2017's internal build system.
-
-# Version 1.2.30 - Jul 5, 2017
-## Bug Fixes
-* Fixed Cocoapods being installed when the build target isn't iOS.
-* Added support for malformed AARs with missing classes.jar.
-
-# Version 1.2.29 - Jun 16, 2017
-## New Features
-* Added support for the Android sdkmanager tool.
-
-# Version 1.2.28 - Jun 8, 2017
-## Bug Fixes
-* Fixed non-shell command line execution (regression from
- Cocoapod installation patch).
-
-# Version 1.2.27 - Jun 7, 2017
-## Bug Fixes
-* Added support for stdout / stderr redirection when executing
- commands in shell mode.
- This fixes CocoaPod tool installation when shell mode is
- enabled.
-* Fixed incremental builds when additional sources are specified
- in the Podfile.
-
-# Version 1.2.26 - Jun 7, 2017
-## Bug Fixes
-* Fixed a crash when importing Version Handler into Unity 4.7.x.
-
-# Version 1.2.25 - Jun 7, 2017
-## Bug Fixes
-* Fixed an issue in the Jar Resolver which incorrectly notified
- event handlers of bundle ID changes when the currently selected
- (not active) build target changed in Unity 5.6 and above.
-
-# Version 1.2.24 - Jun 6, 2017
-## New Features
-* Added option to control file renaming in Version Handler settings.
- Disabling file renaming (default option) significantly increases
- the speed of file version management operations with the downside
- that any files that are referenced directly by canonical filename
- rather than asset ID will no longer be valid.
-* Improved logging in the Version Handler.
-## Bug Fixes
-* Fixed an issue in the Version Handler which caused it to not
- re-enable plugins when re-importing a custom package with disabled
- version managed files.
-
-# Version 1.2.23 - May 26, 2017
-## Bug Fixes
-* Fixed a bug with gradle prebuild resolver on windows.
-
-# Version 1.2.22 - May 19, 2017
-## Bug Fixes
-* Fixed a bug in the iOS resolver with incremental builds.
-* Fixed misdetection of Cocoapods support with Unity beta 5.6.
-
-# Version 1.2.21 - May 8, 2017
-## Bug Fixes
-* Fix for https://github.com/googlesamples/unity-jar-resolver/issues/48
- Android dependency version number parsing when "-alpha" (etc.) are
- included in dependency (AAR / JAR) versions.
-
-# Version 1.2.20 - May 8, 2017
-## Bug Fixes
-* Attempted to fix
- https://github.com/googlesamples/unity-jar-resolver/issues/48
- where a NullReferenceException could occur if a target file does not
- have a valid version string.
-
-# Version 1.2.19 - May 4, 2017
-## Bug Fixes
-* Fixed Jar Resolver exploding and deleting AAR files it isn't managing.
-
-# Version 1.2.18 - May 4, 2017
-## New Features
-* Added support for preserving Unity pods such as when GVR is enabled.
-
-# Version 1.2.17 - Apr 20, 2017
-## Bug Fixes
-* Fixed auto-resolution when an Android application ID is modified.
-
-# Version 1.2.16 - Apr 17, 2017
-## Bug Fixes
-* Fixed Unity version number parsing on machines with a locale that uses
- "," for decimal points.
-* Fixed null reference exception if JDK path isn't set.
-
-# Version 1.2.15 - Mar 17, 2017
-## New Features
-* Added warning when the Jar Resolver's background resolution is disabled.
-## Bug Fixes
-* Fixed support of AARs with native libraries when using Gradle.
-* Fixed extra repository paths when resolving dependencies.
-
-# Version 1.2.14 - Mar 7, 2017
-## New Features
-* Added experimental Android resolution using Gradle.
- This alternative resolver supports proguard stripping with Unity's
- internal build system.
-* Added Android support for single ABI builds when using AARs include
- native libraries.
-* Disabled Android resolution on changes to all .cs and .js files.
- File patterns that are monitored for auto-resolution can be added
- using PlayServicesResolver.AddAutoResolutionFilePatterns().
-* Added tracking of resolved AARs and JARs so they can be cleaned up
- if they're no longer referenced by a project.
-* Added persistence of AAR / JAR version replacement for each Unity
- session.
-* Added settings dialog to the iOS resolver.
-* Integrated Cocoapod tool installation in the iOS resolver.
-* Added option to run pod tool via the shell.
-## Bug Fixes
-* Fixed build of some source Cocoapods (e.g Protobuf).
-* VersionHandler no longer prompts to delete obsolete manifests.
-* iOS resolver handles Cocoapod installation when using Ruby < 2.2.2.
-* Added workaround for package version selection when including
- Google Play Services on Android.
-* Fixed support for pods that reference static libraries.
-* Fixed support for resource-only pods.
-
-# Version 1.2.12 - Feb 14, 2017
-## Bug Fixes
-* Fixed re-explosion of AARs when the bundle ID is modified.
-
-# Version 1.2.11 - Jan 30, 2017
-## New Features
-* Added support for Android Studio builds.
-* Added support for native (C/C++) shared libraries in AARs.
-
-# Version 1.2.10 - Jan 11, 2017
-## Bug Fixes
-* Fixed SDK manager path retrieval.
-* Also, report stderr when it's not possible to run the "pod" tool.
-* Handle exceptions thrown by Unity.Cecil on asset rename
-* Fixed IOSResolver to handle PlayerSettings.iOS.targetOSVersionString
-
-# Version 1.2.9 - Dec 7, 2016
-## Bug Fixes
-* Improved error reporting when "pod repo update" fails.
-* Added detection of xml format xcode projects generated by old Cocoapods
- installations.
-
-# Version 1.2.8 - Dec 6, 2016
-## Bug Fixes
-* Increased speed of JarResolver resolution.
-* Fixed JarResolver caches getting out of sync with requested dependencies
- by removing the caches.
-* Fixed JarResolver explode cache always being rewritten even when no
- dependencies change.
-
-# Version 1.2.7 - Dec 2, 2016
-## Bug Fixes
-* Fixed VersionHandler build errors with Unity 5.5, due to the constantly
- changing BuildTarget enum.
-* Added support for Unity configured JDK Path rather than requiring
- JAVA_HOME to be set in the Jar Resolver.
-
-# Version 1.2.6 - Nov 15, 2016
-## Bug Fixes
-* Fixed IOSResolver errors when iOS support is not installed.
-* Added fallback to "pod" executable search which queries the Ruby Gems
- package manager for the binary install location.
-
-# Version 1.2.5 - Nov 3, 2016
-## Bug Fixes
-* Added crude support for source only Cocoapods to the IOSResolver.
-
-# Version 1.2.4 - Oct 27, 2016
-## Bug Fixes
-* Automated resolution of out of date pod repositories.
-
-# Version 1.2.3 - Oct 25, 2016
-## Bug Fixes
-* Fixed exception when reporting conflicting dependencies.
-
-# Version 1.2.2 - Oct 17, 2016
-## Bug Fixes
-* Fixed issue working with Unity 5.5
-* Fixed issue with PlayServicesResolver corrupting other iOS dependencies.
-* Updated build script to use Unity distributed tools for building.
-
-# Version 1.2.1 - Jul 25, 2016
-## Bug Fixes
-* Removed 1.2 Resolver and hardcoded whitelist of AARs to expand.
-* Improved error reporting when the "jar" executable can't be found.
-* Removed the need to set JAVA_HOME if "jar" is in the user's path.
-* Fixed spurious copying of partially matching AARs.
-* Changed resolver to only copy / expand when source AARs change.
-* Auto-resolution of dependencies is now performed when the Android
- build target is selected.
-
-## New Features
-* Expand AARs that contain manifests with variable expansion like
- ${applicationId}.
-* Added optional logging in the JarResolverLib module.
-* Integration with the Android SDK manager for dependencies that
- declare required Android SDK packages.
-
-# Version 1.2.0 - May 11 2016
-## Bug Fixes
-* Handles resolving dependencies when the artifacts are split across 2 repos.
-* #4 Misdetecting version for versions like 1.2-alpha. These are now string
- compared if alphanumeric
-* Removed resolver creation via reflection since it did not work all the time.
- Now a resolver needs to be loaded externally (which is existing behavior).
-
-## New Features
-* Expose PlayServicesResolver properties to allow for script access.
-* Explodes firebase-common and firebase-measurement aar files to support
- ${applicationId} substitution.
-
-# Version 1.1.1 - 25 Feb 2016
-## Bug Fixes
-* #1 Spaces in project path not handled when exploding Aar file.
-* #2 Script compilation error: TypeLoadException.
-
-# Version 1.1.0 - 5 Feb 2016
-## New Features
-* Adds friendly alert when JAVA_HOME is not set on Windows platforms.
-* Adds flag for disabling background resolution.
-* Expands play-services-measurement and replaces ${applicationId} with the
- bundle Id.
-
- ## Bug Fixes
-* Fixes infinite loop of resolution triggered by resolution.
diff --git a/Assets/ExternalDependencyManager/Editor/CHANGELOG.md.meta b/Assets/ExternalDependencyManager/Editor/CHANGELOG.md.meta
deleted file mode 100644
index a21230d..0000000
--- a/Assets/ExternalDependencyManager/Editor/CHANGELOG.md.meta
+++ /dev/null
@@ -1,12 +0,0 @@
-fileFormatVersion: 2
-guid: 54156dbf561a48eea988cc27fcae3f90
-labels:
-- gvh
-- gvh_version-1.2.171
-- gvhp_exportpath-ExternalDependencyManager/Editor/CHANGELOG.md
-timeCreated: 1584567712
-licenseType: Pro
-TextScriptImporter:
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/ExternalDependencyManager/Editor/Google.VersionHandler.dll.meta b/Assets/ExternalDependencyManager/Editor/Google.VersionHandler.dll.meta
index a35483b..f8a5668 100644
--- a/Assets/ExternalDependencyManager/Editor/Google.VersionHandler.dll.meta
+++ b/Assets/ExternalDependencyManager/Editor/Google.VersionHandler.dll.meta
@@ -1,21 +1,18 @@
fileFormatVersion: 2
-guid: 86460262ea60447dbb6a62d21167790f
-labels:
-- gvh
-- gvh_version-1.2.177
-- gvhp_exportpath-ExternalDependencyManager/Editor/Google.VersionHandler.dll
-- gvhp_targets-editor
-timeCreated: 1480838400
+guid: 8c409ab99e4f4317b2bec2f54be2a2fc
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
+ defineConstraints: []
isPreloaded: 0
isOverridable: 0
+ isExplicitlyReferenced: 0
+ validateReferences: 1
platformData:
- first:
- Any:
+ Any:
second:
enabled: 0
settings: {}
@@ -31,6 +28,6 @@ PluginImporter:
enabled: 0
settings:
CPU: AnyCPU
- userData:
- assetBundleName:
- assetBundleVariant:
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/ExternalDependencyManager/Editor/LICENSE b/Assets/ExternalDependencyManager/Editor/LICENSE
deleted file mode 100644
index 6258cc4..0000000
--- a/Assets/ExternalDependencyManager/Editor/LICENSE
+++ /dev/null
@@ -1,245 +0,0 @@
-Copyright (C) 2014 Google Inc.
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
-
-====================================================================================================
-This package uses MiniJSON
-
-Copyright (c) 2013 Calvin Rien
-
-Based on the JSON parser by Patrick van Bergen
-http://techblog.procurios.nl/k/618/news/view/14605/14863/How-do-I-write-my-own-parser-for-JSON.html
-
-Simplified it so that it doesn't throw exceptions
-and can be used in Unity iPhone with maximum code stripping.
-
-Permission is hereby granted, free of charge, to any person obtaining
-a copy of this software and associated documentation files (the
-"Software"), to deal in the Software without restriction, including
-without limitation the rights to use, copy, modify, merge, publish,
-distribute, sublicense, and/or sell copies of the Software, and to
-permit persons to whom the Software is furnished to do so, subject to
-the following conditions:
-
-The above copyright notice and this permission notice shall be
-included in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
-CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
-TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
-SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/Assets/ExternalDependencyManager/Editor/LICENSE.meta b/Assets/ExternalDependencyManager/Editor/LICENSE.meta
deleted file mode 100644
index aa4b40b..0000000
--- a/Assets/ExternalDependencyManager/Editor/LICENSE.meta
+++ /dev/null
@@ -1,12 +0,0 @@
-fileFormatVersion: 2
-guid: be6c1c4d98f8402ba4815e95e4b85883
-labels:
-- gvh
-- gvh_version-1.2.171
-- gvhp_exportpath-ExternalDependencyManager/Editor/LICENSE
-timeCreated: 1584567712
-licenseType: Pro
-TextScriptImporter:
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/ExternalDependencyManager/Editor/README.md b/Assets/ExternalDependencyManager/Editor/README.md
deleted file mode 100644
index b49cf1e..0000000
--- a/Assets/ExternalDependencyManager/Editor/README.md
+++ /dev/null
@@ -1,768 +0,0 @@
-External Dependency Manager for Unity
-========
-
-# Overview
-
-The External Dependency Manager for Unity (EDM4U)
-(formerly Play Services Resolver / Jar Resolver) is intended to be used by any
-Unity plugin that requires:
-
- * Android specific libraries (e.g
- [AARs](https://developer.android.com/studio/projects/android-library.html)).
- * iOS [CocoaPods](https://cocoapods.org/).
- * Version management of transitive dependencies.
- * Management of Package Manager (PM) Registries.
-
-Updated releases are available on
-[GitHub](https://github.com/googlesamples/unity-jar-resolver)
-
-# Background
-
-Many Unity plugins have dependencies upon Android specific libraries, iOS
-CocoaPods, and sometimes have transitive dependencies upon other Unity plugins.
-This causes the following problems:
-
- * Integrating platform specific (e.g Android and iOS) libraries within a
- Unity project can be complex and a burden on a Unity plugin maintainer.
- * The process of resolving conflicting dependencies on platform specific
- libraries is pushed to the developer attempting to use a Unity plugin.
- The developer trying to use your plugin is very likely to give up when
- faced with Android or iOS specific build errors.
- * The process of resolving conflicting Unity plugins (due to shared Unity
- plugin components) is pushed to the developer attempting to use your Unity
- plugin. In an effort to resolve conflicts, the developer will very likely
- attempt to resolve problems by deleting random files in your plugin,
- report bugs when that doesn't work and finally give up.
-
-EDM provides solutions for each of these problems.
-
-## Android Dependency Management
-
-The *Android Resolver* component of this plugin will download and integrate
-Android library dependencies and handle any conflicts between plugins that share
-the same dependencies.
-
-Without the Android Resolver, typically Unity plugins bundle their AAR and
-JAR dependencies, e.g. a Unity plugin `SomePlugin` that requires the Google
-Play Games Android library would redistribute the library and its transitive
-dependencies in the folder `SomePlugin/Android/`. When a user imports
-`SomeOtherPlugin` that includes the same libraries (potentially at different
-versions) in `SomeOtherPlugin/Android/`, the developer using `SomePlugin` and
-`SomeOtherPlugin` will see an error when building for Android that can be hard
-to interpret.
-
-Using the Android Resolver to manage Android library dependencies:
-
- * Solves Android library conflicts between plugins.
- * Handles all of the various processing steps required to use Android
- libraries (AARs, JARs) in Unity 4.x and above projects. Almost all
- versions of Unity have - at best - partial support for AARs.
- * (Experimental) Supports minification of included Java components without
- exporting a project.
-
-## iOS Dependency Management
-
-The *iOS Resolver* component of this plugin integrates with
-[CocoaPods](https://cocoapods.org/) to download and integrate iOS libraries
-and frameworks into the Xcode project Unity generates when building for iOS.
-Using CocoaPods allows multiple plugins to utilize shared components without
-forcing developers to fix either duplicate or incompatible versions of
-libraries included through multiple Unity plugins in their project.
-
-## Package Manager Registry Setup
-
-The [Package Manager](https://docs.unity3d.com/Manual/Packages.html)
-(PM) makes use of [NPM](https://www.npmjs.com/) registry servers for package
-hosting and provides ways to discover, install, upgrade and uninstall packages.
-This makes it easier for developers to manage plugins within their projects.
-
-However, installing additional package registries requires a few manual steps
-that can potentially be error prone. The *Package Manager Resolver*
-component of this plugin integrates with
-[PM](https://docs.unity3d.com/Manual/Packages.html) to provide a way to
-auto-install PM package registries when a `.unitypackage` is installed which
-allows plugin maintainers to ship a `.unitypackage` that can provide access
-to their own PM registry server to make it easier for developers to
-manage their plugins.
-
-## Unity Plugin Version Management
-
-Finally, the *Version Handler* component of this plugin simplifies the process
-of managing transitive dependencies of Unity plugins and each plugin's upgrade
-process.
-
-For example, without the Version Handler plugin, if:
-
- * Unity plugin `SomePlugin` includes `EDM4U` plugin at
- version 1.1.
- * Unity plugin `SomeOtherPlugin` includes `EDM4U`
- plugin at version 1.2.
-
-The version of `EDM4U` included in the developer's project depends upon the
-order the developer imports `SomePlugin` or `SomeOtherPlugin`.
-
-This results in:
-
- * `EDM4U` at version 1.2, if `SomePlugin` is imported then `SomeOtherPlugin`
- is imported.
- * `EDM4U` at version 1.1, if `SomeOtherPlugin` is imported then
- `SomePlugin` is imported.
-
-The Version Handler solves the problem of managing transitive dependencies by:
-
- * Specifying a set of packaging requirements that enable a plugin at
- different versions to be imported into a Unity project.
- * Providing activation logic that selects the latest version of a plugin
- within a project.
-
-When using the Version Handler to manage `EDM4U` included in `SomePlugin` and
-`SomeOtherPlugin`, from the prior example, version 1.2 will always be the
-version activated in a developer's Unity project.
-
-Plugin creators are encouraged to adopt this library to ease integration for
-their customers. For more information about integrating EDM4U
-into your own plugin, see the [Plugin Redistribution](#plugin-redistribution)
-section of this document.
-
-# Analytics
-
-The External Dependency Manager for Unity plugin by default logs usage to Google
-Analytics. The purpose of the logging is to quantitatively measure the usage of
-functionality, to gather reports on integration failures and to inform future
-improvements to the developer experience of the External Dependency Manager
-plugin. Note that the analytics collected are limited to the scope of the EDM4U
-plugin’s usage.
-
-For details of what is logged, please refer to the usage of
-`EditorMeasurement.Report()` in the source code.
-
-# Requirements
-
-The *Android Resolver* and *iOS Resolver* components of the plugin only work
-with Unity version 4.6.8 or higher.
-
-The *Version Handler* component only works with Unity 5.x or higher as it
-depends upon the `PluginImporter` UnityEditor API.
-
-The *Package Manager Resolver* component only works with
-Unity 2018.4 or above, when
-[scoped registry](https://docs.unity3d.com/Manual/upm-scoped.html)
-support was added to the Package Manager.
-
-# Getting Started
-
-Before you import EDM4U into your plugin project, you first
-need to consider whether you intend to *redistribute* `EDM4U`
-along with your own plugin.
-
-## Plugin Redistribution
-
-If you're a plugin maintainer, redistributing `EDM4U` inside your own plugin
-will ease the integration process for your users, by resolving dependency
-conflicts between your plugin and other plugins in a user's project.
-
-If you wish to redistribute `EDM4U` inside your plugin,
-you **must** follow these steps when importing the
-`external-dependency-manager-*.unitypackage`, and when exporting your own plugin
-package:
-
- 1. Import the `external-dependency-manager-*.unitypackage` into your plugin
- project by
- [running Unity from the command line](https://docs.unity3d.com/Manual/CommandLineArguments.html), ensuring that
- you add the `-gvh_disable` option.
- 1. Export your plugin by [running Unity from the command line](https://docs.unity3d.com/Manual/CommandLineArguments.html), ensuring that
- you:
- - Include the contents of the `Assets/PlayServicesResolver` and
- `Assets/ExternalDependencyManager` directory.
- - Add the `-gvh_disable` option.
-
-You **must** specify the `-gvh_disable` option in order for the Version
-Handler to work correctly!
-
-For example, the following command will import the
-`external-dependency-manager-1.2.46.0.unitypackage` into the project
-`MyPluginProject` and export the entire Assets folder to
-`MyPlugin.unitypackage`:
-
-```
-Unity -gvh_disable \
- -batchmode \
- -importPackage external-dependency-manager-1.2.46.0.unitypackage \
- -projectPath MyPluginProject \
- -exportPackage Assets MyPlugin.unitypackage \
- -quit
-```
-
-### Background
-
-The *Version Handler* component relies upon deferring the load of editor DLLs
-so that it can run first and determine the latest version of a plugin component
-to activate. The build of `EDM4U` plugin has Unity asset metadata that is
-configured so that the editor components are not initially enabled when it's
-imported into a Unity project. To maintain this configuration when importing
-the `external-dependency-manager.unitypackage` into a Unity plugin project, you
-*must* specify the command line option `-gvh_disable` which will prevent the
-Version Handler component from running and changing the Unity asset metadata.
-
-# Android Resolver Usage
-
-The Android Resolver copies specified dependencies from local or remote Maven
-repositories into the Unity project when a user selects Android as the build
-target in the Unity editor.
-
- 1. Add the `external-dependency-manager-*.unitypackage` to your plugin
- project (assuming you are developing a plugin). If you are redistributing
- EDM4U with your plugin, you **must** follow the
- import steps in the [Getting Started](#getting-started) section!
-
- 2. Copy and rename the
- [SampleDependencies.xml](https://github.com/googlesamples/unity-jar-resolver/blob/master/sample/Assets/ExternalDependencyManager/Editor/SampleDependencies.xml)
- file into your plugin and add the dependencies your plugin requires.
-
- The XML file just needs to be under an `Editor` directory and match the
- name `*Dependencies.xml`. For example,
- `MyPlugin/Editor/MyPluginDependencies.xml`.
-
- 3. Follow the steps in the [Getting Started](#getting-started)
- section when you are exporting your plugin package.
-
-For example, to add the Google Play Games library
-(`com.google.android.gms:play-services-games` package) at version `9.8.0` to
-the set of a plugin's Android dependencies:
-
-```
-
-
-
-
- extra-google-m2repository
-
-
-
-
-```
-
-The version specification (last component) supports:
-
- * Specific versions e.g `9.8.0`
- * Partial matches e.g `9.8.+` would match 9.8.0, 9.8.1 etc. choosing the most
- recent version.
- * Latest version using `LATEST` or `+`. We do *not* recommend using this
- unless you're 100% sure the library you depend upon will not break your
- Unity plugin in future.
-
-The above example specifies the dependency as a component of the Android SDK
-manager such that the Android SDK manager will be executed to install the
-package if it's not found. If your Android dependency is located on Maven
-central it's possible to specify the package simply using the `androidPackage`
-element:
-
-```
-
-
-
-
-
-```
-
-## Auto-resolution
-
-By default the Android Resolver automatically monitors the dependencies you have
-specified and the `Plugins/Android` folder of your Unity project. The
-resolution process runs when the specified dependencies are not present in your
-project.
-
-The *auto-resolution* process can be disabled via the
-`Assets > External Dependency Manager > Android Resolver > Settings` menu.
-
-Manual resolution can be performed using the following menu options:
-
- * `Assets > External Dependency Manager > Android Resolver > Resolve`
- * `Assets > External Dependency Manager > Android Resolver > Force Resolve`
-
-## Deleting libraries
-
-Resolved packages are tracked via asset labels by the Android Resolver.
-They can easily be deleted using the
-`Assets > External Dependency Manager > Android Resolver > Delete Resolved Libraries`
-menu item.
-
-## Android Manifest Variable Processing
-
-Some AAR files (for example play-services-measurement) contain variables that
-are processed by the Android Gradle plugin. Unfortunately, Unity does not
-perform the same processing when using Unity's Internal Build System, so the
-Android Resolver plugin handles known cases of this variable substitution
-by exploding the AAR into a folder and replacing `${applicationId}` with the
-`bundleID`.
-
-Disabling AAR explosion and therefore Android manifest processing can be done
-via the `Assets > External Dependency Manager > Android Resolver > Settings`
-menu. You may want to disable explosion of AARs if you're exporting a project
-to be built with Gradle / Android Studio.
-
-## ABI Stripping
-
-Some AAR files contain native libraries (.so files) for each ABI supported
-by Android. Unfortunately, when targeting a single ABI (e.g x86), Unity does
-not strip native libraries for unused ABIs. To strip unused ABIs, the Android
-Resolver plugin explodes an AAR into a folder and removes unused ABIs to
-reduce the built APK size. Furthermore, if native libraries are not stripped
-from an APK (e.g you have a mix of Unity's x86 library and some armeabi-v7a
-libraries) Android may attempt to load the wrong library for the current
-runtime ABI completely breaking your plugin when targeting some architectures.
-
-AAR explosion and therefore ABI stripping can be disabled via the
-`Assets > External Dependency Manager > Android Resolver > Settings` menu.
-You may want to disable explosion of AARs if you're exporting a project to be
-built with Gradle / Android Studio.
-
-## Resolution Strategies
-
-By default the Android Resolver will use Gradle to download dependencies prior
-to integrating them into a Unity project. This works with Unity's internal
-build system and Gradle / Android Studio project export.
-
-It's possible to change the resolution strategy via the
-`Assets > External Dependency Manager > Android Resolver > Settings` menu.
-
-### Download Artifacts with Gradle
-
-Using the default resolution strategy, the Android resolver executes the
-following operations:
-
- - Remove the result of previous Android resolutions.
- e.g Delete all files and directories labeled with "gpsr" under
- `Plugins/Android` from the project.
- - Collect the set of Android dependencies (libraries) specified by a
- project's `*Dependencies.xml` files.
- - Run `download_artifacts.gradle` with Gradle to resolve conflicts and,
- if successful, download the set of resolved Android libraries (AARs, JARs).
- - Process each AAR / JAR so that it can be used with the currently selected
- Unity build system (e.g Internal vs. Gradle, Export vs. No Export).
- This involves patching each reference to `applicationId` in the
- AndroidManifest.xml with the project's bundle ID. This means resolution
- must be run if the bundle ID is changed again.
- - Move the processed AARs to `Plugins/Android` so they will be included when
- Unity invokes the Android build.
-
-### Integrate into mainTemplate.gradle
-
-Unity 5.6 introduced support for customizing the `build.gradle` used to build
-Unity projects with Gradle. When the *Patch mainTemplate.gradle* setting is
-enabled, rather than downloading artifacts before the build, Android resolution
-results in the execution of the following operations:
-
- - Remove the result of previous Android resolutions.
- e.g Delete all files and directories labeled with "gpsr" under
- `Plugins/Android` from the project and remove sections delimited with
- `// Android Resolver * Start` and `// Android Resolver * End` lines.
- - Collect the set of Android dependencies (libraries) specified by a
- project's `*Dependencies.xml` files.
- - Rename any `.srcaar` files in the build to `.aar` and exclude them from
- being included directly by Unity in the Android build as
- `mainTemplate.gradle` will be patched to include them instead from their
- local maven repositories.
- - Inject the required Gradle repositories into `mainTemplate.gradle` at the
- line matching the pattern
- `.*apply plugin: 'com\.android\.(application|library)'.*` or the section
- starting at the line `// Android Resolver Repos Start`.
- If you want to control the injection point in the file, the section
- delimited by the lines `// Android Resolver Repos Start` and
- `// Android Resolver Repos End` should be placed in the global scope
- before the `dependencies` section.
- - Inject the required Android dependencies (libraries) into
- `mainTemplate.gradle` at the line matching the pattern `***DEPS***` or
- the section starting at the line `// Android Resolver Dependencies Start`.
- If you want to control the injection point in the file, the section
- delimited by the lines `// Android Resolver Dependencies Start` and
- `// Android Resolver Dependencies End` should be placed in the
- `dependencies` section.
- - Inject the packaging options logic, which excludes architecture specific
- libraries based upon the selected build target, into `mainTemplate.gradle`
- at the line matching the pattern `android +{` or the section starting at
- the line `// Android Resolver Exclusions Start`.
- If you want to control the injection point in the file, the section
- delimited by the lines `// Android Resolver Exclusions Start` and
- `// Android Resolver Exclusions End` should be placed in the global
- scope before the `android` section.
-
-## Dependency Tracking
-
-The Android Resolver creates the
-`ProjectSettings/AndroidResolverDependencies.xml` to quickly determine the set
-of resolved dependencies in a project. This is used by the auto-resolution
-process to only run the expensive resolution process when necessary.
-
-## Displaying Dependencies
-
-It's possible to display the set of dependencies the Android Resolver
-would download and process in your project via the
-`Assets > External Dependency Manager > Android Resolver > Display Libraries`
-menu item.
-
-# iOS Resolver Usage
-
-The iOS resolver component of this plugin manages
-[CocoaPods](https://cocoapods.org/). A CocoaPods `Podfile` is generated and
-the `pod` tool is executed as a post build process step to add dependencies
-to the Xcode project exported by Unity.
-
-Dependencies for iOS are added by referring to CocoaPods.
-
- 1. Add the `external-dependency-manager-*.unitypackage` to your plugin
- project (assuming you are developing a plugin). If you are redistributing
- EDM4U with your plugin, you **must** follow the
- import steps in the [Getting Started](#getting-started) section!
-
- 2. Copy and rename the
- [SampleDependencies.xml](https://github.com/googlesamples/unity-jar-resolver/blob/master/sample/Assets/ExternalDependencyManager/Editor/SampleDependencies.xml)
- file into your plugin and add the dependencies your plugin requires.
-
- The XML file just needs to be under an `Editor` directory and match the
- name `*Dependencies.xml`. For example,
- `MyPlugin/Editor/MyPluginDependencies.xml`.
-
- 3. Follow the steps in the [Getting Started](#getting-started)
- section when you are exporting your plugin package.
-
-For example, to add the AdMob pod, version 7.0 or greater with bitcode enabled:
-
-```
-
-
-
-
-
-```
-
-## Integration Strategies
-
-The `CocoaPods` are either:
- * Downloaded and injected into the Xcode project file directly, rather than
- creating a separate xcworkspace. We call this `Xcode project` integration.
- * If the Unity version supports opening a xcworkspace file, the `pod` tool
- is used as intended to generate a xcworkspace which references the
- CocoaPods. We call this `Xcode workspace` integration.
-
-The resolution strategy can be changed via the
-`Assets > External Dependency Manager > iOS Resolver > Settings` menu.
-
-### Appending text to generated Podfile
-In order to modify the generated Podfile you can create a script like this:
-```
-using System.IO;
-public class PostProcessIOS : MonoBehaviour {
-[PostProcessBuildAttribute(45)]//must be between 40 and 50 to ensure that it's not overriden by Podfile generation (40) and that it's added before "pod install" (50)
-private static void PostProcessBuild_iOS(BuildTarget target, string buildPath)
-{
- if (target == BuildTarget.iOS)
- {
-
- using (StreamWriter sw = File.AppendText(buildPath + "/Podfile"))
- {
- //in this example I'm adding an app extension
- sw.WriteLine("\ntarget 'NSExtension' do\n pod 'Firebase/Messaging', '6.6.0'\nend");
- }
- }
-}
-```
-
-# Package Manager Resolver Usage
-
-Adding registries to the
-[Package Manager](https://docs.unity3d.com/Manual/Packages.html)
-(PM) is a manual process. The Package Manager Resolver (PMR) component
-of this plugin makes it easy for plugin maintainers to distribute new PM
-registry servers and easy for plugin users to manage PM registry servers.
-
-## Adding Registries
-
- 1. Add the `external-dependency-manager-*.unitypackage` to your plugin
- project (assuming you are developing a plugin). If you are redistributing
- EDM4U with your plugin, you **must** follow the
- import steps in the [Getting Started](#getting-started) section!
-
- 2. Copy and rename the
- [SampleRegistries.xml](https://github.com/googlesamples/unity-jar-resolver/blob/master/sample/Assets/ExternalDependencyManager/Editor/sample/Assets/ExternalDependencyManager/Editor/SampleRegistries.xml)
- file into your plugin and add the registries your plugin requires.
-
- The XML file just needs to be under an `Editor` directory and match the
- name `*Registries.xml` or labeled with `gumpr_registries`. For example,
- `MyPlugin/Editor/MyPluginRegistries.xml`.
-
- 3. Follow the steps in the [Getting Started](#getting-started)
- section when you are exporting your plugin package.
-
-For example, to add a registry for plugins in the scope `com.coolstuff`:
-
-```
-
-
-
- com.coolstuff
-
-
-
-```
-
-When PMR is loaded it will prompt the developer to add the registry to their
-project if it isn't already present in the `Packages/manifest.json` file.
-
-For more information, see Unity's documentation on
-[scoped package registries](https://docs.unity3d.com/Manual/upm-scoped.html).
-
-## Managing Registries
-
-It's possible to add and remove registries that are specified via PMR
-XML configuration files via the following menu options:
-
-* `Assets > External Dependency Manager > Package Manager Resolver >
- Add Registries` will prompt the user with a window which allows them to
- add registries discovered in the project to the Package Manager.
-* `Assets > External Dependency Manager > Package Manager Resolver >
- Remove Registries` will prompt the user with a window which allows them to
- remove registries discovered in the project from the Package Manager.
-* `Assets > External Dependency Manager > Package Manager Resolver >
- Modify Registries` will prompt the user with a window which allows them to
- add or remove registries discovered in the project.
-
-## Migration
-
-PMR can migrate Version Handler packages installed in the `Assets` folder
-to PM packages. This requires the plugins to implement the following:
-
-* `.unitypackage` must include a Version Handler manifests that describes
- the components of the plugin. If the plugin has no dependencies
- the manifest would just include the files in the plugin.
-* The PM package JSON provided by the registry must include a keyword
- (in the `versions.VERSION.keyword` list) that maps the PM package
- to a Version Handler package using the format
- `vh-name:VERSION_HANDLER_MANIFEST_NAME` where `VERSION_HANDLER_MANIFEST_NAME`
- is the name of the manifest defined in the `.unitypackage`. For
- more information see the description of the `gvhp_manifestname` asset label
- in the *Version Handler Usage* section.
-
-When using the `Assets > External Dependency Manager >
-Package Manager Resolver > Migrate Packages` menu option, PMR then
-will:
-
-* List all Version Handler manager packages in the project.
-* Search all available packages in the PM registries and fetch keywords
- associated with each package parsing the Version Handler manifest names
- for each package.
-* Map each installed Version Handler package to a PM package.
-* Prompt the user to migrate the discovered packages.
-* Perform package migration for all selected packages if the user clicks
- the `Apply` button.
-
-## Configuration
-
-PMR can be configured via the `Assets > External Dependency Manager >
-Package Manager Resolver > Settings` menu option:
-
-* `Add package registries` when enabled, when the plugin loads or registry
- configuration files change, this will prompt the user to add registries
- that are not present in the Package Manager.
-* `Prompt to add package registries` will cause a developer to be prompted
- with a window that will ask for confirmation before adding registries.
- When this is disabled registries are added silently to the project.
-* `Prompt to migrate packages` will cause a developer to be prompted
- with a window that will ask for confirmation before migrating packages
- installed in the `Assets` directory to PM packages.
-* `Enable Analytics Reporting` when enabled, reports the use of the plugin
- to the developers so they can make imrpovements.
-* `Verbose logging` when enabled prints debug information to the console
- which can be useful when filing bug reports.
-
-# Version Handler Usage
-
-The Version Handler component of this plugin manages:
-
-* Shared Unity plugin dependencies.
-* Upgrading Unity plugins by cleaning up old files from previous versions.
-* Uninstallation of plugins that are distributed with manifest files.
-* Restoration of plugin assets to their original install locations if assets
- are tagged with the `exportpath` label.
-
-Since the Version Handler needs to modify Unity asset metadata (`.meta` files),
-to enable / disable components, rename and delete asset files it does not
-work with Package Manager installed packages. It's still possible to
-include EDM4U in Package Manager packages, the Version Handler component
-simply won't do anything to PM plugins in this case.
-
-## Using Version Handler Managed Plugins
-
-If a plugin is imported at multiple different versions into a project, if
-the Version Handler is enabled, it will automatically check all managed
-assets to determine the set of assets that are out of date and assets that
-should be removed. To disable automatic checking managed assets disable
-the `Enable version management` option in the
-`Assets > External Dependency Manager > Version Handler > Settings` menu.
-
-If version management is disabled, it's possible to check managed assets
-manually using the
-`Assets > External Dependency Manager > Version Handler > Update` menu option.
-
-### Listing Managed Plugins
-
-Plugins managed by the Version Handler, those that ship with manifest files,
-can displayed using the `Assets > External Dependency Manager >
-Version Handler > Display Managed Packages` menu option. The list of plugins
-are written to the console window along with the set of files used by each
-plugin.
-
-### Uninstalling Managed Plugins
-
-Plugins managed by the Version Handler, those that ship with manifest files,
-can be removed using the `Assets > External Dependency Manager >
-Version Handler > Uninstall Managed Packages` menu option. This operation
-will display a window that allows a developer to select a set of plugins to
-remove which will remove all files owned by each plugin excluding those that
-are in use by other installed plugins.
-
-Files managed by the Version Handler, those labeled with the `gvh` asset label,
-can be checked to see whether anything needs to be upgraded, disabled or
-removed using the `Assets > External Dependency Manager >
-Version Handler > Update` menu option.
-
-### Restore Install Paths
-
-Some developers move assets around in their project which can make it
-harder for plugin maintainers to debug issues if this breaks Unity's
-[special folders](https://docs.unity3d.com/Manual/SpecialFolders.html) rules.
-If assets are labeled with their original install / export path
-(see `gvhp_exportpath` below), Version Handler can restore assets to their
-original locations when using the `Assets > External Dependency Manager >
-Version Handler > Move Files To Install Locations` menu option.
-
-### Settings
-
-Some behavior of the Version Handler can be configured via the
-`Assets > External Dependency Manager > Version Handler > Settings` menu
-option.
-
-* `Enable version management` controls whether the plugin should automatically
- check asset versions and apply changes. If this is disabled the process
- should be run manually when installing or upgrading managed plugins using
- `Assets > External Dependency Manager > Version Handler > Update`.
-* `Rename to canonical filenames` is a legacy option that will rename files to
- remove version numbers and other labels from filenames.
-* `Prompt for obsolete file deletion` enables the display of a window when
- obsolete files are deleted allowing the developer to select which files to
- delete and those to keep.
-* `Allow disabling files via renaming` controls whether obsolete or disabled
- files should be disabled by renaming them to `myfilename_DISABLED`.
- Renaming to disable files is required in some scenarios where Unity doesn't
- support removing files from the build via the PluginImporter.
-* `Enable Analytics Reporting` enables / disables usage reporting to plugin
- developers to improve the product.
-* `Verbose logging` enables _very_ noisy log output that is useful for
- debugging while filing a bug report or building a new managed plugin.
-* `Use project settings` saves settings for the plugin in the project rather
- than system-wide.
-
-## Redistributing a Managed Plugin
-
-The Version Handler employs a couple of methods for managing version
-selection, upgrade and removal of plugins.
-
-* Each plugin can ship with a manifest file that lists the files it includes.
- This makes it possible for Version Handler to calculate the difference
- in assets between the most recent release of a plugin and the previous
- release installed in a project. If a files are removed the Version Handler
- will prompt the user to clean up obsolete files.
-* Plugins can ship using assets with unique names, unique GUIDs and version
- number labels. Version numbers can be attached to assets using labels or
- added to the filename (e.g `myfile.txt` would be `myfile_version-x.y.z.txt).
- This allows the Version Handler to determine which set of files are the
- same file at different versions, select the most recent version and prompt
- the developer to clean up old versions.
-
-Unity plugins can be managed by the Version Handler using the following steps:
-
- 1. Add the `gvh` asset label to each asset (file) you want Version Handler
- to manage.
- 1. Add the `gvh_version-VERSION` label to each asset where `VERSION` is the
- version of the plugin you're releasing (e.g 1.2.3).
- 1. Add the `gvhp_exportpath-PATH` label to each asset where `PATH` is the
- export path of the file when the `.unitypackage` is created. This is
- used to track files if they're moved around in a project by developers.
- 1. Optional: Add `gvh_targets-editor` label to each editor DLL in your
- plugin and disable `editor` as a target platform for the DLL.
- The Version Handler will enable the most recent version of this DLL when
- the plugin is imported.
- 1. Optional: If your plugin is included in other Unity plugins, you should
- add the version number to each filename and change the GUID of each asset.
- This allows multiple versions of your plugin to be imported into a Unity
- project, with the Version Handler component activating only the most
- recent version.
- 1. Create a manifest text file named `MY_UNIQUE_PLUGIN_NAME_VERSION.txt`
- that lists all the files in your plugin relative to the project root.
- Then add the `gvh_manifest` label to the asset to indicate this file is
- a plugin manifest.
- 1. Optional: Add a `gvhp_manifestname-NAME` label to your manifest file
- to provide a human readable name for your package. If this isn't provided
- the name of the manifest file will be used as the package name.
- NAME can match the pattern `[0-9]+[a-zA-Z -]' where a leading integer
- will set the priority of the name where `0` is the highest priority
- and preferably used as the display name. The lowest value (i.e highest
- priority name) will be used as the display name and all other specified
- names will be aliases of the display name. Aliases can refer to previous
- names of the package allowing renaming across published versions.
- 1. Redistribute EDM4U Unity plugin with your plugin.
- See the [Plugin Redistribution](#plugin-redistribution) for the details.
-
-If you follow these steps:
-
- * When users import a newer version of your plugin, files referenced by the
- older version's manifest are cleaned up.
- * The latest version of the plugin will be selected when users import
- multiple packages that include your plugin, assuming the steps in
- [Plugin Redistribution](#plugin-redistribution) are followed.
-
-# Building from Source
-
-To build this plugin from source you need the following tools installed:
- * Unity (with iOS and Android modules installed)
-
-You can build the plugin by running the following from your shell
-(Linux / OSX):
-
-```
-./gradlew build
-```
-
-or Windows:
-
-```
-./gradlew.bat build
-```
-
-# Releasing
-
-Each time a new build of this plugin is checked into the source tree you
-need to do the following:
-
- * Bump the plugin version variable `pluginVersion` in `build.gradle`
- * Update `CHANGELOG.md` with the new version number and changes included in
- the release.
- * Build the release using `./gradlew release` which performs the following:
- * Updates `external-dependency-manager-*.unitypackage`
- * Copies the unpacked plugin to the `exploded` directory.
- * Updates template metadata files in the `plugin` directory.
- The GUIDs of all asset metadata is modified due to the version number
- change. Each file within the plugin is versioned to allow multiple
- versions of the plugin to be imported into a Unity project which allows
- the most recent version to be activated by the Version Handler
- component.
- * Create release commit using `./gradlew gitCreateReleaseCommit` which
- performs `git commit -a -m "description from CHANGELOG.md"`
- * Once the release commit is merge, tag the release using
- `./gradlew gitTagRelease` which performs the following:
- * `git tag -a pluginVersion -m "version RELEASE"` to tag the release.
- * Update tags on remote branch using `git push --tag REMOTE HEAD:master`
diff --git a/Assets/ExternalDependencyManager/Editor/README.md.meta b/Assets/ExternalDependencyManager/Editor/README.md.meta
deleted file mode 100644
index 949481e..0000000
--- a/Assets/ExternalDependencyManager/Editor/README.md.meta
+++ /dev/null
@@ -1,12 +0,0 @@
-fileFormatVersion: 2
-guid: 7123392a386740f98057fd61a3c1c2d4
-labels:
-- gvh
-- gvh_version-1.2.171
-- gvhp_exportpath-ExternalDependencyManager/Editor/README.md
-timeCreated: 1584567712
-licenseType: Pro
-TextScriptImporter:
- userData:
- assetBundleName:
- assetBundleVariant:
diff --git a/Assets/ExternalDependencyManager/Editor/external-dependency-manager_version-1.2.177_manifest.txt.meta b/Assets/ExternalDependencyManager/Editor/external-dependency-manager_version-1.2.177_manifest.txt.meta
index 2adb22e..026ae30 100644
--- a/Assets/ExternalDependencyManager/Editor/external-dependency-manager_version-1.2.177_manifest.txt.meta
+++ b/Assets/ExternalDependencyManager/Editor/external-dependency-manager_version-1.2.177_manifest.txt.meta
@@ -1,15 +1,7 @@
fileFormatVersion: 2
-guid: 2764c5ea3b354f3cb7ca80028fd08da2
-labels:
-- gvh
-- gvh_manifest
-- gvh_version-1.2.177
-- gvhp_exportpath-ExternalDependencyManager/Editor/external-dependency-manager_version-1.2.177_manifest.txt
-- gvhp_manifestname-0External Dependency Manager
-- gvhp_manifestname-play-services-resolver
-timeCreated: 1474401009
-licenseType: Pro
+guid: 36bce0d90658a447380074e3b9958ed0
TextScriptImporter:
- userData:
- assetBundleName:
- assetBundleVariant:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant: