com.azerion.bluestack 3.4.1 → 6.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +95 -0
- package/CLAUDE.md +157 -0
- package/CLAUDE.md.meta +7 -0
- package/Editor/Android/AndroidDependencyParser.cs +5 -2
- package/Editor/BlueStackAssetPostProcessor.cs +5 -2
- package/Editor/BlueStackDependenciesSource.xml +9 -9
- package/Editor/BlueStackSettings.cs +8 -0
- package/Editor/BlueStackSettingsEditor.cs +70 -19
- package/Editor/BlueStackVersionExporter.cs +214 -0
- package/Editor/BlueStackVersionExporter.cs.meta +2 -0
- package/Editor/Prefabs/AdPrefabs/Banners/Banner.prefab +53 -17
- package/Editor/Prefabs/AdPrefabs/Banners/DynamicBanner.prefab +49 -12
- package/Editor/Prefabs/AdPrefabs/Banners/DynamicLeaderboard.prefab +417 -0
- package/Editor/Prefabs/AdPrefabs/Banners/DynamicLeaderboard.prefab.meta +8 -0
- package/Editor/Prefabs/AdPrefabs/Banners/FullBanner.prefab +53 -17
- package/Editor/Prefabs/AdPrefabs/Banners/LargeBanner.prefab +53 -17
- package/Editor/Prefabs/AdPrefabs/Banners/Leaderboard.prefab +53 -17
- package/Editor/Prefabs/AdPrefabs/Banners/MediumRectangle.prefab +53 -17
- package/Editor/iOS/{BlueStackBuildPostProcess.cs → IOSBuildPostProcess.cs} +1 -1
- package/Example/Scripts/AnchoredBannerExample.cs +179 -0
- package/Example/Scripts/AnchoredBannerExample.cs.meta +2 -0
- package/Example/Scripts/BannerAnchor.cs +75 -0
- package/Example/Scripts/BannerAnchor.cs.meta +2 -0
- package/Example/Scripts/NativeAdManager.cs +24 -27
- package/Example/Scripts/SmallNativeAdManager.cs +24 -27
- package/Plugins/Android/bluestack-unity-android-bridge-600.aar +0 -0
- package/Plugins/Android/bluestack-unity-android-bridge-600.aar.meta +2 -0
- package/Plugins/iOS/BSUBanner.h +35 -16
- package/Plugins/iOS/BSUBanner.swift +435 -55
- package/Plugins/iOS/BSUInitializer.h +5 -4
- package/Plugins/iOS/BSUInitializer.swift +30 -58
- package/Plugins/iOS/BSUInterface.h +63 -48
- package/Plugins/iOS/BSUInterface.m +161 -135
- package/Plugins/iOS/BSUInterstitialAd.h +9 -7
- package/Plugins/iOS/BSUInterstitialAd.swift +57 -30
- package/Plugins/iOS/BSULogger.h +22 -0
- package/Plugins/iOS/{BSURewardedVideoAd.h.meta → BSULogger.h.meta} +5 -5
- package/Plugins/iOS/BSULogger.swift +60 -0
- package/Plugins/iOS/{BSURewardedVideoAd.swift.meta → BSULogger.swift.meta} +5 -5
- package/Plugins/iOS/BSUNativeAd.h +2 -2
- package/Plugins/iOS/BSUNativeAd.swift +16 -15
- package/Plugins/iOS/BSUPluginUtil.h +11 -1
- package/Plugins/iOS/BSUPluginUtil.swift +24 -0
- package/Plugins/iOS/BSURequestOptions.h +13 -5
- package/Plugins/iOS/BSURequestOptions.swift +46 -42
- package/Plugins/iOS/BSURewardedAd.h +34 -0
- package/Plugins/iOS/BSURewardedAd.h.meta +2 -0
- package/Plugins/iOS/BSURewardedAd.swift +136 -0
- package/Plugins/iOS/BSURewardedAd.swift.meta +2 -0
- package/Plugins/iOS/BSUTypes.h +25 -23
- package/Plugins/iOS/BSUTypes.swift +24 -22
- package/Plugins/iOS/MaskView.swift +24 -0
- package/Plugins/iOS/MaskView.swift.meta +2 -0
- package/README.md +58 -31
- package/Runtime/API/AdSize.cs +34 -6
- package/Runtime/API/AdapterStatus.cs +14 -1
- package/Runtime/API/Banner/AdMaskHandler.cs +176 -0
- package/Runtime/API/Banner/AdMaskHandler.cs.meta +2 -0
- package/Runtime/API/Banner/AdPlacementHandler.cs +329 -0
- package/Runtime/API/Banner/AdPlacementHandler.cs.meta +11 -0
- package/Runtime/API/Banner/AdPosition.cs +13 -1
- package/Runtime/API/Banner/BannerAd.cs +362 -27
- package/Runtime/API/Banner/PreferredBannerSize.cs +27 -0
- package/Runtime/API/Banner/PreferredBannerSize.cs.meta +2 -0
- package/Runtime/API/BlueStackAds.cs +66 -36
- package/Runtime/API/BlueStackError.cs +12 -1
- package/Runtime/API/InitializationStatus.cs +25 -0
- package/Runtime/API/InterstitialAd.cs +64 -19
- package/Runtime/API/NativeAd/NativeAd.cs +45 -17
- package/Runtime/API/NativeAd/NativeAdEventArgs.cs +6 -2
- package/Runtime/API/NativeAd/NativeAdInteractionHandler.cs +21 -6
- package/Runtime/API/NativeAd/NativeAdLoader.cs +29 -3
- package/Runtime/API/NativeAd/NativeAdObject.cs +7 -23
- package/Runtime/API/NativeAd/NativeAdType.cs +11 -1
- package/Runtime/API/NativeAd/NativeAssetInfo.cs +23 -1
- package/Runtime/API/RequestOptions/Gender.cs +15 -0
- package/Runtime/API/RequestOptions/Location.cs +52 -0
- package/Runtime/API/RequestOptions/RequestOptions.cs +66 -0
- package/{Plugins/iOS/BSUBanner.swift.wip.meta → Runtime/API/RequestOptions.meta} +2 -1
- package/Runtime/API/Rewarded/Reward.cs +15 -2
- package/Runtime/API/Rewarded/RewardedAd.cs +129 -0
- package/Runtime/API/Rewarded/RewardedItem.cs +15 -2
- package/Runtime/API/SDKInitializationStatus.cs +6 -1
- package/Runtime/Common/AdsMainThreadDispatcher.cs +70 -0
- package/Runtime/Common/BlueStackLogger.cs +126 -0
- package/Runtime/Common/BlueStackLogger.cs.meta +2 -0
- package/Runtime/Common/BlueStackSdkInfo.cs +10 -0
- package/Runtime/Common/BlueStackSdkInfo.cs.meta +2 -0
- package/Runtime/Common/NativeAd/NativeUtils.cs +4 -4
- package/Runtime/Internal/IBannerAdClient.cs +21 -9
- package/Runtime/Internal/IBlueStackClient.cs +8 -3
- package/Runtime/Internal/IClientsFactory.cs +1 -3
- package/Runtime/Internal/IInterstitialAdClient.cs +8 -6
- package/Runtime/Internal/IRewardedAdClient.cs +23 -0
- package/Runtime/Internal/NativeAd/INativeAdClient.cs +1 -1
- package/Runtime/Platforms/Android/AndroidJavaObjectFactory.cs +6 -6
- package/Runtime/Platforms/Android/BannerAdClient.cs +80 -31
- package/Runtime/Platforms/Android/BlueStackClient.cs +40 -162
- package/Runtime/Platforms/Android/BlueStackNativeClassNames.cs +8 -16
- package/Runtime/Platforms/Android/ClientsFactory.cs +2 -13
- package/Runtime/Platforms/Android/InitializationStatusClient.cs +57 -5
- package/Runtime/Platforms/Android/InterstitialAdClient.cs +34 -14
- package/Runtime/Platforms/Android/NativeAdClient.cs +14 -12
- package/Runtime/Platforms/Android/RequestOptionsClient.cs +76 -0
- package/Runtime/Platforms/Android/RequestOptionsClient.cs.meta +2 -0
- package/Runtime/Platforms/Android/RewardedAdClient.cs +129 -0
- package/Runtime/Platforms/Unity/AdBehaviour.cs +0 -3
- package/Runtime/Platforms/Unity/AdvertisementManager.cs +6 -6
- package/Runtime/Platforms/Unity/BannerAdClient.cs +299 -121
- package/Runtime/Platforms/Unity/BaseAdClient.cs +3 -2
- package/Runtime/Platforms/Unity/BlueStackClient.cs +53 -4
- package/Runtime/Platforms/Unity/ClientsFactory.cs +2 -7
- package/Runtime/Platforms/Unity/InterstitialAdClient.cs +23 -13
- package/Runtime/Platforms/Unity/NativeAdClient.cs +3 -5
- package/Runtime/Platforms/Unity/{RewardedVideoAdClient.cs → RewardedAdClient.cs} +29 -19
- package/Runtime/Platforms/Unity/RewardedTimer.cs +2 -1
- package/Runtime/Platforms/iOS/BannerAdClient.cs +106 -29
- package/Runtime/Platforms/iOS/BlueStackClient.cs +31 -37
- package/Runtime/Platforms/iOS/ClientsFactory.cs +2 -13
- package/Runtime/Platforms/iOS/Externs.cs +75 -66
- package/Runtime/Platforms/iOS/InitializationStatusClient.cs +18 -28
- package/Runtime/Platforms/iOS/InterstitialAdClient.cs +147 -57
- package/Runtime/Platforms/iOS/NativeAdClient.cs +16 -3
- package/Runtime/Platforms/iOS/RequestOptionsClient.cs +40 -0
- package/Runtime/Platforms/iOS/RequestOptionsClient.cs.meta +2 -0
- package/Runtime/Platforms/iOS/RewardedAdClient.cs +262 -0
- package/Runtime/Platforms/iOS/Utils.cs +1 -9
- package/Runtime/Utilities/AndroidEntryChecker.cs +5 -4
- package/Runtime/Utilities/CoordinateConverter.cs +338 -0
- package/Runtime/Utilities/CoordinateConverter.cs.meta +11 -0
- package/package.json +2 -2
- package/Plugins/Android/bluestack-unity-android-bridge-5.4.0.aar +0 -0
- package/Plugins/Android/bluestack-unity-android-bridge-5.4.0.aar.meta +0 -2
- package/Plugins/iOS/BSUBanner.swift.wip +0 -303
- package/Plugins/iOS/BSURewardedVideoAd.h +0 -32
- package/Plugins/iOS/BSURewardedVideoAd.swift +0 -108
- package/Plugins/iOS/BSUSettings.h +0 -18
- package/Plugins/iOS/BSUSettings.h.meta +0 -27
- package/Plugins/iOS/BSUSettings.swift +0 -13
- package/Plugins/iOS/BSUSettings.swift.meta +0 -37
- package/Runtime/API/AdaptersInitializationStatus.cs +0 -20
- package/Runtime/API/Preference/Gender.cs +0 -9
- package/Runtime/API/Preference/Location.cs +0 -29
- package/Runtime/API/Preference/Preference.cs +0 -58
- package/Runtime/API/Preference.meta +0 -3
- package/Runtime/API/Rewarded/RewardedVideoAd.cs +0 -82
- package/Runtime/API/Settings.cs +0 -12
- package/Runtime/API/Settings.cs.meta +0 -3
- package/Runtime/Common/NativeAd/AdsEventExecutor.cs +0 -83
- package/Runtime/Internal/IPreferenceClient.cs +0 -15
- package/Runtime/Internal/IPreferenceClient.cs.meta +0 -3
- package/Runtime/Internal/IRewardedVideoAdClient.cs +0 -21
- package/Runtime/Platforms/Android/PreferenceClient.cs +0 -85
- package/Runtime/Platforms/Android/PreferenceClient.cs.meta +0 -3
- package/Runtime/Platforms/Android/RewardedVideoAdClient.cs +0 -110
- package/Runtime/Platforms/Unity/PreferenceClient.cs +0 -65
- package/Runtime/Platforms/Unity/PreferenceClient.cs.meta +0 -3
- package/Runtime/Platforms/iOS/PreferenceClient.cs +0 -69
- package/Runtime/Platforms/iOS/PreferenceClient.cs.meta +0 -3
- package/Runtime/Platforms/iOS/RewardedVideoAdClient.cs +0 -174
- /package/Editor/iOS/{BlueStackBuildPostProcess.cs.meta → IOSBuildPostProcess.cs.meta} +0 -0
- /package/Runtime/API/{AdaptersInitializationStatus.cs.meta → InitializationStatus.cs.meta} +0 -0
- /package/Runtime/API/{Preference → RequestOptions}/Gender.cs.meta +0 -0
- /package/Runtime/API/{Preference → RequestOptions}/Location.cs.meta +0 -0
- /package/Runtime/API/{Preference/Preference.cs.meta → RequestOptions/RequestOptions.cs.meta} +0 -0
- /package/Runtime/API/Rewarded/{RewardedVideoAd.cs.meta → RewardedAd.cs.meta} +0 -0
- /package/Runtime/Common/{NativeAd/AdsEventExecutor.cs.meta → AdsMainThreadDispatcher.cs.meta} +0 -0
- /package/Runtime/Internal/{IRewardedVideoAdClient.cs.meta → IRewardedAdClient.cs.meta} +0 -0
- /package/Runtime/Platforms/Android/{RewardedVideoAdClient.cs.meta → RewardedAdClient.cs.meta} +0 -0
- /package/Runtime/Platforms/Unity/{RewardedVideoAdClient.cs.meta → RewardedAdClient.cs.meta} +0 -0
- /package/Runtime/Platforms/iOS/{RewardedVideoAdClient.cs.meta → RewardedAdClient.cs.meta} +0 -0
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
using System;
|
|
2
|
+
using System.IO;
|
|
3
|
+
using System.Text.RegularExpressions;
|
|
4
|
+
using UnityEditor;
|
|
5
|
+
using UnityEditor.Build;
|
|
6
|
+
using UnityEditor.Build.Reporting;
|
|
7
|
+
using UnityEditor.PackageManager;
|
|
8
|
+
using UnityEngine;
|
|
9
|
+
using PackageInfo = UnityEditor.PackageManager.PackageInfo;
|
|
10
|
+
|
|
11
|
+
namespace Azerion.BlueStack.Editor
|
|
12
|
+
{
|
|
13
|
+
/// <summary>
|
|
14
|
+
/// Keeps the package version declared in <c>package.json</c> mirrored into,
|
|
15
|
+
/// • <c>Runtime/Common/BlueStackSdkInfo.cs</c>
|
|
16
|
+
/// • <c>BlueStackDependenciesSource.xml</c>
|
|
17
|
+
/// </summary>
|
|
18
|
+
[InitializeOnLoad]
|
|
19
|
+
public static class BlueStackVersionExporter
|
|
20
|
+
{
|
|
21
|
+
internal const string DependenciesVersionPattern = "(<dependencies\\b[^>]*?\\bversion=\")([^\"]*)(\")";
|
|
22
|
+
|
|
23
|
+
private static string _packageJsonPath;
|
|
24
|
+
private static DateTime _lastStamp;
|
|
25
|
+
|
|
26
|
+
static BlueStackVersionExporter()
|
|
27
|
+
{
|
|
28
|
+
Export();
|
|
29
|
+
EditorApplication.update += PollForPackageJsonChange;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
// Cheap mtime check; only does real work when package.json actually changes on disk.
|
|
33
|
+
private static void PollForPackageJsonChange()
|
|
34
|
+
{
|
|
35
|
+
if (string.IsNullOrEmpty(_packageJsonPath) || !File.Exists(_packageJsonPath))
|
|
36
|
+
{
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
var stamp = File.GetLastWriteTimeUtc(_packageJsonPath);
|
|
41
|
+
if (stamp == _lastStamp)
|
|
42
|
+
{
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
_lastStamp = stamp;
|
|
47
|
+
Debug.Log("[BSU sync] package.json changed -> regenerating version files");
|
|
48
|
+
Export();
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
private static void Export()
|
|
52
|
+
{
|
|
53
|
+
var packageInfo = PackageInfo.FindForAssembly(typeof(BlueStackVersionExporter).Assembly);
|
|
54
|
+
if (packageInfo == null)
|
|
55
|
+
{
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
// Never write into a read-only install (registry / git / embedded-in-cache).
|
|
60
|
+
if (packageInfo.source != PackageSource.Local && packageInfo.source != PackageSource.Embedded)
|
|
61
|
+
{
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
_packageJsonPath = Path.Combine(packageInfo.resolvedPath, "package.json");
|
|
66
|
+
|
|
67
|
+
// Read the version straight from disk — independent of when the Package Manager re-resolves.
|
|
68
|
+
var version = ReadPackageJsonVersion(_packageJsonPath);
|
|
69
|
+
if (string.IsNullOrEmpty(version))
|
|
70
|
+
{
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
// Remember the current mtime so the poller doesn't re-fire on the next domain reload.
|
|
75
|
+
_lastStamp = File.GetLastWriteTimeUtc(_packageJsonPath);
|
|
76
|
+
|
|
77
|
+
var changed = SyncDependenciesVersion(packageInfo.resolvedPath, version);
|
|
78
|
+
changed |= SyncSdkInfo(packageInfo.resolvedPath, version);
|
|
79
|
+
|
|
80
|
+
if (changed)
|
|
81
|
+
{
|
|
82
|
+
AssetDatabase.Refresh();
|
|
83
|
+
Debug.Log($"[BSU sync] version files updated to {version}");
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
internal static string ReadPackageJsonVersion(string packageJsonPath)
|
|
88
|
+
{
|
|
89
|
+
if (!File.Exists(packageJsonPath))
|
|
90
|
+
{
|
|
91
|
+
return null;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
try
|
|
95
|
+
{
|
|
96
|
+
var manifest = JsonUtility.FromJson<PackageManifest>(File.ReadAllText(packageJsonPath));
|
|
97
|
+
return manifest != null ? manifest.version : null;
|
|
98
|
+
}
|
|
99
|
+
catch (Exception e)
|
|
100
|
+
{
|
|
101
|
+
Debug.LogWarning($"[BSU sync] Could not parse {packageJsonPath}: {e.Message}");
|
|
102
|
+
return null;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
// Returns true if the file was rewritten.
|
|
107
|
+
private static bool SyncSdkInfo(string resolvedPath, string version)
|
|
108
|
+
{
|
|
109
|
+
var outputFile = Path.Combine(resolvedPath, "Runtime", "Common", "BlueStackSdkInfo.cs");
|
|
110
|
+
var content = BuildSdkInfoContent(version);
|
|
111
|
+
|
|
112
|
+
if (File.Exists(outputFile) && File.ReadAllText(outputFile) == content)
|
|
113
|
+
{
|
|
114
|
+
return false;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
File.WriteAllText(outputFile, content);
|
|
118
|
+
return true;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
// Returns true if the file was rewritten. Touches ONLY the root <dependencies version="…">.
|
|
122
|
+
internal static bool SyncDependenciesVersion(string resolvedPath, string version)
|
|
123
|
+
{
|
|
124
|
+
var xmlFile = Path.Combine(resolvedPath, "Editor", "BlueStackDependenciesSource.xml");
|
|
125
|
+
if (!File.Exists(xmlFile))
|
|
126
|
+
{
|
|
127
|
+
return false;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
var xml = File.ReadAllText(xmlFile);
|
|
131
|
+
var match = Regex.Match(xml, DependenciesVersionPattern);
|
|
132
|
+
if (!match.Success)
|
|
133
|
+
{
|
|
134
|
+
Debug.LogWarning(
|
|
135
|
+
$"[BSU sync] No <dependencies version=\"...\"> attribute found in {xmlFile}; skipping version sync.");
|
|
136
|
+
return false;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
if (match.Groups[2].Value == version)
|
|
140
|
+
{
|
|
141
|
+
return false;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
var updated = Regex.Replace(xml, DependenciesVersionPattern, "${1}" + version + "${3}");
|
|
145
|
+
File.WriteAllText(xmlFile, updated);
|
|
146
|
+
return true;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
// Explicit "\n" keeps output byte-identical across platforms so the write-if-changed check holds.
|
|
150
|
+
private static string BuildSdkInfoContent(string version)
|
|
151
|
+
{
|
|
152
|
+
return
|
|
153
|
+
"// <auto-generated>\n" +
|
|
154
|
+
"// Generated by BlueStackVersionExporter from package.json. Do not edit by hand.\n" +
|
|
155
|
+
"// </auto-generated>\n" +
|
|
156
|
+
"namespace Azerion.BlueStack.Common\n" +
|
|
157
|
+
"{\n" +
|
|
158
|
+
" public static class BlueStackSdkInfo\n" +
|
|
159
|
+
" {\n" +
|
|
160
|
+
" public const string Version = \"" + version + "\";\n" +
|
|
161
|
+
" }\n" +
|
|
162
|
+
"}\n";
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
[Serializable]
|
|
166
|
+
private class PackageManifest
|
|
167
|
+
{
|
|
168
|
+
public string version;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
/// <summary>
|
|
173
|
+
/// Build time validation, check that the version number in <c>BlueStackSdkInfo</c> and
|
|
174
|
+
/// <c>BlueStackDependenciesSource.xml</c> matches <c>package.json</c>
|
|
175
|
+
/// </summary>
|
|
176
|
+
public class BlueStackVersionBuildGate : IPreprocessBuildWithReport
|
|
177
|
+
{
|
|
178
|
+
public int callbackOrder => 0;
|
|
179
|
+
|
|
180
|
+
public void OnPreprocessBuild(BuildReport report)
|
|
181
|
+
{
|
|
182
|
+
var packageInfo = PackageInfo.FindForAssembly(typeof(BlueStackVersionBuildGate).Assembly);
|
|
183
|
+
if (packageInfo == null)
|
|
184
|
+
{
|
|
185
|
+
throw new BuildFailedException("[BlueStack] PackageInfo not found in package.json");
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
var version = BlueStackVersionExporter.ReadPackageJsonVersion(
|
|
189
|
+
Path.Combine(packageInfo.resolvedPath, "package.json"));
|
|
190
|
+
if (string.IsNullOrEmpty(version))
|
|
191
|
+
{
|
|
192
|
+
throw new BuildFailedException("[BlueStack] Unable to retrieve the version number from package.json");
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
// The XML is consumed at build/resolve time and isn't compiled — safe to rewrite in a mutable install.
|
|
196
|
+
if (packageInfo.source == PackageSource.Local || packageInfo.source == PackageSource.Embedded)
|
|
197
|
+
{
|
|
198
|
+
BlueStackVersionExporter.SyncDependenciesVersion(packageInfo.resolvedPath, version);
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
var sdkInfoPath = Path.Combine(packageInfo.resolvedPath, "Runtime", "Common", "BlueStackSdkInfo.cs");
|
|
202
|
+
var committed = File.Exists(sdkInfoPath)
|
|
203
|
+
? Regex.Match(File.ReadAllText(sdkInfoPath), "Version\\s*=\\s*\"([^\"]+)\"").Groups[1].Value
|
|
204
|
+
: null;
|
|
205
|
+
|
|
206
|
+
if (committed != version)
|
|
207
|
+
{
|
|
208
|
+
throw new BuildFailedException(
|
|
209
|
+
$"[BlueStack] BlueStackSdkInfo.Version ('{committed}') is out of sync with package.json ('{version}'). " +
|
|
210
|
+
"Open the project in the Unity Editor so the version is regenerated, then rebuild.");
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
}
|
|
@@ -31,12 +31,12 @@ RectTransform:
|
|
|
31
31
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
|
32
32
|
m_ConstrainProportionsScale: 0
|
|
33
33
|
m_Children: []
|
|
34
|
-
m_Father: {fileID:
|
|
34
|
+
m_Father: {fileID: 9100000000000002}
|
|
35
35
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
|
36
|
-
m_AnchorMin: {x: 0
|
|
37
|
-
m_AnchorMax: {x:
|
|
38
|
-
m_AnchoredPosition: {x: 0, y:
|
|
39
|
-
m_SizeDelta: {x:
|
|
36
|
+
m_AnchorMin: {x: 0, y: 0}
|
|
37
|
+
m_AnchorMax: {x: 1, y: 1}
|
|
38
|
+
m_AnchoredPosition: {x: 0, y: 0}
|
|
39
|
+
m_SizeDelta: {x: 0, y: 0}
|
|
40
40
|
m_Pivot: {x: 0.5, y: 0.5}
|
|
41
41
|
--- !u!222 &222746751799034550
|
|
42
42
|
CanvasRenderer:
|
|
@@ -56,8 +56,8 @@ MonoBehaviour:
|
|
|
56
56
|
m_Enabled: 1
|
|
57
57
|
m_EditorHideFlags: 0
|
|
58
58
|
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
|
59
|
-
m_Name:
|
|
60
|
-
m_EditorClassIdentifier:
|
|
59
|
+
m_Name:
|
|
60
|
+
m_EditorClassIdentifier:
|
|
61
61
|
m_Material: {fileID: 0}
|
|
62
62
|
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
|
63
63
|
m_RaycastTarget: 1
|
|
@@ -86,8 +86,8 @@ MonoBehaviour:
|
|
|
86
86
|
m_Enabled: 1
|
|
87
87
|
m_EditorHideFlags: 0
|
|
88
88
|
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
|
|
89
|
-
m_Name:
|
|
90
|
-
m_EditorClassIdentifier:
|
|
89
|
+
m_Name:
|
|
90
|
+
m_EditorClassIdentifier:
|
|
91
91
|
m_Navigation:
|
|
92
92
|
m_Mode: 3
|
|
93
93
|
m_WrapAround: 0
|
|
@@ -148,17 +148,17 @@ RectTransform:
|
|
|
148
148
|
m_GameObject: {fileID: 1922916089534430}
|
|
149
149
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
|
150
150
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
|
151
|
-
m_LocalScale: {x:
|
|
151
|
+
m_LocalScale: {x: 1, y: 1, z: 1}
|
|
152
152
|
m_ConstrainProportionsScale: 0
|
|
153
153
|
m_Children:
|
|
154
|
-
- {fileID:
|
|
154
|
+
- {fileID: 9100000000000002}
|
|
155
155
|
m_Father: {fileID: 0}
|
|
156
156
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
|
157
157
|
m_AnchorMin: {x: 0, y: 0}
|
|
158
|
-
m_AnchorMax: {x:
|
|
158
|
+
m_AnchorMax: {x: 1, y: 1}
|
|
159
159
|
m_AnchoredPosition: {x: 0, y: 0}
|
|
160
160
|
m_SizeDelta: {x: 0, y: 0}
|
|
161
|
-
m_Pivot: {x: 0, y: 0}
|
|
161
|
+
m_Pivot: {x: 0.5, y: 0.5}
|
|
162
162
|
--- !u!223 &223151453590684250
|
|
163
163
|
Canvas:
|
|
164
164
|
m_ObjectHideFlags: 0
|
|
@@ -192,8 +192,8 @@ MonoBehaviour:
|
|
|
192
192
|
m_Enabled: 1
|
|
193
193
|
m_EditorHideFlags: 0
|
|
194
194
|
m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
|
|
195
|
-
m_Name:
|
|
196
|
-
m_EditorClassIdentifier:
|
|
195
|
+
m_Name:
|
|
196
|
+
m_EditorClassIdentifier:
|
|
197
197
|
m_IgnoreReversedGraphics: 1
|
|
198
198
|
m_BlockingObjects: 0
|
|
199
199
|
m_BlockingMask:
|
|
@@ -209,8 +209,8 @@ MonoBehaviour:
|
|
|
209
209
|
m_Enabled: 1
|
|
210
210
|
m_EditorHideFlags: 0
|
|
211
211
|
m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
|
|
212
|
-
m_Name:
|
|
213
|
-
m_EditorClassIdentifier:
|
|
212
|
+
m_Name:
|
|
213
|
+
m_EditorClassIdentifier:
|
|
214
214
|
m_UiScaleMode: 1
|
|
215
215
|
m_ReferencePixelsPerUnit: 100
|
|
216
216
|
m_ScaleFactor: 1
|
|
@@ -222,3 +222,39 @@ MonoBehaviour:
|
|
|
222
222
|
m_DefaultSpriteDPI: 96
|
|
223
223
|
m_DynamicPixelsPerUnit: 1
|
|
224
224
|
m_PresetInfoIsWorld: 0
|
|
225
|
+
--- !u!1 &9100000000000001
|
|
226
|
+
GameObject:
|
|
227
|
+
m_ObjectHideFlags: 0
|
|
228
|
+
m_CorrespondingSourceObject: {fileID: 0}
|
|
229
|
+
m_PrefabInstance: {fileID: 0}
|
|
230
|
+
m_PrefabAsset: {fileID: 0}
|
|
231
|
+
serializedVersion: 6
|
|
232
|
+
m_Component:
|
|
233
|
+
- component: {fileID: 9100000000000002}
|
|
234
|
+
m_Layer: 5
|
|
235
|
+
m_Name: BannerContainer
|
|
236
|
+
m_TagString: Untagged
|
|
237
|
+
m_Icon: {fileID: 0}
|
|
238
|
+
m_NavMeshLayer: 0
|
|
239
|
+
m_StaticEditorFlags: 0
|
|
240
|
+
m_IsActive: 1
|
|
241
|
+
--- !u!224 &9100000000000002
|
|
242
|
+
RectTransform:
|
|
243
|
+
m_ObjectHideFlags: 0
|
|
244
|
+
m_CorrespondingSourceObject: {fileID: 0}
|
|
245
|
+
m_PrefabInstance: {fileID: 0}
|
|
246
|
+
m_PrefabAsset: {fileID: 0}
|
|
247
|
+
m_GameObject: {fileID: 9100000000000001}
|
|
248
|
+
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
|
249
|
+
m_LocalPosition: {x: 0, y: 0, z: 0}
|
|
250
|
+
m_LocalScale: {x: 1, y: 1, z: 1}
|
|
251
|
+
m_ConstrainProportionsScale: 0
|
|
252
|
+
m_Children:
|
|
253
|
+
- {fileID: 224102598220924924}
|
|
254
|
+
m_Father: {fileID: 224975965904302652}
|
|
255
|
+
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
|
256
|
+
m_AnchorMin: {x: 0.5, y: 0}
|
|
257
|
+
m_AnchorMax: {x: 0.5, y: 0}
|
|
258
|
+
m_AnchoredPosition: {x: 0, y: 75}
|
|
259
|
+
m_SizeDelta: {x: 960, y: 150}
|
|
260
|
+
m_Pivot: {x: 0.5, y: 0.5}
|
|
@@ -33,12 +33,12 @@ RectTransform:
|
|
|
33
33
|
m_Children:
|
|
34
34
|
- {fileID: 224233332446998570}
|
|
35
35
|
- {fileID: 2527966602407694077}
|
|
36
|
-
m_Father: {fileID:
|
|
36
|
+
m_Father: {fileID: 9200000000000002}
|
|
37
37
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
|
38
|
-
m_AnchorMin: {x: 0
|
|
39
|
-
m_AnchorMax: {x:
|
|
40
|
-
m_AnchoredPosition: {x: 0, y:
|
|
41
|
-
m_SizeDelta: {x:
|
|
38
|
+
m_AnchorMin: {x: 0, y: 0}
|
|
39
|
+
m_AnchorMax: {x: 1, y: 1}
|
|
40
|
+
m_AnchoredPosition: {x: 0, y: 0}
|
|
41
|
+
m_SizeDelta: {x: 0, y: 0}
|
|
42
42
|
m_Pivot: {x: 0.5, y: 0.5}
|
|
43
43
|
--- !u!222 &222779771472130718
|
|
44
44
|
CanvasRenderer:
|
|
@@ -156,7 +156,7 @@ RectTransform:
|
|
|
156
156
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
|
157
157
|
m_AnchorMin: {x: 0.5, y: 0}
|
|
158
158
|
m_AnchorMax: {x: 0.5, y: 0}
|
|
159
|
-
m_AnchoredPosition: {x: 0, y:
|
|
159
|
+
m_AnchoredPosition: {x: 0, y: 75}
|
|
160
160
|
m_SizeDelta: {x: 400, y: 100}
|
|
161
161
|
m_Pivot: {x: 0.5, y: 0.5}
|
|
162
162
|
--- !u!222 &222910655472497136
|
|
@@ -229,17 +229,17 @@ RectTransform:
|
|
|
229
229
|
m_GameObject: {fileID: 1853606194061450}
|
|
230
230
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
|
231
231
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
|
232
|
-
m_LocalScale: {x:
|
|
232
|
+
m_LocalScale: {x: 1, y: 1, z: 1}
|
|
233
233
|
m_ConstrainProportionsScale: 0
|
|
234
234
|
m_Children:
|
|
235
|
-
- {fileID:
|
|
235
|
+
- {fileID: 9200000000000002}
|
|
236
236
|
m_Father: {fileID: 0}
|
|
237
237
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
|
238
238
|
m_AnchorMin: {x: 0, y: 0}
|
|
239
|
-
m_AnchorMax: {x:
|
|
239
|
+
m_AnchorMax: {x: 1, y: 1}
|
|
240
240
|
m_AnchoredPosition: {x: 0, y: 0}
|
|
241
241
|
m_SizeDelta: {x: 0, y: 0}
|
|
242
|
-
m_Pivot: {x: 0, y: 0}
|
|
242
|
+
m_Pivot: {x: 0.5, y: 0.5}
|
|
243
243
|
--- !u!223 &223985404539061306
|
|
244
244
|
Canvas:
|
|
245
245
|
m_ObjectHideFlags: 0
|
|
@@ -258,6 +258,7 @@ Canvas:
|
|
|
258
258
|
m_OverridePixelPerfect: 0
|
|
259
259
|
m_SortingBucketNormalizedSize: 0
|
|
260
260
|
m_VertexColorAlwaysGammaSpace: 0
|
|
261
|
+
m_UseReflectionProbes: 0
|
|
261
262
|
m_AdditionalShaderChannelsFlag: 0
|
|
262
263
|
m_UpdateRectTransformForStandalone: 0
|
|
263
264
|
m_SortingLayerID: 0
|
|
@@ -303,6 +304,42 @@ MonoBehaviour:
|
|
|
303
304
|
m_DefaultSpriteDPI: 96
|
|
304
305
|
m_DynamicPixelsPerUnit: 1
|
|
305
306
|
m_PresetInfoIsWorld: 0
|
|
307
|
+
--- !u!1 &9200000000000001
|
|
308
|
+
GameObject:
|
|
309
|
+
m_ObjectHideFlags: 0
|
|
310
|
+
m_CorrespondingSourceObject: {fileID: 0}
|
|
311
|
+
m_PrefabInstance: {fileID: 0}
|
|
312
|
+
m_PrefabAsset: {fileID: 0}
|
|
313
|
+
serializedVersion: 6
|
|
314
|
+
m_Component:
|
|
315
|
+
- component: {fileID: 9200000000000002}
|
|
316
|
+
m_Layer: 5
|
|
317
|
+
m_Name: BannerContainer
|
|
318
|
+
m_TagString: Untagged
|
|
319
|
+
m_Icon: {fileID: 0}
|
|
320
|
+
m_NavMeshLayer: 0
|
|
321
|
+
m_StaticEditorFlags: 0
|
|
322
|
+
m_IsActive: 1
|
|
323
|
+
--- !u!224 &9200000000000002
|
|
324
|
+
RectTransform:
|
|
325
|
+
m_ObjectHideFlags: 0
|
|
326
|
+
m_CorrespondingSourceObject: {fileID: 0}
|
|
327
|
+
m_PrefabInstance: {fileID: 0}
|
|
328
|
+
m_PrefabAsset: {fileID: 0}
|
|
329
|
+
m_GameObject: {fileID: 9200000000000001}
|
|
330
|
+
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
|
331
|
+
m_LocalPosition: {x: 0, y: 0, z: 0}
|
|
332
|
+
m_LocalScale: {x: 1, y: 1, z: 1}
|
|
333
|
+
m_ConstrainProportionsScale: 0
|
|
334
|
+
m_Children:
|
|
335
|
+
- {fileID: 224490741999108352}
|
|
336
|
+
m_Father: {fileID: 224156852809508418}
|
|
337
|
+
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
|
338
|
+
m_AnchorMin: {x: 0.5, y: 0}
|
|
339
|
+
m_AnchorMax: {x: 0.5, y: 0}
|
|
340
|
+
m_AnchoredPosition: {x: 0, y: 75}
|
|
341
|
+
m_SizeDelta: {x: 1284, y: 150}
|
|
342
|
+
m_Pivot: {x: 0.5, y: 0.5}
|
|
306
343
|
--- !u!1 &8708767047278081169
|
|
307
344
|
GameObject:
|
|
308
345
|
m_ObjectHideFlags: 0
|
|
@@ -328,7 +365,7 @@ RectTransform:
|
|
|
328
365
|
m_PrefabInstance: {fileID: 0}
|
|
329
366
|
m_PrefabAsset: {fileID: 0}
|
|
330
367
|
m_GameObject: {fileID: 8708767047278081169}
|
|
331
|
-
m_LocalRotation: {x:
|
|
368
|
+
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
|
332
369
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
|
333
370
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
|
334
371
|
m_ConstrainProportionsScale: 0
|
|
@@ -337,7 +374,7 @@ RectTransform:
|
|
|
337
374
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
|
338
375
|
m_AnchorMin: {x: 0.5, y: 1}
|
|
339
376
|
m_AnchorMax: {x: 0.5, y: 1}
|
|
340
|
-
m_AnchoredPosition: {x: 0, y: -
|
|
377
|
+
m_AnchoredPosition: {x: 0, y: -30}
|
|
341
378
|
m_SizeDelta: {x: 260, y: 37}
|
|
342
379
|
m_Pivot: {x: 0.5, y: 1}
|
|
343
380
|
--- !u!222 &754689629187967066
|