Skip to content
Closed
Show file tree
Hide file tree
Changes from 6 commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
e556262
feat(passport): add passport manager prefab
CodeSchwert Aug 5, 2025
8b3fc3b
feat(passport): add prefab to package samples
CodeSchwert Aug 5, 2025
20df644
feat(passport): add ui controller example
CodeSchwert Aug 5, 2025
b43ecd7
docs(passport): add passport manager samples readme
CodeSchwert Aug 5, 2025
d8d02be
docs(passport): lint fix prefab samples readme
CodeSchwert Aug 5, 2025
a817e63
fix(passport): fix deeplinking log path
CodeSchwert Aug 5, 2025
a49ace5
feat: add prefab with ui elements baked in
CodeSchwert Aug 8, 2025
111be79
update README
CodeSchwert Aug 11, 2025
65cf736
Merge branch 'main' into feat/passport-prefab
CodeSchwert Aug 11, 2025
5ff7369
feat: add marketing consent support to sdk and prefab
CodeSchwert Aug 12, 2025
8e44b05
chore: lint trailing white space
CodeSchwert Aug 12, 2025
2d241c8
chore: remove comment
CodeSchwert Aug 12, 2025
84ae7a6
docs: update tooltips and quick start
CodeSchwert Aug 12, 2025
fa31da3
docs: default login method setting
CodeSchwert Aug 12, 2025
2900b39
chore: lint fix
CodeSchwert Aug 12, 2025
a9c6fce
feat(tests): implement reliable CI authentication automation
CodeSchwert Aug 18, 2025
5e5b616
fix(ci): prevent parallel UI tests from competing for same email inbox
CodeSchwert Aug 18, 2025
8c13d0f
refactor: decouple UI components from core SDK
CodeSchwert Aug 18, 2025
32cd757
ci: prevent unnecessary test cancellations in UI workflow
CodeSchwert Aug 18, 2025
fe27997
fix: implement smart login with state-aware authentication flow
CodeSchwert Aug 18, 2025
9aa31f7
ci: skipping imx transfer tests
CodeSchwert Aug 18, 2025
19c9330
ci: skip imx tests for mac
CodeSchwert Aug 18, 2025
c3fac60
ci: debug login button
CodeSchwert Aug 18, 2025
90d3de0
test: force clean Unity state on test startup
CodeSchwert Aug 18, 2025
4caf298
Merge branch 'main' into feat/passport-prefab
CodeSchwert Aug 19, 2025
93bdf88
chore: post merge tidy up
CodeSchwert Aug 19, 2025
55227f3
chore: cleanup deps
CodeSchwert Aug 19, 2025
bc55364
chore: revert unitask version
CodeSchwert Aug 20, 2025
16a30f4
chore: revert unitask version
CodeSchwert Aug 20, 2025
13c9390
docs: american english typos
CodeSchwert Aug 20, 2025
c005c8c
feat: social login button prefabs
nattb8 Aug 20, 2025
2840b94
feat: passport login ui prefab
CodeSchwert Aug 20, 2025
178fcb9
chore: move asset to correct folder
CodeSchwert Aug 21, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -137,13 +137,15 @@ private static void CreateCommandScript(string protocolName)
" powershell -NoProfile -ExecutionPolicy Bypass -Command ^",
" \"$ErrorActionPreference = 'Continue';\" ^",
" \"$wshell = New-Object -ComObject wscript.shell;\" ^",
" \"Add-Content -Path \\\"{logPath}\\\" -Value ('[' + (Get-Date) + '] Attempting to activate process ID: ' + %%A);\" ^",
$" \"Add-Content -Path \\\"{logPath}\\\" -Value ('[' + (Get-Date) + '] Attempting to activate process ID: ' + %%A);\" ^",
" \"Start-Sleep -Milliseconds 100;\" ^",
" \"$result = $wshell.AppActivate(%%A);\" ^",
" \"Add-Content -Path \\\"{logPath}\\\" -Value ('[' + (Get-Date) + '] AppActivate result: ' + $result);\" ^",
" \"if (-not $result) { Add-Content -Path \\\"{logPath}\\\" -Value ('[' + (Get-Date) + '] Failed to activate window') }\" ^",
$" \"Add-Content -Path \\\"{logPath}\\\" -Value ('[' + (Get-Date) + '] AppActivate result: ' + $result);\" ^",
$" \"if (-not $result) {{ Add-Content -Path \\\"{logPath}\\\" -Value ('[' + (Get-Date) + '] Failed to activate window') }}\" ^",
" >nul 2>&1",
" if errorlevel 1 echo [%date% %time%] PowerShell error: %errorlevel% >> \"%LOG_PATH%\"",
" echo [%date% %time%] Unity activated, self-deleting >> \"%LOG_PATH%\"",
$" del \"%~f0\" >nul 2>&1",
" endlocal",
" exit /b 0",
" )",
Expand All @@ -155,7 +157,11 @@ private static void CreateCommandScript(string protocolName)
"",
// Start new Unity instance if none found
$"echo [%date% %time%] Starting new Unity instance >> \"%LOG_PATH%\"",
$"start \"\" \"{unityExe}\" -projectPath \"%PROJECT_PATH%\" >nul 2>&1"
$"start \"\" \"{unityExe}\" -projectPath \"%PROJECT_PATH%\" >nul 2>&1",
"",
// Self-delete the batch file when done
"echo [%date% %time%] Script completed, self-deleting >> \"%LOG_PATH%\"",
$"del \"%~f0\" >nul 2>&1"
};

File.WriteAllLines(cmdPath, scriptLines);
Expand Down Expand Up @@ -249,6 +255,7 @@ private static void RegisterProtocol(string protocolName)

// Set command to launch the script with the URI parameter
var scriptLocation = GetGameExecutablePath(".cmd");
//string command = $"cmd.exe /c \"\"{scriptLocation}\" \"%1\"\"";
string command = $"\"{scriptLocation}\" \"%1\"";
uint commandSize = (uint)((command.Length + 1) * 2);

Expand Down Expand Up @@ -357,18 +364,22 @@ private void HandleDeeplink()
}

// Clean up command script
// Note: Batch file will self-delete, no need to delete here
// This prevents race condition where Unity deletes the file
// while Windows is still trying to execute it
var cmdPath = GetGameExecutablePath(".cmd");
if (File.Exists(cmdPath))
{
try
{
File.Delete(cmdPath);
}
catch (Exception ex)
{
PassportLogger.Warn($"Failed to delete script: {ex.Message}");
}
}
// Commented out to prevent race condition
// if (File.Exists(cmdPath))
// {
// try
// {
// File.Delete(cmdPath);
// }
// catch (Exception ex)
// {
// PassportLogger.Warn($"Failed to delete script: {ex.Message}");
// }
// }

// Clean up instance
Destroy(gameObject);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,9 @@
"UniTask",
"Immutable.Browser.Core",
"Immutable.Browser.Gree",
"Immutable.Passport.Core.Logging"
"Immutable.Passport.Core.Logging",
"Unity.Modules.JSONSerialize",
"Unity.Modules.Core"
],
"includePlatforms": [
"Android",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,13 @@
"Immutable.Browser.Gree",
"Immutable.Passport.Runtime.Private",
"Immutable.Passport.Core.Logging",
"VoltstroStudios.UnityWebBrowser"
"VoltstroStudios.UnityWebBrowser",
"Unity.Modules.UnityWebRequest",
"Unity.Modules.AndroidJNI",
"Unity.Modules.JSONSerialize",
"Unity.Modules.Core",
"Unity.Modules.UI",
"Unity.TextMeshPro"
],
"includePlatforms": [
"Android",
Expand Down
Loading
Loading