public Task GenerateSignaturesAsync() { return(Task.Run(() => { try { IAndroidKeystoreSignatureGenerator generator; if (KeystoreMode == "xamarin") // || string.IsNullOrEmpty(KeystorePath)) { generator = KeystoreSignatureGeneratorFactory.CreateForXamarinDebugKeystore(KeytoolPath); } else { generator = KeystoreSignatureGeneratorFactory.Create(KeytoolPath, KeystorePath, Alias, Storepass, Keypass); } var signatures = generator.GenerateSignatures(); Md5 = signatures?.Md5 ?? string.Empty; Sha1 = signatures?.Sha1 ?? string.Empty; Sha256 = signatures?.Sha256 ?? string.Empty; var fbSignatures = generator.GenerateFacebookSignatures(); FacebookSha1 = fbSignatures?.Sha1 ?? string.Empty; } catch (Exception ex) { Console.WriteLine("Failed to generate signature: {0}", ex); } })); }
void generate() { var keytoolPath = entryKeytool.Text; if (string.IsNullOrEmpty(keytoolPath)) { MsgBox("Unable to locate keytool", "Java Keytool is needed to generate signatures. We were unable to automatically locate keytool. Please enter the location manually."); return; } IAndroidKeystoreSignatureGenerator generator; if (radioDefault.Active) { generator = KeystoreSignatureGeneratorFactory.CreateForXamarinDebugKeystore(keytoolPath); } else { if (!File.Exists(entryCustomKeystore.Text)) { MsgBox("Invalid .Keystore File", "The .keystore file you selected was invalid or not found"); return; } var keystore = entryCustomKeystore.Text; var alias = entryCustomAlias.Text; var storepass = entryCustomStorePass.Text; var keypass = entryCustomKeyPass.Text; generator = KeystoreSignatureGeneratorFactory.Create(keytoolPath, keystore, alias, storepass, keypass); } try { var sigs = generator.GenerateSignatures(); entryMd5.Text = sigs.Md5; entrySha1.Text = sigs.Sha1; entrySha256.Text = sigs.Sha256; } catch (Exception ex) { Console.WriteLine(ex); MsgBox("Error Generating Signatures", "Please make sure you have the correct Keystore alias, store pass, and keypass values!"); } try { var fbSigs = generator.GenerateFacebookSignatures(); entryFacebookSHA1.Text = fbSigs.Sha1; } catch (Exception ex) { Console.WriteLine(ex); MsgBox("Error Generating Signatures", "Please make sure you have the correct Keystore alias, store pass, and keypass values!"); } }