Linux Unity Editor 上的 Facebook SDK 找不到 Keytool
Facebook SDK on Linux Unity Editor cant found Keytool
我正在使用 Unity 2019.4 LTS 开发 Pop_OS 20.04 LTS,但我遇到了问题,Facebook SDK 找不到 Keytool。在 GitHub sdk 上可用的源代码中尝试执行下一个命令:
keytool -exportcert -alias androiddebugkey -keystore debug.keystore | openssl sha1 -binary | openssl base64
我可以使用来自 sdk 的代码从终端或什至从 c# 程序执行它,但出于某种原因这在 unity 中不起作用:
static void Main(string[] args)
{
var proc = new Process();
var arguments = @"""keytool -storepass {0} -keypass {1} -exportcert -alias {2} -keystore {3} | openssl sha1 -binary | openssl base64""";
proc.StartInfo.FileName = "bash";
arguments = @"-c " + arguments;
proc.StartInfo.Arguments = string.Format(arguments, "android", "android", "androiddebugkey", System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal) + @"/.android/debug.keystore");
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.CreateNoWindow = true;
proc.StartInfo.RedirectStandardOutput = true;
proc.Start();
var keyHash = new StringBuilder();
while (!proc.HasExited)
{
keyHash.Append(proc.StandardOutput.ReadToEnd());
}
switch (proc.ExitCode)
{
case 255: Console.WriteLine("Error");
return;
}
Console.WriteLine(System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal) + @"/.android/debug.keystore");
Console.WriteLine(keyHash.ToString());
}
。有人可以帮忙吗?
看来我可以安全地使用这个命令生成的哈希值了。
keytool -exportcert -alias androiddebugkey -keystore debug.keystore | openssl sha1 -binary | openssl base64
虽然我收到一个错误,指出 Facebook 未配置,但这并不妨碍我构建一个可用的应用程序
我正在使用 Unity 2019.4 LTS 开发 Pop_OS 20.04 LTS,但我遇到了问题,Facebook SDK 找不到 Keytool。在 GitHub sdk 上可用的源代码中尝试执行下一个命令:
keytool -exportcert -alias androiddebugkey -keystore debug.keystore | openssl sha1 -binary | openssl base64
我可以使用来自 sdk 的代码从终端或什至从 c# 程序执行它,但出于某种原因这在 unity 中不起作用:
static void Main(string[] args)
{
var proc = new Process();
var arguments = @"""keytool -storepass {0} -keypass {1} -exportcert -alias {2} -keystore {3} | openssl sha1 -binary | openssl base64""";
proc.StartInfo.FileName = "bash";
arguments = @"-c " + arguments;
proc.StartInfo.Arguments = string.Format(arguments, "android", "android", "androiddebugkey", System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal) + @"/.android/debug.keystore");
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.CreateNoWindow = true;
proc.StartInfo.RedirectStandardOutput = true;
proc.Start();
var keyHash = new StringBuilder();
while (!proc.HasExited)
{
keyHash.Append(proc.StandardOutput.ReadToEnd());
}
switch (proc.ExitCode)
{
case 255: Console.WriteLine("Error");
return;
}
Console.WriteLine(System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal) + @"/.android/debug.keystore");
Console.WriteLine(keyHash.ToString());
}
。有人可以帮忙吗?
看来我可以安全地使用这个命令生成的哈希值了。
keytool -exportcert -alias androiddebugkey -keystore debug.keystore | openssl sha1 -binary | openssl base64
虽然我收到一个错误,指出 Facebook 未配置,但这并不妨碍我构建一个可用的应用程序